skillfed

roombapy

Python program and library to control Wi-Fi enabled iRobot Roombas

roombapy v1.9.1 75.7K downloads/30d#14,684 on PyPI44
Permissive license MIT Active released

What it is and what it does

roombapy is an unofficial Python SDK for controlling iRobot Roombas locally over your network. It was originally created for the Home Assistant integration and provides both a Python library and a command-line tool. The library communicates directly with Roomba devices on firmware 2.x.x via local connections only—no cloud API required.

You can use it to discover robots on your network, obtain their credentials automatically, stream real-time events from the device, and programmatically control the vacuum. The library depends on orjson for fast JSON parsing, paho-mqtt for MQTT communication, mashumaro for serialization, and typing_extensions for type hints. It requires Python 3.10 or later and has no known security vulnerabilities.

Use it for:

  • Automate Roomba scheduling and control within home automation platforms
  • Build custom scripts to trigger cleaning on demand or based on external events
  • Monitor Roomba status and events in real time via the event stream interface
  • Integrate Roomba control into multi-device home automation workflows
  • Discover and manage multiple Roombas on a local network programmatically

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

roombapy is a Python library for controlling Wi-Fi-enabled iRobot Roombas over local network connections, supporting firmware 2.x.x with both programmatic and command-line interfaces.

Yes, if you own a compatible Roomba (firmware 2.x.x) and need local network control. The library is actively maintained, has low install friction, permissive licensing, no known vulnerabilities, and solves a specific problem well. Verify firmware compatibility and that your Roomba model is supported before installing.

Install

roombapy on PyPI

pip

pip install roombapy

uv

uv add roombapy

poetry

poetry add roombapy

Installing roombapy

Before you install

Low install friction with a pure-wheel distribution and four lightweight runtime dependencies (orjson, paho-mqtt, mashumaro, typing_extensions). The package is actively maintained with recent commits and has been in development since 2017.

License in practice

MIT license is permissive, allowing use in both open-source and proprietary projects with minimal restrictions.

Quickstart

pip install roombapy

from roombapy import Roomba

roomba = Roomba(address='your_roomba_ip', blid='your_blid', password='your_password')
roomba.connect()
roomba.clean()

Requires a Roomba with firmware 2.x.x and local network access; credentials must be obtained via discovery or manual entry before connecting.

Verify before relying

  • Whether the library works with Roomba models beyond the 980 series or other firmware versions
  • Real-world reliability and latency of local network connections across different network configurations
  • Completeness of credential discovery and whether manual credential entry is sometimes required

Package facts

License MIT (permissive)
Python support supports the current Python release (<4.0,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — orjson, paho-mqtt, mashumaro, typing_extensions
Maintenance actively maintained — 441 days since the last release
Last repo commit
First released
Downloads 75,719/month — #14,684 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: roombapy-1.9.1-py3-none-any.whl

License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: Software DevelopmentTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Networking

Tags

roomba control library pythonirobot roomba sdkroomba local network apiroomba automation pythonroomba mqtt integrationroomba home automation
home-automationiot-controlmqtt

More Software Development packages