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

💠 IoT и микроконтроллеры

Домашняя автоматика, умный дом, программирование микроконтроллеров

Термостат на ESP32 с удаленным управлением. Часть 9. Термостат и управление нагрузкой
5 (1)

Добрый день, уважаемый читатель! Продолжаю описание самодельного устройства на базе ESP32 и ESP-IDF с возможностью дистанционного контроля и управления через WiFi. Возможно, вы наткнулись на эту статью случайно, поэтому приведу список предыдущих статей. Часть 1. Вводная: общее описание и возможности Часть 2. Перечень необходимых компонентов, схемы отдельных узлов, печатная плата… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 9. Термостат и управление нагрузкой

Автоматическая теплица. Часть 4. Управление поливом
5 (5)

Добрый день, уважаемый читатели! Продолжаем начатую тему про теплицу с зачатками разума, и в данной статье я расскажу о реализованной схеме полива растений в теплице и использованном оборудовании. В данной статье опубликованы только принципы и общие возможности – код проекта теплицы я выложу немного позже. Все части цикла “Теплица с… Подробнее »Автоматическая теплица. Часть 4. Управление поливом

Автополив. Часть 2. Схема и компоненты
5 (5)

Добрый день, уважаемые читатели! Продолжаю серию статей об автомате для полива комнатных растений с удаленным контролем и управлением. В этой части я расскажу, какие модули и детали мне понадобились, чтобы собрать устройство автоматического капельного полива для комнатных растений своими руками.   Как я уже писал в первой части, в данной версии… Подробнее »Автополив. Часть 2. Схема и компоненты

Термостат на ESP32 с удаленным управлением. Часть 8. Класс rSensor и как заменить сенсоры на другие
5 (1)

Добрый день, уважаемый читатель! Данная статья продолжает цикл статей, посвященных самодельному устройству на базе ESP32 DevKitC WROOM-32x и фреймворка Espressif IoT Development Framework. В прошлых статьях я рассказывал, как и из чего собрать устройство, а так же как создать самый простой вариант прошивки – устройство телеметрии для дачи, гаража или… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 8. Класс rSensor и как заменить сенсоры на другие

Термостат на ESP32 с удаленным управлением. Часть 7. Автоматический контроль диапазонов температуры
0 (0)

Добрый день, уважаемые читатели! Данная статья продолжает цикл статей, посвященных самодельному устройству на базе ESP32 DevKitC WROOM-32x и фреймворка Espressif IoT Development Framework. В прошлых статьях я рассказывал, как и из чего собрать устройство, а так же как создать самый простой вариант прошивки – устройство телеметрии. Для тех, кто пропустил… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 7. Автоматический контроль диапазонов температуры

Автоматическая теплица. Часть 3. Управление форточками
5 (4)

Добрый день, уважаемые читатели! Для начала небольшое лирическое отступление… Очень часто сталкиваешься с мнением: “Да мне вся эта автоматика не нужна – я и сам(а) открою форточки и полью! Мне не сложно вылить 2 / 5 / 10 / 20 леек воды на свои растения. Да и физическим трудом нужно… Подробнее »Автоматическая теплица. Часть 3. Управление форточками

Автоматическая теплица. Часть 2. Hardware
5 (3)

Добрый день, уважаемый читатели!  Проект теплицы с зачатками разума уже успешно отработал весь летний сезон. И в этой небольшой статье я познакомлю вас с “аппаратной начинкой” проекта, а так же какие датчики были использованы в проекте, и для чего их так много. Все части цикла “Теплица с зачатками разума на… Подробнее »Автоматическая теплица. Часть 2. Hardware

OTA обновления прошивки “по воздуху” для ESP8266 и ESP32 на платформе Arduino
4 (5)

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

Автоматическая теплица. Часть 1. Пролог
5 (3)

Добрый день, уважаемый читатель. Предисловие. Данная статья открывает серию статей про создание теплицы с зачатками разума на ESP32 и с дистанционным управлением. В ней не будет почти никаких технических подробностей и посвящена она, в основном, строительству. Если вам не интересен этот материал – вы можете сразу перейти к любой другой… Подробнее »Автоматическая теплица. Часть 1. Пролог

OTA обновления прошивки “по воздуху” для ESP32 и платформы ESP-IDF
5 (2)

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

Пакетная компиляция проектов PlatformIO
5 (1)

Добрый день, уважаемый читатель! Сегодня я поведаю вам по секрету, как легко и просто скомпилировать два десятка проектов PlatformIO за полчаса без труда и забот. Причем не обязательно это должны быть проекты ESP-IDF, это могут быть вполне и проекты под популярный в народе фреймворк Arduino, главное чтобы они были созданы… Подробнее »Пакетная компиляция проектов PlatformIO

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

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

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

Добрый день, уважаемый читатель! Продолжаем тему защищенных соединений, но теперь уже применительно к 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
5 (2)

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

HTTP запросы на ESP8266 и ESP32
5 (4)

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

Расширитель GPIO MCP23017
5 (5)

Добрый день, уважаемый читатель! В предыдущей статье я рассказывал о I2C расширителе портов PCF8574, а сегодня я хотел бы рассказать о более интересном варианте расширителя портов ввода-вывода для микроконтроллера – на микросхеме MCP23017. Первоначальным производителем этой микросхемы, судя по даташиту, является фирма Microchip, но на ali, скорее всего, предлагаются клоны… Подробнее »Расширитель GPIO MCP23017

Расширитель GPIO PCF8574
5 (2)

Добрый день, уважаемый читатель! Проблема нехватки свободных портов ввода-вывода ( GPIO ) на микроконтроллерах знакома, думаю, многим разработчикам устройств. Особенно эта проблема актуальна для весьма популярного микроконтроллера в народе ESP8266 (он же Гога ESP-01, он же Жора NodeMCU, и прочих модификаций на том же чипе) – там свободных GPIO вообще… Подробнее »Расширитель GPIO PCF8574

Сенсор давления BME680 и способы вычисления IAQ
5 (3)

Добрый день, уважаемый читатель! В этой статье я решил рассказать вам, над какой проблемой я работал в последнее свободное от работы и столярных работ время. В санузле у меня уже достаточно давно (более года) установлен комбинированный сенсор производства Bosch Sensortec BME680, вот такой:   Этот датчик позволяет измерять сразу четыре… Подробнее »Сенсор давления BME680 и способы вычисления IAQ

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

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

Работа с шиной I2C на ESP32 и ESP-IDF версий 4.х – 5.1
5 (1)

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

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

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

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

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

Шина I2C: принципы функционирования или зачем ещё тут нужны какие-то резисторы?
4.9 (16)

В статье рассмотрены физические основы работы внутрисхемной шины IIC или I2C и совсем немного – протокол передачи данных. Может быть полезна всем начинающим DIY-мастерам

Платы ESP32_Relay_X4 / X8 и операция по пересадке сердца
5 (3)

Добрый день, уважаемый читатель! Приветствую вас на очередной странице моего блога. В минувшие выходные, кроме всего прочего, провел операцию по пересадке “сердца” электронному “пациенту”, более-менее удачно, хотя и не без некоторых косяков. Но обо всём по порядку….   Краткий обзор Пришла мне посылка от дядюшки Ляо, в которой была такая… Подробнее »Платы ESP32_Relay_X4 / X8 и операция по пересадке сердца

Обзор ESP32R4 v3 + 8 relay i2c expander
4.3 (3)

Добрый день, уважаемый читатель! Сегодня я хочу познакомить вас базовым ESP32 контроллером в корпусе на DIN-рейку от Rocket Controller. То есть это небольшой обзорчик. Мне уже поднадоело самому разводить платы, травить, сверлить, паять, искать корпус. На этот раз решил попробовать готовое изделие – в корпусе и с встроенным блоком питания,… Подробнее »Обзор ESP32R4 v3 + 8 relay i2c expander

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

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

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

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

EventGroup – группы событий
5 (4)

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

Библиотека циклов событий FreeRTOS
5 (4)

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

Термостат на ESP32 с удаленным управлением. Часть 5. Добавляем выгрузку данных на внешние сервисы
5 (1)

Добрый день, уважаемый читатель! В прошлых статьях я рассказывал, как собрать устройство телеметрии на базе микроконтроллера ESP32 DevKitC WROOM-32x и фреймdорка Espressif IoT Development Framework. Если вы ещё не знакомы с данными статьями – рекомендую начать с них, иначе может быть непонятно – “что, зачем и почему”.   Но данное… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 5. Добавляем выгрузку данных на внешние сервисы

Настраиваем MQTT DASH для Android
5 (5)

Добрый день, уважаемый читатель! В этой статье я расскажу, как настроить один из клиентов MQTT для Android – MQTT Dash и сделать из старого смартфона или планшета удобную панель управления умным домом. Необходимое предупреждение: предполагается, что вы знаете, что такое протокол MQTT, с чем его едят, и для чего “оно” нужно.… Подробнее »Настраиваем MQTT DASH для Android

Термостат на ESP32 с удаленным управлением. Часть 4. MQTT-топики
5 (3)

Добрый день, уважаемый читатель! Продолжаю серию статей про готовое и вполне законченное устройство на ESP32 и Espressif IoT Development Framework. В прошлых статьях серии я рассказывал про: Часть 1. Вводная: общее описание и возможности Часть 2. Перечень необходимых компонентов, схемы отдельных узлов, печатная плата Часть 3. Минимальный вариант: только телеметрия… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 4. MQTT-топики

Термостат на ESP32 с удаленным управлением. Часть 3. Телеметрия
5 (1)

Добрый день, уважаемый читатель! В этой части я расскажу, как создать готовую прошивку на основе моего шаблона. Для начала это будет только метеостанция с удаленным управлением: Измерение температуры и влажности в трех точках с заданным интервалом времени Отправка измеренных данных на MQTT брокер в JSON-виде Контроль температуры в заданных пределах… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 3. Телеметрия

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

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

Термостат на ESP32 с удаленным управлением. Часть 2. Схема и компоненты
5 (2)

Добрый день, уважаемый читатель! Во второй части марлезонского балета я, как и обещал, расскажу, какие компоненты нам понадобятся и приведу схемы, список компонентов и немного расскажу об особенностях. Плата рассчитана на источник питания 12 вольт, так как большинство охранных сенсоров требуют напряжения питания не менее 9 вольт. Поэтому на палате предусмотрен собственный… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 2. Схема и компоненты

Термостат на ESP32 с удаленным управлением. Часть 1. Вводная
5 (2)

Добрый день, уважаемый читатель! Начиная с этой статьи я начну рассказывать, как создать готовое устройство своими руками на базе ESP32 и ESP-IDF. Без Arduino, регистрации и СМС. А необходимые теоретические сведения буду выкладывать параллельно, по мере необходимости. Материала очень много, поэтому статей будет несколько. Перечень всех статей вы найдете в… Подробнее »Термостат на ESP32 с удаленным управлением. Часть 1. Вводная

Облачные сервисы накопления и отображения данных
5 (3)

Добрый день, уважаемый читатель! Данная статья представляет собой маленький обзор трех облачных сервисов для накопления и обработки данных для ваших IoT устройств: Народный мониторинг – https://narodmon.ru/ Thing Speak – https://thingspeak.com/ Open monitoring – http://open-monitoring.online/ Облачные сервисы накопления и обработки данных, как и следует из обобщающего названия, предназначены для получения данных по http-протоколу с целью их хранения,… Подробнее »Облачные сервисы накопления и отображения данных

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

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

Очереди FreeRTOS
4.8 (6)

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

Настройка ESP-IDF проекта
5 (9)

Добрый день, уважаемый читатель! В данной статье обсудим конфигурирование проекта для ESP32, собранного на базе Espressiff IoT Development Framework. Примечание: конфигурация проектов, созданных на базе Arduino Framework for ESP32 (то есть либо в Arduino IDE, либо в PlatformIO, но с использованием Arduino платформы), не может быть изменена пользователем – по… Подробнее »Настройка ESP-IDF проекта

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

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

Связные списки и очереди
5 (4)

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