






About this program
491 stars on GitHub.
Sawppy the Rover is a 3D-printed, motorized model of NASA's Mars rovers Curiosity and Perseverance, buildable for under $500 in parts. Created by Roger Randolph as a more accessible alternative to the JPL Open Source Rover, Sawppy replicates the iconic rocker-bogie suspension system that allows rovers to traverse rocky terrain with all six wheels remaining in contact with the ground.
Source: https://github.com/Roger-random/Sawppy_Rover
The suspension uses the same kinematics as the real Mars rovers — a passive differential mechanism connects the rocker-bogie suspension arms so the rover body stays level even when wheels traverse obstacles at different heights. All structural parts are fully 3D-printable on a standard FDM printer; the STL directory contains 30 tested parts.
Drive hardware uses LX-16A serial bus servos (10 total: 6 wheel drive, 4 steering), which are significantly cheaper than the equivalent Dynamixel servos while offering position feedback. The control stack runs on a Raspberry Pi and supports Arduino wired control, R/C control, ROS Kinetic, ROS Melodic, and ROS2 Humble — including full Gazebo simulation support.
An active builder community exists on Hackaday.io with numerous documented builds. A "Micro Sawppy" variant targeting $100 and elementary-school builders is also available. Live Onshape CAD allows full modification.
License: MIT.
Install Notes
Sawppy's software stack varies by hardware variant — the original uses LewanSoul LX-16A serial bus servos; newer variants use different controllers. Software lives in separate platform-specific repos (search for "Sawppy ROS" or "Sawppy ESP32"). The orobot Program code is a reference stub. Start from the Sawppy docs directory which links the correct sub-project for your build.
🖨 Print Files (30)
25D Coupler.stl
AX-12-Bracket.stl
AX-12-Coupler.stl
DisplayBottom.stl
DisplayTop.stl
Fixed Knuckle 25D.stl
Required Hardware
| Qty | Part | Cost (est.) | Notes |
|---|---|---|---|
| 10 | LewanSoul LX-16A serial bus servo | ~$20 ea | Primary actuators — 6 drive, 4 steering |
| 30 | 608 bearings (10-pack, need 3) | ~$8/10-pk | Standard inline-skate bearing |
| 1 | M3 screw assortment kit (socket head, 600-pc) | ~$14 | Covers all M3 fasteners |
| 1 | M3 threaded inserts (heat-set, 100-pc) | ~$10 | Press into 3D-printed joints with soldering iron |
| 1 | 8mm steel rod (~1m) | ~$12 | Differential shaft — cut to length |
| 1 | 8mm aluminum rod | ~$10 | Non-load shafts |
| 1 | Raspberry Pi 3 B+ (or newer) | ~$35 | Primary controller — runs ROS or custom stack |
| 1 | ESP32 development board | ~$8 | Optional — ESP32 control stack available in repo |
| 1 | 2S LiPo battery 7.4V 5000mAh (single) | ~$30 | Main power; buck converter steps down to 5V for Pi |
| 1 | 5V buck regulator | ~$10 | Stable 5V for Raspberry Pi from 7.4V LiPo |
B