Universal Xiaomi MIoT integration for Home Assistant

Overview

Xiaomi MIoT Raw

简体中文 | English

MIoT 协议是小米智能家居从 2018 年起推行的智能设备通信协议规范,此后凡是可接入米家的设备均通过此协议进行通信。此插件按照 MIoT 协议规范与设备通信,实现对设备的状态读取及控制。

由于 MIoT 协议具有极强的通用性,已接入米家的智能设备均可通过此插件快速高效地接入 Home Assistant,而无关设备的具体型号。

本插件运行方式默认为本地接入(局域网读取/控制),延迟极低。对于不支持本地读取的设备,支持 2 种云端接入(云端读取本地控制/云端读取云端控制)。

目前此插件已支持以下设备类型:

  • sensor (传感器)
  • switch (开关)
  • cover (卷帘/晾衣架/升降帘/窗帘)
  • light (灯,可以开关、调亮度、调色、设置灯效)
  • fan (风扇,可以开关、设置风速、设置摇头)
  • humidifier (加湿器/除湿器,可以开关、设置湿度、选择模式)
  • media player (小爱音箱,可以播放/暂停/调音量,TTS/执行自定义指令二选一)(需要通过文件配置)

如果对您有帮助,欢迎给个 Star! 🌟

如果插件工作不正常,请先参考调试部分,打开调试日志,通过日志排查问题。

如果您认为插件有 bug,或者有新功能的想法,您可以提交 Issue。 使用上的问题,请在论坛咨询,或加入 QQ 群: 982 100 289

2 月 3 日 Breaking Changes

  1. 支持了一个设备多种类型的自动配置,现在像风扇灯、晾衣架这类具有子设备的设备,可以自动识别一次性接入
  2. 由于 1 的原因,插件内部数据存储方式发生较大变化,部分设备需要删除重新配置,需要重新配置的设备已在通知栏中写明;文件配置的设备不受影响。
  3. 大幅提高了自动识别的准确性。

安装

  • 将 custom_component 文件夹中的内容拷贝至自己的相应目录

或者

配置

UI 配置法

HACS中不支持显示图片,请在浏览器中打开查看

2

3

文件配置法

请参考 config_example 文件夹 内的相关文件

各个设备类型公用的配置参数:

  • host (Required): 设备 IP。

  • token (Required): 设备 token。

  • name (Optional): 设备名称。

  • mapping (Required): 设备的功能与 id 的映射。

  • params (Optional): 与 mapping 对应,指定关于属性值的一些信息。

  • scan_interval (Optional): 状态刷新周期。

  • sensor_property (Required,仅限 sensor): 把 mapping 中的哪一个作为传感器的状态。其他的将作为传感器的属性。

  • sensor_unit (Optional,仅限 senso): 传感器单位。

  • update_from_cloud 从米家服务器读取设备状态。

mappingparams 中的项目具有对应关系。params 是为了指定关于属性值的一些信息。比如说对于 switch_status,它代表开关状态,这一点是确定的;可是有的设备,值为 1 为开,值为 2 为关;有的设备值为 True 为开,值为 False 为关。这就需要在 params 中指定具体的状态值了。又如,蓝牙网关插座,显示的功率数值没有小数点,实际功率要除以 100;而某品牌插座,同样没有小数点,可实际功率要除以 10……这种问题同样可以在 params 中解决。二者的一些选项:

  • switch_status (Required 适用于 light switch fan): 插件通过读写这个属性来获取和控制开关状态。其下的 power_onpower_off 指定开和关的状态值。
  • motor_control (Required 适用于 cover),插件通过读写这个属性来控制电机状态。其下的 openclosestop 指定升/降/停的状态值。
  • motor_status (Optional 适用于 cover),插件通过读写这个属性来获取电机状态。其下的 openclosestop 指定升/降/停的状态值。注意这些值可能与上面的控制值不同。
  • brightness (Optional 适用于 light):设置此项后支持亮度调节。
  • color_temperature (Optional 适用于 light):设置此项后支持色温调节。
  • oscillate (Optional 适用于 fan):设置此项后支持摇头。
  • speed (Optional 适用于 fan):设置此项后支持风速调节。
  • mode (Optional 适用于 light fan):灯、加湿器等设备的运行模式。

更新日志

2 月 8 日

  1. 支持小爱音箱从 UI 配置。
  2. 支持洗衣机等设备的 action 调用。

2 月 6 日

  1. 支持小爱音箱。

2 月 3 日

  1. 支持了一个设备多种类型的自动配置,现在像风扇灯、晾衣架这类具有子设备的设备,可以自动识别一次性接入
  2. 由于 1 的原因,插件内部数据存储方式发生较大变化,部分设备需要删除重新配置,需要重新配置的设备已在通知栏中写明;文件配置的设备不受影响。
  3. 大幅提高了自动识别的准确性。

1 月 31 日

  1. 现已支持部分设备类型的自动配置。
  2. 修复大量 bug。
  3. 支持 humidifier。

1 月 28 日

  1. 支持 UI 配置!

1 月 26 日

  1. 支持 RGB 灯。

1 月 25 日

  1. 更新米家服务器请求方法,自动生成设备状态请求。

1 月 23 日

  1. 支持从米家服务器读取状态,以解决部分设备通过局域网读取时出现 -9999 或 -4004 错误的问题!
  2. 支持 fan 设备类型,可以接入风扇了。

1 月 18 日

  1. 使调试日志内容更加详细,方便排查问题。

1 月 13 日

  1. 支持 light 设备类型,可以接入智能灯,并调光调色了!
  2. 支持灯内置的场景色选择

1 月 12 日

  1. 数值修正的方法变更为 paramsvalue_ratio 配置项。
  2. 重构代码,大幅优化代码结构,为扩展设备类型做准备。
  3. 本次更新后,涉及本插件的部分实体会重新生成,其 ID 带有后缀 _2,原实体不再可用。请删除之前的实体,然后把新实体的实体 ID 修改去除 _2 即可,历史记录和原有功能不受影响。
  4. 开关类型的实体在检测到不支持状态反馈后,会创建无状态反馈的实体用于控制。

1 月 11 日

  1. 现在 switch 也可以像 sensor 一样把设备的属性值显示在 state attribute 中了。此类设备无需再配置 sensor,直接将以前 sensor 配置的 mapping 内容合并进来即可,减少一半的网络请求。
  2. 针对“小米智能插座2 蓝牙网关版”的功率没有小数点的问题,设计了一个“power_100”的 mapping 对数值进行修正。

1 月 6 日

  1. 支持 cover 设备类型,现在可以接入窗帘、晾衣架等设备了
  2. 为了使多种设备的配置文件格式统一、方便后期拓展更多类型的设备,对配置文件格式进行了较大调整,新版本不再兼容以前的格式,请在升级时注意适配
  3. 优化代码结构及调用方式,响应更快了

调试

如果组件工作不正常,通过修改配置文件提升日志调试级别:

# configuration.yaml

logger:
  default: warn
  logs:
    custom_components.xiaomi_miot_raw: debug
    miio: debug
Comments
  • 小米AI音箱不能TTS。(已解决)

    小米AI音箱不能TTS。(已解决)

    小米AI音箱不能TTS。 Logger: custom_components.xiaomi_miot_raw.deps.xiaomi_cloud_new Source: custom_components/xiaomi_miot_raw/deps/xiaomi_cloud_new.py:218 Integration: Xiaomi MIoT (documentation, issues) First occurred: 上午1:04:32 (1 occurrences) Last logged: 上午1:04:32

    Error while requesting MIoT api /miotspec/action :

    2021.6.28: 如遇 speak_text 无法执行而 execute_text 正常工作的,只要执行指令“跟我说 xxx”,小爱就会说出后面的文字。 感谢 @georgezhao2010 提供解决方案!原帖 https://github.com/ha0y/xiaomi_miot_raw/issues/139#issuecomment-869184305

    FAQ 
    opened by weans1975 30
  • zhimi.heater.na1 fails on discover climate entity

    zhimi.heater.na1 fails on discover climate entity

    Having issues adding zhimi.heater.na1

    Climate entity throws two types of error.

    Child Lock and Indicator light are discovered once enabled in Configuration.

    Still missing the "Return to home" (urn:zhimi-spec:property:return-to-middle:00000003:zhimi-na1:1) and sound control (urn:miot-spec-v2:service:alarm:00007804:zhimi-na1:1) toggles

    2021-05-06 18:00:41 ERROR (MainThread) [custom_components.xiaomi_miot_raw.climate] Modes {'Fan not swing': 0, 'Fan swing': 1} contains unsupported ones. Please report this message to the developer.
    2021-05-06 18:00:41 ERROR (MainThread) [homeassistant.components.climate] Error adding entities for domain climate with platform xiaomi_miot_raw
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 376, in async_add_entities
        await asyncio.gather(*tasks)
      File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 485, in _async_add_entity
        capabilities=entity.capability_attributes,
      File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 192, in capability_attributes
        self.hass, self.min_temp, self.temperature_unit, self.precision
      File "/config/custom_components/xiaomi_miot_raw/climate.py", line 179, in min_temp
        return self._ctrl_params['target_temperature']['value_range'][0]
    KeyError: 'target_temperature'
    2021-05-06 18:00:41 ERROR (MainThread) [homeassistant.components.climate] Error while setting up xiaomi_miot_raw platform for climate
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 251, in _async_setup_platform
        await asyncio.gather(*pending)
      File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 376, in async_add_entities
        await asyncio.gather(*tasks)
      File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 485, in _async_add_entity
        capabilities=entity.capability_attributes,
      File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 192, in capability_attributes
        self.hass, self.min_temp, self.temperature_unit, self.precision
      File "/config/custom_components/xiaomi_miot_raw/climate.py", line 179, in min_temp
        return self._ctrl_params['target_temperature']['value_range'][0]
    KeyError: 'target_temperature'
    
    enhancement 
    opened by blakadder 18
  • Qingping Air Monitor Lite

    Qingping Air Monitor Lite

    Has anyone else faced the same issue? After updating miot on one of the latest versions stopped polling pm2.5 pm10 and CO2 data showing as unavailable.

    it used to work stable for months on lan mode. Now it can not be connected via ip and token.

    Can you check?

    Screenshot_2021-07-03-21-21-21-786_io homeassistant companion android

    opened by nikomaxos 13
  • 电蚊香自动配置无效ateai.mosq.dakuo

    电蚊香自动配置无效ateai.mosq.dakuo

    电蚊香自动配置无效 ateai.mosq.dakuo

    自动配置结果:

    fan:
    mapping:
    {"mosquito_dispeller":{"switch_status":{"siid":2,"piid":1}},"a_l":{"repellent_liquid_reset_liquid":{"siid":5,"aiid":1}}}
    params:
    {"mosquito_dispeller":{"main":true}}
    

    结果导致fan不能turn_on

    [139862162640512] 'switch_status'
    Traceback (most recent call last):
      File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 185, in handle_call_service
        await hass.services.async_call(
      File "/usr/src/homeassistant/homeassistant/core.py", line 1492, in async_call
        task.result()
      File "/usr/src/homeassistant/homeassistant/core.py", line 1527, in _execute_service
        await handler.job.target(service_call)
      File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
        await self.hass.helpers.service.entity_service_call(
      File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 658, in entity_service_call
        future.result()  # pop exception if have
      File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in async_request_call
        await coro
      File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 695, in _handle_entity_call
        await result
      File "/usr/src/homeassistant/homeassistant/components/fan/__init__.py", line 395, in async_turn_on_compat
        await self.async_turn_on(
      File "/config/custom_components/xiaomi_miot_raw/fan.py", line 182, in async_turn_on
        result &= await self.set_property_new(self._did_prefix + "switch_status", self._ctrl_params['switch_status']['power_on'])
    KeyError: 'switch_status'
    
    bug 
    opened by ptbsare 10
  • Cover integration stopped working after update

    Cover integration stopped working after update

    Logger: homeassistant.setup Source: setup.py:289

    Unable to prepare setup for platform xiaomi_miot_raw.cover: Platform not found (cannot import name 'CoverDevice' from 'homeassistant.components.cover' (/usr/src/homeassistant/homeassistant/components/cover/init.py)).

    HA 2022.2.0 HACS 1.21.0 Miot 1.4.1

    opened by WiseProjects 9
  • hyd.airer.znlyj1 show current position equals to 1 instead of 0 in the highest position.

    hyd.airer.znlyj1 show current position equals to 1 instead of 0 in the highest position.

    The hyd.airer.znlyj1 currently has: lowest position: current position = 100% highest position: current position = 1%

    In expectation, we should have: lowest position: current position = 100% highest position: current position = 0%

    enhancement 
    opened by ouzhg 9
  • 小米插座2 蓝牙网关版, 提示token长度不等于32

    小米插座2 蓝牙网关版, 提示token长度不等于32

    C:\script>miiocli plugv3 --ip 192.168.3.25 --token xxxxxxxxxx info Usage: miiocli plugv3 [OPTIONS] COMMAND [ARGS]...

    Error: Invalid value for '--token': Token length != 32 chars: 35

    opened by hzh-hzh 9
  • Set release tag

    Set release tag

    作者你好,您看方便设置release tag么,设置大版本release更新,这样方便hacs更新和管理,否则每次master commit,都需要在hacs更新一次,比较频繁,也容易造成不稳定的问题。 Hi, could you please add release tag to this repo. It would be much more convienient for us to manage this in hacs.

    opened by ptbsare 9
  • Add smart plug (wifi) support

    Add smart plug (wifi) support

    I have an mi smart plug (wifi) connected to mi home. In the integration it shows that I have 1 device in my account but it have 0 entities in this integration.

    opened by teo2peer 9
  • 除湿机,缺少了水满检测

    除湿机,缺少了水满检测

    目前除湿机缺少了水满检测,其实可以用过状态值“dehumidifi_switch_status”加以判断

    做了个自定义判断,还是希望继承到插件里面

    binary_sensor: - platform: template sensors: chushiji_jiujiao: friendly_name: "除湿机水满" device_class: moisture value_template: "{{state_attr('humidifier.323568','dehumidifi_switch_status')}}"

    opened by weiyideai520 8
  • 更新以后门锁重新添加就挂了

    更新以后门锁重新添加就挂了

    2021-06-25 09:52:15 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry 门锁 for xiaomi_miot_raw Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/homeassistant/config_entries.py", line 293, in async_setup result = await component.async_setup_entry(hass, self) # type: ignore File "/home/lunaw/.homeassistant/custom_components/xiaomi_miot_raw/init.py", line 119, in async_setup_entry config[item] = json.loads(entry.data.get(item)) File "/usr/lib/python3.9/json/init.py", line 346, in loads return _default_decoder.decode(s) File "/usr/lib/python3.9/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/lib/python3.9/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 16 (char 15)

    opened by lunaw 8
  • Integration is using deprecated `DEVICE_CLASS_*` constants

    Integration is using deprecated `DEVICE_CLASS_*` constants

    This custom integration uses deprecated DEVICE_CLASS_* constants in its codebase.

    The DEVICE_CLASS_* constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.

    For example, for the device classes supported by the sensor platform, there is now a SensorDeviceClass enum. So if a sensor previously used the DEVICE_CLASS_ENERGY constant, it should now use SensorDeviceClass.ENERGY. Other platforms (like binary_sensor, and number) provide similar enumerations for their supported device classes.

    The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.

    If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!

    Kindest regards,

    ../Frenck

    opened by frenck 0
  • DCL01CM induction cooker only status and time left available

    DCL01CM induction cooker only status and time left available

    Hi I have bought a xiaomi induction cocker V1 Model: DCL01CM chunmi.ihcooker.exp1

    I would like to monitor/set the cooking temperature and/or the cooking power I succesfully integrate it in Home Assistant (via Xiaomi MiIot integration and user/pwd and token retrieval) but I see only the "status" and "time left" properties Is there any way to gel all data (temp, power etc...) ?? thanks Davide

    opened by arzaman 0
  • Unexpected error for call_service at pos 2: wait() got an unexpected keyword argument 'loop' Traceback

    Unexpected error for call_service at pos 2: wait() got an unexpected keyword argument 'loop' Traceback

    Home Assistant 2022.12.6 前端版本: 20221213.0 - latest 系统安装方式:core 调用服务:Xiaomi MIoT: speak_text 脚本内容: alias: 电视开网 sequence:

    • service: miwifi.request data: uri: xqsystem/set_mac_filter body: mac:********* wan: 1 target: device_id: **********
    • service: xiaomi_miot_raw.speak_text data: entity_id: media_player.lx5a_cloud_804653 text: 电视网络已恢复

    Logger: homeassistant.components.script.1671692982927 Source: custom_components/xiaomi_miot_raw/basic_dev_class.py:709 Integration: 脚本 (documentation, issues) First occurred: 19:01:57 (1 occurrences) Last logged: 19:01:57

    平板开网: Error executing script. Unexpected error for call_service at pos 2: wait() got an unexpected keyword argument 'loop' Traceback (most recent call last): File "/srv/homeassistant/lib/python3.10/site-packages/homeassistant/helpers/script.py", line 451, in _async_step await getattr(self, handler)() File "/srv/homeassistant/lib/python3.10/site-packages/homeassistant/helpers/script.py", line 684, in _async_call_service_step await service_task File "/srv/homeassistant/lib/python3.10/site-packages/homeassistant/core.py", line 1745, in async_call task.result() File "/srv/homeassistant/lib/python3.10/site-packages/homeassistant/core.py", line 1782, in _execute_service await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)( File "/home/homeassistant/.homeassistant/custom_components/xiaomi_miot_raw/basic_dev_class.py", line 709, in async_service_handler yield from asyncio.wait(update_tasks, loop=self.hass.loop) TypeError: wait() got an unexpected keyword argument 'loop'

    opened by songjingcn 0
Releases(v1.4.3)
  • v1.4.3(Apr 9, 2022)

    本次更新修复了更新到 Home Assistant 2022.4 版本后风扇类实体报错的问题。


    This update fixes the error of fan entities.

    Source code(tar.gz)
    Source code(zip)
  • v1.4.2(Feb 13, 2022)

    本次更新修复了 Home Assistant 更新到 2022.2 之后的版本后,电机类设备(窗帘、晾衣架等)不出现实体的问题。建议更新此版本。感谢 @xrh0905 !


    The update fixes the bug that no cover entities are generated by Xiaomi MIoT on Home Assistant 2022.2 or higher. Recommended for all users. Thanks to @xrh0905 !

    Source code(tar.gz)
    Source code(zip)
  • v1.4.1(Jan 30, 2022)

    本次更新消除了 Custom_component implements device_state_attributes. 的警告。如果您将 Xiaomi MIoT 与 Home Assistant 2021.12 及以后的版本配合使用,则会在日志中看到此警告;您可以通过更新 Xiaomi MIoT 至此版本来消除警告。如果您未看到此警告,则无需更新此版本。

    非常抱歉,由于本人近期忙于工作,未及时回复 Issue,未及时修复 Bug,给大家造成困扰。年后开始处理积压的 Issue 和 Bug。祝大家新春快乐!


    The update fixes Custom_component implements device_state_attributes. deprecation warning. The warning is shown in logs if you use Xiaomi MIoT with Home Assistant 2021.12 or higher. You can get rid of the warning by updating Xiaomi MIoT to this version. You don't need to update if you didn't see the warning or you don't care it.

    I'm sorry for my late response to issues and bugs. I got a new job and am busy at it in recent months. I will start working on these bugs in the backlog next month. Have a nice day!

    Source code(tar.gz)
    Source code(zip)
  • v1.4.0(Oct 6, 2021)

    本次更新为正式版,建议所有用户升级。更新主要为体验优化,解决之前部分使用场景下的痛点。现存 Bug 修复会在下一个 Release 发布。

    • 支持在小米账号密码修改后,直接在插件中进行更新。
    • 支持直接重新适配设备,无需再删除设备重新添加。
    • 支持直接修改已添加设备的 mapping 和 params。
    • 支持直接修改已添加设备的 IP 和 token。
    • 优化支持“FIVE智能消毒杀菌灯”。

    • Support updating Xiaomi account credential in options.
    • Support re-adapting devices without deleting them.
    • Support editing mapping and params in options.
    • Support editing IP and token in options.
    • Add support for uvfive.s_lamp.slmap2 .
    Source code(tar.gz)
    Source code(zip)
  • v1.3.1(Sep 20, 2021)

    本次更新为正式版,建议所有用户升级。更新主要为 bug 修复。

    • 修复 YAML 配置失效的问题 (#244) - 感谢 @ptbsare
    • 临时去除小爱音箱的播放状态反馈功能,因为部分型号服务器反馈错误导致无法暂停。
    • 修复红外空调在 HomeKit 中不可用的问题 (#249)。
    • 新增适配“达阔智能电蚊香”。
    • 更新繁体中文翻译 by @bluefoxlee。

    • Fixes a bug with YAML configuration (#244) thanks to @ptbsare.
    • Remove the state feedback for media players temporarily as the server may return wrong state.
    • Fixes a bug that InfraRed climate won't work with HomeKit (#249).
    • Add support for ateai.mosq.dakuo .
    • Update translation for Chinese Traditional by @bluefoxlee.
    Source code(tar.gz)
    Source code(zip)
  • v1.3.0(Sep 14, 2021)

    本次更新为正式版,建议所有用户升级。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    支持小爱音箱、万能遥控虚拟出的红外设备,可接入 Home Assistant 直接控制。


    Add support for InfraRed devices simulated by Universal Remote and Xiaomi AI Speaker.

    Source code(tar.gz)
    Source code(zip)
  • v1.2.5(Sep 7, 2021)

    本次更新为 v1.2.4 的 bug 修复。

    • 修复晾衣架/卷帘无法生成主实体的问题。(#235)

    • Fixes a bug that cover entity fails. (#235)
    Source code(tar.gz)
    Source code(zip)
  • v1.2.4(Sep 2, 2021)

    本次更新为正式版。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    • 优化 Gosund 智能插座 CP1-AM 和 Gosund 智能插座 CP2 的电量统计功能。
    • 优化扫地机器人风扇转速为空时的处理方法。
    • 支持扫地机器人电量显示。

    • Improve electric measuring for cuco.plug.cp1m and cuco.plug.cp2 .
    • Handle the case that vacuum's fan_speed is empty.
    • Support battery sensor for vacuum.
    Source code(tar.gz)
    Source code(zip)
  • v1.2.3(Aug 28, 2021)

    • 优化扫地机器人风扇转速为空时的处理方法。
    • 支持扫地机器人电量显示。

    • Handle the case that vacuum's fan_speed is empty.
    • Support battery sensor for vacuum.

    (Thanks to @blakadder )

    Source code(tar.gz)
    Source code(zip)
  • v1.2.2(Aug 25, 2021)

    本次更新为正式版。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    • 修复智米风扇无法调速的问题。
    • 修复小米门窗传感器 2 缺失门状态实体的问题。
    • 修复扫地机器人无法调整风扇转速的问题。
    • 支持扫地机器人的发声功能(感谢 @blakadder)。

    • Fixes a bug that zhimi.fan.fa1 couldn't adjust speed.
    • Fixes isa.magnet.dw2hl missing door state sensor.
    • Fixes a bug that vacuum couldn't adjust fan speed.
    • Support locating vacuum thanks to @blakadder .
    Source code(tar.gz)
    Source code(zip)
  • v1.2.1(Aug 22, 2021)

    本次更新为正式版,建议所有用户升级。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    • 新增了对 Home Assistant 新特性“数值输入器”和“多项选择器”的支持。升级后,很多设备都会出现比以前更丰富的功能。例如,电风扇可以设置设备端的定时关机,还可以选择摇头角度;以往只能在“属性”中看到的选项,现在都可以直接控制了。强烈建议更新此版本!
    • 优化登录账号体验。
    • 修复通过 YAML 配置 sensor 失败的问题(#215)。
    • 紧急修复 v.1.2.0 中门锁等设备不可用的问题。请使用此版本。

    • Adds support for "select" and "number" domain. You will see more options for devices after upgrading, e.g. power off timer & oscillating angle.
    • Optimize config flow for login.
    • Fixes an error when adding sensor using YAML (#215).
    • Fixes a bug that causes some sensors won't work in v1.2.0.
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Aug 22, 2021)

    此版本存在 bug,请使用 v1.2.1

    • 新增了对 Home Assistant 新特性“数值输入器”和“多项选择器”的支持。升级后,很多设备都会出现比以前更丰富的功能。例如,电风扇可以设置设备端的定时关机,还可以选择摇头角度;以往只能在“属性”中看到的选项,现在都可以直接控制了。强烈建议更新此版本!
    • 优化登录账号体验。
    • 修复通过 YAML 配置 sensor 失败的问题(#215)。

    • Adds support for "select" and "number" domain. You will see more options for devices after upgrading, e.g. power off timer & oscillating angle.
    • Optimize config flow for login.
    • Fixes an error when adding sensor using YAML (#215).
    Source code(tar.gz)
    Source code(zip)
  • v1.1.4(Aug 19, 2021)

  • v1.1.3(Aug 18, 2021)

  • v1.1.2(Aug 13, 2021)

    本次更新为正式版。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    • 更多的设备状态可以显示名称而不是编号了。例如,门窗传感器的光强将显示为Strong而不是1
      如果您在自动化中使用了它们,请注意修改。
    • 新增支持“贝氪智能托腰办公椅” ( bkrobo.chair.bc03 )
    • 修复空调无法调节湿度的问题。

    • Device state now shows as corresponding name instead of a number. Make sure you have modified them if you used them in automatons.
    • Add support for bkrobo.chair.bc03 .
    • Fixes a bug that climate target humidity won't work.
    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Aug 13, 2021)

  • v1.1.0(Aug 11, 2021)

    本次更新为正式版,建议所有用户升级。更新包括距离上次正式版所有的 Pre-release 功能以及新增功能。

    • 优化配置流程,用户可以在登录账号后直接选择要添加的设备。
    • 添加账号时带入的设备,退出账号会自动删除,不再需要手动删除。
    • 修复 绿米人体传感器 2 不可用的问题。
    • 修复首次添加设备 token 转云端方式报错的问题。
    • 修复设备未适配的报错问题。
    • 更新繁体中文翻译 by @bluefoxlee

    • Optimize config flow, allowing user to select device right after logging in.
    • When logging out account, devices that are not manually added will be deleted automatically.
    • Bug fix for lumi.motion.bmgl01 .
    • Fixes an error of config flow while adding devices by token (Close #195)
    • Fixes an error of config flow when device is not supported.
    • Update translation for Chinese Traditional by @bluefoxlee
    Source code(tar.gz)
    Source code(zip)
  • v1.0.3(Aug 4, 2021)

  • v1.0.2(Aug 3, 2021)

    • 修复首次添加设备 token 转云端方式报错的问题。
    • 修复设备未适配的报错问题。

    • Fixes an error of config flow while adding devices by token (Close #195)
    • Fixes an error of config flow when device is not supported.
    Source code(tar.gz)
    Source code(zip)
  • v1.0.1(Aug 3, 2021)

  • v1.0.0(Aug 1, 2021)

    经过半年多来的开发、上百名使用者的测试和反馈,现本插件的功能已基本稳定。后续插件仍将不断优化,主要方向为设备更多属性的自动适配、具体设备存在问题的修复、操作友好度的优化、增加更多本地化的支持等。为避免频繁更新对用户的干扰,听取 #74 的建议,此后的更新会通过 release 发布。

    更新日志也将由首页转移至本页面。

    以下是截止此次 release 的版本更新日志。

    历史更新日志

    7 月 2 日

    1. 优化设备部分属性不可读时的报错信息。

    7 月 1 日

    1. 传感器默认将属性展开为实体。
    2. 修复门窗传感器问题。
    3. 修复部分风扇无法调速的问题 #175 。

    6 月 27 日

    1. 修复风扇实体在旧版本 HA 和 HomeKit 中的问题。
    2. 优化设备状态表现,设备不可用时所有实体一同变灰。

    6 月 24 日

    1. 优化支持“米家直流变频落地扇 E”(dmaker.fan.1e)。
    2. 请注意:为了更好地适配 HomeKit,本次更新后,门磁、人体、水浸传感器在启用了“每个属性作为单独的实体”时,生成的部分实体会由普通传感器(sensor)类型变为二元传感器(binary_sensor)类型。如果您在自动化中使用了这些实体,请注意更新它们。同时,这些新的实体可以直接加入 HomeKit 了。

    6 月 21 日

    1. 修复部分风扇实体在旧版本 HA 中无法调速的问题。
    2. 修复“米家智能墙壁插座”功率不正确的问题。
    3. 优化支持“米家空调伴侣 Pro”(lumi.acpartner.mcn04)。

    6 月 17 日

    1. 支持多模网关触发警报响铃。
    2. 支持 Aqara VRF 空调控制器。
    3. 修复日志中不断报错的问题。

    5 月 28 日

    1. 优化支持“Gosund 智能排插”(cuco.plug.sp5)。
    2. 优化支持“米家智能驱蚊器 2”(zimi.mosq.v1)。

    5 月 17 日

    1. 修复童锁首次启动时不可用的问题。
    2. 优化自动适配。
    3. 支持新版服务调用界面。

    5 月 16 日

    1. 优化添加设备体验。
    2. 修复部分设备指示灯的问题。

    5 月 6 日

    1. 支持电蚊香。
    2. 支持植物监测仪(hhcc.plantmonitor.v1)。
    3. 支持更多风扇的无级变速。

    4 月 28 日

    1. 修复部分设备自动识别失败的问题。

    4 月 22 日

    1. 支持 vacuum 设备类型,可以接入扫地机器人了。
    2. 支持第三方设备!

    4 月 19 日

    1. 优化性能。
    2. 增加“执行 action”和“set property”服务(供高级用户使用)。

    4 月 10 日

    1. 支持洗衣机的更多设置选项。
    2. 优化设备详情页状态属性展示。
    3. 支持卷帘“反转位置百分比”功能。

    4 月 6 日

    1. 支持风扇无级调速(需设备支持并将 HA 更新到 2021.3.0 以上版本)
    2. 修复本地接入设备动作列表执行失败的问题。

    4 月 5 日

    1. 支持鱼缸(hfjh.fishbowl)。
    2. 修复 cover 状态反馈不正确的问题。

    4 月 2 日

    1. 修复本地设备状态经常出现“不可用”的问题。
    2. 优化新设备的默认名称。
    3. 支持批量添加设备~~(实验中)~~

    3 月 30 日

    1. 支持门锁!

    3 月 26 日

    1. 优化代码结构。
    2. 优化状态属性显示。
    3. 优化添加设备体验。
    4. 修复部分热水器不可用问题。

    3 月 23 日

    1. 修复部分设备支持本地读取但读取失败的问题。
    2. 部分设备的状态属性可以显示名称而不是编号。

    3 月 22 日

    1. 支持部分新设备类型。
    2. 修复依赖版本导致的问题。

    3 月 19 日

    1. 修复部分除湿机问题 #75

    3 月 17 日

    1. 支持新风机辅热。
    2. 修复部分加湿器的湿度调节。
    3. 支持电水壶。
    4. 修复非 WiFi 设备问题 #61

    3 月 16 日

    1. 优化设备离线的处理方式。

    3 月 14 日

    1. 支持水质传感器。
    2. 支持 water heater 设备类型,可以接入热水器了。

    3 月 8 日

    1. 支持设备童锁、指示灯开关。(在选项中启用)

    3 月 5 日

    1. 优化网络状况不佳时的报错逻辑,避免日志中出现大量 ERROR。

    3 月 3 日

    1. 优化云端接入性能。

    2 月 28 日

    1. 优化洗衣机接入。

    2 月 22 日

    1. 空调支持更多功能。
    2. 支持传感器将属性展开为实体。(在选项中设置)

    2 月 21 日

    1. 支持空调设备指定其他实体作为环境温度来源。

    2 月 18 日

    1. 采用新的实体 ID 格式,不再受设备名称影响。
    2. 优化非 WiFi 设备接入。

    2 月 16 日

    1. 大幅优化添加设备流程,部分设备在登录账号后可以实现零输入接入。
    2. MIoT 云端接入扩展到所有已接入米家的设备,包括:
    • 不在局域网中的设备
    • 蓝牙、蓝牙 Mesh 和 ZigBee 设备
    • 他人共享给自己的设备
    1. 优化启动时子设备的等待时间。

    2 月 14 日

    1. 支持 climate 设备类型,可以接入空调、空调伴侣等设备了。
    2. 支持晾衣架的烘干功能。

    2 月 9 日

    1. 支持传感器自动加单位。
    2. 增加小爱“播报指定文本”和“执行指定指令”服务。

    2 月 8 日

    1. 支持小爱音箱从 UI 配置。
    2. 支持洗衣机等设备的 action 调用。

    2 月 6 日

    1. 支持小爱音箱。

    2 月 3 日

    1. 支持了一个设备多种类型的自动配置,现在像风扇灯、晾衣架这类具有子设备的设备,可以自动识别一次性接入
    2. 由于 1 的原因,插件内部数据存储方式发生较大变化,部分设备需要删除重新配置,需要重新配置的设备已在通知栏中写明;文件配置的设备不受影响。
    3. 大幅提高了自动识别的准确性。

    1 月 31 日

    1. 现已支持部分设备类型的自动配置。
    2. 修复大量 bug。
    3. 支持 humidifier。

    1 月 28 日

    1. 支持 UI 配置!

    1 月 26 日

    1. 支持 RGB 灯。

    1 月 25 日

    1. 更新米家服务器请求方法,自动生成设备状态请求。

    1 月 23 日

    1. 支持从米家服务器读取状态,以解决部分设备通过局域网读取时出现 -9999 或 -4004 错误的问题!
    2. 支持 fan 设备类型,可以接入风扇了。

    1 月 18 日

    1. 使调试日志内容更加详细,方便排查问题。

    1 月 13 日

    1. 支持 light 设备类型,可以接入智能灯,并调光调色了!
    2. 支持灯内置的场景色选择

    1 月 12 日

    1. 数值修正的方法变更为 paramsvalue_ratio 配置项。
    2. 重构代码,大幅优化代码结构,为扩展设备类型做准备。
    3. 本次更新后,涉及本插件的部分实体会重新生成,其 ID 带有后缀 _2,原实体不再可用。请删除之前的实体,然后把新实体的实体 ID 修改去除 _2 即可,历史记录和原有功能不受影响。
    4. 开关类型的实体在检测到不支持状态反馈后,会创建无状态反馈的实体用于控制。

    1 月 11 日

    1. 现在 switch 也可以像 sensor 一样把设备的属性值显示在 state attribute 中了。此类设备无需再配置 sensor,直接将以前 sensor 配置的 mapping 内容合并进来即可,减少一半的网络请求。
    2. ~~针对“小米智能插座2 蓝牙网关版”(chuangmi.plug.212a01)的功率没有小数点的问题,设计了一个“power_100”的 mapping 对数值进行修正。~~

    1 月 6 日

    1. 支持 cover 设备类型,现在可以接入窗帘、晾衣架等设备了
    2. 为了使多种设备的配置文件格式统一、方便后期拓展更多类型的设备,对配置文件格式进行了较大调整,新版本不再兼容以前的格式,请在升级时注意适配
    3. 优化代码结构及调用方式,响应更快了
    Source code(tar.gz)
    Source code(zip)
Micropython automatic watering

micropython-automatic-watering micropython automatic watering his code was developed to be used with nodemcu esp8266, but can be modified to work with

1 Nov 24, 2021
A simple small scale electric car was build which can be driven by remote control and features a fully autonomous parking procedure.

personal-autonomous-parking-car-raspberry A simple electric car model was build using Raspbery pi. The car has remote control and autonomous operation

Kostas Ziovas 2 Jan 26, 2022
3D-printable hexagonal mirror array capable of reflecting sunlight into arbitrary patterns

3D-printable hexagonal mirror array capable of reflecting sunlight into arbitrary patterns

Ben Bartlett 2.3k Dec 30, 2022
iot-dashboard: Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things.

Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things. Written in Python. Flask applicati

2 Jul 29, 2022
Using a GNSS module (Beidou + GPS) and the mapquest static map API

Using a GNSS module (Beidou + GPS) and the mapquest static map API

Kongduino 1 Nov 04, 2021
智能无人机路径规划仿真系统是一个具有操作控制精细、平台整合性强、全方向模型建立与应用自动化特点的软件

Drone智能无人机路径规划仿真系统是一个具有操作控制精细、平台整合性强、全方向模型建立与应用自动化特点的软件。它以A、B两国在C区开展无人机战争为背景,该系统的核心功能是通过仿真平台规划无人机航线,并进行验证输出,数据可导入真实无人机,使其按照规定路线精准抵达战场任一位置,支持多人多设备编队联合行动。

wwy 349 Jan 03, 2023
Projet d'integration SRI 3A ROS

projet-integration-sri-2021-2022 Projet d'intégration ROS SRI 2021 2022 Organization: Planification de tâches Perception Saisie: Cédérick Mouliets Sim

AIP Primeca Occitanie 3 Jan 07, 2022
This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC

About This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC, issue #56 and f

Philippe Teuwen 28 Nov 21, 2022
GUI wrapper designed for convenient service work with TI CC1352/CC2538/CC2652 based Zigbee sticks or gateways. Packed into single executable file

ZigStar GW Multi tool is GUI wrapper firtsly designed for convenient service work with Zig Star LAN GW, but now supports any TI CC1352/CC2538/CC2652 b

133 Jan 01, 2023
Home Assistant custom components MPK-Lodz

MPK Łódź sensor This sensor uses unofficial API provided by MPK Łódź. Configuration options Key Type Required Default Description name string False MP

Piotr Machowski 3 Nov 01, 2022
SPI driven CircuitPython driver for PCA9745B constant current LED driver.

Introduction THIS IS VERY MUCH ALPHA AND IN ACTIVE DEVELOPMENT. THINGS WILL BREAK! THIS MAY ALSO BREAK YOUR THINGS! SPI driven CircuitPython driver fo

Andrew Ferguson 1 Jan 14, 2022
Code for the paper "Planning with Diffusion for Flexible Behavior Synthesis"

Planning with Diffusion Training and visualizing of diffusion models from Planning with Diffusion for Flexible Behavior Synthesis. Guided sampling cod

Michael Janner 310 Jan 07, 2023
A 3rd party Moonraker component to create timelapse of 3D prints.

A 3rd party Moonraker component to create timelapse of 3D prints.

Mainsail-Crew 166 Dec 26, 2022
Get input from OLED Joystick, Runs command, Displays output on OLED Screen (Great for P4wnP1)

p4wnsolo-joyterm Gets text input from OLED Joystick Runs the command you typed Displays output on OLED Screen (Great for P4wnP1 - even better on Raspb

PawnSolo 7 Dec 19, 2022
LUNA: a USB multitool & nMigen library

LUNA is a full toolkit for working with USB using FPGA technology; and provides hardware, gateware, and software to enable USB applications.

Great Scott Gadgets 750 Dec 28, 2022
Raspberry Pi Pico and LoRaWAN from CircuitPython

Raspberry Pi Pico and LoRaWAN from CircuitPython Enable LoRaWAN communications on your Raspberry Pi Pico or any RP2040-based board using CircuitPython

Alasdair Allan 15 Oct 08, 2022
Turn your Raspberry Pi Pico into a USB Rubber Ducky

pico-ducky Turn your Raspberry Pi Pico into a USB Rubber Ducky Install Requirements CircuitPython for the Raspberry Pi Pico adafruit-circuitpython-bun

Konstantinos 5 Nov 08, 2022
A Home Assistant integration for Solaredge inverters

A Home Assistant integration for Solaredge inverters. Supports multiple inverters chained through RS485.

Seth 50 Dec 23, 2022
LedFx is a network based LED effect controller with support for advanced real-time audio effects

Welcome to LedFx ✨ -Making music come alive! LedFx website: https://ledfx.app/ What is LedFx? What LedFx offers is the ability to take audio input, an

786 Jan 02, 2023
🎃 Some spooky code samples to hack yourself a pumpkin 👻

🎃 Tech Or Treat 👻 It's spooky season for those who celebrate Halloween, and to get in the spirit (spirit - get it? 👻 ) we thought it would be fun t

Jim Bennett 5 Feb 07, 2022