
Open source
johnboiles/esp-roomba-mqtt
ESP8266 MQTT Roomba controller (Useful for hooking up old Roombas to Home Assistant)
$ git clone https://github.com/johnboiles/esp-roomba-mqtt.git# then ask your coding agent> Set up esp-roomba-mqtt for "Bring an old Roomba into Home Assistant with a $5 ESP8266" on my iRobot Roomba. Follow the README.

Bring an old Roomba into Home Assistant with a $5 ESP8266
Vacuum, Medium, $6
esp-roomba-mqtt turns a Roomba's serial port into an MQTT device using an ESP8266, so Home Assistant can start, stop, dock and read battery.
Cost $6: esp-roomba-mqtt README parts list.
Wire an ESP12E and a small 3.3 V regulator into the Roomba's Open Interface port, flash the firmware, and your old Roomba shows up in Home Assistant. Great vacuum-hack starter.
Hardware & cost: ESP12E ($3-4), 3.3 V step-down regulator ($1-2), a few wires; per the README.
Difficulty: Medium. Soldering required.
Agent install prompt (paste into Claude Code, Cursor or Codex): "Clone https://github.com/johnboiles/esp-roomba-mqtt, set my Wi-Fi and MQTT broker in the config, build and flash with PlatformIO, then add the Home Assistant vacuum config from the README."
Source: johnboiles/esp-roomba-mqtt on GitHub — https://github.com/johnboiles/esp-roomba-mqtt (facts checked against the project README, Oct 2026; prices vary by region).
Quick answers
- How much does it cost to bring an old Roomba into Home Assistant with a $5 ESP8266?
- About $6, per the esp-roomba-mqtt README parts list.
- What do you need to bring an old Roomba into Home Assistant with a $5 ESP8266?
- ESP12E ($3-4), 3.3 V step-down regulator ($1-2), a few wires; per the README.
- How hard is it to bring an old Roomba into Home Assistant with a $5 ESP8266?
- Medium. Soldering required.
How your agent drives it
Copied from the johnboiles/esp-roomba-mqtt README
- Shell
$ mosquitto_pub -t 'vacuum/command' -h $MQTT_SERVER -p 1883 -u $MQTT_USER -P $MQTT_PASSWORD -V mqttv311 -m "turn_on"
- Shell
$ mosquitto_sub -t 'vacuum/#' -v -h $MQTT_SERVER -p 1883 -u $MQTT_USER -P $MQTT_PASSWORD -V mqttv311
Any coding agent that can run a shell can run these. Read the README before you run anything on a robot that moves.
Ideas to try with it
Our ideas, not the builder's claims.
- Start the old Roomba when your phone leaves home
- Get a phone alert when the battery drops while it's still out
- Send it back to the dock when the doorbell rings
1 more ideaShow fewer
- Chart battery health over a month
- Last commit
- 2019-02-10
- Builder
- johnboiles
- Repo
- johnboiles/esp-roomba-mqtt, 213 stars
- Built with
- iRobot Roomba
Roomba hacks, 2 builds: Bring an old Roomba into Home Assistant with a $5 ESP8266 · Turn a Roomba or iRobot Create into a ROS robot
What to build next
Builds that share a board, robot or agent with this one.
- Turn a Roomba or iRobot Create into a ROS robotAlso built on a Roomba
Free your robot vacuum from the cloud with ValetudoAnother robot vacuum
openHASP: build a touchscreen wall panel for Home Assistant from a cheap ESP32 displayAlso tagged #home-assistant
AWTRIX NG: turn a Ulanzi pixel clock into a notification display for your smart home and scriptsAlso tagged #home-assistant
Hermes Gadget: an ESP32 or Raspberry Pi voice body for your Hermes AgentAlso tagged #home-assistant
Build your own open-source robot vacuum (OOMWOO)Another robot vacuum