It is interesting to compare the HandsOnROS (and my ROS2) GoPiGo3 node command topics and action goals:
ROS GoPiGo3
Subscribed Topics (Commands):
- /motor/dps/both # ADDED: Alan
- /motor/dps/left
- /motor/dps/right
- /motor/pwm/both # ADDED: Alan
- /motor/pwm/left
- /motor/pwm/right
- /motor/position/both # ADDED: Alan
- /motor/position/left
- /motor/position/right
- /servo/pulse_width/S1
- /servo/pulse_width/S2
- /servo/position/S1
- /servo/position/S2
- /cmd_vel
- /led/blinker/left
- /led/blinker/right
- /led/eye/left
- /led/eye/right
- /led/wifi
Action Goals:
- (none)
Create3/Roomba
Subscribed Topics (Commands):
- cmd_vel
- cmd_lightring (six color and intensity programmable lights)
Action Goals:
- dock
- undock
- wall_follow
The GoPiGo3 has the possibility of two servos, Grove sensors, and a user programmable processor that the Create3/Roomba lacks,
while the Create3 has three complex behaviors using six IR proximity sensors which the base GoPiGo3 lacks.
Since the basic GoPiGo3 comes with zero external world sensors, it might be thought unreasonable to expect it to have a wall_follow behavior. One of my former robots “Cye” came with exactly the same zero external world sensors, (only encoders and stall detection), and yet it had the ability to wall follow, map a room, and return to its dock.
Note the cost of a GoPiGo3 with processor and battery is $229 and the Create3 price is unknown at this point. The non-ROS Create2 is $199 and lacks the WiFi and Bluetooth interfaces the Create3 will have, otherwise functionally the same.
P.s. update: adding wall follow to the Create3 sim would expose IP not planned for open-sourced simulator. Interesting discussion going on wrt this function.