1
$\begingroup$

I was starting to work on the Arduino interface (and Raspberry Pi) using the USB serial cable for the Create 2 , as a baseline to build other outer loop controls. My wife asked me why I would do that, and she handed me her Roomba remote control. It worked ! Well, the Roomba IR remote only transmits, and the functions are only a small subset of the Open Interface Spec. Rather than jumping into another Arduino build side project so I can decode the Roomba IR remote and waste alot of time, and tear apart the Create 2, ( I also assume the schematics are proprietary) ......here are my questions.....

Does the Create 2 hardware include a separate IR receiver and transmitter that works in parallel with the serial interface (so I can optically isolate the control signals and do away with the serial cable. )? Does the Create 2 use IR sensors multiplexed to the home base for receiving the IR remote commands ?

Thanks for any info on a serial IR interface possibilities.

$\endgroup$

1 Answer 1

1
$\begingroup$

RoanokeRoboticsClub whoop whoop! I'm based in the Roanoke area!

For your question, I would direct you to the Create2 Open Interface spec, pages 24-26, and ask if that's enough to answer your question and, if not, to please edit your question to include more specifics of what you're trying to do and why the information in the spec is insufficient.

To clarify, too, it looks like Packet IDs 17, 52, and 53,

...identifies the 8-bit IR character currently being received by [the respective sensor]. A value of 0 indicates that no character is being received. These characters include those sent by the Roomba Remote, Dock, Virtual Walls, Create robots using the Send-IR command, and user-created devices.

Emphasis added to highlight that you can make your own IR device and, presumably, your own values.

For compatibility, I would treat 0 and the character values listed in the table on pages 25-26 as "reserved" characters, and then you're free to use any other value, without "collision," to signal/flag your code to do whatever you want.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.