How to integrate the Wyze Robot Vacuum with Home Assistant

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

Wyze has long been known for delivering decent quality products at an affordable price. The same goes for the Wyze Robot Vacuum with LiDAR. Despite costing only US$199.99 (when on offer) or $329 it has a LiDAR sensor to map rooms, a quad-core Cortex-A7 processor, and a maximum suction power of 2,100 Pa.

Those specs at that price do make the Wyze Robot Vacuum a compelling option when looking for a robotic servant. Unfortunately, as we’ve also come to expect from Wyze, it doesn’t natively integrate with Home Assistant. Not only that, it also doesn’t integrate with the Google Assistant, Amazon Alexa, or any of the other voice assistants out there. But, where there is a will, there is a way: I say natively because, as you might have guessed from the headline, there is a custom third-party integration available.

Wyze Robot Vacuum (source: wyze.com)

Table of Contents

WYZE Robot Vacuum with LIDAR Mapping Technology
  • Powerful suction: A high-torque brush roll, a side brush for edges, and 2100Pa suction power to get the tough stuff.
  • Smart controls: You can select a room and send your Wyze Robot Vacuum out for an impromptu cleaning. Have cords under your desk? Dog bowls in the corner? No problem. You can create a “No go zone” to tell your cleaner machine where it can’t go.
  • Precision mapping: It features seven sets of sensors to map your home, navigate around obstacles, and avoid falling downstairs.

Why integrate the Wyze Robot Vacuum with Home Assistant?

I will be the first to admit that robot vacuum cleaners are a fantastic invention, and I couldn’t imagine living without one in my home any more. Despite all the technological advances seen in the past years, such as automatic emptying of the dust container and sonic mopping, a robot vacuum cleaner is still a vacuum cleaner. And vacuum cleaners don’t operate silently.

The Wyze app does allow you to set schedules for the Wyze Robot Vacuum, but those schedules are set in stone. There is no flexibility or intelligence behind a schedule. It will run every time you have it set, no matter if you are reading a book in silence or have guests round for dinner. It also won’t make an exception when you are in that important web conference or recording a YouTube video.

It is therefore essential to give the Wyze Robot Vacuum some smarts. And there is no better platform to deliver smart decisions than Home Assistant. If you are using Home Assistant, you will likely be monitoring the presence in your home using smartphones, Bluetooth tokens, sensors, and perhaps even cameras. I’m assuming the universal preference for running a robot vacuum cleaner is when the home is empty. For me, it definitely is.

Wyze Robot Vacuum (source: wyze.com)

On most days I am at home with my kids, who like to make it a game to step the robot vacuum in its path, I will eat breakfast and then head off out (with them, obviously). With Home Assistant, I have set the robot vacuum to clean the kitchen and dining room when I am gone for more than five minutes. It saves me time because I don’t have to clean the floor, and the robot vacuum cleaner can be as loud as it wants. I won’t hear it.

Why is Wyze a walled garden?

The answer to that question is anyone’s guess. Wyze has long moved on from the company that used to sell cheap security cameras and has become something of a behemoth that sells smart lamps and bulbs, smart locks, sprinkler controllers, smartwatches and fitness bands, and much more.

The Wyze Lock

I am therefore of the opinion that Wyze wants to become an ecosystem. Wyze wants you to use their app and not Home Assistant. Only in their app can they tempt you with other Wyze products. There is no monetary gain for Wyze to officially open up their system. In the contrary, it would cost them due to the increase in server requests. Luckily, though, Wyze (kind of) accepts that others are using an unofficial and undocumented API to allow for platforms to control their devices. And that is why the integration of the Wyze Robot Vacuum can exist. There are a few limitations, but in the case of the Wyze Vacuum Cleaner, these won’t destroy the experience.

If you don’t want your robot vacuum cleaner to be part of a walled garden, or are even seeking a cloud-free option, you should have a look at Dreametech’s offering. Their L10 Pro and Z10 Pro, which has a self-emtying dock, can be rooted and used with the open-source cloud replacement Valetudo.

Installing and configuring the Simple Wyze Vacuum for Home Assistant component

As always, there is only one recommended way of adding the so-called Simple Wyze Vacuum for Home Assistant: the Home Assistant Community Store, or HACS for short. If you haven’t set up HACS yet, follow the detailed steps on the website to do so. Once complete, you can continue with the integration of your Wyze Robot Vacuum and Home Assistant.

The Simple Wyze Vacuum integration in the Home Assistant Community Store.

Open HACS and select the Integrations option. In the integrations, open the menu in the upper-right corner and select the custom repositories option. Enter https://github.com/romedtino/simple-wyze-vac in the repository field and assign it the integration category. You should now see Simple Wyze Vacuum in the list of custom repositories. Click on it, and install it.

Next, you will need to add three lines to the configuration.yaml file. Take note that the account cannot have 2FA enabled. If you wish to keep your main account secured, you can create a second Wyze account and share the Wyze Robot Vacuum with it.

simple_wyze_vac:
  username: YOUR_WYZE_EMAIL
  password: YOUR_WYZE_PASSWORD

Using the Wyze Robot Vacuum integration with Home Assistant

Once you have entered your credentials and restarted Home Assistant, you can control your Wyze Robot Vacuum. Basic commands such as start, pause, and return to base can simply be triggered, but there are more advanced options, too. Using this integration, you can tell your Wyze Robot Vacuum to clean a specific room by using a service call:

service: vacuum.send_command
data:
  command: sweep_rooms
  params:
    rooms:
      - Bathroom
      - Hallway
target:
  entity_id: vacuum.YOUR_WYZE_VACUUM

Similarly, you can also set the fan speed (i.e., suction strength) and check the battery level. The latter has to be done manually, as Wyze doesn’t appreciate automatic polling of data on their servers. You can also display your Wyze Robot Vacuum in a Lovelace dashboard using the Vacuum Card. The developer has shared their setup and scripts on how to do this.

Leave a comment