From 65b54a0adc372012d851b712055e96ba353abd62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrey=20Lutov=20/=20=D0=90=D0=BD=D0=B4=D1=80=D0=B5=D0=B9?= =?UTF-8?q?=20=D0=9B=D1=83=D1=82=D0=BE=D0=B2?= <52620259+alutov@users.noreply.github.com> Date: Fri, 30 Dec 2022 18:23:51 +0300 Subject: [PATCH] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 08fb580f..b3e0da74 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ RUS | [ENG](https://translate.google.com/translate?hl=ru&sl=ru&tl=en&u=https%3A% #### [Текущая версия 2022.12.30](https://github.com/alutov/ESP32-R4sGate-for-Redmond/raw/master/build/r4sGate.bin). * 2022.12.30. Поправлена индикация заряда и разряда батареи на AXP192 и регулировка яркости на m5stack tough. При питании от батареи яркость экрана уменьшается в 16 раз на m5stack и в 8 раз на m5stack tough. Исправлена ошибка отправки данных в mqtt при отключенном BLE мониторе. -* 2022.12.29. Добавлена поддержка контроллера питания AXP192 и RTC PCF8563, что позволяет шлюзу работать на m5stack tough, а также поддержка ADC тензодатчиков HX711. Результат измерения с HX711 можно выводить как в килограммах, так и в процентах, в зависимости от калибровки. Возможен вывод на экран картинки разрешением выше 320. Размер буфера для загрузки картинки можно менять в пределах 20-65 килобайт. Управлять выводом изображения можно из интерфейса Home Assistant версии 2022.12. Добавлена поддержка ESP32C3. Из-за аппаратных ограничений этой микросхемы шлюз использует порт8 только как выход с широтно - импульсной модуляцией (PWM). Cвободной оперативной памяти больше примерно на 28 килобайт. И даже при подключенном экране у ESP32C3-12F остается еще 4 свободных gpio. Недостающие файлы для сборки и скомпилированные бинарные файлы в папке C3. Поправлено: выключение кофеварки, месяц в rtc, частота spi 20MHz, пины экрана. +* 2022.12.29. Добавлена поддержка контроллера питания AXP192 и RTC PCF8563, что позволяет шлюзу работать на m5stack tough, а также поддержка ADC тензодатчиков HX711. Результат измерения с HX711 можно выводить как в килограммах, так и в процентах, в зависимости от калибровки. Возможен вывод на экран картинки разрешением выше 320. Размер буфера для загрузки картинки можно менять в пределах 20-65 килобайт. Управлять выводом изображения можно из интерфейса Home Assistant версии 2022.12. Добавлена поддержка ESP32C3. Из-за аппаратных ограничений этой микросхемы шлюз использует порт8 только как выход с широтно - импульсной модуляцией (PWM). Cвободной оперативной памяти больше примерно на 28 килобайт. И даже при подключенном экране у ESP32C3-12F остается еще 6 свободных gpio. Недостающие файлы для сборки и скомпилированные бинарные файлы в папке C3. Поправлено: выключение кофеварки, месяц в rtc, частота spi 20MHz, пины экрана. * 2022.12.10. При работе с отдельными топиками команд и состояний после чтения команды шлюз записывает в командный топик точку вместо очистки топика. * 2022.12.06. Добавлена поддержка I2C сенсоров SHT3x(адреса 0x44, 0x45), AHT20(0x38), HTU21(0x40), BME680/688(0x76, 0x77, 688 пока не проверен), а также RTC DS3231(0x68). Часы используются для хранения даты и времени с NTP сервера, датчик температуры выводится в Mqtt. Шлюз допускает горячее подключение всех сенсоров. 18B20 и DHT22 появляются в Mqtt и Home Assistant сразу после старта шлюза, а I2C сенсоры по мере обнаружения их на шине в течение 2-х циклов опроса (24 секунды). Удалена поддержка DHT22 на 6 порту, вместо него добавлен IR передатчик. Поддерживаются протоколы NEC(8 и 16 битный адрес) RC5, RC6, Samsung, Sony SIRC(12, 15, 20 бит), Panasonic. Управлять можно как из интерфейса ХА и отдельных топиков адреса, команды и протокола, так и прямой записью в топик r4sx/ir6code строки из 8 hex символов 0-9,a-f, например, 090a1c3d, где 09 - протокол(01-nec, 02-necx16, 03-rc5, 04-rc6, 05-samsung, 06-sircx12, 07-sircx15, 08-sircx20, 09-panasonic), 0a1c - адрес, 3d -команда. Проверял все на Atom lite, в нем есть IR LED на 12 gpio. Пока не проверены RC5 и SIRCx15. В чайниках установка температуры подогрева 100°C включает режим кипячения. Соответственно, в режиме кипячения целевая температура 100°C. На экране в строке состояния вместо "Mqtt" отображается значок вайфая, по которому можно оценить уровень(-60...-70...-80dBm) и состояние: желтый - нет Mqtt, красный - нет WIFI, зеленый - ок. В системах с контроллером IP5306 отображается и значок батареи с уровнем заряда, цвет также отображает состояние батареи: желтый - разряжается, белый - заряжается, зеленый - заряжена. Мелкие исправления. * 2022.10.30. Бинарные файлы собраны пока только для частоты 160MHz. Рабочая частота и максимальная частота процессора, если она определена производителем в EFUSE, отображается в строке версии. Вывод основной части диагностических сообщений сделан отключаемым (опция **UART Debug** в настройках). При обновлении со старых версий производится перезапись памяти NVS, возможно, при этом придется заново привязать некоторые устройства (датчик дыма и погодная станция). Изменен режим работы BLE сканера. Режим **Passive** - это только пассивное сканирование, а **Auto** - активное сканирование до соединения всех устройств с дальнейшим переходом в пассивный режим. Нужно учитывать, что не все устройства передают имя при пассивном сканировании (например, Xiaomi Mikettle). В любом случае лучше вводить в поле имени MAC адрес, теперь можно и с двоеточиями. Добавлено в чайниках восстановление режима ночника после завершения кипячения (частично было реализовано в версии 2022.09.13), а также восстановление режима ночника и режима подогрева после установки чайника на подставку (опция **Keep kettle mode**). При включенной опции в json строке состояния выводится переменная **keep**, равная 1, если шлюз запомнил режим подогрева, 2 - режим ночника при снятии чайника с подставки, или 3 - шлюз запомнил режим ночника при включении кипячения. Добавлена поддержка режима **keep** в розетках и обогревателях. Добавлена поддержка драйвера штор/жалюзи AM43 (A-OK и подобные). Добавлена поддержка утюга RI-C273S, пока не тестировал. Добавлена поддержка весов Xiaomi Mi Scale2. Добавлено 5 портов ввода - вывода. Два порта используются шиной I2C, а каждый из 3-х оставшихся портов можно использовать как выход с широтно - импульсной модуляцией (PWM), или же как вход для подключения или одного датчика DHT22(AM2302), или одного датчика DS18B20 с прямым питанием. Процедуры чтения упрощены, контрольная сумма не читается и не проверяется, данные округляются до одного знака после запятой. Если шлюз оборудован звуковым излучателем, то, подключив к нему выход PWM (в m5stack basic это gpio 25), можно организовать вывод звукового сигнала. Изменяя скважность импульсов, можно регулировать громкость. Частота фиксирована и равна 3.136 kHz. Шина I2C поддерживает датчики Bosh BME280 / BMP280 по адресам 0x76 и 0x77, а также контроллер батареи IP5306 по адресу 0x75. Контроллер установлен в m5stack и ttgo-t4 (SCL 22, SDA 21), позволяет определять уровень батареи с шагом 25% и ее режим (Discarging / Charging / Charged). При питании от батареи яркость экрана уменьшается в 32 раза. Все датчики опрашиваются шлюзом с интервалом 12 секунд. @@ -173,7 +173,7 @@ RUS | [ENG](https://translate.google.com/translate?hl=ru&sl=ru&tl=en&u=https%3A% ![PROJECT_PHOTO](https://github.com/alutov/ESP32-R4sGate-for-Redmond/blob/master/jpg/myparts.jpg) Картинка 1. Комплектующие для сборки шлюза. -  Если цель запустить шлюз с минимальными затратами, придется покупать запчасти, затем собирать из них шлюз. Я использовал [ESP32 WROOM ESP-32 4 Мб с встроенной антенной (слева внизу) или ESP32 WROOM ESP-32U 4 Мб с внешней (правее первой)](https://aliexpress.ru/item/32961594602.html?item_id=32961594602&sku_id=66888778667&spm=a2g2w.productlist.0.0.4f835c61Fvd1gD). Цена вопроса $2.5. Потом паял микросхему на [адаптер-плату($0.3)](https://www.aliexpress.com/item/32763489487.html?spm=a2g2w.productlist.i0.2.48d33c75KbnjpB&sku_id=62208988599) и далее на макетную плату. Подойдет также ESP32C3, у меня это ESP32C3-12F. Из-за аппаратных ограничений этой микросхемы шлюз использует порт8 только как выход с широтно - импульсной модуляцией (PWM). Cвободной оперативной памяти больше примерно на 28 килобайт. И даже при подключенном экране у ESP32C3-12F остается еще 4 свободных gpio. Источник питания на 3.3 Hi-Link($2-$4). [Я их брал по цене $1.65](https://aliexpress.ru/item/32953853140.html?spm=a2g39.orderlist.0.0.32964aa6PePEbg&_ga=2.238912000.104655408.1636114275-428746708.1615828563&_gac=1.87036010.1634012869.Cj0KCQjwwY-LBhD6ARIsACvT72Na1GBQp7leEJDlxPCd0jTye8sF-GiknWzlo4hKElMNbtmI4DYpB_8aAktOEALw_wcB). **Можно обойтись без пайки**, если использовать [esp32-wroom-devkit(внизу в центре, $14)](https://aliexpress.ru/item/4000127837743.html?sku_id=10000000372418546&spm=a2g0s.9042311.0.0.274233edNcajyj). Правда, эта плата сильно избыточна для проекта, [можно взять попроще за $3.54](https://aliexpress.ru/item/32928267626.html?item_id=32928267626&sku_id=12000016847177755&spm=a2g2w.productlist.0.0.430c65c8Kf9vOT). В нем esp32 идет вместе с платой, на которой есть еще преобразователи с 5в на 3.3в, USB-RS232 и стандартный разъем мини-USB. Через него можно питать esp32, используя пятивольтовое зарядное устройство от смартфона, и программировать прямо с компьютера без всяких переходников. И справа на фото [3.2" 320 * 240 TFT экран($18)](https://aliexpress.ru/item/32911859963.html?spm=a2g0s.9042311.0.0.274233edzZnjSp), который я использовал в шлюзе. Можно использовать и совместимые готовые устройства как с экраном (TTGO T-Watcher BTC Ticker, M5Stack BASIC Kit), так и без (m5atom lite). +  Если цель запустить шлюз с минимальными затратами, придется покупать запчасти, затем собирать из них шлюз. Я использовал [ESP32 WROOM ESP-32 4 Мб с встроенной антенной (слева внизу) или ESP32 WROOM ESP-32U 4 Мб с внешней (правее первой)](https://aliexpress.ru/item/32961594602.html?item_id=32961594602&sku_id=66888778667&spm=a2g2w.productlist.0.0.4f835c61Fvd1gD). Цена вопроса $2.5. Потом паял микросхему на [адаптер-плату($0.3)](https://www.aliexpress.com/item/32763489487.html?spm=a2g2w.productlist.i0.2.48d33c75KbnjpB&sku_id=62208988599) и далее на макетную плату. Подойдет также ESP32C3, у меня это ESP32C3-12F. Из-за аппаратных ограничений этой микросхемы шлюз использует порт8 только как выход с широтно - импульсной модуляцией (PWM). Cвободной оперативной памяти больше примерно на 28 килобайт. И даже при подключенном экране у ESP32C3-12F остается еще 6 свободных gpio. Источник питания на 3.3 Hi-Link($2-$4). [Я их брал по цене $1.65](https://aliexpress.ru/item/32953853140.html?spm=a2g39.orderlist.0.0.32964aa6PePEbg&_ga=2.238912000.104655408.1636114275-428746708.1615828563&_gac=1.87036010.1634012869.Cj0KCQjwwY-LBhD6ARIsACvT72Na1GBQp7leEJDlxPCd0jTye8sF-GiknWzlo4hKElMNbtmI4DYpB_8aAktOEALw_wcB). **Можно обойтись без пайки**, если использовать [esp32-wroom-devkit(внизу в центре, $14)](https://aliexpress.ru/item/4000127837743.html?sku_id=10000000372418546&spm=a2g0s.9042311.0.0.274233edNcajyj). Правда, эта плата сильно избыточна для проекта, [можно взять попроще за $3.54](https://aliexpress.ru/item/32928267626.html?item_id=32928267626&sku_id=12000016847177755&spm=a2g2w.productlist.0.0.430c65c8Kf9vOT). В нем esp32 идет вместе с платой, на которой есть еще преобразователи с 5в на 3.3в, USB-RS232 и стандартный разъем мини-USB. Через него можно питать esp32, используя пятивольтовое зарядное устройство от смартфона, и программировать прямо с компьютера без всяких переходников. И справа на фото [3.2" 320 * 240 TFT экран($18)](https://aliexpress.ru/item/32911859963.html?spm=a2g0s.9042311.0.0.274233edzZnjSp), который я использовал в шлюзе. Можно использовать и совместимые готовые устройства как с экраном (TTGO T-Watcher BTC Ticker, M5Stack BASIC Kit), так и без (m5atom lite). ## 3. Настройка шлюза