[APP][Pro] Dreame Vacuum (Cloud)

Dreame Vacuum (Cloud)

Control your Dreame robot vacuum with Homey via the Dreame Home cloud API.


Setup

  1. Install the app from the Homey App Store
  2. Add a device and select Dreame > Robot Vacuum
  3. Select your Dreame Home region, enter your email and password, and log in
  4. Select your robot vacuum from the list

:warning: 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:

  1. Open the Dreame Home app on your phone
  2. Go to Profile (bottom right) > Settings (gear icon)
  3. Tap Account and Security
  4. Tap Password and set a new password
  5. 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:

  1. Your exact vacuum model (e.g. Dreame X40 Ultra, L20 Ultra, L10 Pro)
  2. A description of the problem — what happened and what you expected
  3. 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.

7 Likes

Just wanted to quickly confirm that the app works great, and those small issues got fixed super fast!

Huge thanks to the developer for finally making it possible to integrate our non-Matter Dreame robot vacuums into Homey

1 Like

Thank you for making this! Been waiting to get my X40 integrated in Homey for a while now! A couple of things I’ve noticed:

The vacuum map, at least mine, shows up mirrored top/bottom while left/right is correct. This is true both for the map shown in the app settings page, and the one in the dashboard.

The room name labels in the map are very small, basically unreadable on smaller screens, perhaps the font size should be increased a bit? The contrast also make it difficult to read the labels in the app settings map. It would be easier with a larger label, but e.g. black text on a dark green background is difficult in any case.

The room name labels both in the map and in the dropdown menu for room selection are in English regardless of local settings. I’m not sure if it’s possible, but maybe consider pulling out or showing the room labels in the same language as the Homey instance is configured to use? It looks a bit strange when some rooms have custom labels, since it means the room list has a mix and match of English and non-English names.

Lastly, would it be possible to get a flow card that allows you to start cleaning specific rooms, but without setting suction, water and repeats? For simplicity, I’d prefer if those things just used the values configured in the settings if possible.

Thanks for the feedback. Some fixes and features requested were implemented in the /test/ version recently: https://homey.app/en-nl/app/com.dreame.vacuum.cloud/Dreame/test/ . The rest will be picked up later.

2 Likes