Asked — Edited

Roomba Control Question?

I'll admit to being lazy over this but I point this question to any "Roomba/EZ-Builders" with experience.

What control out of the box do I have with a Roomba through ARC? I see a few controls in the project ad-on for Roomba motion and sound.

Just wondering if docking is available or will I need to write script to achieve that?

DJ makes it all look so simple, I'm guessing because he's a genius. Unlike him I am dumber than my dog and I have a very dumb dog.

Just looking for quick simple answers. Not sure how much I want to dig in for a Roomba at the moment.

Thanks ahead of time folks User-inserted image

Skip to comments


Upgrade to ARC Pro

Elevate your robot's capabilities to the next level with Synthiam ARC Pro, unlocking a world of possibilities in robot programming.


Here are the options you have through the Roomba Movement Panel in ARC:

User-inserted image

One of the buttons is "Seek Dock" so Yes you can do that right out of the gate with no scripting:)

Do you have a DIN connector to connect to the Roomba's SCI port?


Further to what Jeremie said... If you want to send the Roomba to the docking station in a script use the below...

SendSerial(D0,57600,128,131) #initiates the IO and puts it in safe mode
Sleep(20) # I like a little pause between send commands
SendSerial(D0,57600,143) #Tells the Roomba to cover and dock

EDIT Or what DJ said... LOL.... I use the above because I usually use a custom Movement Panel for my Roomba projects....


There is a script command for Roomba, it is Roomba().

When you load the Script Editor, you can search for words. Search for the word Roomba and you will find this help...


Roomba( cmd ) Execute the specified command on a connected Roomba Vacuum on Port D0 and EZ-B 0. Look for the available Roomba commands further below in this document. You may also add the Roomba Movement Panel for graphical controls. Example: Roomba(init) Example: Roomba(SideBrushOn)

Roomba Commands The iRobot Roomba can be controlled by the EZ-B. Once the Roomba Movement Panel has been added, these commands can be parameters to the Roomba() function. Syntax use for this function can be found above in this document. Init EnableSensors DisableSensors PowerOff SpotClean Clean MaxClean DisableAllBrushes MainBrushOn MainBrushOff SideBrushOn SideBrushOff VacuumOn VacuumOff SeekDockingStation

Now, of course every other feature of ARC for movements and stuff works with the Roomba. Meaning, once a Roomba Movement Panel has been added to your project, simply using the Forward(), Left(), etc.... commands will move the Roomba. This allows the camera to track the objects, etc..


@DJ I forgot about those Roomba commands... LOL.... I usually use a custom Movement Panel so I got into the practice of sending my own commands through sendSerial or the UART....


Thank you all gentlemen. After I posted that I did see the docking command.

@DJ, I know the company is growing and you must be busy but the one thing that inspired me (and still does) are the first videos you made. The ones in your basement? (I guess that was your basement). Just saying

@Richard, I'm going to have to get unlazy and hit the script as you and DJ showed.

@Jeremie, I should have seen that first!