|
本帖最后由 LT21 于 2020-7-10 13:46 编辑
2020-07-10 更新:
更新了一下代码,欢迎测试。
##################################
2019-08-28 更新:
昨天运气好,终于让我试出这个C1的当前设置温度的参数名了,参数名为"settemp",跟以往的智能空调参数名命名方式完全不同,也是坑了。
至此C1算是基本功能都通了。当然,后续还有优化空间,不过目前就先这样吧~~
还有值得注意的一点,因为通过python-miio发送get_prop方法,只能一个个参数来获取,一旦其中一个获取不到就会造成状态获取不完整,所以我还是决定把与基础功能无关的其他状态(睡眠、节能、灯光、声音等)先去掉了。
##################################
最近才刚接触HomeAssistant,所幸家里之前的智能设备数量不多,而且也都是小米家的,看看支持列表也全都支持,于是就开开心心的入坑了。
结果刚入坑第二个月,因为南方夏天实在太热,家里客厅没装空调顶不住了,趁着活动入了米家互联网空调C1那款。图得它便宜,有自清洁,还带个蓝牙网关,活动价格也不贵。结果就真的是坑了,装完才发现这货没法接入HA,找遍了论坛和Github都找不到插件。
最为处女座,真的不能忍啊~~无奈之下只能临阵磨枪,现学抓包,现学Python,狂在Github上找轮子。。。最后也算磨出个自用插件了。
但还是有些问题,想在论坛请教下:
1、我实在是找不到C1这款空调miio协议下,get_prop方法到底是什么参数名可以获取到当前设置的温度(也就是所谓的Target Temperature),我通过get_prop ['temp', 'temperature'] 拿到的数值都是当前室温。当然,设置温度的功能还是不影响的,只是万一用遥控器或App调了温度没法同步,就略显尴尬了。不知道论坛里有没有大神能抓出这个参数?!
2、get_prop方法在插件里居然不支持多个参数的请求,只要请求参数的数量大于1,就必定返回'error': {'code': -10000, 'message': 'stuck'}。我看其它插件都是可以的,这我就纳闷了,而且我用miio-npm也是可以请求多参数的,实在不懂只能分割成一个一个参数来请求了,希望有大神可以解答下。
最后,就把这有瑕疵的代码扔出来吧~~orz
https://github.com/LT21/xiaomi_airconditioning_c1
|
评分
-
查看全部评分
|