
Sawppy the Rover
Rocker-bogie Mars rover model built from 3D prints, 15 mm extrusion and 10 bus servos.
- $500basic rolling chassis in parts: Raspberry Pi 3, 10 LX-16A servos, bus board, battery, filament, extrusions, shafts, bearings and hardware; rough US price guideline, upstream says bargain hunters may get closer to 400 USD, estimate
- 10 DoF
- MIThardware
- 80 / 100 reproducibilityStrong source coverage, unverified
What it is
Sawppy the Rover is Roger Cheng's motorized model of the Mars rovers Curiosity and Perseverance, reproducing their six-wheel rocker-bogie suspension. It was inspired by JPL's Open Source Rover and cuts cost by swapping gearmotors, RoboClaw controllers and Actobotics parts for ten LewanSoul LX-16A serial bus servos and 3D-printed connectors on Misumi HFS3 15 mm aluminium extrusion. The repository documents Sawppy V1: STL exports of all 23 printed parts (the editable CAD is a public Onshape document, not a STEP file in the repo), markdown print and assembly guides, a purchased-parts list, a schematic image and a WireViz wiring harness. Control options are the SGVHAK-derived web teleoperation (separate repo), an Arduino Nano wired-joystick sketch in the repo, and community ROS and ROS 2 stacks; the ESP32 code in the repo targets Micro Sawppy, not V1. The repo LICENSE is MIT, and upstream states that the design and build instructions are shared under MIT. The $500 figure is the author's rough US parts budget for a basic rolling chassis, not a priced BOM, and the README describes Micro Sawppy and a future Sawppy V2 as work in progress on the author's blog. The 3D view is converted from the community Curio ROS model (srmainwaring/curio), whose meshes come from the Sawppy CAD, not from this repository.
Licenses
Degrees of freedom
10 DoF driveWheels 6cornerSteering 4
Rocker-bogieRoversource
Auto-assembled, not yet reviewed
Source record
- Sources
- 511 stars, last push 2025-09-21
- HW license
- MIT
- Cost
- $500estimate, basic rolling chassis in parts: Raspberry Pi 3, 10 LX-16A servos, bus board, battery, filament, extrusions, shafts, bearings and hardware; rough US price guideline, upstream says bargain hunters may get closer to 400 USD
- Lifecycle
- Maintained
- Engine
- v3.1.1
- Checked
- Model
- curio.urdf.xacro@baec5d6rendered 2026-10-02
Maintain Sawppy the Rover? Claim this page to correct it.
Parts and cost
Cost to build
- basic rolling chassis in parts: Raspberry Pi 3, 10 LX-16A servos, bus board, battery, filament, extrusions, shafts, bearings and hardware; rough US price guideline, upstream says bargain hunters may get closer to 400 USD
In the source currency, as read on 2026-09-30. Not converted, and not checked against current vendor prices: none of these is a Motari-verified checkout total.
Sawppy the Rover parts, as the source lists them. Prices are the source's, not checked against vendors.
| Part | Qty | Spec | Source | Confidence |
|---|---|---|---|---|
Raspberry Pi 3Budget line includes microSD card, case and a 5V regulator that powers the Pi from the rover battery | 1 | Raspberry Pi 3 with microSD card, case and 5V regulator | vendor not named$50 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 14 | high |
LewanSoul LX-16A serial bus servoFour steer the corner wheels and six drive the wheels | 10 | LewanSoul (Hiwonder) LX-16A serial bus servo | LewanSoul / Hiwonder$15 each, $150 total upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 15; docs/Parts List.md line 57 | high |
LewanSoul USB interface boardAlso called BusLinker or Debug Board; one per rover | 1 | USB to serial bus servo interface board | LewanSoul / Hiwonder$10 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 16 | high |
Misc. electronicsGrouped as one budget line upstream | 1 | Power switch, volt meter, fuse with holder, wires and connectors | vendor not named$20 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 17 | high |
Battery packUpstream says it allows several hours of operation | 1 | 5200mAh 2S LiPo battery pack | vendor not named$25 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 18 | high |
3D printing filamentAbout 3 kg prints all parts; the 23 printed part types and quantities are listed in docs/Parts List.md | 3 | 1 kg spools | vendor not named$25 each, $75 total upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 19; docs/Parts List.md line 6 | high |
Aluminum extrusion beamsUpstream notes any 15 mm square beam should work; builders have used MakerBeamXL | 17 | Misumi HFS3 15 mm square: 4 x 385, 4 x 245, 1 x 238, 2 x 182, 2 x 161, 2 x 122, 2 x 117 mm | Misumi cutting service$45 upstream budget figure for cut beamsRoger-random/Sawppy_Rover docs/Price breakdown.md line 20; docs/Parts List.md lines 75-83 | high |
8mm shaftsDifferential shaft should be steel; the others can be aluminum or steel | 15 | 8 mm rod cut to 1 x 300, 6 x 50, 4 x 61, 2 x 66.5, 2 x 84 mm | vendor not named$10 upstream budget figure for steel rod stockRoger-random/Sawppy_Rover docs/Price breakdown.md line 21; docs/Parts List.md lines 35-49 | high |
608 bearingsCommodity skateboard-type bearings are fine per upstream | 30 | 608 ball bearing | vendor not named$20 upstream budget figure for the setRoger-random/Sawppy_Rover docs/Price breakdown.md line 22; docs/Parts List.md line 58 | high |
TurnbucklesLink both rocker-bogie sides to the differential | 2 | Eyes fit M3 fasteners, roughly 5 to 7.5 cm between endpoints; Hobbypark 16617 shown | vendor not named$10 upstream budget figure for the pairRoger-random/Sawppy_Rover docs/Price breakdown.md line 23; docs/Parts List.md line 66 | high |
Misc. hardwareGrouped as one budget line upstream; docs/Parts List.md itemizes the fasteners | 1 | 300 M3x8 socket head screws, 28 M3x16, 300 M3 washers, 300 M3 nuts, 100 M3 heat-set inserts, 100 5/16 in E-clips, 22 M3x8 set screws, 40 #2 1/4 in brass screws | vendor not named$75 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 24; docs/Parts List.md lines 59-65 and 67 | high |
| 1 | Laser cut acrylic panel | vendor not named$10 upstream budget figureRoger-random/Sawppy_Rover docs/Price breakdown.md line 25 | high |
Rows from the source's own parts list 46
docs/Parts List.md@16eccd0markdown
| Source row | Qty | Price and vendor | Line |
|---|---|---|---|
Clip2n125 | 88 | vendor not listedno price listed | L10 |
Clip3n20 | 12 | vendor not listedno price listed | L11 |
Wheel Hub | 6 | vendor not listedno price listed | L12 |
LX-16A - Coupler | 10 | vendor not listedno price listed | L13 |
LX-16A - Bracket | 10 | vendor not listedno price listed | L14 |
Wheel | 6 | vendor not listedno price listed | L15 |
Steering Knuckle | 4 | vendor not listedno price listed | L16 |
Body Corner | 4 | vendor not listedno price listed | L17 |
38 more rows in docs/Parts List.md
How to build
Steps marked Motari summary condense the linked source; follow the source for exact instructions. Upstream step marks a step taken from the linked guide.
Print the rover parts
Print the 23 part types listed in docs/Parts List.md from the STL/ folder (about 3 kg of filament). Upstream prototypes used a 0.4 mm nozzle, 0.3 mm layers, 3 perimeters, 4 top/bottom layers and 30% triangular infill with no supports, first in PLA and then in PETG. Post-process by removing bridge layers, reaming 8 mm holes, tapping or fitting M3 heat-set inserts, and pressing in 608 bearings.
Motari summarygithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...Prepare extrusions and shafts
Get 17 lengths of 15 mm HFS3 aluminium extrusion (cut to length by Misumi or cut yourself). Make the 8 mm shafts: six wheel axle and four steering shafts with retaining clip grooves and set screw detents, two bogie and two rocker pivot shafts with grooves but no detents, and one 300 mm steel differential shaft that needs no grooves.
Motari summarygithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...Build the servo actuator and drive modules
Give each of the ten LX-16A servos a unique bus ID and test it, centre the four steering servos, then fit the printed coupler and bracket. Build four steerable drive modules on steering knuckles and two fixed middle-wheel modules, holding shafts with E-clips and set screws.
Motari summarygithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...Assemble the body and suspension
Fit the corner, bogie and rocker pivot joints, bolt the body box from printed corners and extrusions using the printed M3 nut installation tools, add the differential, then build each bogie and rocker. Mount the rocker-bogie on the body and link it to the differential with turnbuckles; watch the left/right Bogie-Wheel errata.
Motari summarygithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...Wire power and servos
A bare-bones build uses a 2-cell LiPo, power switch, 10A fuse, volt meter and 5V regulator feeding a Raspberry Pi 3, which connects by USB cable to the serial bus translator board; all ten serial bus servos connect in parallel to that board.
Upstream stepgithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...Install control software
Rename servo IDs, then run the SGVHAK-derived web teleoperation on the Pi, or use the Arduino Nano wired-joystick sketch, or one of the community ROS and ROS 2 stacks linked from the README.
Motari summarygithub.com/Roger-random/Sawppy_Rover/blob/16eccd0e2cf71d2c72...
Wiring, power and firmware are safety-relevant and shown for reference only. Check them against the source before building.
metCAD / mesh presentReviewedRoger Cheng's public Onshape document, linked from docs/README.md as the CAD, holds the editable design: 23 Part Studios and 9 assemblies including the full rover chassis. The engine does not open Onshape.20/20
Quality tier 3 of 3
Reviewed override, 2026-10-02
Evidence on cad.onshape.comEngine alone: partial at tier 2 (only 7 editable CAD parts against 30 printable parts, no assembly; not the design's CAD source)
partialBOM evidencedocs/Parts List.md (3 tables): 39 line items, quantities10/20
Quality tier 2 of 5
metWiring diagram4 wiring/schematic diagrams (image or PDF)15/15
Quality tier 2 of 3
metFirmware linkedfirmware source in the repo (PlatformIO, Arduino)10/10
Quality tier 3 of 3
metBuild instructionsRevieweddocs/README.md links seven assembly pages, each with a parts list and short ordered steps, each followed by a photo. The steps are unnumbered paragraphs, so the engine missed them. No official build video.15/15
Quality tier 2 of 3
Reviewed override, 2026-10-02
Evidence on github.comEngine alone: partial at tier 1 (build section in the docs, no step-by-step guide with images)
metOSHW-compatible licenseMIT (from repository license)10/10
Quality tier 2 of 2
- LICENSE16eccd0
missingKnown reproductionsno verified builds yet0/10
Quality tier 0 of 2
Only build reports a maintainer or admin has reviewed count here.
Engine v3.1.1 at 16eccd0, 2 items reviewed by hand
How this score is computedFiles and sim
- STL/Wheel.stl
- STL/Body Corner.stl
- STL/Rocker.stl
- STL/Front Corner.stl
- STL/Rear Corner.stl
- STL/Bogie-Wheels.stl
- STL/Steering Knuckle.stl
- STL/LX-16A - Bracket.stl
- docs/Parts List.md
- docs/Price breakdown.md
- docs/images/Sawppy V1 Schematic.png
- docs/wiring/Wiring.md
- arduino_sawppy/arduino_sawppy.ino
- docs/README.md
Files stay in the upstream repository under their own licenses; these links open them there. The 3D model on this page is Motari's conversion of the file named under Simulation.
Simulation
Robot description files a simulator or CAD tool can load, linked at the commit they were found.
The 3D specimen on this page is converted from curio_description/urdf/curio.urdf.xacro at baec5d6.
Builds
No reviewed builds of Sawppy the Rover yet.
A build log records the evidence (photos, a video, your repository), what the build cost, how long it took and what you changed. Each one is checked by Motari (until a maintainer claims this page) before it shows here, and reviewed builds count toward the reproducibility score.
Sources
Where the facts come from
- Hardwaregithub.com/Roger-random/Sawppy_Rover16eccd0
- Hardwarecad.onshape.com/documents/43678ef564a43281c83e1aef/w/392bbf8...
- Build guidegithub.com/Roger-random/Sawppy_Rover/blob/main/docs/README.md16eccd0
- Bill of materialsgithub.com/Roger-random/Sawppy_Rover/blob/main/docs/Parts%20...16eccd0
- Bill of materialsgithub.com/Roger-random/Sawppy_Rover/blob/main/docs/Price%20...16eccd0
- Softwaregithub.com/Roger-random/SGVHAK_Rovereddf617
- Simulationgithub.com/srmainwaring/curiobaec5d6
- Documentationhackaday.io/project/158208-sawppy-the-rover
Last push to Roger-random/Sawppy_Rover: 2025-09-21 (checked 2026-10-02)
Related links
- Build instructionsdocs/ print and assembly guides
- Parts listdocs/Parts List.md
- Wiring harnessdocs/wiring/Wiring.md
- ROS 2 stackmgonzs13/ros2_rover (community)
- Build blognewscrewdriver.com Sawppy category
- Inspiration: JPL Open Source Rovernasa-jpl/open-source-rover
How this page was made
Assembled from public sources on 2026-09-30, not yet reviewed by the maintainer. Each figure links to where it is stated; a value the sources do not state reads "not published". Last source review: 2026-09-30 Roger-random/Sawppy_Rover@16eccd0 README, LICENSE, tree.
Original files stay intact and separately licensed; Motari adds only the summary on this page. Maintainer? Request a correction or removal.
Badge for the README
Maintain Sawppy the Rover? Show its reproducibility score in the project's README. The badge links back to this page and updates with the score.
[](https://motari.io/r/sawppy)<a href="https://motari.io/r/sawppy"><img src="https://motari.io/api/v1/badge/sawppy" alt="Motari reproducibility score for Sawppy the Rover" height="20"></a>Not fully met yet: bom evidence (partial). The score is read from the project's own sources, so publishing what is missing is what raises it. A score of 90 or more needs a reviewed build. How the score is computed