[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)

Please check our GitHub page.


Not Supported (currently)

Please check our GitHub page.


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? First make sure you run the Test version of this app via the marketplace. This version might already solve your bug or include your feature.

If the Test version does not solve it, please open an issue on GitHub 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. Send a diagnostic report — in the Homey app, go to More → Apps → Dreame, tap the menu icon (⋮) in the top right, and select Send diagnostic report. This sends recent app logs directly to the developer.

If you prefer sharing via this forum post, feel free to add a comment here instead.


Credits

Inspired by Tasshack/dreame-vacuum, the Home Assistant integration for Dreame vacuums.
Some cards inspired by Dreame Matter Cleaner, the Homey Dreame app for Matter-enabled Dreame devices.

This app is not affiliated with Dreame Technology. The Dreame Home API is reverse-engineered and may change without notice.

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

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.

I second the card for selecting individual rooms. I’d like to configure just vacuuming to a room without mopping. I don’t mind the current card with suction values, but just leave the water option off the card. Either way that would be fantastic.

Many thanks

I have waited for this app before buying a new robot vacuum. And it works great with my new Dreame L50 ultra. Big thx.

Question: I want to implement some actions when/after the cleaning routine is finished (back in the dock). Can I simply put a new action card (then) after the routine (cleaning card) or…?

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.

Increased font size

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.

I second the card for selecting individual rooms. I’d like to configure just vacuuming to a room without mopping. I don’t mind the current card with suction values, but just leave the water option off the card. Either way that would be fantastic.

Added 2 new cards for only starting the cleaning of room(s).

Question: I want to implement some actions when/after the cleaning routine is finished (back in the dock). Can I simply put a new action card (then) after the routine (cleaning card) or…?

I have added some examples including yours under “Flow Tips” in the repo. Hopefully that helps you in making the workflow.

All changes pushed to Test version

This is starting to look really good! But for me to ditch the Dreame app completely, I need multimap/multifloor support, as well as zone cleaning. Otherwise I’m very happy. Keep up the good work!

And the way I use multifloor today is to drive the robot to a designated zone (which has to be set manually each time), then pause it, carry it up to the 2nd floor, select a new map, and then start the robot again. A bit cumbersome.

Hi,

Will there be an implementation of the aqua10 ultra roller (R9547H)?

Will there be an implementation of the aqua10 ultra roller (R9547H)?

The Aqua 10 Ultra Roller isn’t in the reference implementation (tasshack) yet so I can’t confirm support. Could you share the exact model identifier from your Dreame app (Settings → Device Info)? If it uses the standard Dreame cloud protocol it may already work so feel free to test it out if not already done.

This is starting to look really good! But for me to ditch the Dreame app completely, I need multimap/multifloor support, as well as zone cleaning. Otherwise I’m very happy. Keep up the good work!

Let me have a look at multi floor support.

I tried to connect it to him yesterday, but in the list selection it only said “loading” and nothing happened. I just tried again, and now it found him. Thank you so much — I’m very happy.

@krl69 tried adding multi floor and custom zone support in both App Settings, Cards and Widget. But I must admit its a bit complex so I expect it will not work straight away. Can you test by installing Dreame | Homey ?

Wow. That looks so cool! Great work! Is it possible to trigger shortcuts from the Dreame app using a card?

I have now tested a bit of multi floor and zones. Multi floor does not work completely. I have 3 maps where map 1 is the first floor), map 2 is the second floor and map 3 is the bathroom on the 2nd floor. The latter due to too high a threshold. If I select map 1, the list of different rooms appears completely correctly and the map is the correct one. If I select map 2, it falls back to map 1 and the list of rooms is the same as map 1. If I select map 3, the map looks correct but the list of rooms is the same as room 1.

Zones seem to work for map 1 except for a couple of things; you cannot delete zones. If you press the cross for the zone you want to delete, the app asks if I want to delete but nothing happens. Creating zones via the web-based solution for Homey does not work. I can draw the zone but it will not “release” so that I can save the selection.

One more wish - would it be possible to add an option to rotate the map? It’s easy to rotate the phone or tablet, but a bit tricky to rotate the TV that the PC is connected to when I use Homey web. :wink:

Otherwise, this looks very promising!! If you get this working, I can finally save zones, which I’ve been missing a lot. Great job!

*Edit: restarted the app and the map selection was solved. Now the maps come up correctly but unfortunately the list of rooms is wrong, it always shows the rooms from map 1 regardless of which map you bring up in the app during configuration. And during flows you only get the map 1 rooms (first floor) after the restart. After the restart, the zones I had created disappeared. I created them again and have restarted several times without them disappearing. I managed to create zones in the web solution by pressing the spacebar when you have drawn the zone, then the page scrolls down and you can press save. Not a perfect solution but it works.

@krl69 the new test version should address your feedback. Let me know if it works, if not, the more detailed the feedback and wishes, the better.

@Philip9000 added to test version. Let me know if it works.

Wishes:

  1. Do you have to select a floor/map before creating a flow to select rooms on floors other than the first? What about selecting both maps and rooms in the same flow/map?

  2. Rotating maps only works for widgets, I was hoping it would also work where you draw zones, i.e. inside the app itself.

  3. I would like a status card for when the individual flow job (non pun intended) has been completed. Example: When Zone xxxx is finished. That way you can create specific tasks when a specific job is finished. Example: When Zone xxxx is finished Then Pause

Error:

  1. For example, if you select map number 2, it will fall back to map number 1 as soon as you exit the app configuration. You get the correct map and the specific rooms, but the selection is not retained when you exit the app config screen and then you cannot select rooms from map number 2 in a flow.

  2. When you rotate the map, the room names do not rotate.

Very detailed, thanks. Added them in test. Let me know.

Wow, You don’t hold back. Crazy fast response. Will test as soon as possible. :smiley: