|
Page 3 of 4 As already mentioned, as the Rooma commands are outside the ASCII table (ASCII use 0 to 127, Roomba 128-256) it is not straight forward using a terminal to control the Roomba. Therefore a dedicated application is neccessary. Several implementations of different Roomba control softwares exists on web, but no one quite fit my expectations. So therefore I made my own (the ultimate solution to any problem ). The software use the DLL provided in the AVR309 application note from Atmel, and provides an easy interface to control and monitor your Roomba.
You can download the Application and dll file here: and the USB driver here: Note that this software is made for my Roomba 560, having scheduling possibilities. There are more buttons on the Roomba 560 than on the ones without scheduling. The SCI documentation from iRobot only lists the four buttons for the Roombas without scheduling in the button status byte: Bit
| 7
| 6
| 5
| 4
| 3
| 2
| 1
| 0
| Button
| n/a
| n/a
| n/a
| n/a
| Power
| Spot
| Clean
| Max |
But for the Roomba 560 (and therefore also for my SCI control software) the button configuration is this: Bit
| 7
| 6
| 5
| 4
| 3
| 2
| 1
| 0
| Button
| Clock
| Schedule
| Day
| Hour
| Minute
| Dock
| Spot
| Clean
|
UPDATE: There is now a separate SCI specification available for the 5xx series of Roomba vacuums. It can be found here, and has the correct button configuration listed, as above. Using the software is simple. You wake up the Roomba by pressing the Wake up button, and enable SCI control by pressing Control. Then you can control the Roomba and select the different modes of operation. For details see the SCI specification. Note that there are two UART baudrate selection boxes. The one on the right side is the Baud rate setting for the SCI control program. By default the Roomba communicates at 57600 baud (115200 for the 5xx series). If no connection is established with the Roomba you will se a notification and the baud selection box is red. The second baud selection box at the mid-left position is the SCI baud selection command to change Roombas baud rate. If you experience problems connecting to your Roomba on 57600 baud, hold the power button of your Roomba pressed for 10 seconds. Roomba will play a tune of decending tones and switch to 19200 baud, until the battery is removed or fully depleted. The following video gives a quick demonstration of how to use the program. Note the connection problem at the very beginning, as I tried to connect at 57600 baud, and then the baud rate change made by holding down the power button for some seconds. After making this film, I found out that the 5xx series use 115200 baud as default, and this was the cause of the connecion problem. On the next page I will show how you can connect the SCI interface to the STK500 AVR starterkit from Atmel to utilize its spare RS232 port, or control the Roomba using an AVR.
|