Dreame Vacuum (Cloud)
Control your Dreame robot vacuum with Homey via the Dreame Home cloud API.
Setup
- Install the app from the Homey App Store
- Add a device and select Dreame > Robot Vacuum
- Select your Dreame Home region, enter your email and password, and log in
- Select your robot vacuum from the list
Only email/password login is supported. Third-party login (Google, Apple, etc.) is not supported.
Setting up a password in the Dreame Home app
If you signed up using Google, Apple, or another third-party login, you need to set a password first:
- Open the Dreame Home app on your phone
- Go to Profile (bottom right) > Settings (gear icon)
- Tap Account and Security
- Tap Password and set a new password
- Use your email and this password to pair in Homey
Supported Features (currently)
| Feature | Details |
|---|---|
| Cleaning | Start, Stop, Pause, Return to Dock |
| Cleaning Modes | Sweeping, Mopping, Sweeping & Mopping, Vacuum then Mop |
| Suction Level | Quiet, Standard, Strong, Turbo |
| Water Volume | Low, Medium, High |
| CleanGenius | Off, Routine Cleaning, Deep Cleaning (with auto-start) |
| CleanGenius Mode | Vacuum & Mop, Mop after Vacuum |
| Cleaning Route | Standard, Intensive, Deep, Quick |
| Mop Wash Frequency | By Room, every 5/10/15/20/25 m² |
| Dock Features | Auto Empty, Self Clean, Drying, Draining |
| Consumables | Main Brush, Side Brush, Filter, Mop Pad, Sensor (with reset) |
| Sensors | Battery, Cleaned Area, Cleaning Time, Total Cleaned Area, Error Status, Current Room |
| Room Cleaning | Room discovery via MQTT + cloud map download. Single/multi-room cleaning with autocomplete or manual room ID, per-room suction/water/repeats. Per-room trigger cards (start/finish) |
| Live Tracking | Real-time robot position on map widget and settings page during cleaning (~5s updates) |
| Current Room | Shows which room the robot is in — live during cleaning, dock room when charging |
| Dashboard Widget | Live vacuum map with room colors, labels, robot & charger position, battery status, cleaning progress |
| App Settings | Device overview with rendered map, status grid, room list, consumable health bars |
| Carpet | Boost toggle, Sensitivity (Low/Medium/High), Cleaning mode (Avoidance/Adaptation/Remove Mop/Vacuum & Mop/Ignore) |
| Dock Settings | Mop Wash Level, Water Temperature, Auto Empty Frequency, Mop Pressure, Drying Time, Volume |
| Toggles | Child Lock, Resume Cleaning, Tight Mopping, Silent Drying, DND |
| Status | Charging, Dock Cleaning, Drying Progress, Drainage, Detergent, Hot Water, Water Tank, Dirty Water Tank, Dust Bag, Dust Collection |
| Real-time MQTT | Persistent connection to Dreame MQTT broker for instant updates. All 35+ properties pushed via MQTT — ~80% fewer API calls |
| Adaptive Polling | 60s idle / 15s cleaning with MQTT, 5s fallback without. Health monitoring with automatic fast-poll recovery |
| Flow Cards | 31 action cards, 17 condition cards, 7 trigger cards |
Not Supported (currently)
Some features from the Dreame Home app or Tasshack/dreame-vacuum (Home Assistant) cannot be implemented on Homey due to platform limitations:
| Feature | Reason |
|---|---|
| Interactive map / room selection | Widget shows a rendered map, but tapping rooms to clean is not possible. Use Flow cards. |
| Live camera feed | Homey does not support real-time video streams. |
| Map editing | No map editing UI on Homey. Configure virtual walls and no-go zones in the Dreame Home app. |
| Furniture / obstacle detection | Requires image/map overlay. |
| Cleaning history / statistics | No historical charts on Homey. Current session data (area, time) is available. |
| Custom room schedules | Use Homey Flows for time-based automations instead. |
In short: Homey excels at automations (Flow cards), device control, and status monitoring. For map-based features, camera, or visual AI, use the Dreame Home app alongside Homey.
Supported Devices
Should work with any robot vacuum controllable via the Dreame Home app, including the X40, X30, L20, L10, and other models.
Reporting Issues
Found a bug or have a feature request? Please open an issue on GitHub (link in the app marketplace listing) and include:
- Your exact vacuum model (e.g. Dreame X40 Ultra, L20 Ultra, L10 Pro)
- A description of the problem — what happened and what you expected
- Enable diagnostic logging — go to the app settings in Homey, enable Diagnostic Logging, and reproduce the issue. This sends anonymous logs to help debug. You can disable it again afterwards.
If you prefer sharing via this forum post, feel free to add a comment here instead of GitHub.
Credits
Inspired by Tasshack/dreame-vacuum, the Home Assistant integration for Dreame vacuums.
This app is not affiliated with Dreame Technology. The Dreame Home API is reverse-engineered and may change without notice.