Eufy Robovac MQTT
jeppesens/eufy-clean · vv1.13.1
Eufy Clean Home Assistant Custom Component
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 |
|---|---|---|
switch | Switch or outlet | |
camera | Camera | Needs its own HomeKit Bridge in accessory mode |
binary_sensor | Sensor (motion, contact, leak, smoke…) | |
sensor | Sensor (temperature, humidity, air quality…) | |
vacuum | Vacuum (as a switch) | |
button | Button (as a switch) | |
select | Mode picker (as switches) |
What people report
Newer Eufy X, C, L and G series work over cloud MQTT; S1 Pro needs Tuya paths and some models ignore the find-robot command.
- Works1
- Partly works1
- Not working3
| Device | In Home Assistant | In Apple Home | What they said | Source |
|---|---|---|---|---|
| Eufy Clean G50 | Works Cloud | Vacuum-only, cloud-only via Anker MQTT; support addedSaved copyWhat Adds support for the Eufy Clean G50 (T2210), a vacuum-only, cloud-only (Anker MQTT) model with no Tuya local key. It worked with neither this component (tuned for the X-series length-prefixed protobuf DPS) nor Tuya-local integrations (no local key). The G50 speaks the Tuya DPS schema as plain ints/JSON over the existing Anker MQTT transport, distinct from the X-series protobuf, and distinct from #110's separate Tuya-Cloud/local transport. ## Approach (no model hardcoding; X-series path untouched) - Protocol detection by value shape, reusing the `EufyLogin.checkApiType` / per-device … Excerpt saved from GitHub on 2026-10-23. | PR #135 · 2026-06 | |
| Eufy RoboVac Omni S1 Pro | Partly works | Not an MQTT device; needs Tuya cloud or local path, beta in progressSaved copyAdding another S1 Pro / T2080A data point here, since my case may be related but not identical to the MQTT / AIOT path described in this issue. Environment: * Device: Eufy S1 Pro / T2080A * Home Assistant: 2026.5.4 * Integration: Eufy Robovac MQTT with the S1 Pro / local Tuya changes * Tuya protocol option: 3.3 * Local Tuya host set to the dock’s LAN IP Observed behavior: * Eufy login succeeded. * user_center_info returned res_code=401, so user_center_id / user_center_token were unavailable. * However, the Tuya Cloud path still worked: * Eufy user_id was present * EU Tuya login failed with … Excerpt saved from GitHub on 2026-10-23. | Issue #131 · 2026-05 | |
| Eufy Clean L60 SES | Not working | find_robot silent on MQTT and fails on local_tuya transportSaved copy… details Bug: find_robot command on connection_type: mqtt device publishes successfully but device never responds (no chime, no ack) Environment Integration: Eufy Robovac MQTT (robovac_mqtt), v1.13.0 Home Assistant Core: 2026.7.3 Affected device: Eufy RoboVac C10 Auto-Empty, model T2292, firmware v1.3.18 Working comparison device (same account, same integration instance): Eufy Clean L60 SES, model T2277 Both devices report api_type: novel Summary Calling switch.turn_on on the find_robot switch for the C10 (T2292) never makes the vacuum chime. The command is published without error, but no … Excerpt saved from GitHub on 2026-10-23. | Issue #160 · 2026-07 | |
| Eufy RoboVac C10 Auto-Empty | Not working Cloud | find_robot publishes but device never responds; works in Eufy appSaved copy… details Bug: find_robot command on connection_type: mqtt device publishes successfully but device never responds (no chime, no ack) Environment Integration: Eufy Robovac MQTT (robovac_mqtt), v1.13.0 Home Assistant Core: 2026.7.3 Affected device: Eufy RoboVac C10 Auto-Empty, model T2292, firmware v1.3.18 Working comparison device (same account, same integration instance): Eufy Clean L60 SES, model T2277 Both devices report api_type: novel Summary Calling switch.turn_on on the find_robot switch for the C10 (T2292) never makes the vacuum chime. The command is published without error, but no … Excerpt saved from GitHub on 2026-10-23. | Issue #160 · 2026-07 | |
| Eufy S2 | Not working Cloud | find_robot gets no response over MQTT transportSaved copySame failure mode here on a different model, eufy S2 (T2081), also on the mqtt transport. Adding it as a data point since it reproduces the original symptom (pure silence), not the local_tuya "Unexpected Payload" variant. Environment - Integration: robovac_mqtt v1.13.1 - Home Assistant Core: 2026.10.0 - Device: eufy S2, model T2081, api_type: novel, connection_type: mqtt (push, update_interval: None) What happens Calling switch.turn_on on the find_robot switch (DP 160) publishes successfully but the robot never responds, no chime, no ack, no res traffic, no error. Debug log, in full: DEBUG … Excerpt saved from GitHub on 2026-10-23. | Issue #160 · 2026-07 |
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 push
Goes through the maker’s cloud, which sends updates as they happen. Needs the internet and an account.
Details
| Installs (analytics) | 1,672 (0.24%) |
|---|---|
| GitHub stars | 223 |
| Latest version | v1.13.1 (2026-08-03) |
| Set up in the UI | Yes |
| Maintainers | @jeppesens, @m11tch |
Devices listed in its README
- Series
- X-Series
- C-Series
- L-Series
- G-Series
- S-Series
Limitations from the README
- Robot position not shown on first install, appears after the first cleaning run or docking event. No MQTT command exists to request current position while idle.
- Dock hardware faults, error light on the station itself is not exposed via MQTT and will not trigger notifications.
- Map switching, not supported; switch maps in the Eufy app.
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 |
|---|---|---|---|
| m11tch/eufy-clean | ★ 10 | 2026-08-31 | Eufy Clean Home Assistant Custom Component |
| smcneece/eufy-clean | ★ 3 | 2026-06-22 | Eufy Clean Home Assistant Custom Component |
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/jeppesens/eufy-clean
- Source code: https://github.com/jeppesens/eufy-clean
- Issues: https://github.com/jeppesens/eufy-clean/issues
- HACS: https://hacs.xyz