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

 找回密码
 立即注册
查看: 183|回复: 9

[已解决] 出现重复实体设备如何解决

[复制链接]

3

主题

12

帖子

98

积分

注册会员

Rank: 2

积分
98
金钱
86
HASS币
0
发表于 2024-5-6 15:50:46 | 显示全部楼层 |阅读模式
本帖最后由 PMZzz 于 2024-5-6 17:22 编辑

求大佬们帮帮忙,定义4个灯光却在home assistant中显示8个

补充,发现多出来的一个实体设备是“灯光”这个集成生成的,这个要怎么解决呢
11.jpg
解决方法:问题出在配置文件里面,将原来的配置文件(左)修改(右)就行
pz2.png                    11.png

不过这个地方还是有些不太懂为什么,配置文件中的写法,跟写的custom component有什么关系,如果有大佬看到,希望能解答一下



问题描述:
我在写custom component时,在__init__.py中定义了4个灯光,如图
1.png

然后在light.py文件中读取并实例化,如图
2.png

结果在home assistant中却显示8个灯光设备,
3.png

日志输出的两条警告也比较奇怪,因为我已经按官方文档操作了
WARNING (MainThread) [homeassistant.components.light] light.light1 (<class 'custom_components.mine_light.light.CustomLight'>) does not report a color mode, this will stop working in Home Assistant Core 2025.3, please report it to the author of the 'mine_light' custom integration
WARNING (MainThread) [homeassistant.components.light] light.light3 (<class 'custom_components.mine_light.light.CustomLight'>) does not report a color mode, this will stop working in Home Assistant Core 2025.3, please report it to the author of the 'mine_light' custom integration

4.png

配置文件如下:
pz1.png


两个light1点“设置”进去显示不一样,
5.png

7.png











回复

使用道具 举报

3

主题

12

帖子

98

积分

注册会员

Rank: 2

积分
98
金钱
86
HASS币
0
 楼主| 发表于 2024-5-6 16:03:22 | 显示全部楼层
,有没有大佬救救
回复

使用道具 举报

8

主题

172

帖子

1169

积分

金牌会员

Rank: 6Rank: 6

积分
1169
金钱
997
HASS币
0
发表于 2024-5-6 16:17:12 | 显示全部楼层
日志表示, 自定义集成mine_light的灯实体未报告颜色模式。

可以借助AI处理问题啊,比如 chatgpt,或者通义千问。
回复

使用道具 举报

3

主题

12

帖子

98

积分

注册会员

Rank: 2

积分
98
金钱
86
HASS币
0
 楼主| 发表于 2024-5-6 16:24:38 | 显示全部楼层
本帖最后由 PMZzz 于 2024-5-6 16:26 编辑
hhh. 发表于 2024-5-6 16:17
日志表示, 自定义集成mine_light的灯实体未报告颜色模式。

可以借助AI处理问题啊,比如 chatgpt,或者通 ...

已经按官方文档添加了ColorMode.COLOR_TEMP 10.png
主要问题是我四个数据,但是在home assistant中显示了八个实体


回复

使用道具 举报

31

主题

981

帖子

4424

积分

论坛元老

Rank: 8Rank: 8

积分
4424
金钱
3428
HASS币
90
发表于 2024-5-6 17:19:27 | 显示全部楼层
我没弄过这玩意,但从debug代码的角度来说,建议你在add_entities() 前面加入print来debug,比如把那一行代码分解开了debug, 其实你就是要知道这个8是怎么来的,是不是for loop出了问题,你可以把for loop提出来,比如:

customlights = []
for light in lights:
        print (light)
        customlights += [CustomLight(light)]

add_entities(customlights)




如果是4个,那就可能是class CustomLight里面有问题,里面加print来debug,看是不是被调用了8遍,一点点查错就好。

我家全屋智能的HA设置 https://github.com/relliky/Tais_Home_Assistant_Config
回复

使用道具 举报

3

主题

12

帖子

98

积分

注册会员

Rank: 2

积分
98
金钱
86
HASS币
0
 楼主| 发表于 2024-5-6 17:24:59 | 显示全部楼层
relliky 发表于 2024-5-6 17:19
我没弄过这玩意,但从debug代码的角度来说,建议你在add_entities() 前面加入print来debug,比如把那一行代 ...

已经解决啦,不过还是谢谢啦
回复

使用道具 举报

31

主题

981

帖子

4424

积分

论坛元老

Rank: 8Rank: 8

积分
4424
金钱
3428
HASS币
90
发表于 2024-5-6 17:26:15 | 显示全部楼层
PMZzz 发表于 2024-5-6 17:24
已经解决啦,不过还是谢谢啦

所以是什么问题呢?
我家全屋智能的HA设置 https://github.com/relliky/Tais_Home_Assistant_Config
回复

使用道具 举报

3

主题

12

帖子

98

积分

注册会员

Rank: 2

积分
98
金钱
86
HASS币
0
 楼主| 发表于 2024-5-6 17:46:10 | 显示全部楼层
relliky 发表于 2024-5-6 17:26
所以是什么问题呢?

应该是配置文件写错了,导致自定义组件和官方的‘light’组件都调用了一遍
回复

使用道具 举报

15

主题

198

帖子

1989

积分

论坛技术达人

积分
1989
金钱
1771
HASS币
40
发表于 2024-5-7 09:59:31 来自手机 | 显示全部楼层
可能是调试集成加载了两次生成的,原因是集成代码改过后导致的,先把集成和实体全删了再试试
回复

使用道具 举报

15

主题

198

帖子

1989

积分

论坛技术达人

积分
1989
金钱
1771
HASS币
40
发表于 2024-5-7 09:59:34 来自手机 | 显示全部楼层
可能是调试集成加载了两次生成的,原因是集成代码改过后导致的,先把集成和实体全删了再试试
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-19 15:48 , Processed in 1.170706 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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