Перейти к содержимому

🔸 Программирование

Программирование микроконтроллеров на C / C++ и популярных фреймворках: Arduino и ESP-IDF (FreeRTOS)

Отправка сообщений в Telegram на ESP32 с использованием фреймворка ESP-IDF

Добрый день, уважаемые читатели! Продолжаем тему работы c Telegram API, и сегодня мы вновь поговорим об отправке сообщений в Telegram, но на этот раз для ESP32 с использованием фреймворка ESP-IDF. ESP32 по сравнению с ESP8266 предоставляет программисту гораздо больше возможностей и позволяет не особо заботится о количестве активных TLS-соединений в… Подробнее »Отправка сообщений в Telegram на ESP32 с использованием фреймворка ESP-IDF

NVS: энергонезависимая библиотека хранения параметров

Добрый день, уважаемые читатели! Практически любой проект автоматики требует применения настраиваемых во время работы программы параметров – ну например желаемая температура для термостата или пароль для подключения к сети WiFi. Получить эти данные с сервера или с панели управления не особо сложно, но сразу же возникает следующий вопрос – а что… Подробнее »NVS: энергонезависимая библиотека хранения параметров

Настройка таблицы разделов FLASH-памяти для ESP32

Добрый день, уважаемые читатели! Практически любой проект автоматики требует применения настраиваемых во время работы программы параметров – ну например желаемая температура для термостата или пароль для подключения к сети WiFi. Получить эти данные с сервера или с панели управления не особо сложно, но сразу же возникает следующий вопрос – а… Подробнее »Настройка таблицы разделов FLASH-памяти для ESP32

OTA-обновления для ESP8266 и Arduino

Добрый день, уважаемый читатель. В прошлой статье, посвященной OTA обновлениям в ESP-IDF, я упоминал, что так же легко и просто можно реализовать подобный механизм и в фреймворке Arduino. И в этой статье я расскажу как это сделать для ESP8266 и Arduino IDE или PlatformIO. Сразу скажу, что если вы читали… Подробнее »OTA-обновления для ESP8266 и Arduino

Механизм OTA обновлений прошивки “по воздуху” для ESP32 и ESP-IDF

Добрый день, уважаемые читатели! В этой статье я расскажу, как достаточно просто и легко выполняются OTA-обновления на микроконтроллере ESP32 и фреймворке ESP-IDF.   Совсем не сложно провернуть то же самое и на ESP8266 и Arduino. И я, быть может, даже расскажу об этом в следующей статье. Но в данном тексте… Подробнее »Механизм OTA обновлений прошивки “по воздуху” для ESP32 и ESP-IDF

Влияние опций Mbed TLS на расход оперативной памяти

Добрый день, уважаемый читатель! В одной из прошлых статей я рассказывал о библиотеке Mbed TLS, которая служит для создания шифрованных соединений на ESP32. В конце статья я упомянул о том, что некоторые настройки этой библиотеки напрямую влияют на расход оперативной памяти при установке TLS-соединений. В справочной системе к ESP-IDF даже… Подробнее »Влияние опций Mbed TLS на расход оперативной памяти

HTTPS, SSL/TLS соединения на ESP32 и ESP-IDF

Добрый день, уважаемый читатель! Продолжаем тему защищенных соединений, но теперь уже применительно к ESP32 и Espressif IoT Development Framework (ESP-IDF). В ESP-IDF за безопасные соединения “по умолчанию” отвечает открытая библиотека Mbed TLS — это библиотека C, которая реализует криптографические примитивы, манипулирование сертификатами X.509 и протоколы SSL/TLS и DTLS. Небольшой размер… Подробнее »HTTPS, SSL/TLS соединения на ESP32 и ESP-IDF

HTTPS, SSL/TLS соединения на Arduino и ESP8266

Добрый день, уважаемый читатель! Продолжаем тему HTTP-запросов, но сегодня поговорим об защищенных соединениях. В наше время HTTPS обязателен для каждого веб-сайта, браузеры уже давно помечают сайты без TLS как небезопасные. Впрочем, все сказанное в данной статье относится не только к HTTP(S) протоколу, но и к шифрованным соединениям посредством других “прикладных”… Подробнее »HTTPS, SSL/TLS соединения на Arduino и ESP8266

HTTP запросы на ESP8266 и ESP32

Добрый день, уважаемый читатель! Сегодня поговорим о том, как выполнять различные HTTP-запросы из устройств на базе: ESP8266 или ESP32 под управлением фреймворка Arduino ESP32 под управлением фреймворка ESP-IDF В данной статье рассмотрим самый простой вариант – без шифрования, а в следующей части марлезонского балета поговорим как прикрутить ко всему этому… Подробнее »HTTP запросы на ESP8266 и ESP32

Термостат на ESP32 с удаленным управлением. Часть 6. Переход на ESP-IDF 5.0.0

Добрый день, уважаемый читатель! В прошлых статях серии я рассказывал, как собрать и запрограммировать устройство домашней автоматики с удаленным управлением на базе ESP-IDF без использования Arduino, на “голом” ESP-IDF.   Но, к сожалению, некоторое время назад стали поступать многочисленные сообщения, что проект не компилируется, а выдает кучу ошибок: Всё это… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 6. Переход на ESP-IDF 5.0.0

Работа с шиной I2C на ESP32 и ESP-IDF

Добрый день, уважаемый читатель! В данной статье я поделюсь информацией, как работать с шиной I2C на ESP32 из Espressif IoT Development Framework (ESP-IDF). I2C — это последовательный, синхронный, полудуплексный протокол связи, который позволяет сосуществовать нескольким ведущим и ведомым устройствам на одной шине. Шина I2C состоит из двух линий: последовательной линии… Подробнее »Работа с шиной I2C на ESP32 и ESP-IDF

ESP-IDF 5.0.0: что придется исправить в уже работающем проекте

Добрый день, уважаемый читатель! Давно не следил за новыми версиями Espressif32 и ESP-IDF, но сегодня то-то навеяло, видимо. Вроде бы недавно обновился до ESP-IDF 4.4.3, а сегодня опять обновление “прилетело”. 😁 На этот раз уж как прилетело, так прилетело – версия Espressif32 6.0.1, которая содержит в себе ESP-IDF 5.0.0. Никогда… Подробнее »ESP-IDF 5.0.0: что придется исправить в уже работающем проекте

ESP-IDF: а что под капотом? Обзор базовых объектов

Добрый день, уважаемый читатель! На создание этой статьи меня натолкнул один из моих постоянных читателей и подписчиков. Эта статья ориентирована на начинающих разработчиков и представляет собой очень краткий обзор инструментов и средств, которые предоставляет ESP-IDF и FreeRTOS, для чего и в каких случаях они могут применяться. Как правило начинающим программистам,… Подробнее »ESP-IDF: а что под капотом? Обзор базовых объектов

Телеметрия на ESP8266 и MQTT. Пошаговое руководство по созданию DIY-проекта с удаленным управлением

Добрый день, уважаемый читатель! Данная статья ориентирована в первую очередь на начинающих программистов, которые только начинают свой творческий путь программирования микроконтроллеров, в данном случае – ESP8266. Повторив этот проект вы можете создать с помощью микроконтроллера ESP8266, WiFi, MQTT и некоторой доли творчества: Дистанционный контроль и управление вашими устройствам, причем не… Подробнее »Телеметрия на ESP8266 и MQTT. Пошаговое руководство по созданию DIY-проекта с удаленным управлением

Работа с датой и временем и SNTP-синхронизация на ESP32 и ESP8266

Добрый день, уважаемый читатель! В прошлой статье я рассказывал про подключение к сети WiFi, что нужно сделать сразу после этого? Ну, не строго обязательно, конечно, но строго желательно? Подключаться к MQTT-брокеру? Нет, рановато – защищенное подключение потребует проверки TSL-сертификата, а для этого потребуется проверить срок его действия. Да вы, наверное,… Подробнее »Работа с датой и временем и SNTP-синхронизация на ESP32 и ESP8266

Подключение к точке доступа WiFi из ESP32 с ESP-IDF

Добрый день, уважаемый читатель! В данной статье обсудим довольно непростую тему – подключение к WiFi-точке доступа в режиме STA. ESP32 не был бы так популярен, если б в нем не было встроенной поддержки WiFi подключений. Режим станции (STA) — это такой режим, в котором контроллер не создает собственную сеть, а… Подробнее »Подключение к точке доступа WiFi из ESP32 с ESP-IDF

EventGroup – группы событий

Добрый день, уважаемый читатель! Сегодня поговорим об ещё одном очень полезном объекте FreeRTOS – группах событий или EventGroup. Принцип работы группы событий Группа событий — это набор бит, которым ваше приложение может присваивать значение “0” (бит не установлен) или “1” (бит установлен). На первый взгляд, того же самого можно достичь,… Подробнее »EventGroup – группы событий

Библиотека циклов событий FreeRTOS

Добрый день, уважаемый читатель! Продолжим знакомство с “внутренностями” ESP-IDF. В этой статье я расскажу, что такое циклы событий, и нафига козе баян зачем они нужны в нашей программе. Что вы обычно делаете в своей программе, когда вам требуется узнать о наступлении того или иного события в устройстве, например о подключении к WiFi, и… Подробнее »Библиотека циклов событий FreeRTOS

Работа с динамическими строками без класса String

Добрый день, уважаемый читатель! Практически в каждой прошивке приходится в том или ином виде работать со строковой информацией. Это могут быть топики, уведомления, отладочные сообщения (логи) и т.д. В данной статье я расскажу про свой способ работы с динамическими строками. Для начала чуть-чуть теории. Строка в C (си) – это… Подробнее »Работа с динамическими строками без класса String

Файл прикладных параметров проекта

Добрый день, уважаемый пользователь! В прошлых статьях мы обсуждали, как настроить проект PlatformIO и ESP-IDF (если вы не знакомы с этими разделами, но статьи почему-либо пропустили, рекомендую ознакомиться). Но в реальном проекте нам может понадобиться довольно большое количество “прикладных” параметров, которые не входят в “стандартные” файлы конфигурации. Например: номера выводов GPIO, задействованные в проекте… Подробнее »Файл прикладных параметров проекта

Очереди FreeRTOS

Добрый день, уважаемый читатель! Тема сегодняшней статьи – очереди. Но не всякие подряд очереди (потому что могут быть и другие очереди, которые мы обсуждали в одной из предыдущих статей), а конкретно – очереди FreeRTOS. Про очереди написано довольно много статей, например: тыц, тыц, и тыц.  Однако это не помешало мне… Подробнее »Очереди FreeRTOS

Создаем задачу FreeRTOS: динамический и статический способ

Добрый день, уважаемый читатель! В этой статье я расскажу, как можно создать и запустить на выполнение задачу FreeRTOS применительно к ESP32 и ESP-IDF. Все сказанное в данной статье справедливо не только для Espressiff IoT Development Framework (ESP-IDF), но и для Arduino Freamework for ESP32 (Arduino). В том числе это должно полностью… Подробнее »Создаем задачу FreeRTOS: динамический и статический способ

Настройка ESP-IDF проекта

Добрый день, уважаемый читатель! Продолжаем тему ESP-IDF, сегодня обсудим конфигурирование собственно самой Espressiff IoT Development Framework. Делается это с помощью специального файла sdkconfig.h, в котором объявлено великое множество макросов препроцессора с различными настройками. Этот файл можно найти в каталоге /.pio/config и он доступен из любого файла ESP-IDF, и с помощью него можно, например,… Подробнее »Настройка ESP-IDF проекта

Создание PlatformIO / ESP-IDF проекта и настройка platformio.ini

Добрый день, уважаемый читатель! В данной статье я расскажу как создать проект, как настроить файл конфигурации PlatformIO, как подключить внешние библиотеки к вашему проекту. Это статья для начинающих, то есть для тех, кто будет переходить на ESP-IDF с Arduino. Если Вы всё это знаете и умеете – то вы можете… Подробнее »Создание PlatformIO / ESP-IDF проекта и настройка platformio.ini

Связные списки и очереди

Добрый день, уважаемый читатель! Сегодня я хочу познакомить вас с одной замечательной библиотекой, “встроенной” в ESP-IDF – библиотекой для работы с однонаправленными или двунаправленными связными списками. Строго говоря, эта библиотека не является частью ESP-IDF, как и Espressif не является авторами данной библиотеки. Создана она аж в 1993 году в University… Подробнее »Связные списки и очереди