Skip to main content

Dreame smart home integration, free and open source

Dreame integration for Gladys Assistant

Dreamehome robot vacuums: cleaning, suction and mop settings, rooms, shortcuts, consumables.

Control the robot vacuums of your Dreamehome account from Gladys Assistant.

This integration serves the robots paired in the Dreamehome app. It goes through the Dreamehome cloud, as these robots offer no command on the local network, and receives their changes in real time: a clean that ends, an error or a return to the dock shows up in Gladys at once.

A Dreame robot paired in the Xiaomi Home app (Mi Home) answers on another cloud: it is not supported by this integration.

Features​

For each robot of your account:

  • State — cleaning, paused, returning to the dock, charging, docked, error.

  • Cleaning — start a full clean (or resume the paused one), and stop it. The robot cleans the whole home with the current Cleaning mode and settings.

  • Return to dock, Pause / resume (a second press restarts the robot) and Locate the robot (it plays a sound).

  • Cleaning mode — Vacuum, Mop, Vacuum and mop, Mop after vacuum or Customize room cleaning (each room keeps the settings chosen for it in the app), as in the app. Offered on the robots whose mops lift.

  • Suction power — Quiet, Standard, Strong or Max, and Max suction power (for the next clean only, as in the app).

  • Mop wetness — from 1 (slightly dry) to 32 (wet).

  • Mop washing frequency — By area, By time or By room, with two sliders: the area (m²) between two washes by area, and the time (minutes) by time. Each slider acts when its frequency is chosen; otherwise its value is kept for when it is. The wetter the mops, the more often they are washed: above 26, no more than 20 m² or 20 minutes between two washes.

  • Cleaning route — Quick, Standard, Intensive or Deep, on the robots that have this setting. A mode that vacuums only has Quick and Standard: switching to one brings an Intensive or Deep route back to Standard, as the app does.

  • Battery, and Error: the message of the robot in plain words ("Main brush tangled", "Clean water tank empty"...), "No error" otherwise.

  • Last clean - area and Last clean - duration — in m² and minutes, those of the clean under way while it runs, with their history.

  • Room to clean — the rooms of your robot's map; picking one starts cleaning it, and the list goes back to "—" once the room is done.

  • Several rooms — a Selection switch per room, and the Clean the selection button that cleans the rooms switched on, in the order you switched them on, as in the app. To change the order, switch the rooms off, then on again in the order you want (switching on a room already on does not move it). The selection and its order are kept from one clean to the next, Gladys or the integration restarting included.

    The robots that offer Customize room cleaning (and the fifth generation) get the rooms in that order, but not their order numbers: sending them stops those robots. Their firmware may then follow the cleaning order set in the Dreamehome app instead of yours. Watch which order your robot takes: if it is the app's, set the order you want there.

  • Shortcuts — one button per shortcut created in the Dreamehome app. It keeps all its settings: rooms, order, suction, water flow, passes, mopping.

  • Consumables — the remaining life, in percent, of each wear part your robot tracks: brushes, filter, sensors, mop pads and, depending on the station, tank filter, detergent, squeegee... Only the parts your model has are offered, as in the app.

Only the features your robot actually has are offered.

The settings apply to the next clean, started from Gladys or from the app, unless CleanGenius is on in the app: the robot then chooses by itself.

On the dashboard, Gladys shows the generic name of a feature that is alone of its type: Run Mode is the cleaning (Clean / Idle; Mapping is not supported) and Text the error message. These rows can be renamed in the dashboard box.

Dashboard widgets​

With Gladys 5.1 or later, the integration offers four widgets (Edit the dashboard → Add a widget). Each shows the robot picked in its settings, or the first robot of the account.

Gladys widgets are read and tapped: they have, by design, no dropdown nor slider. For every setting with its lists and sliders, add a Devices box with the setting features of the robot (mode, suction, max suction, route, wetness, washing frequency and intervals) next to the Robot vacuum widget.

  • Robot vacuum — the name and state of the robot, the map of the home (rooms in colors, path of the robot — white where it vacuumed, blue where it only mopped —, dock in green, robot in white on top, ringed in green when on its dock), a list and four buttons: Clean, Pause, Dock, Locate. The list gives the battery, the last clean (area and duration), then the wear of each part, the most worn first; when room runs out, the least worn part is the one left out. The List setting of the widget turns it into the battery, the current settings (mode, suction, route, wetness), the last clean and the most worn part. Clean cleans the whole home, or only the rooms whose Selection switch is on, in the order they were switched on: the button then reads Clean the selection. A paused robot offers Resume. The path is the one of the clean under way, or of the last one, as the robot sends it with its map; a robot that sends none keeps the map alone. The map is read again every minute while cleaning, every 30 minutes otherwise, and only while a dashboard shows it. Room names are not written on it.
  • Robot setting — a single setting as big buttons, the current choice ticked, at hand on a tablet: Cleaning mode, Suction power, Max suction power, Cleaning route, Mop wetness (Slightly dry, Damp, Wet) or Mop washing frequency, picked in the widget settings. The Customize room cleaning mode, the exact wetness and the washing interval are set in the Devices box.
  • Quick clean — up to four buttons. Without settings, the shortcuts of the Dreamehome app; otherwise, write in Button 1 to 4 the name of a shortcut or a room as Gladys shows it (case and accents do not matter), several rooms joined by "+" ("Kitchen + Living room"), or "Clean the selection". A name that matches nothing is reported in the widget, with the names it knows. The button of the task under way is ticked. Handy on a wall tablet. Gladys shows four buttons at most per widget: for more, add a second Quick clean and name its buttons.
  • Robot maintenance — the three most worn parts as gauges, then every part tracked, the most worn first: red under 10 %, orange under 30 %.

Configuration​

  1. In the integration, Actions box, fill in Link the account: the email (or phone number) and password of your Dreamehome account, then its region — the one chosen in the app when the account was created — and click the button.
  2. Open the Discovery tab and add your robots to Gladys.

The password is only used to log in. It is never stored: only a fingerprint, the one the Dreamehome app sends itself, is kept to reopen the session without asking you anything. The Unlink the account action erases everything.

An account created with Google, Apple or a text message code has no password. Set one first in the Dreamehome app (profile, account settings), then link the account here.

The Language of the names setting picks the language of the feature names, room names and error messages: French, English, German or Spanish. Feature names are set when the device is created. The dashboard widgets and the messages of this page follow the language of your Gladys account.

When an update of the integration adds features, or when you create a shortcut or a room in the app, the Discovery tab offers to update the device (rooms and shortcuts are read again every 6 hours, or at once with Scan).

In scenes​

  • Trigger on the state: for instance, be warned when the robot goes "Error", then read the message of the Error feature.
  • "Control a device" action: Cleaning on Clean to start the robot, Room to clean on a room, or a Shortcut button.
  • Several rooms: switch their Selection on in the order to clean them, then press Clean the selection. To force an order, switch every room off first, then on one by one. The mode and settings are set the same way, before starting.

Reporting a problem​

The Diagnostic action shows what the integration sees of your robots: model, firmware, raw values, map reading. Paste its result into a Gladys forum post or a GitHub issue. It contains no email, no identifier and no room name.

Limitations​

  • The cleaning mode and the mop settings are only offered to the models whose encoding the integration knows (from the model table of the Home Assistant integration): a wrong write would change your settings. An app shortcut covers the other cases.
  • Mapping is started from the Dreamehome app, not from Gladys.
  • The robots of the MOVAhome and Trouver apps are not supported.
  • This integration was written without a robot at hand, from the protocol of the reference Home Assistant integration: your feedback (and the result of the Diagnostic) validates it model by model.

Configuration settings​

These are the settings Dreame asks for in its configuration screen in Gladys.

SettingTypeRequiredDescription
Dreamehome accountsectionNoLink the account your robots are paired with, in the Actions box below: its email (or phone number), its password and its region. The password is only used to log in: a fingerprint is kept to reconnect silently, never the password itself. An account created with Google, Apple or a text message code has no password: set one first in the Dreamehome app.
Language of the namesselectNoLanguage of the feature names, room names and error texts. Feature names are set when a device is created: to rename them after a change, delete and add the device again.

How to install Dreame in Gladys​

  1. In Gladys, open Integrations: Dreame appears in the catalog, next to the native integrations, with a community badge.
  2. Click Install. Gladys pulls the Docker image (ghcr.io/guim31/gladys-dreame:1.2.0), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration).
  3. Open the Configuration screen of the integration, fill in the settings, and save.
  4. You can also install it directly from its repository URL: https://github.com/guim31/gladys-dreame.

Dreame requires Gladys >=5.1.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.

Not running Gladys yet? It is free and open source: follow the installation guide to get started.

About external integrations​

Dreame is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by guim31, not by the Gladys core team.

Subscribe to the Gladys Assistant newsletter

A few emails per month about new releases and project news. Sent by Pierre-Gilles Leymarie, founder of the project. Unsubscribe anytime 🙂