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)
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
E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

2.8k Dec 30, 2022
CO2Ampel - This RaspberryPi project uses weather data to estimate the share of renewable energy in the power grid

CO2Ampel This RaspberryPi project uses weather data to estimate the share of ren

Felix 4 Jan 19, 2022
Port of Uxn to digital hardware in the Logisim simulator

Uxn-Logisim Implements the Uxn instruction set in digital hardware. Very WIP. Contents cpu.circ - The Logisim file microcode.mc - Microcode source fil

DeltaF1 11 Mar 27, 2022
Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in interesting ways to sense and manipulate the environment.

Mycodo Environmental Regulation System Latest version: 8.12.9 Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in i

Kyle Gabriel 2.3k Dec 29, 2022
A small Python app to converse between MQTT messages and 433MHz RF signals.

mqtt-rf-bridge A small Python app to converse between MQTT messages and 433MHz RF signals. This acts as a bridge between Paho MQTT and rpi-rf. Require

David Swarbrick 3 Jan 27, 2022
LED effects plugin for klipper

This plugin allows Klipper to run effects and animations on addressable LEDs, such as Neopixels, WS2812 or SK6812.

Julian Schill 238 Jan 04, 2023
Huawei Solar sensors for Home Assistant

Huawei Solar Sensors This integration splits out the various values that are fetched from your Huawei Solar inverter into separate HomeAssistant senso

Thijs Walcarius 151 Dec 31, 2022
Monitor Live USB Plug In & Plug Out Events

I/O - Live USB Monitoring Author: Jonathan Scott @jonathandata1 Date: 3/13/2021 CURRENT VERSION 1.0 This is just a simple bash script that calls a pyt

Jonathan Scott 17 Dec 03, 2022
The software that powers the sPot: a 4th generation

This code is meant to accompany this project in which a Spotify client is built into an iPod "Classic" from 2004. Everything is meant to run on a Raspberry Pi Zero W.

Guy Dupont 683 Dec 28, 2022
Workshop for student hackathons focused on IoT dev

Scenario: The Mutt Matcher (IoT version) According to the World Health Organization there are more than 200 million stray dogs worldwide. The American

Microsoft 15 Aug 10, 2022
Home Assistant custom integration for Yi cameras: yi-hack-MStar, yi-hack-Allwinner and yi-hack-Allwinner-v2

yi-hack Home Assistant integration Overview yi-hack Home Assistant is a custom integration for Yi cameras (or Sonoff camera) with one of the following

roleo 131 Jan 03, 2023
OpenStickFirmware is open source software designed to handle any and all tasks required in a custom Fight Stick

OpenStickFirmware is open source software designed to handle any and all tasks required in a custom Fight Stick. It can handle being the brains of your entire stick, or just handling the bells and wh

Sleep Unit 23 Nov 24, 2022
Software framework to enable agile robotic assembly applications.

ConnTact Software framework to enable agile robotic assembly applications. (Connect + Tactile) Overview Installation Development of framework was done

Southwest Research Institute Robotics 29 Dec 01, 2022
Minimal and clean dashboard to visualize some stats of Pi-Hole with an E-Ink display attached to your Raspberry Pi

Clean Dashboard for Pi-Hole Minimal and clean dashboard to visualize some stats of Pi-Hole with an E-Ink display attached to your Raspberry Pi.

Alessio Santoru 104 Dec 14, 2022
🔆 A Python module for controlling power and brightness of the official Raspberry Pi 7

rpi-backlight A Python module for controlling power and brightness of the official Raspberry Pi 7" touch display. Note: This GIF was created using the

Linus Groh 238 Jan 08, 2023
Various programs in Atari BASIC for #FujiNet for Atari 8-bit

FujiNet Various programs in Atari BASIC for #FujiNet for Atari 8-bit FujiNet-3D Tic Tac Toe In 1978, Scott Adams wrote a 3-D Tic Tac Toe game, for pla

Kay Savetz 2 Jan 01, 2022
BoneIO is a compact IO controller for home automation.

Project description BoneIO is a compact IO controller for home automation. Main features of this controller are Compact size (27x11x6)cm - 15 DIN modu

Maciej Krasuski 120 Nov 30, 2022
Poupool is an overflow swimming pool control software

Poupool - The swimming pool controller Poupool is a swimming pool control software. It is based on Transitions, Pykka and Paho MQTT. The user interfac

Cyril Jaquier 8 Jul 18, 2022
Home-Assistant MQTT bridge for Panasonic Comfort Cloud

Panasonic Comfort Cloud MQTT Bridge Home-Assistant MQTT bridge for Panasonic Comfort Cloud. Note: Currently this brige is a one evening prototype proj

Santtu Järvi 2 Jan 04, 2023