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

 找回密码
 立即注册
楼主: 27hh

[进阶教程] Xiaomi MIoT - 小米米家设备全自动通用接入插件,无需配置文件

  [复制链接]

1

主题

125

帖子

2796

积分

金牌会员

Rank: 6Rank: 6

积分
2796
金钱
2671
HASS币
0
发表于 2021-1-26 11:41:01 | 显示全部楼层
27hh 发表于 2021-1-24 19:45
空调伴侣已经有现成的插件了,净水器不知道你需要什么功能,可以通过传感器和开关接入;扫地机后期会支持 ...

米家扫地机器人最新的求支持
name:Mi Robot Vacuum-Mop 1T
model: dreame.vacuum.p2041
回复

使用道具 举报

2

主题

105

帖子

1892

积分

金牌会员

Rank: 6Rank: 6

积分
1892
金钱
1787
HASS币
0
发表于 2021-1-26 10:58:54 | 显示全部楼层
是否是在调试助手能控制的设备(当然是开关、灯、窗帘等)目前都能接入,或者说你开发的读取工具(类似助手)能读取的都能接入??这是否没法判断是mii或miot?
回复

使用道具 举报

2

主题

105

帖子

1892

积分

金牌会员

Rank: 6Rank: 6

积分
1892
金钱
1787
HASS币
0
发表于 2021-1-26 10:57:29 | 显示全部楼层
skika 发表于 2021-1-26 03:51
philips.light.cbulb

siid 2: Light

是否是在调试助手能控制的设备(当然是开关、灯、窗帘等)目前都能接入,或者说你开发的读取工具(类似助手)能读取的都能接入??这是否没法判断是mii或miot?
回复

使用道具 举报

4

主题

91

帖子

687

积分

高级会员

Rank: 4

积分
687
金钱
596
HASS币
0
发表于 2021-1-26 10:41:32 | 显示全部楼层
大佬,还是闪退的问题,我用shell打开的话,提示下面的错误:Python 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
======== RESTART: C:\软件\xiaomi_miot_raw-add-miot-support\tools\小米信息获取.py =======
Traceback (most recent call last):
  File "C:\软件\xiaomi_miot_raw-add-miot-support\tools\小米信息获取.py", line 1, in <module>
    import aiohttp
ModuleNotFoundError: No module named 'aiohttp'


这个aiohttp怎么装啊
回复

使用道具 举报

0

主题

13

帖子

234

积分

中级会员

Rank: 3Rank: 3

积分
234
金钱
221
HASS币
0
发表于 2021-1-26 03:51:05 | 显示全部楼层
philips.light.cbulb

siid 2: Light
   piid 1: Switch Status 可读取 可控制
      数据类型:bool
   piid 2: Brightness 可读取 可控制
      数据类型:uint8
      取值范围:[1, 100, 1]
   piid 3: Color 可读取 可控制
      数据类型:uint32
      取值范围:[0, 16777215, 1]
   piid 4: Color Temperature 可读取 可控制
      数据类型:uint32
      取值范围:[1882, 7000, 1]
   piid 5: Mode 可读取 可控制
      数据类型:uint8
      取值范围:
         0: None
         1: Reading
         2: Warmth
         3: Night
         4: Color

设置如下:
- platform: xiaomi_miot_raw
    name: 落地灯
    host: 192.168.
    token:
    mapping:
      switch_status:
        siid: 2
        piid: 1
      brightness:
        siid: 2
        piid: 2
      color:
        siid: 2
        piid: 3
      color_temperature:
        siid: 2
        piid: 4
      mode:
        siid: 2
        piid: 5
    params:
      switch_status:
        power_on: True
        power_off: False
      brightness:
        value_range: [1, 100, 1]
      color:
        value_range: [0, 16777215, 1]
      color_temperature:
        value_range: [1882, 7000, 1]
      mode:
        0: None
        1: Reading
        2: Warmth
        3: Night
        4: Color

报错如下:
xiaomi_miot_raw: Error on device update!
Traceback (most recent call last):
  File "/opt/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity_platform.py", line 359, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/opt/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 466, in async_device_update
    await task
  File "/home/homeassistant/.homeassistant/custom_components/xiaomi_miot_raw/light.py", line 214, in async_update
    self._color_temp = color.color_temperature_kelvin_to_mired(self._state_attrs['color_temperature'])
  File "/opt/homeassistant/lib/python3.7/site-packages/homeassistant/util/color.py", line 515, in color_temperature_kelvin_to_mired
    return math.floor(1000000 / kelvin_temperature)
ZeroDivisionError: division by zero
回复

使用道具 举报

1

主题

79

帖子

426

积分

中级会员

Rank: 3Rank: 3

积分
426
金钱
347
HASS币
0
发表于 2021-1-26 02:44:11 | 显示全部楼层
```
$ python3 autoconfig.py
正在加载设备列表...
chuangmi.plug.m3加载成功,现已支持9456个设备
请输入设备model:
已发现以下设备
--------------------------------------
序号                model                   urn
1        chuangmi.plug.m3        urn:miot-spec-v2:deviceutlet:0000A002:chuangmi-m3:1
设备描述:Outlet
设备属性:

siid 1: Device Information

   piid 1: Device Manufacturer 可读取
      数据类型:string
   piid 2: Device Model 可读取
      数据类型:string
   piid 3: Device Serial Number 可读取
      数据类型:string
   piid 4: Current Firmware Version 可读取
      数据类型:string


siid 2: Switch

   piid 1: Switch Status 可读取 可控制
      数据类型:bool
   piid 2: Temperature 可读取
      数据类型:float
      取值范围:[0, 100, 1]


siid 3: Indicator Light

   piid 1: Switch Status 可读取 可控制
      数据类型:bool
```

```
switch:
  - platform: xiaomi_miot_raw
    name: 客厅台灯
    host: 10.0.1.4
    token: 4dc92c5329cea4f531c2ced2697e78e9
    mapping:
      switch_status:
        siid: 2
        piid: 1
      temperature:
        siid: 2
        piid: 2
    params:
      switch_status:
        power_on: True
        power_off: False
```


我这配置有啥问题,老报错,小米wifi插座
回复

使用道具 举报

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
发表于 2021-1-26 01:49:05 | 显示全部楼层
urn:miot-spec-v2:device:fan:0000A005:zhimi-fa1:1
请问下楼主,小米循环扇这种摇头有水平和垂直的怎么写配置,另外我这个速度也没法控制,速度只能按照等级调么?有没有办法精确到数值调节
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2021-1-26 00:33:08 | 显示全部楼层
27hh 发表于 2021-1-26 00:21
已修复,应该没问题了

解释一下原因:

辛苦了。我更新再试一下看看。
不过刚才抓包发现这个米家智能晾衣架的current_position很不同:1,到顶位置;0,中间任意位置;2,到最低位置。
回复

使用道具 举报

32

主题

986

帖子

4233

积分

论坛元老

Rank: 8Rank: 8

积分
4233
金钱
3207
HASS币
110

教程狂人论坛风云人物

 楼主| 发表于 2021-1-26 00:23:47 | 显示全部楼层
hasbacct002 发表于 2021-1-25 23:30
fan:
  - platform: xiaomi_miot_raw
    name: 落地扇

你看看日志有没有相关报错,我初步怀疑是homekit不支持带中文的档位
回复

使用道具 举报

32

主题

986

帖子

4233

积分

论坛元老

Rank: 8Rank: 8

积分
4233
金钱
3207
HASS币
110

教程狂人论坛风云人物

 楼主| 发表于 2021-1-26 00:21:06 | 显示全部楼层
dscao 发表于 2021-1-25 23:32
这个工具功能强大,所有账号之下的token和参数都有了。
目前测试还是遇到两个问题:
1、米家晾衣架的灯也 ...

已修复,应该没问题了

解释一下原因:
我自己的晾衣架,上升到顶时,位置的值可能是0,1,2(到底为100),所以经常不能正确反映上升到顶的状态,所以我就让位置<=3都认为是已关闭,没想到你的只有0-2,所以就一直认为是已关闭了。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-23 20:32 , Processed in 0.079811 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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