Asked — Edited
Resolved Resolved by ptp!

Controlling I-Robot Create 2 With ARC Roomba Movement Panel?

I disconnected the servo from D0 on my Adventure Bot and connected GND on D0 (Black Pins) to Pin 6 on Create 2 connector (GND)-(Pin 7 also a GND pin on Roomba). I connected D0 Output (White Pins) to pin 3 on Roomba (Receive Pin).

The Create 2 communicates at 115K Baud as does the newer Roombas. I tried checking the "use old protocol" and leaving it unchecked and got very intermittent operation of the Create 2 Robot. Seems like it got commands sometimes but was extremely intermittent and not useable.

I know the EZ-BV4 only puts out 3.3 volts on the digital output pins and the Create 2 is expecting 5 volts. This could be an issue but after looking at the Roomba/Create threads this appeared not to be a problem in successfully using the ARC Roomba Movement Panel with the Create/Roomba Robots. It did appear that the threads all referred to the original Create Robot and I have the newer Create 2. I tried changing the configuration settings of the Movement Panel with not much luck. Just very intermittent operation of Create 2 Robot.

I used pin 6 as my ground on the Create 2 connector as ground and some others have used pin 7 on the older Create Robot. These pins should both be the same. (Battery Grounds).

I saw one thread where someone used a level shifter PCB from Sparkfun to convert the 3.3 Volts of the EZ-BV4 to 5 volts for input on the Robot receive input. Not sure how they did this as neither the Roomba's or Create 2 bring 5 volts out to the connector (7-pin). Actually there was a 25 pin connector in the payload area of some older Create Robots that may have brought 5 volts and GND out on the connector for user use. However the newer Create 2 robots don't have this connector.

Has anyone successfully used a Create 2 Robot with ARC Roomba Movement Panel and if not has anyone created scripts to simulate the Movement Panel for the Create 2 Robot?

Any ideas on why the intermittent operation of the Create 2 Robot would be much appreciated. The Create 2 looks like a really good robot for control via the EZ-BV4 controller. Thanks in advance for the help ! Rick


Upgrade to ARC Pro

Unleash your creativity with the power of easy robot programming using Synthiam ARC Pro



Any chance you could change the Roomba Movement Panel Configuration screen to allow using other digital ports ( D5 & D6 & Uart Port ), etc.? If D0 works at 115 kbaud why won't the other ports, especially the D5&D6 & Uart Ports? Thanks Much ! Rick :) :)




all the EZB UART port and the Digital Ports supports 115 kb.

The issue is not the speed, but how to choose other ports.

Only DJs can answer the question.

Btw why not D0 ?


Hello ptp,

I have tried using the D0 port with the roomba Movement Panel in ARC to control create 2 and get very intermittent operation. Please see my original post above. Others appear to be unsuccesful in using D0 especially at 115k baud. The uart ports may work better at the higher baud rate. Also may need level shifter between ez-bv4 and create 2 and this may help. Also not sure why we can't have the option to choose what ports (digital or uart) that we want to use to control Roomba/Create2? Thanks for answering and any further comments are appreciated...Rick :) :)



I used a script to successfully control create 2 using uart1 (pin D5). Have no success in using Roomba Movement Panel in ARC that only allows port D0. Can you change panel to allow uart0,1,2 pins? Maybe there is another issue with panel? Can you please check out? Maybe commands have changed for create 2 but doubt it. Thanks Much ! Rick :)


I can control create 2 using ez-bv4 just fine. However to save power the create 2 goes into a sleep mode and you can't send it commands any more?

Does anyone using create 2 platforms have a solution for this problem?

Evidently if you put the robot in the full mode (132) it will never sleep. In this mode the battery won't charge either.

Any help is much appreciated ! Rick stress



From Create 2 Open Interface Spec, page 6:


In Passive mode, Roomba will go into power saving mode to conserve battery power after five minutes of inactivity. To disable sleep, pulse the BRC pin low periodically before these five minutes expire. Each pulse resets this five minute counter. (One example that would not cause the baud rate to inadvertently change is to pulse the pin low for one second, every minute, but there are other periods and duty cycles that would work, as well.)

I would try connect the BRC pin to a EZB pin, and then High, 1 second, Low.


Thanks Much PTP for all your help on this subject. I decided to open up the Create 2 chassis and carefully solder small guage wires across the Power(Clean) Button and use the EZ-BV4 controller to turn on and off a relay to awake any time I want. This is a much less messy solution than trying to pulse the BRC line multiple times. I have tried it and it works really well and takes very little time to add the wires across the power(clean) button on the main board of the Create 2 Chassis.. Thanks Again.....Rick B.