本帖最后由 raysonx 于 2021-8-25 22:43 编辑
更新:
我的补丁早已并入 Home Assistant,不需要再手动打补丁了。只需要使用新版的Home Assistant即可。
在Home Assistant中接入空调伴侣P3的方法很简单,只需要完成初始设置后在苹果的“家庭”App中删掉空调伴侣P3,就可以在Web界面中的配置->集成中搜到设备,直接添加即可。
-------------
新入坑智能家居设备,前几天买了Aqara新出的空调伴侣P3(Zigbee 3.0版),结果发现用 HomeKit Controller 反向接入 Home Assistant 无法识别空调遥控器。经过一番搜索和调试,发现空调伴侣P3在 Home Assistant 中的设备类型是 heater-cooler,而 HomeKit Controller 只支持早期的 thermostat 类型的climate设备。
于是动手修改代码,在 HomeKit Controller climate 代码基础上增加了对heater-cooler的支持,目前一切使用正常。
代码已提交给Home Assistant社区,但愿能被接受。有需要的朋友们可以手动打一下我的补丁:
- https://github.com/home-assistant/core/pull/38979
- https://github.com/Jc2k/aiohomekit/pull/18
提前手动打补丁的方法 (注意:执行这些命令会同时升级你的home assistant到最新的开发版本,因为不是稳定版可能会有未知的问题,建议提前备份config文件夹):
一、如果你用的是Docker版:
1. 先执行 `docker ps` 得到正在运行的容器名或者ID。
2. 然后 `docker exec -ti 容器名或ID bash` 进入容器的shell。
3. 执行下面的命令打补丁 (国内直接访问GitHub如果没有代理很慢)
pip3 install git+https://github.com/home-assistant/core.git@refs/pull/38979/head
4. `exit` 退出容器的shell
5. `docker commit 容器名或ID homeassistant/home-assistant:stable` 保存对容器的更改。`homeassistant/home-assistant:stable`是你用的image名。
6. 重启 Docker 容器 (`docker restart 容器名`)
二、如果你是直接用pip3安装的:1. 先确认一下你的Home Assistant是否安装在虚环境(venv)里。如果是,需要先执行 `source 虚环境文件夹/bin/activate`激活虚环境。
2. 执行下面的命令打补丁 (国内直接访问GitHub如果没有代理很慢)
pip3 install git+https://github.com/home-assistant/core.git@refs/pull/38979/head
3. 重启 home assistant
效果:
|