My first attempt to use JD and an old roomba 530 at the same time, JD acting as a pilot, using his feet on the "brakes and throttle", moving a joystick around and displaying turn, backup and brake signals with his leds
First step,go through all the roomba tutorials here, perfect to learn the pinout on the roomba side.
Turns out that in order to use JD as a pilot, I need to go another way, the main tutorial being about using only the microcontroller on the Roomba.
I finally decided to use UART port 0 to send commands to the Roomba, using Richard R's Roomba 500 custom movement panel2 (thanks)
I simply changed the port to 0 (in Richard's panel it's set to port 1)
so that makes the roomba respond to keyboard, joystick or voice inputs
Now for JD ( known around our house as Joe! )
JD is positioned on top of his "vehicle" with a movable joystick made out of a Gopro flexible stand (and I could still add the gopro to it !) and holding on to a metal bracket I added on the opposite side.
I created some moves for JD, hands, feet, head and led signals, so he could "drive", then merged my project with Richard's panel...
WRONG, roomba would drive off, but JD would try to walk, not execute my clever driver moves
answer was somewhere in the forum by DJ, remove JD original movement panel, install a custom panel, import my "driver" moves and voila, it works perfectly.
Vid here : https://www.youtube.com/watch?v=G6Ksh2ETVa4
V2 edit : Roomba now drives at full speed ( added a metal bracket as a backrest so JD would not get thrown by the monstrous G-Forces :) + reverse beep sound effect.