0

我使用带有 MQTT 的 ESP8166 创建了一个温度计传感器来发布温度更新。发出的 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 仪表板上的值从未更新(状态保持为文字“未知”)。

这是渲染组的样子。奇怪的是组标题上有一个开关。 组渲染

谁能看到我错过了什么?根据文档,我已经为这个工作做了一切。

4

2 回答 2

0

我认为您的 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"
于 2020-05-05T17:20:02.893 回答
0

卸载/重新安装 Mosquitto 代理后,我意识到我没有检查发现选项。使用该设置,它按预期工作。哦!

于 2020-05-06T17:30:42.457 回答