Статья

Нативный HomeKit датчик DHT11 и виртуальная кнопка

Лежащий без дела модуль DTH ESP-01S не давал покоя, и все-таки очень хотелось из него сделать нативный датчик температуры/влажности с виртуальным переключателем (ну или WiFi кнопкой) для HomeKit (на спруте уже есть подобная статья, но с той прошивкой, после обрыва питания, датчик не отвечает).


DHT11 подключается к GPIO2 и есть еще свободный GPIO0 для кнопки переключателя. На самом модуле уже есть кнопка (которая "звонится" на GPIO0), но она не работает как обычное замыкание GPIO0 на землю.

Схему подключения к конвертеру выбрал такую:

Прошивался с помощью esptool стандартной RavenCore прошивкой fullhaaboot.bin.

Стираем и прошиваем, не забывая при каждом подключении соединять GPIO0 на землю.

cd c:\esptool esptool.py --port COM13 erase_flash

cd c:\esptool esptool.py --port COM13 --baud 115200 write_flash -fs 1MB -fm dout -ff 40m 0x0 fullhaaboot.bin

Процесс конфигурации устройства

После прошивки, подключаем к модулю и подаем питание.

Перед подключением к ней, необходимо скопировать JSON Config в буфер обмена для вставки его в настройках (я себе его в сообщении телеграм отправил и просто скопировал).

По сути, это просто модифицированный вариант JSON Config для Sonoff Basic. Просто добавлен датчик DHT11 на GPIO2 с опросом каждые 4 секунды и коррекцией температуры на 10 градусов (какой-то кривой попался датчик). Возможно, у вас будет датчик лучшего качества и тогда нужно изменить значение Z.

{ "c":{ "l":13, "b":[ { "g":0, "t":5 } ] }, "a":[ { "0":{"r":[{"g":12}]},"1":{"r":[{"g":12,"v":1}]},"b":[{"g":0}]}, { "t": 24, "b": [], "g": 2, "j": 4, "z": -10}]}

После подачи питания, ждем появления точки доступа (имя сети будет в виде - HAA******) для последующей настройки.

ВНИМАНИЕ! Изначально очень важно правильно все настроить, иначе придется прошивать заново! Как корректно сбросить настройки прошитого, я так и не нашел.

JSON Config.Auto OTA Updates.WiFi conection mode.Затем необходимо указать домашнюю сеть Wi-Fi и ввести пароль от нее, после чего нажимаем на кнопку «Save» и ждем около 10 минут, пока загрузиться OTA обновление с интернета.

После, в приложении "Дом" уже добавляете новый аксессуар, который будет называться так же, как и SSID вашей ESP-01 (HAA******). Код сопряжения стандартный для RavenCore - 021-82-017.

Процесс сопряжения с Apple HomeKit

Виртуальная кнопка

Кнопку прикрутил напрямую на замыкание GPIO0 с землей. При нажатии, отлично переключается в HomeKit. Вообще суть добавления этой кнопки - это дополнительный выключатель света для ребенка, который пока еще не достает до выключателя на стене, а переносить подрозетник ниже не хотелось.

В приложении "Дом" кнопка и выключатель света объединяются четырьмя автоматизациями.


Вернуться назад

Устройства


Вернуться назад