I just fixed up an old Roomba 595, and I’m interested in setting it up with a microcontroller for telemetry and remote control. I’m looking for a couple other like-minded folks who may want to do the same to their roombas so we can work on this together.
Roombas have a mini-DIN connector under the top bezel, which provides power from the battery, plus a 5v UART serial interface. This is all well documented and supported.
There are number of ESP8266 firmwares that can utilize the UART API and expose it over a web interface, or hook into MQTT:
- GitHub - incmve/roomba-esp8266: Control Roomba with esp8266 webinterface and simple API
- GitHub - johnboiles/esp-roomba-mqtt: ESP8266 MQTT Roomba controller (Useful for hooking up old Roombas to Home Assistant)
- GitHub - thehookup/MQTT-Roomba-ESP01: Making an old roomba smarter using and ESP01
The parts to this project are:
- Find a switching regulator that can take the unregulated battery power down to 3.3v for the ESP8266
- Create a 5v-3.3v level convertor for the UART (many people seem to get away with simply using a voltage divider)
- Figure out how to conceal all this in the roomba and make it robust
- Choose one of the firmwares and modify to taste
Who’s with me?