Skip to content

Latest commit

 

History

History
23 lines (15 loc) · 1.49 KB

README.md

File metadata and controls

23 lines (15 loc) · 1.49 KB

Roomba Component for ESPHome

A barebones wrapper to enable control of a Roomba via ESPHome. Tested with ESPHome 1.13.x, and a Roomba 650 w/a Wemos D1 Mini installed.

Hardware

The inspiration for this project is https://github.com/johnboiles/esp-roomba-mqtt. You'll find a detailed wiring guide there. In fact, I originally started off using that project for my Roomba 650. However, as I migrated my custom components to ESPHome, I wanted my Roomba to be on the same platform as the other devices.

I should note that like others, I initially had trouble reading the sensor data from the Roomba. I posted the solution I found in johnboiles/esp-roomba-mqtt#2 (comment)

For what it's worth, my Wemos D1 Mini couldn't read the Roomba sensors either. I found this snippet in an iRobot Create 2 Doc

In some cases, the drive strength of a Roomba TX line is not enough to drive the RX line of another board (for example, in some revisions of Arduino). In this case, a simple PNP transistor (2N2907A, 2N3906, or 2N4403, among others) can be used to provide enough “drive” for the Arduino.

I used a 2N3906 and following the circuit as described in the PDF; I can now read sensor values from the Roomba!

Software Setup/Use

Take a look at the example directory for a fully working example.

  • <example/esphome.yaml> - Contains the bits needed for ESPHome.
  • <example/homeassistant-vacuum.yaml> - Contains the bits needed to integrate as a "MQTT Vacuum" in Home Assistant