iRobot Roomba and Braava

The Roomba integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] allows you to control your iRobot Roomba vacuum or iRobot Braava m-series mop.

Note

This integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] has been tested and confirmed to be working with the iRobot Roomba s9+, Roomba 980, Roomba 960, Roomba 890, Roomba Combo Essential, and Braava jet m6 models, but should also work fine with any of the older Wi-Fi enabled Roomba or Braava like the 690. It currently does NOT work with the newer x05 Wi-Fi models, such as Roomba 105, 405, and 505. For auto-discovery, you will need to initiate a Roomba reboot. For example, by holding the clean button for up to 20 seconds on an i7 or 980. More information about rebooting your robot.

Configuration

To add the iRobot Roomba and Braava device to your Home Assistant instance, use this My button:

iRobot Roomba and Braava can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.

Manual configuration steps

If it wasn’t discovered automatically, don’t worry! You can set up a manual integration entry:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select iRobot Roomba and Braava.

  • Follow the instructions on screen to complete the setup.

Warning

The Roomba’s MQTT server only allows a single connection. Continuous mode is enabled by default, which will force the App to connect via the cloud to your Roomba. Continuous mode can be disabled in the configuration options for the integration after it is added. For more information, refer to the Roomba 980 repository.

Integration entities

The Roomba integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] will add the following sensors.

Sensors:

  • Battery: The status of your battery
  • Bin full (if Roomba has the capacity to do): If the bin is full
  • Canceled missions: Total number of missions that have been canceled
  • Charging: Whether the robot is currently charging
  • Failed missions: Total number of missions that have failed
  • Successful missions: Total number of successful missions
  • Average mission time: The amount of time a mission took on average
  • Total missions: The total number of all missions
  • Scrubs: Total number of times the robot has executed a “scrub”
  • Total cleaning time: How many hours the robot has spent cleaning in total
  • Total cleaned area: The total area in m² the robot has cleaned

Retrieving your credentials

Home Assistant discovers the robot’s BLID (its device identifier) and tries to retrieve its password during setup. Your iRobot account password is not the password requested by the integration.

To retrieve the password during setup:

  1. Close the iRobot app on your phone and any other devices.
  2. Follow the instructions in the integration setup to put your robot in the mode needed to retrieve its password. The buttons vary by model: the setup screen asks you to hold Home, or Home and Spot, until the robot makes a sound.
  3. Submit the form within 30 seconds. Home Assistant then tries to retrieve the password from the robot.

If Home Assistant asks you to enter a password, it could not retrieve it from the robot. Some models, including the Roomba j7, do not provide their password through this local method.

Using a third-party tool to retrieve the robot password

The third-party dorita980 tool offers a cloud method for retrieving robot credentials. Home Assistant does not maintain, review, or support this tool. Its instructions require you to provide your iRobot account credentials to it. If you choose to use it, review the instructions and security implications in its repository before proceeding. You do not need to install the tool on your Home Assistant device.

If you retrieve the robot password using an external method, enter that password in the Home Assistant setup form, not your iRobot account password. Home Assistant already found the BLID during discovery.

Troubleshooting

  • Integration wizard shows “Failed to connect” after submitting the password: Before attempting a factory reset (which can be a cumbersome process), attempt submitting the password in the integration wizard while the Roomba is actively running (that is, cleaning). Avoid opening the app to start a manual job to help with this. Instead, push the physical clean button on the device directly to start the manual job. This appears to resolve the issue on some models because they answer queries only while actively running.

    If this still does not resolve the issue, factory reset the model.