Статья

Собираем датчик для HomeKit своими руками. Часть 1

Всем привет. Продолжаем оттачивать уроки мастерства, и попробуем собрать датчик температуры и влажности своими руками!

Для этого нам понадобится:

  1. Плата NodeMCU (esp8266)
  2. DHT11 или DHT22 (датчик температуры и влажности)
  3. USB TTL и пучок наших любимых проводов

Сразу обратим внимание на то, что датчик DHT11 измеряет влажность в диапазоне 20-80% с точностью ±5% RH и температуру от 0°C до 50°C с точностью ±2 °C. DHT22 имеет диапазон измерения влажности 0-100% с точностью ±2% RH и температуры от -40°C до 125°C с точностью ±0.5℃ соответственно.

Стоимость данного комплекта будет колебаться в районе 250-600 рублей в зависимости от того где покупать и в каких количествах. Плата NodeMCU v3 на базе ESP8266 удобна тем что имеет распаянные пины и порт microUSB. Просто подключил и все работает.

1. Прошивка

Как и в предыдущих статьях (раз и два), процесс прошивки аналогичный.

Прошивку будем использовать ту же что и ранее (она подходит, хотя и имеет излишний функционал):

otaboot.bin
blank_config.binrboot.bin

Подключится к плате нужно к 4 пинам справа внизу. Расположение указано на схеме выше:

(снизу вверх) 3.3V, GND, TX, RX. Подключите к USB TTL, зажмите кнопку Flash на плате и подключите к USB. Плата готова к загрузке прошивки, стирать перед этим ничего не нужно.

После прошивки отключите питание и подключите снова. Подключитесь к сети Ravencore..., укажите настройки вашей домашней сети и добавляйте ваш аксессуар в программе Дом. Код для сопряжения:

2. Настройка

Подключите датчик к плате согласно фото:

DHT11
DHT22 нужно подключить аналогично к пину D5 на плате (GPIO14 esp8266)

Запустите программу Eve Home, и настройте ваше устройство согласно фото (нужно выбрать тип устройства - 6 и тип датчика. 1 это DHT11 и 2 это DHT22). Настройки датчиков станут активны после того как вы укажите тип устройства (6) и перезагрузки платы:

На этом все! У вас готов свой нативный датчик с постоянным питанием от micro USB.

Ты в ударе, главное не останавливайся =)))

вот это можно по подробнее? ничего не разобрать или картинка потерялась с выбором типа 6

Запустите программу https://itunes.apple.com/ru/app/eve-%D0%B4%D0%BB%D1%8F-homekit/id917695792?mt=8">Eve Home, и настройте ваше устройство согласно фото (нужно выбрать тип устройства - 6 и тип датчика. 1 это DHT11 и 2 это DHT22). Настройки датчиков станут активны после того как вы укажите тип устройства (6) и перезагрузки платы:



Инструкции должны быть легкими..... автор молодец что написал статью, но путаница все равно присутствует... почему у меня сеть отображаеться так после прошивки?

1000x_image.png?1551289328

Загрузка прошивки состоит из двух частей


первое заливка OTA (раньше после этой части была сеть OTA-6последнихцифрмакадреса) 


ОТА = Over The Air обозначает загрузка по воздуху и эта часть была написана автором имплементации хомекита на есп модулях 


https://github.com/HomeACcessoryKid/ota">https://github.com/HomeACcessoryKid/ota


то есть ты заливаешь вначале прошивку которая позволяет обновлятся по воздуху из гитхаба . а потом конфигурируешь что именно она должна скачать


позже он сделал другую версию https://github.com/HomeACcessoryKid/life-cycle-manager">https://github.com/HomeACcessoryKid/life-cycle-manager которую назвал Life Cycle Manager

Ravencore как раз использует эти системы для обновления прошивки


отсюда и есть эти 3 буквы в названии точке доступа LCM-6последнихцифрмакадреса


а вот когда будет уже залита конкретная прошивка Ravencore тогда и будет имя точки доступа Ravencore-6последнихцифрмакадреса



https://sprut.ai/static/media/cache/00/40/98/5/2138814/47237/1000x_image.png?1575390660" alt="1000x_image.png?1575390660" />

а тут что делать надо ?

теперь не так однозначно смотри тут

https://github.com/RavenSystem/esp-homekit-devices/wiki/Installation">https://github.com/RavenSystem/esp-homekit-devices/wiki/Installation

или равенкоре что уже депрекейтед но просто в использованиии

или ха архитект 

но нужно строить конфиги

Интересное решение. Но остаются ряд вопросов.


  1. 1 Насколько данное решение дешевле датчиков Xiaomi?
  2. 2. Эстетическая составляющая также проигрывает, вышеуказанным датчикам;
  3. 3. Почему выбраны именно эти датчики? Даже, если не принимать в расчёт точность показаний, DHT11/22 имеют сильный косяк - при частом опросе уходят в ступор. Приходится перегружать по питанию. 

данное решение подойдёт для тех, кому нечем заняться долгими зимними вечерами (имхо). Или как вариант, если ЕСП уже задействована на что-то полезное, и решили расширить функционал. Чтобы «ноги» не пропадали даром


Доброго дня с bme 280 заведётся данная прошивка ? 

именно в прошивке Ravencore есть только 3 датчика

  1. DHT11
  2. DHT22
  3. DS18B20

последний датчик как раз я уговорил его добавить

сейчас он ведет работу над более интересным проектом

в котором он обещает больше гибкости в настройке

Ds18b20 врет больше +20 градусов.  Если датчик добавляли по вашей просьбы логично что вы должны были это побороть. Получилось? Какая ситуация с DHT11 и 22? 

  1. Последнее обновление Ravencore 1.1 появился четвёртый датчик Si7021 как у него, точные показания?

вы правильно подключили ? там значение резистора разное на 3 и на 5 вольт
подключали имено нативные датчик ?

Si7021 вполне точный датчик не смотрел как он его прикрутил
я пока в зигби ушел
хомекит работает без проблем и так :)

Доброго дня ! 


Несколько вопросов. 


  1. В чем пишите свои прошивки ?  

  2. Не посоветуете проект под 8266 или esp32 где каждый датчик или GPIO можно передавать отдельной метрикой в HomeKit? 

все реализации хомекита на есп32 и есп8266 используют эту библиотеку https://github.com/maximkulkin/esp-homekit">https://github.com/maximkulkin/esp-homekit

совместное творчество maximkulkin и HomeACcessoryKid 

можете посмотреть демо проекты https://github.com/maximkulkin/esp-homekit-demo">https://github.com/maximkulkin/esp-homekit-demo

в принципе все достаточно просто , и написать можно любой аксесуар

из готовых удобный Ravencore он поддерживает конфигурацию следущих устройств

  1. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#1-switch-1ch">Switch 1ch
  2. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#2-switch-2ch">Switch 2ch
  3. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#3-socket--button">Socket + Button
  4. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#4-switch-4ch">Switch 4ch
  5. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#5-thermostat">Thermostat
  6. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#6-switch-basic--th-sensor">Switch Basic + TH Sensor
  7. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#7-water-valve">Water Valve
  8. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#8-garage-door">Garage Door
  9. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#9-socket--button--th-sensor">Socket + Button + TH Sensor
  10. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#10-esp01-switch--button">ESP01 Switch + Button
  11. https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore#11-switch-3ch">Switch 3ch

посмотрим что получится с его новым творением HomeKit Accessory Architect

https://github.com/RavenSystem/esp-homekit-devices/issues/206">https://github.com/RavenSystem/esp-homekit-devices/issues/206

Доброго времени суток))

Извините меня пожалуйста, но я к сожалению так и не разобрался как подключить реле к ESP8266, к каким пинам? То есть ESP8266+Reley+DHT11. Ну что бы работал этот switch и температура с влагой.

Заранее спасибо за ответ))

там есть варианты как это подключить


но в дефолтовой конфигурации GPIO12 это реле GPIO14 это DHT11 или DHT22

Не хочет реле работать, не включается и не выключается при таком варианте

а сенсор показывает данные ?

тип борды какой выбран ?

можно деталей что хоть за esp

Сенсор показывает и температуру и влажность, тип борда 1, пробовал 2, но без результатно

если посмотришь внимательно там указано что меняется при изменении борды
на самом деле проще начинать с уже готового устройства типа sonoff 
тут вариантов может быть много (реле на 5-12в , реле на прямую подключено к выводу без управляющего транзистора) и так далее
прицепи хоть фотку




Перепробовал все возможные варианты и запутался окончательно. 

Я так понял, реле не заведётся. 

1000x_image.jpeg?1551944277

ты питал реле от 5ти вольт? не разглядеть на сколько вольт
если да то должно управлятся
к какой именно ноге подключал GPIO2 ?

Я питал его и от 3.3v и от внешнего 5v с GPIO2 сначала на ноге IN потом менял, в общем перепробовал все варианты, признаки жизни подавало, но так и не добился результат. Потом на GPIO0 срабатывало при старте

светодиодом то мигает ?
вечером прошью нодемцу посмотрю где у нее там релюшка должна быть

кстати это может быть GPIO12 :)) (только что нашел сонофф раскладку)

Да, мигает! На счет 12 - больше похоже на правду, я скорее ошибся когда писал про GPIO0.

Буду очень признателен за помощь в решении данной проблемы.

на нодемцу Лолин D5 = GPIO14 туда DHT D6 = GPIO12 туда реле
от усб питания не очень хватает чтобы щелкать но лед на реюшке зажигает

да... тип девайса 6

А я то думал что не работает, спасибо, теперь все ясно. Как раз есть два блока по 5V подключу на Vin

на нодемцу Лолин D5 = GPIO14 туда DHT D6 = GPIO12 туда реле
от усб питания не очень хватает чтобы щелкать но лед на реюшке зажигает

Итак версия 0,65 в шапке на nodemcu v3 встаёт криво качайте из первоисточника свежую прошивку:  https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore">https://github.com/RavenSystem...

Дальше все по инструкции ...https://github.com/RavenSystem/esp-homekit-devices/wiki/RavenCore">

После 2-х дней ожесточенной борьбы заработал. Есть вариант подключить сразу два датчика, что бы один на улицу вынести? Никто не пробовал?

Не ток один. 

Народ Хелп категорически !!! Как прокинуть нативный в НА!?

Эх, плохо что bme 280 не поддерживается, ждемс новый проект.


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