Comparing Native vs. Custom Roborock Integrations in Home Assistant: A Complete Guide

Disclosure: This post contains affiliate links. If you click through and make a purchase, I will earn a commission, at no additional cost to you. Read my full disclosure here.

A robot vacuum cleaner in a messy room

If you are a Home Assistant user and owner of one of the many Roborock robot vacuum cleaners, you have multiple options when it comes to integrating the two. Until a couple of months ago, connecting the robot vacuum cleaner to Xiaomi's Mi Home app and using the Miio integration was your only option. Today, you can add your robot vacuum cleaner to the Roborock app, and integrate it with Home Assistant using either the native integration or the custom integration available in the Home Assistant Community Store (HACS). This guide dives into the native and custom Roborock integrations available in Home Assistant, shedding light on each option's features and benefits.

Contents

My Roborock and Home Assistant Setup

Let's delve into an exploration of the native Roborock integration with Home Assistant, version 2023.07, and juxtapose it with the newest custom component fetched from the Home Assistant Community Store (HACS). Here, I'll be using my trusty Roborock S7 MaxV robot vacuum cleaner and the companion auto-emptying base for this comparative analysis.

The native Roborock integration offers fewer entities

The native Roborock integration introduces a modest 15 entities, which pales slightly in comparison to the bountiful 41 entities presented by the custom integration. The basic control panel, however, levels the playing field, with both options allowing you to set fan strength, initiate cleaning, guide your Roborock robot vacuum cleaner back to the charger, and locate the device.

Screenshot of the custom Roborock integration with Home Assistant. At the top is the Roborock logo with stylized text with the text 'Custom integration' beneath it. Below, a menu with the following options: '1 device' with an icon of a computer monitor, '41 entities' with an icon representing a group, 'Documentation' with a paper icon, 'Known issues' with a gear icon, and 'Enable debug logging' with another gear icon. Each menu item has an arrow indicating more options are available when selected.
Screenshot of the Home Assistant Dashboard showing the official integration with Roborock. There are icons and text. The options listed are '1 device' with a desktop computer icon, '15 entities' with a triangle exclamation mark icon, 'Documentation' with a book icon, 'Known issues' with a gear icon, and 'Enable debug logging' with a bug and gear icon. Arrows indicate further options or menus available.

Both integrations also allow you to dabble in Roborock's mop mode (standard, deep, deep+, and custom) and intensity configurations, giving you control over the amount of water used for mopping. The first significant deviation lies within the camera feature, not the device's physical camera, but the map currently loaded on your Roborock robot vacuum cleaner. Using the custom integration, your floor map can be used in Home Assistant Dashboard cards, such as Piotr Machowski's Vacuum Map Card.

A screenshot of the Home Assistant Dashboard showing a Roborock robot vacuum cleaner's map.
A screenshot of the official integration of Roborock with Home Assistant showing the options to adjust the mop intensity and mop mode.
A screenshot of the official Roborock integration with Home Assistant showing the following sensors: Cleaning area, cleaning time, total cleaning area, and total cleaning time.

The custom integration deviates further in its entity organization. Unlike the official integration, which groups entities such as the cleaning area, cleaning time, total cleaning area, and total cleaning time as sensors, the custom integration assigns them as diagnostic entities. Personally, I find little difference between the two, as there are compelling arguments for both organizational structures.

Commonalities Between the Native and Custom Roborock Integration

Both options also share some common switches such as child lock, do not disturb, and status indicator light. However, the official integration lacks one switch and two additional entities – the option to enable charging from valley electricity. Accompanying this switch are two entities that permit you to set the start and end time of valley electricity. This is particularly handy if you reside in an area with fluctuating electricity prices depending on the time of day, or if you're looking to capitalize on solar energy during daylight hours.

A screenshot of the custom Roborock integration with Home Assistant showing the following configuration options: Child lock, DnD end, DnD start, DnD switch, flow led status, valley electricity end, valley electricity start, and valley electricity switch.
Roborock Custom Integration Dock

Only the Custom Roborock Integration Reports on the Dock

The official integration further lacks information about the dock. This is especially useful for those who own the RoboDock Ultra, the all-in-one docking system that refills the water tank and cleans the mop. Some sensors the custom integration provides will keep you posted on the dock: Dock dust collection mode, dock mop wash mode interval, dock status, dock washing mode. However, as I only possess the auto-emptying dock, I cannot provide further insights into any additional switches or sensors that may appear with the premium option.

Roborock Custom Integration Reset

Lastly, the custom integration liberates you from the need to use the app to reset any sensors after cleaning or switching them. These include the filter, main brush, cliff and visual sensor, and side brush.

Conclusion

The custom integration offers an almost threefold increase in the entities added to the Roborock integration, virtually rendering the Roborock app obsolete. Despite its occasional glitches, it provides a more enriching experience than the official integration, which still requires regular app usage. However, if stability is your priority, the official integration offers a smoother ride.

A portrait photo oif Liam Alexander Colman, the author, creator, and owner of Home Assistant Guide wearing a suit.

About Liam Alexander Colman

is an experienced Home Assistant user who has been utilizing the platform for a variety of projects over an extended period. His journey began with a Raspberry Pi, which quickly grew to three Raspberry Pis and eventually a full-fledged server. Liam's current operating system of choice is Unraid, with Home Assistant comfortably running in a Docker container.
With a deep understanding of the intricacies of Home Assistant, Liam has an impressive setup, consisting of various Zigbee devices, and seamless integrations with existing products such as his Android TV box. For those interested in learning more about Liam's experience with Home Assistant, he shares his insights on how he first started using the platform and his subsequent journey.

Leave a comment

Share to...