Xiaomi Vacuum: local control + live map, 65 models (ijai / Dreame / Viomi / Xiaomi)

I got tired of babysitting my Dreame through a pile of MIoT scripts and the cloud map extractor.

Most days it worked. Then a token expired, or Xiaomi changed something, or "clean the kitchen" became "try and escape the house." So I locked in and built a HACS custom integration for it:

It supports a set of ijai, Dreame, Viomi, and Xiaomi-labelled vacuums. Control is over the LAN with MIoT once the vacuum is set up. If you sign in with a Mi account, it can also fetch maps and room data.

Features:

  • Local controls: start, pause, stop, dock, locate, fan speed, water level, and whatever else your model exposes.
  • Two setup paths: Mi account (with captcha and email 2FA built in) for maps and cloud-assisted setup, or IP/token if you want local control only.Mi account password is used for login or reauth, then left out of the stored config entry.
  • Live map camera for Mi account setups including rooms, labels, room boundaries, cleaning path, charger position, vacuum position, walls, no-go areas, no-mop areas, zones, calibration points, and map dimensions when the vacuum provides them.
  • Map polling speeds up while the vacuum is cleaning or returning, then slows down while it is idle or docked.
  • Multi-map display for devices that expose stored maps.
  • Bundled Lovelace card with vacuum controls, maps, display toggles, and room selection, no YAML necessary.
  • Tap-to-clean from the card by selecting rooms on the map.
  • Room-by-room cleaning is exposed as a service call using segment IDs.

CARD RENDERS

Paused Cleaning
xiaomi-vac-card-paused xiaomi-vac-card-vacuuming
Room select Charging
xiaomi-vac-card-select-clean xiaomi-vac-card-charging

SUPPORTED MODELS (65)

Brand Models
ijai v1, v2, v3, v13, v14, v15, v17, v18, v19
Dreame p2008, p2009, p2027/28/28a/29/36, p2114a/o, p2140/a/p, p2148o, p2149o, p2150a/b/o, p2157, p2187, p2259, r2104, r2205, r2209, r2210, r2211o, r2215, r2216o, r2228/o/z, r2232a, r2233, r2235, r2246, r2247, r2254
Viomi v12, v13, v15, v17, v18, v19, v22, v23, v24, v35, v38, v40, v45
Xiaomi b106bk/eu, c101/eu, c103, c104, d106gl

If your model is missing and it looks close to one of these, open an issue with the exact model name and I can take a look.

1 Like