Xiaomi Miot
al-one/hass-xiaomi-miot · vv1.1.5
Automatic integrate all Xiaomi devices to HomeAssistant via miot-spec, support Wi-Fi, BLE, ZigBee devices. 小米米家智能家居设备接入Hass集成
In Apple Home through HomeKit Bridge
What HomeKit Bridge makes of each kind of entity this integration creates, read from its source code. A device only gets the ones that apply to it.
| Entity | Shows up as | Note |
|---|---|---|
light | Light | |
switch | Switch or outlet | |
cover | Blind, garage door, window or door | |
climate | Thermostat | |
fan | Fan | |
humidifier | Humidifier or dehumidifier | |
media_player | TV, receiver or media switches | Needs its own HomeKit Bridge in accessory mode |
camera | Camera | Needs its own HomeKit Bridge in accessory mode |
remote | TV remote (activities) | Needs its own HomeKit Bridge in accessory mode |
alarm_control_panel | Security system | |
binary_sensor | Sensor (motion, contact, leak, smoke…) | |
sensor | Sensor (temperature, humidity, air quality…) | |
vacuum | Vacuum (as a switch) | |
water_heater | Water heater (as a thermostat) | |
button | Button (as a switch) | |
select | Mode picker (as switches) | |
device_tracker | Presence (as an occupancy sensor) |
3 reports below say how a device from this integration behaves in the Home app.
What people report
Very wide Xiaomi/Mijia device-category coverage, mostly cloud with optional LAN; Bluetooth devices are cloud-only and some newer cameras and scooters expose few entities. New models are added regularly by PR.
- Works6
- Partly works2
- Not working4
- Requested6
- Won’t be supported1
| Device | In Home Assistant | In Apple Home | What they said | Source |
|---|---|---|---|---|
| Mijia Smart DC Inverter Circulation Fan Pro | Works | Entity customizations addedSaved copyMIoT spec link: https://home.miot-spec.com/spec/xiaomi.fan.p90 Adds entity customizations for the Mijia Smart DC Inverter Circulation Fan Pro (米家智能变频循环扇Pro). Notes on the spec: - Fan speed is a stepless `fan-level` range (1~100) in the `fan` service, so the fan entity picks it up as a percentage without a converter. Unlike `p85`, the duplicate `dm-service.fan-level` is a mirror and is left unexposed. - Instead of the usual `horizontal-swing-included-angle`, this model exposes independent `left-angle` / `right-angle` / `up-angle` / `down-angle` under `dm-service`, plus `symmetrical-swing-h` / … Excerpt saved from GitHub on 2026-10-23. | PR #2915 · 2026-08 | |
| Xiaomi air purifier | Works Local | Local over WiFi; needs Xiaomi account for setup; ESP32 flashableSaved copyI have a Xiaomi air purifier, and it's able to talk to HA locally over WiFI. The current mIOT integration supports a bunch of products locally. You will need to create a xiaomi iot account for initial setup. Excerpt saved from the Arctic Shift Reddit archive on 2026-10-23. | Reddit comment · 2025-05 | |
| Xiaomi Mi Temperature Humidity Monitor 2 | Works Cloud | Fixed after report: cloud updates stalled silently; 3-strike unavailable fix mergedSaved copyDevice model / 设备型号 miaomiaoce.sensor_ht.t2 ### Component version / 插件版本 1.1.1 ### HA core version / HA版本 2025.7.0 ### Integrated mode / 集成方式 Automatic (自动模式) ### The problem / 问题详情 有时候会突然发现HA中小米温度计的数据突然不再更新,而是保持历史某个时间点的数据(也没有报错说设备不可用),如果重启HA就可以更新数据 最近没有更新或重启任何插件or HA本身,就是不知道什么时候突然就不再更新数据了。从米家APP中是可以看到那几天的历史数据的,看来只是HA获取不到。 问题出现频率: 近两个月出现了3-4次 涉及设备: 家中所有小米温度计都是这个情况,不是单个设备问题。 本人粗鄙的思考: 在家中同一网络是有一个小米中枢网关的,我的理解是这些设备应该可以通过本地网络获取状态?可是在设备的info里面记录的updater却是cloud。并且,在日志中,也只能查找到查询cloud时的超时报错(可能有更多内容我没看懂)。 查询设备状态时能不能改成先用local查询状态,失败了再尝试cloud?还是说已经是这个逻辑只不过local失败的日志没有打印? … Excerpt saved from GitHub on 2026-10-23. | Issue #2716 · 2025-12 | |
| Xiaomi Smart Air Purifier Pro | Works | PM2.5 readings drive air quality alert automationSaved copySmoke detection (air quality) - smoke detector vs air quality monitor. Hi, I'm running HAOS on a miniPC and need advice on improving my air quality monitoring and fire/smoke protection system. Mainly due to potential issues with fireplace in a living room, but also like with other smart and HA stuff, simply why not!?" I currently have automation through Xiaomi Smart Air Purifier Pro where I monitor PM2.5, and when it jumps above 450, all Alexas increase to 100% volume, TTS plays "Warning warning. Air quality is bad... PM2.5 reading is \[actual reading\]...)", smart lights start flashing 15x … Excerpt saved from the Arctic Shift Reddit archive on 2026-10-23. | Reddit thread · 2025-08 | |
| Xiaomi Smart Fan 3 | Works | Partly in Home Extra preset-mode switches appear; iOS 16 shows all with same name | Fan works via HACS Xiaomi Miot AutoSaved copyThe problem Hi there I have Xiaomi smart fans 3 at home and absolutely love them! they can be integrated via a HACS-addon GitHub - al-one/hass-xiaomi-miot: Automatic integrate all Xiaomi devices to HomeAssistant via miot-spec, support Wi-Fi, BLE, ZigBee devices. 小米米家智能家居设备接入Hass集成 and are recognized as zhimi.fan.za5. In HA they have the following entities: the first entity is definied as a fan-entity, the indicator light as a light-entity and the physical lock as a switch-entity. the issue I ONLY expose the fan-entity to Homekit, however Homekit somehow also sees two switches. If I click on … Excerpt saved from GitHub on 2026-10-23. | Issue #91503 · 2023-04 |
| Xiaomi Smart Plug xiaomi.plug.04 | Works Local | Energy sensors and LAN support PR openSaved copySummary This PR combines three related changes, in this order: 1. Add daily/monthly energy sensors, LAN support and unambiguous settings for `xiaomi.plug.04`. 2. Enable the existing direct MIoT LAN path for `iot.switch.padw2p`. 3. Fix energy restoration precision and false decrease detection on top of the shared statistics implementation already merged in #2900. 4. Replace deprecated device-registry lookups while retaining minimum-HA compatibility. The implementation reuses the integration's existing Device, converters, platform entities and cloud statistics coordinator. It does not introduce … Excerpt saved from GitHub on 2026-10-23. | PR #2973 · 2026-09 | |
| Mi Air Conditioner Companion 2 | Partly works Cloud | Partly in Home Fan speed set from Home app failed until translation added | Fan speed settable in HA; HomeKit speed needs translation fix (case mismatch)Saved copy根据您描述的问题,这是关于小米空调伴侣2(lumi.acpartner.mcn02)在HomeKit中设置风速时的大小写不匹配问题。以下是分析和解决方案: 问题分析: 1. HomeKit期望的风速值为首字母大写(如"Medium"),但Home Assistant内部使用的是全小写(如"medium") 2. 这是由于HomeKit桥接组件中的`ordered_fan_speeds`使用了预定义的小写值,而设备期望大写值 解决方案: 1. 通过自定义配置修正风速属性: 在`configuration.yaml`中添加以下配置: [code] 2. 或者使用更完整的设备自定义配置: ```yaml xiaomi_miot: device_customizes: lumi.acpartner.mcn02: miot_type: urn:miot-spec-v2:device:acpartner:0000A00C:lumi-mcn02:1 select_properties: fan_level fan_speeds: Low,Medium,High,Auto chunk_prope Excerpt saved from GitHub on 2026-10-23. | Issue #2570 · 2025-07 |
| Xiaomi Electric Scooter 5 Pro | Partly works Cloud | Only an info button entity; no battery or odometer sensorsSaved copyI enabled debug logging, however there are no logs when I press `button.xiaomi_5pro_2486_info`. I tried 'Cloud' mode - still nothing Temporary workaround does not work for me. So I kindly request to add full support for device model: xiaomi.scooter.5pro FULL ATTRIBUTE BLOCK: ``` button.info: Xiaomi Electric Scooter 5 Pro NAAA model: xiaomi.scooter.5pro did: "1150140312" mac: CC:4D:75:D4:24:86 lan_ip: "" app_link: mihome://device?uid=1794605420&did=1150140312 miot_type: urn:miot-spec-v2:device:scooter:0000A077:xiaomi-5pro:1 available: true home_room: 1794605420 Garage button.info: Xiaomi … Excerpt saved from GitHub on 2026-10-23. | Issue #2807 · 2026-03 | |
| HFJH fish bowl aquarium | Not working Local | Added by local IP and token but goes unavailable when internet is downSaved copy{ "state": { "entity_id": "button.hfjh_m100_4f95_info", "state": "2025-12-02T18:11:20.454110+00:00", "attributes": { "button.info": "Akvas", "model": "hfjh.fishbowl.m100", "did": "", "mac": "2C:19:5C:0C:4F:95", "lan_ip": "192.168.1.62", "app_link": "", "miot_type": "urn:miot-spec-v2:device:fish-tank:0000A0A2:hfjh-m100:3", "available": true, "home_room": "", "icon": "mdi:information", "updater": "local", "fish_tank.on": true, "fish_tank.water_pump": true, "fish_tank.pump_flux": 1, "fish_tank.temperature": 25, "fish_tank.water_pump_status": 2, "no_disturb": false, "no_distu Excerpt saved from GitHub on 2026-10-23. | Issue #2758 · 2026-01 | |
| Mija Smart Plug 3 | Not working | Broken in Home Device not shown in HASS Bridge after pairing | Via HACS Xiaomi Miot Auto, not visible in HomeKit Bridge; closed not plannedSaved copyThe problem Hi I'm new to `home assistant` (`hass`). I am having the following problem with `Homekit Bridge`: First, I installed `Xiaomi Miot Auto `in hass with `HACS `to make my `Mija Smart Plug 3 `available in hass. This step has worked and I can control `Mija Smart Plug 3 ` in `Xiaomi Miot Auto`. Then I clicked `SUBMIT `all the way in `Homekit Bridge `as per the default configuration and I don't see the corresponding device in the newly appearing control tab for the service `HASS Bridge:21064`. The QR code that appears when I scan it with Home in my iPhone also shows that the device cannot … Excerpt saved from GitHub on 2026-10-23. | Issue #94430 · 2023-06 |
| Xiaomi CW700S camera | Not working Cloud | Camera control image gone; other cameras (CW400) fineSaved copyDevice model / 设备型号 isa.camera.700sa ### Component version / 插件版本 1.0.20 ### HA core version / HA版本 2025.9.3 ### Integrated mode / 集成方式 Automatic (自动模式) ### The problem / 问题详情 Didnt touch anything but the Camera Control Image of my cw700s (isa.camera.700sa Firmware: 5.3.1_0081 ☁️) doesnt show up anymore, tried upgrading the Xiaomi Miot Auto, didnt help, I'm now on Version 1.0.20. but tried 1.0.21. and also 1.0.22 without success. This camera image was working before with 1.0.20, it was able to show the last recorded motion event video what was really cool, since that the camera hasnt been … Excerpt saved from GitHub on 2026-10-23. | Issue #2643 · 2025-09 | |
| Xiaomi Smart Camera CW300 | Not working Cloud | Same missing camera image though motion data and stream address updateSaved copyDevice model / 设备型号 isa.camera.700sa ### Component version / 插件版本 1.0.20 ### HA core version / HA版本 2025.9.3 ### Integrated mode / 集成方式 Automatic (自动模式) ### The problem / 问题详情 Didnt touch anything but the Camera Control Image of my cw700s (isa.camera.700sa Firmware: 5.3.1_0081 ☁️) doesnt show up anymore, tried upgrading the Xiaomi Miot Auto, didnt help, I'm now on Version 1.0.20. but tried 1.0.21. and also 1.0.22 without success. This camera image was working before with 1.0.20, it was able to show the last recorded motion event video what was really cool, since that the camera hasnt been … Excerpt saved from GitHub on 2026-10-23. | Issue #2643 · 2025-09 | |
| Huoman PF20i pet feeder | Requested | Feeder entities PR openSaved copySummary Add MIoT support for `huoman.feeder.pf20i`. - Expose feeder fault status, desiccant remaining time, physical-controls lock, manual feeding, and desiccant-life reset. - Represent `indicator_light.on` as the feeder's night mode switch. - Add a local persistent `number` entity for the manual feeding serving size (`1–20`). - Pass the locally stored serving size to the `pet_food_out` action. - Preserve the existing serving-size entity identity during migration. `feeding-measure` is not readable through the Xiaomi cloud API for this model, so it must not be treated as a device-state … Excerpt saved from GitHub on 2026-10-23. | PR #2946 · 2026-09 | |
| IMILAB C40 camera | Requested | Full support PR closed unmergedSaved copyAdd device customization with all MIOT properties and actions - Add camera to local devices list - Improve camera.py with human_tracking support for PTZ cameras - Add comprehensive pt-BR translations for camera entities - Add comprehensive en translations for camera entities Supported features: - Camera control (power, night vision, watermark, tracking) - Memory card management (status, space, format) - Motion and AI detection (human, pet, baby cry, sound) - Cruise control and virtual fence - Fire/smoke detection - Streaming via Google Home (HLS) and Alexa (RTSP) Excerpt saved from GitHub on 2026-10-23. | PR #2752 · 2026-01 | |
| Leeshow fan | Requested Cloud | Cloud-only; local control requestedSaved copyBased on the information provided about your Leeshow fan (model: leshow.fan.ss4), here's what you need to know about enabling local control: 1. Current Status: - Your fan is currently operating in cloud mode (as indicated by the "Updated over cloud" message) - The integration is set to Automatic mode, which should prefer local control when available 2. Local Control Possibility: - To check if local control is possible, you can: * Go to the integration's options * Try switching to "Local mode" manually * Check if the device appears in the [list of supported local … Excerpt saved from GitHub on 2026-10-23. | Issue #2519 · 2025-05 | |
| qdhkl air fresh fb27 | Requested | Support PR closed unmergedSaved copySummary Add support for the qdhkl.airfresh.fb27 air fresh device with MIoT specification urn:miot-spec-v2:device:air-fresh:0000A012:qdhkl-fb27:1 ## Changes - Added device to supported local devices list in `miot_local_devices.py` - Added device customization configuration in `device_customizes.py` with correct MIoT specification type Closes #2747 🤖 Generated with Claude Code Excerpt saved from GitHub on 2026-10-23. | PR #2748 · 2026-01 | |
| Viomi vacuum v10 | Requested Local | Local support PR openSaved copy… contribution. The code, tests, live-device testing and this description were all done by Claude Opus 5.5. ## Summary Adds local (host/token) support for `viomi.vacuum.v10`, a Mi Robot Vacuum-Mop P variant built by Viomi. The device only answers legacy miio commands on the LAN. MIoT `get_properties` times out, so until now it had no local control in this integration. Its MIoT spec (`viomi-v10:1`) uses the same siid/piid/aiid layout as `viomi.vacuum.v8`, and python-miio's `ViomiVacuum` already treats `v6/v7/v8/v10/v13` as one family. ## Changes - `miio2 Excerpt saved from GitHub on 2026-10-23. | PR #3004 · 2026-10 | |
| Xiaomi H50 Pro vacuum | Requested | Device-specific support PR openSaved copyAdds device-specific support for xiaomi.vacuum.ov42gl (H50 Pro) ### TLDR ## Summary This PR adds support for the Xiaomi H50 Pro vacuum (model `xiaomi.vacuum.ov42gl`) to the Home Assistant Xiaomi MIoT integration, exposing roughly 150 properties and 88 actions from the device's full MIoT specification. ## Features - Map camera (`camera.map`): downloads the encrypted map from Xiaomi's cloud, decrypts it (AES-128-CBC, device-specific key derivation), and renders it as a PNG, robot position, charge station, cleaned path, forbidden zones, refreshed every 30s. Individual layers (base station, … Excerpt saved from GitHub on 2026-10-23. | PR #2914 · 2026-08 | |
| Xiaomi Gateway Hub 1 | Won’t be supported Cloud | Bluetooth sensors behind it only supported via cloud modeSaved copy我的网关是中枢网关xiaomi.gateway.hub1,在Xiaomi Gateway 3中不支持该设备。。。 在HA configuration.yaml中给xiaomi.gateway.hub1加上了如下配置,开发者工具那边能看到网关的updater变成了local,但是温度计的还是cloud。 想请教下大佬这里是不是有某种限制?蓝牙设备就一定要读取cloud的状态? @al-one [code] Excerpt saved from GitHub on 2026-10-23. | Issue #2716 · 2025-12 |
Gathered from GitHub issues, pull requests, discussions and docs, and from r/homeassistant. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Cloud polling
Goes through the maker’s cloud, asking it for updates every so often. Needs the internet and an account.
Details
| Installs (analytics) | 21,845 (3.08%) |
|---|---|
| GitHub stars | 6,183 |
| Latest version | v1.1.5 (2026-10-04) |
| Set up in the UI | Yes |
| Maintainers | @al-one |
| License | Apache-2.0 |
Devices listed in its README
- 🔌 outlet / switch
- 💡 light
- ❄️ air-conditioner / air-conditioner-outlet / ir-aircondition-control
- 🌀 fan / ceiling-fan
- 🛀 bath-heater / 🔥 heater / thermostat
- 📷 camera / video-doorbell ❓️
- 📺 television / 📽️ projector / tv-box
- 🗣️ intelligent-speaker ❓️
- 🎮️ ir-remote-control ❓️
- 🔐 lock / 🚪 door
- 👕 washer / dryer / fridge
- 🚰 water-purifier / kettle
- ♻️ air-purifier / air-fresh / hood
- 🌡 temperature-humidity-sensor / submersion-sensor / smoke-sensor
- 🥘 cooker / pressure-cooker / electric-steamer
- 🍲 induction-cooker / oven / microwave
- 🍗 air-fryer / multifunction-cooking-pot
- 🍵 health-pot / ☕️ coffee-machine
- 🍹 juicer / fruit-vegetable-purifier
- ♨️ water-heater / dishwasher / foot-bath
- 🦠 steriliser / towel-rack
- 🪟 curtain / window-opener / airer
- 🧹 vacuum / mopping-machine
- 💦 humidifier / dehumidifier / diffuser
- 🍃 air-monitor / 🪴 plant-monitor
- 🛏 bed / blanket / 😴 sleep-monitor
- 💺 chair / table
- 💆 massager / magic-touch
- 🏃 walking-pad / treadmill
- 🚽 toilet / cat-toilet / 🪥 toothbrush
- 🐱 pet-feeder / ⛲ pet-drinking-fountain / 🐟 fish-tank
- 🦟 mosquito-dispeller / germicidal-lamp
- 🚘 rearview-mirror / head-up-display
- ⌚️ watch / bracelet
- 🚶 motion-sensor / 🧲 magnet-sensor ❓️
- 📳 vibration-sensor
- 🌐 router / 🖨 printer
- Wireless Switch (like: lumi.sensor_switch.v1 / lumi.remote.b686opcn01)
- Motion Sensor (like: lumi.sensor_motion.v1)
- Window and Door Sensor (like: lumi.sensor_magnet.v1)
Notable forks
Forks with stars, or with code pushed at least 90 days after the original’s last push. Useful when the original goes quiet.
| Fork | Stars | Last push | Description |
|---|---|---|---|
| esin/hass-xiaomi-miot | ★ 7 | 2023-03-19 | Automatic integrate all Xiaomi devices to HomeAssistant via miot-spec, support Wi-Fi, BLE, ZigBee devices. 小米米家智能家居设备接入Hass集成 |
| yichengchen/hass-xiaomi-miot | ★ 3 | 2023-11-21 | Automatic integrate all Xiaomi devices to HomeAssistant via miot-spec, support Wi-Fi, BLE, ZigBee devices. 小米米家智能家居设备接入Hass集成 |
In ReReHome
Whatever HomeKit Bridge shares reaches Apple Home as normal HomeKit accessories behind your Home Assistant bridge, so ReReHome shows and controls them like any other.
Bridges get their own settings page listing the accessories behind them.
Sources
- Documentation: https://github.com/al-one/hass-xiaomi-miot
- Source code: https://github.com/al-one/hass-xiaomi-miot
- Issues: https://github.com/al-one/hass-xiaomi-miot/issues
- HACS: https://hacs.xyz