找回密码
 立即注册
查看: 1897|回复: 3

[已解决] MQTT 开关信号处理的问题

[复制链接]

4

主题

21

回帖

173

积分

注册会员

积分
173
金钱
148
HASS币
0
发表于 2022-4-9 12:27:54 | 显示全部楼层 |阅读模式
本帖最后由 SHURE 于 2022-4-12 19:57 编辑

问题1
我的设备的开关mqqt 信号传输过来是json格式,类似于下面。我在设置按钮的时候无论是light还是Switch格式,都无法识别mqtt实体的状态。有什么方案homeassistant识别设备的开关状态?{
"前照明":false,
"Data":0
}

问题2
传感器在主设备商显示是两位,但mqtt信号过来的数字是位数特别多,如何保留两位小数??


开关状态

开关状态

数字位数特别多

数字位数特别多
回复

使用道具 举报

25

主题

896

回帖

5276

积分

论坛元老

积分
5276
金钱
4350
HASS币
20
发表于 2022-4-10 23:08:18 | 显示全部楼层
   - platform: mqtt
     name: xxx
     state_topic: 'xxx'
     value_template: "{{ value[0:6] }}" #截取前6位

这可以只要前6位,至于小数点后2位我也不知怎么截
回复

使用道具 举报

4

主题

21

回帖

173

积分

注册会员

积分
173
金钱
148
HASS币
0
 楼主| 发表于 2022-4-12 19:56:49 | 显示全部楼层
已解决
问题1
我的设备的开关mqqt 信号传输过来是json格式,类似于下面。我在设置按钮的时候无论是light还是Switch格式,都无法识别mqtt实体的状态。有什么方案homeassistant识别设备的开关状态?
解决思路是将开关mqqt 信号传输过来是json格式转换为on、off的mqtt信号,开关接受转换后的mqtt信号。发送信号是,将开关转换为mqtt的json格式

问题2.
是将数据放大100倍后取整,然后在除以100,就保留为两位小数。


信号转换

信号转换

暴露位数

暴露位数
回复

使用道具 举报

8

主题

371

回帖

4190

积分

论坛元老

积分
4190
金钱
3810
HASS币
10
发表于 2022-4-12 20:36:21 | 显示全部楼层
SHURE 发表于 2022-4-12 19:56
已解决
问题1
我的设备的开关mqqt 信号传输过来是json格式,类似于下面。我在设置按钮的时候无论是light还 ...

{{ value_json.temperature | round(2) }}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-5-10 13:24 , Processed in 0.132199 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表