Отправляем данные в Народный мониторинг из ESPHome
Начну с конфига на примере моего zyaura сенсора. Я отправляю значения двух датчиков из одного устройства - CO2 и температуру. Это часть конфига, отвечающая за отправку данных в narodmon:
http_request: sensor: - platform: zyaura clock_pin: $clock_pin data_pin: $data_pin co2: name: "CO2" id: co2ppm temperature: name: "Temperature" id: temperature update_interval: 20s interval: - interval: 2min then: http_request.post: url: http://narodmon.ru/post json: |- JsonObject &device = root.createNestedArray("devices").createNestedObject(); device["mac"] = "<00:00:00:00:00:00>"; device["name"] = "<Device Name>"; device["owner"] = "<Owners Email>"; device["lat"] = <00.0000>; device["lon"] = <00.0000>; JsonArray &sensors = device.createNestedArray("sensors"); JsonObject &temp = sensors.createNestedObject(); temp["id"] = "temperature"; temp["value"] = id(temperature).state; temp["unit"] = "C"; temp["name"] = "Температура"; JsonObject &co2 = sensors.createNestedObject(); co2["id"] = "co2"; co2["value"] = id(co2ppm).state; co2["unit"] = "ppm"; co2["name"] = "CO2";
Narodmon имеет лимит по отправке данных - не чаще раза в минуту. Сенсор обновляется каждые 20 секунд, но данные я отправляю один раз в две минуты.
Заполните свои MAC, названия устройства и сенсора, координаты и прочее.
На странице http://narodmon.ru/ip можно проверить, что данные в сервис приходят корректно.
Спасибо! То что нужно!
Спасибо! Настроил отправку, все работает отлично!
Перепутал mac, теперь через OTA не прошивается. Выдает
Для начала попробовать перезагрузить ESP и попробовать прошить снова.
От MAC адреса прошивка не зависит.
Перезагрузка не помогла, походу где то напортачил. Но на народмонитор данные шлет. Буду прошивать по проводу.
А точно надо отправлять на narodmon.ru/post?
В описании API для отправки данных с датчиков на сайте в разделе JSON другой адрес:
"Передавать пакет данных можно как по протоколам TCP или UDP на порт narodmon.ru:8283, так и использоваться HTTP(S) POST с шифрованием TLS или без него на http(s)://narodmon.ru/json."
Или тут передача не в JSON формате? В лямбда выражении создается JsonObject.
Возможно, что-то поменялось. Проверьте. На момент написания статьи все работало.
Здравствуйте. Скажите, у Вас получилось?
У меня лог ESPHome кажет
HTTP Request failed; URL: http://narodmon.ru/post; Error: connection failed