Home Assistant не получает статус от термометра mqtt
Я создал датчик термометра, используя ESP8166 с MQTT, чтобы публиковать обновления температуры. Созданный JSON имеет формат:
{
"temperature": "53.4"
}
В Home Assistant я создал датчик в configuration.yaml:
sensor:
- platform: mqtt
name: Backyard Temperature
unique_id: a1234
state_topic: home/temperature
value_template: '{{ value_json.temperature }}'
unit_of_measurement: F
Датчик правильно отправляет полезные данные JSON, и подписки MQTT, запущенные на моем рабочем столе, получают обновления, но значение никогда не обновляется на панели инструментов Home Assistant (состояние остается буквальным "Неизвестно").
Вот как выглядит визуализированная группа. Странно, что в заголовке группы есть переключатель.
Кто-нибудь может увидеть, что мне не хватает? Согласно документации, я сделал все, чтобы это работало.
2 ответа
После удаления / переустановки брокера Mosquitto я понял, что не проверял опцию обнаружения. С этим набором он работает, как ожидалось. Ооо!
Я думаю, ваше значение state_topic должно быть в кавычках
state_topic: "home/temperature"
по крайней мере, это то, что я делаю в своем HA, и у него есть все показания.
Вот что имеет мой файл configuration.yaml:
- platform: mqtt
state_topic: "temp/read/Outside"
value_template: "{{ value_json.temp }}"
unit_of_measurement: '°F'
device_class: "temperature"
name: "Outside Temp"