Indeed “back to the future” history comes back to bite again.
I got the F710 joystick working, and the call_odom_reset script still works to reset the /odom {x,y} to {0,0}, so I took GoPi5Go-Dave for his first “joyride”.
*** started moving
start_point - x: 0.001 y: 0.000 z: 0.000 heading: 0
The joyride went well, but upon Dave’s return to the starting {0,0} spot in front of his dock … the /odom read:
*** stopped moving
stop_point - x: 0.680 y: -1.120 z: 0.000 heading: 42
OUCH - Dave estimates he is 1.3 meters away and pointed 42 degrees different from reality.
This poor odometry was one of the reasons I was so excited to build Wali upon the Create3 robot platform last year. I simply could not figure out how to get GoPiGo3 Dave’s odometry to be anywhere close to the 3% - 5% dead reckoning accuracy of other robot platforms.
The Create3 fuses more precise wheel encoders, with a calibrated IMU, with an optical floor “mouse”, such that Create3-Wali could wander all around the house and return to his dock within 10 to 20 centimeters. From that proxmity, the Create3 used infrared beams coming from the dock to find the dock precisely and get onto it to recharge.
My hope for GoPi5Go-Dave is that the Oak-D-Wide angle camera (which also has an IMU) combined with the LIDAR scans and a Nav2 cost-map can get Dave back close to his dock with 10-20 cm accuracy, and then use the Oak-D-Wide camera to find and align with the Aruco dock marker.
For Dave’s sake, I hope I can get this extremely high-tech approach to match the Create3 built-in, straight from the factory, $400 gets you accurate odometry, self-docking, proximity sensors, a bumper, 3A 5v USB-C power, 2A 14.4v auxiliary power, with a strong support team, (since both you and the Create3 get a migraine when you mate an Oak-D camera to it!)
Wali was cute…