The JPL Open Source rover is an open source, build it yourself, scaled down version of the 6 wheel rover design that JPL uses to explore the surface of Mars. I have recently completed the build of this rover, which was rally a challenge! Interestingly, the software was one of the more challenging aspects of the build, which was unexpected since I’ve been working with software for more than 30 years!
The build is pretty well documented but I did run across a few bumps in the road.
For convenience, the table here provides the overall specifications
|Attribute||Value [imp]||Value [SI]|
|Footprint||24x14 [in]||60.96x30.48 [cm]|
|Battery Capacity||5200 [mAh]||5200 [mAh]|
|Battery Discharge Rate||8 [A]||8 [A]|
|Nominal Current Draw||1.2 [A]||1.2 [A]|
|Operating time (continual use)||5 [hrs]||5 [hrs]|
|Approximate Max speed||9.7 [in/s]||24.6 [cm/s]|
|Max 90 deg vertical scale||12 [in]||30.48 [cm]|
|Max height differential between sides||14 [in]||35.56 [cm]|
|Communication (in this guide)||Bluetooth app (Android only) and Xbox Controller|
Building the source
Building the ROS source on the Pi3 is a giant pain in the neck. The software steps provide links for:
- Direct downloadable Raspbian Stretch image
- Custom JPL image with both Raspbian Stretch and ROS pre-built
Downloading the pre-built image is much easier but also fat less of a challenge. I found that going through the build process was really helpful in understanding the whole structure of the software elements and greatly helped in subsequent troubleshooting.
As noted in the build process docs, you absolutely need to add swap to the Pi and using an external drive is the best option. I had to add swap on the main SD card it the whole build took about 20 hours to complete!