找回密码
 立即注册
查看: 171980|回复: 605

[硬件DIY] 踩个使用Aqara人体传感器的小坑

 火... [复制链接]

23

主题

279

回帖

2165

积分

论坛技术达人

积分
2165
金钱
1838
HASS币
110

活跃会员教程狂人

发表于 2018-7-5 22:18:30 | 显示全部楼层 |阅读模式

环境

Ubuntu18.04 + HA 0.71.0

现象

Aqara人体传感器会在HA中生成一个binary_sensor.motion_sensor_xxxxxxxxxxxxxx的人体传感器,但其触发/未触发状态一直有点迷,通常是一长串

解决办法

{HA安装目录}/components/binary_sensor/xiaomi_aqara.py中XiaomiMotionSensor类的init方法增加一行代码即可

……省略……
class XiaomiMotionSensor(XiaomiBinarySensor):
……省略……
def __init__(self, device, hass, xiaomi_hub):
    """Initialize the XiaomiMotionSensor."""
    self._hass = hass
    self._no_motion_since = 0
    if 'proto' not in device or int(device['proto'][0:1]) == 1:
        data_key = 'status'
    else:
        data_key = 'motion_status'
    XiaomiBinarySensor.__init__(self, device, 'Motion Sensor', xiaomi_hub,
                                data_key, 'motion')
    self._should_poll = True        #增加的

注释:HA启动过程会为binary_sensor.xiaomi_aqara这个platform注册一个更新数据的周期性任务(任务中通过should_poll属性判断该设备是否调用update方法去更新数据),前提是该platform下的设备的should_poll属性不能全为False。而代码中默认的should_poll属性都是False,所以导致无法正常更新数据,所以在设备初始化的时候给设置一下should_poll的值即可。

关于Aqara人体传感器工作方式

最后说一下调试中总结的Aqara人体传感器工作方式


游客,如果您要查看本帖隐藏内容请回复
博客 https://ljr.im
回复

使用道具 举报

15

主题

641

回帖

2833

积分

金牌会员

积分
2833
金钱
2177
HASS币
91

教程狂人

QQ
发表于 2018-7-5 22:24:10 | 显示全部楼层
支持一下
回复

使用道具 举报

6

主题

380

回帖

2045

积分

金牌会员

积分
2045
金钱
1657
HASS币
0
发表于 2018-7-5 23:00:48 | 显示全部楼层
资瓷一下。
回复

使用道具 举报

2

主题

709

回帖

5114

积分

论坛元老

积分
5114
金钱
4403
HASS币
85
发表于 2018-7-5 23:16:39 | 显示全部楼层
大神~~~
裡害了
回复

使用道具 举报

2

主题

319

回帖

1927

积分

金牌会员

积分
1927
金钱
1606
HASS币
0
发表于 2018-7-5 23:40:44 | 显示全部楼层
学习一下
回复

使用道具 举报

0

主题

10

回帖

114

积分

注册会员

积分
114
金钱
104
HASS币
0
发表于 2018-7-5 23:52:04 | 显示全部楼层
感谢分享,太强了。
回复

使用道具 举报

2

主题

148

回帖

1038

积分

金牌会员

积分
1038
金钱
888
HASS币
0
发表于 2018-7-6 00:53:00 | 显示全部楼层
看看怎么回事
回复

使用道具 举报

6

主题

192

回帖

1535

积分

金牌会员

积分
1535
金钱
1337
HASS币
0
发表于 2018-7-6 01:16:06 | 显示全部楼层
踩个使用Aqara人体传感器的小坑
回复

使用道具 举报

3

主题

68

回帖

763

积分

高级会员

积分
763
金钱
692
HASS币
0
发表于 2018-7-6 01:24:54 | 显示全部楼层
感謝分享,學習了
回复

使用道具 举报

20

主题

328

回帖

2545

积分

金牌会员

积分
2545
金钱
2197
HASS币
0
发表于 2018-7-6 08:39:03 | 显示全部楼层
学习一下
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-8 12:47 , Processed in 0.098410 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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