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

 找回密码
 立即注册
查看: 1176|回复: 17

[技术探讨] [Ecovacs失效]关于Core更新至2024.12.x 后集成失效的临时解决

[复制链接]

4

主题

118

帖子

903

积分

高级会员

Rank: 4

积分
903
金钱
785
HASS币
0
发表于 2024-12-20 19:16:55 | 显示全部楼层 |阅读模式
本帖最后由 lswq 于 2024-12-20 19:36 编辑

Homeassistant core更新至12.x后部分用户出现老设备无法识别的原因,作者本人表示因科沃斯官方始终不开放api接口,且官方设备码命名混乱(同一型号可能存在多个class设备名)导致维护困难。---原issue[My model is not working with HA 2024.12 and newer · Issue #612 · DeebotUniverse/client.py · GitHub]

作者去除了部分难以管理的设备导致集成无法正常识别,现正与网友共同维护设备库(client.py)[GitHub - DeebotUniverse/client.py: Deebot client library in python]
由于用户较多众人拾柴火焰高,已恢复了大量失效设备,相信几个小版本更新就能使集成恢复正常,以下提供一种Haos临时解决方法[尝试前先做好备份]:


1.先正常重载Ecovacs集成,在系统core日志中搜索Ecovacs会得到类似以下报错:
Device "DEEBOT T9 POWER" not supported. More information at https://github.com/DeebotUniverse/client.py/issues/612: {'did': '38559xxxxxxx', 'name': 'E07H01xxxxxx', 'class': 'dj8zpr', 'resource': 'CV4R', 'company': 'eco-ng', 'bindTs': xxxxxxx, 'service': {'jmq': 'jmq-ngiot-cn.dc.cn.ecouser.net', 'mqs': 'api-ngiot.dc-cn.cn.ecouser.net'}, 'deviceName': 'DEEBOT T9 POWER', 'icon': 'https://portal.ecouser.net/api/pim/file/get/6087d70898318f000894a259', 'ota': True, 'UILogicId': 'T9_PRO', 'materialNo': 'xxxxxxx', 'pid': '6087d70xxxxxx', 'product_category': 'DEEBOT', 'model': 'T9_ECOVACS_ECO', 'updateInfo': {'needUpdate': False, 'changeLog': ''}, 'nick': 'xxxxx', 'homeId': '626xxxxxx', 'homeSort': 1, 'status': 1, 'otaUpgrade': {}}
class为你的科沃斯型号代码,例如我的DEEBOT T9 POWERdj8zpr

2.随后以root身份进入Homeassistant Docker容器命令台,此处以HaOS为例:
>>进入Portainer并连接

  

1

1
   

2

2
   

3

3

>>输入命令,将你的设备映射至设备库中已有的类似设备参考原帖方法[Add support for T9 PLUS (um2ywg) by marcolino7 · Pull Request #632 · DeebotUniverse/client.py · GitHub]
cd /usr/local/lib/python3.13/site-packages/deebot_client/hardware/deebot
ln -svfT ucn2xe.py dj8zpr.py
其中
ucn2xe.py为T9型号配置文件,将我的T9 Power配置文件(dj8zpr.py)指向设备库中已更新的T9(ucn2xe.py)配置文件。
已有设备类型可在此处查看[client.py/deebot_client/hardware/deebot at dev · DeebotUniverse/client.py · GitHub]

3.命令台显示已完成映射便可退出连接,重启Homeassistant即可。

4.有能力的友友也可以参照作者方法提供自己的设备信息至库中。







评分

参与人数 3金钱 +37 收起 理由
eric + 20 感谢楼主分享!
limo + 5
隔壁的王叔叔 + 12

查看全部评分

回复

使用道具 举报

5

主题

75

帖子

684

积分

高级会员

Rank: 4

积分
684
金钱
609
HASS币
0
发表于 2024-12-24 11:09:07 | 显示全部楼层
没有对应型号的配置文件,是不是就没办法了
回复

使用道具 举报

4

主题

118

帖子

903

积分

高级会员

Rank: 4

积分
903
金钱
785
HASS币
0
 楼主| 发表于 2024-12-24 23:55:40 | 显示全部楼层
limo 发表于 2024-12-24 11:09
没有对应型号的配置文件,是不是就没办法了

找类似的型号,可以尝试一下,ds开头的老设备应该就不行了,T系列或者近几年新出的应该都可以
回复

使用道具 举报

1

主题

46

帖子

293

积分

中级会员

Rank: 3Rank: 3

积分
293
金钱
247
HASS币
0
发表于 2024-12-25 17:33:43 来自手机 | 显示全部楼层
我是用实体debian安装的ha supervisor的,我找不到deboot的文件在哪
回复

使用道具 举报

0

主题

16

帖子

219

积分

中级会员

Rank: 3Rank: 3

积分
219
金钱
203
HASS币
0
发表于 2024-12-25 23:39:12 | 显示全部楼层

特来感谢,我家用的是T8 power ,class类型为no61kx,建立链接替换成0bdtzz可以使用
回复

使用道具 举报

4

主题

118

帖子

903

积分

高级会员

Rank: 4

积分
903
金钱
785
HASS币
0
 楼主| 发表于 2024-12-26 14:06:34 | 显示全部楼层
Evilsay 发表于 2024-12-25 17:33
我是用实体debian安装的ha supervisor的,我找不到deboot的文件在哪

这个是集成在core里的插件,ha在debian应该也是运行在docker里的吧,应该差不多,可以找找相关帖子
回复

使用道具 举报

0

主题

16

帖子

81

积分

注册会员

Rank: 2

积分
81
金钱
65
HASS币
0
发表于 2024-12-26 15:14:47 | 显示全部楼层
物理机装PVE  安装的home assistant  怎么连接?
回复

使用道具 举报

1

主题

46

帖子

293

积分

中级会员

Rank: 3Rank: 3

积分
293
金钱
247
HASS币
0
发表于 2024-12-26 15:46:24 | 显示全部楼层
lswq 发表于 2024-12-26 14:06
这个是集成在core里的插件,ha在debian应该也是运行在docker里的吧,应该差不多,可以找找相关帖子 ...

我进了/usr/local/lib/python3.13/site-packages/,下面找不到deboot的文件夹了
回复

使用道具 举报

4

主题

118

帖子

903

积分

高级会员

Rank: 4

积分
903
金钱
785
HASS币
0
 楼主| 发表于 2024-12-27 10:20:34 | 显示全部楼层
h2234 发表于 2024-12-26 15:14
物理机装PVE  安装的home assistant  怎么连接?

# 从 Home Assistant 控制台登录,获得 shell 环境后执行以下命令

# Step 1: 获取正在运行的 Docker 容器 ID,其中包含 Home Assistant 的实例
docker ps | grep homeassistant
# `docker ps` 列出所有正在运行的容器,`grep` 筛选出名字中包含 "homeassistant" 的容器。

# Step 2: 使用容器 ID 进入 Home Assistant 容器内部
docker exec -it <CONTAINERID> sh
# 替换 <CONTAINERID> 为上一步中返回的容器 ID。
# `-it` 以交互模式进入容器,`sh` 打开一个 Shell 环境。

# Step 3: 定位到 deebot_client 的 hardware/deebot 目录
cd /usr/local/lib/python3.13/site-packages/deebot_client/hardware/deebot
# 这里的路径是 Python 的 site-packages 目录,存放 Python 库文件。
# deebot_client 是与扫地机器人(如 Ecovacs Deebot)交互的模块。

# Step 4: 创建一个符号链接,将 x5d34r.py 文件指向 lhbd50.py
ln -svfT x5d34r.py lhbd50.py
# `ln` 是创建链接的命令。
# `-s` 创建符号链接,类似于快捷方式。
# `-v` 显示创建链接的详细信息。
# `-f` 强制覆盖已存在的目标文件。
# `-T` 明确目标是文件(而非目录)。
# 这一步确保任何对 lhbd50.py 的引用都指向 x5d34r.py。

# Step 5: 重启 Home Assistant 以使更改生效
restart home assistant
# 通过重启让新的符号链接及代码修改生效。
参考原帖命令试试
回复

使用道具 举报

0

主题

8

帖子

68

积分

注册会员

Rank: 2

积分
68
金钱
60
HASS币
0
发表于 2025-1-2 23:38:34 | 显示全部楼层
有没有大佬可以解答一下,为什么我科沃斯接入HA之后,只有返回基站和定位功能有用,启动按键没反应啊!感谢大佬!
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2025-2-2 12:48 , Processed in 0.058384 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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