Folks coming to the GoPiGo3 and ROS today need to realize that the ROS community, Modular Robotics, Raspberry Pi Foundation, and the Ubuntu community have all progressed and obsoleted the software, commands, and processes the HandsOnROS book uses to teach the fundamentals of a ROS robot, and even the processor has become nearly impossible to purchase.
Having produced both software systems and embedded software systems for over 50 years, I cringe every time someone announces they are starting a new project on obsolete code. Regardless of the good plans, the projects suffer needless hurdles.
The HandsOn ROS book was really great when it was published. Last year I followed the book’s chapters but executed the activities on the then latest version of ROS 2 on the required version of Ubuntu, and converted most of the HandsOnROS files. In order to do this, I also had to develop my own GoPiGo3 code installation method. This was a real head banging project.
After finishing as much of HandsOnROS as I could use, I created an “Introduction to ROS 2 on the GoPiGo3” from a “get the theory from ROS.org or a current ROS 2 book” approach. Lots of smarter than me can teach ROS theory, but unfortunately no one, absolutely no one is interested in building new ROS 2 coursework around the GoPiGo3. (Nor should they in my opinion.)