We wanted to do something involved the Google Home. We also wanted to do some kind of hardware hack. Controlling a robot using your voice sounded really cool so we decided to go with the Roomba.
What it does
Using our web interface or Actions on Google, you can control the Roomba with your voice via Google Home or web interface. You can command the Roomba to move X amount of feet forwards or backwards with your voice or turn X amount of degrees. The Roomba will also detect any obstacles and attempt to move around it with your guidance. Sensor data and path information is also displayed on the web interface.
How I built it
The voice interface built with Google Home, API.AI, and Actions on Google with a NodeJS backend to handle the logic needed to move the robot.
Challenges I ran into
Create2 has very unreliable charging. The sensors sometimes don't work well. The wheel motors are not in sync. One moves faster than the other even though we gave commands to move at the same speed. Converting data from the Roomba to data that we could understand and process was really difficult.
Accomplishments that I'm proud of
It works. Getting the Roomba to move based on voice commands was very satisfying to see.
What I learned
API.AI a lot simpler to use than Amazon Echo and at the same time, similar.
What's next for I like to Roomba Roomba
Add these features to production Roombas. Imagine controlling the vacuum cycles and other features using only your voice.
Google Home Interface https://youtu.be/od6v_rdrbVg