『瀚思彼岸』» 智能家居技术论坛

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

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

[复制链接]

4

主题

25

帖子

171

积分

注册会员

Rank: 2

积分
171
金钱
146
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信号过来的数字是位数特别多,如何保留两位小数??


开关状态

开关状态

数字位数特别多

数字位数特别多
回复

使用道具 举报

24

主题

883

帖子

4994

积分

论坛元老

Rank: 8Rank: 8

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

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

使用道具 举报

4

主题

25

帖子

171

积分

注册会员

Rank: 2

积分
171
金钱
146
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

主题

361

帖子

3753

积分

论坛元老

Rank: 8Rank: 8

积分
3753
金钱
3392
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

GMT+8, 2024-5-12 02:04 , Processed in 0.052760 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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