Open Source RoboticsRobots, software & field notes

JPL Open Source Rover

Based on published sources · Not tested by us ·

Overview

Six-wheel rocker-bogie rover with off-the-shelf mechanical parts and separate ROS control software; reviewed hardware and software snapshots need version and calibration reconciliation. [S001]

The JPL Open Source Rover is a six-wheel rocker-bogie platform with six drive motors and four steering servos. The reviewed hardware release is v4.0.0, with off-the-shelf aluminum parts, electronics assembly and wiring documentation. It offers a substantial build project for learning rover mechanics and control; it is not a small version of flight-qualified Mars hardware. [S001] [S002] [S005]

Specifications

DetailDescription
TypeSix-wheel rocker-bogie rover with a differential pivot and steerable corner assemblies.
Reported by source [S001] · Checked 2026-10-01
Intended usersClubs and labs able to assemble mechanics, solder boards and configure ROS control
Editorial assessment [S001] · Checked 2026-10-01
AssemblyOff-the-shelf aluminum mechanical assembly, PCB assembly and custom wiring; base version described as not requiring metal machining.
Reported by source [S001] [S007] [S008] · Checked 2026-10-01
CalibrationCorner servos must be centered and aligned; actual centers, wheel geometry and gamepad mappings must be set for the selected build.
Reported by source [S011] · Checked 2026-10-01
Operating systemNot known
Computer neededNot known

3D preview

Preview not available yet. A model has not yet been prepared and approved for display on this page. This does not mean the project lacks CAD files; see Source files and licenses for the reviewed source availability.

Assembly and use

The parts subtotal is not the complete setup cost

The README gives a rough $1,600 figure, while the detailed parts document reports $1,360.74. The latter explicitly leaves additional items outside its total. These include three RoboClaw 2x7A motor controllers, voltage regulators, a PCA9685 servo-control board, a Raspberry Pi, battery and charger, wiring supplies, mounting accessories and tools. A gamepad is also recommended. Do not interpret either historical number as a current delivered, ready-to-drive budget. This review did not obtain a complete regional supplier quote. [S001] [S005] [S006]

The base mechanical design is described as requiring no metal machining, but assembly still includes board work and custom wiring. The PCB guide is headed v2.0.3 yet retains notes about unfinished instruction updates and notes that some pictures come from v2.0.1. Match the actual board revision, manufacturing files and instructions before ordering or soldering. [S001] [S007] [S008]

Preserve the software separately

The robot-control code lives in osr-rover-code, which has been preserved at a separate commit for this review. Its overview says ROS 2 was tested on Foxy, while the detailed Raspberry Pi setup now assumes Jazzy and asks readers to match the operating system and ROS release. That discrepancy is a reason to record and validate one selected environment, not a claim that every distribution works. No software installation was performed here. [S009] [S010] [S015]

The setup guide uses a ROS workspace, Python dependencies, serial communication and I2C. The bringup guide then covers wheel geometry, steering-center calibration and gamepad mappings. It recommends supporting the rover so the wheels can turn without driving the chassis during initial checks. These configuration steps remain necessary even when the mechanics follow the default build. [S010] [S011]

The PCB instructions also require configuring each RoboClaw: distinct addresses 128–130, Packet Serial at 115200 baud and Multi-Unit mode. They call for checking motor and encoder directions and saving settings to each controller’s non-volatile memory. The software setup then checks communication with all three controllers. These are upstream commissioning requirements, not checks performed by this review. [S007] [S010]

Resolve the custom launch file before calibration

The calibration instructions tell the builder to edit osr_mod_launch.py, but that file is not present in the saved software archive. The default osr_launch.py does contain steering-center parameters, and the startup script selects the custom file only if it exists, otherwise falling back to the default. A builder must establish and verify the intended custom launch configuration before relying on those instructions; this review has not created or tested that configuration on a rover. [S011] [S012] [S013] [S015]

Upstream also says to validate manual operation before enabling automatic startup, and to stop the background service while recalibrating or launching code manually. Keep that distinction in the commissioning plan so configuration work does not compete with an already running controller. [S011]

Both the hardware-plan repository and the separately inspected control repository carry Apache-2.0 licenses. Purchased motors, controller firmware and other components retain their own terms. The catalog records available build plans and software, along with revision and setup gaps; it does not claim a completed build, tested drive performance or a complete source archive for every component. [S003] [S014]

Cost

No current, complete configuration-specific build cost has been established for this profile.

Source files and licenses

Available project sources support research coverage; complete build and commercial qualification remain separate.

LayerAvailability / license
mechanical designavailable · Apache-2.0
Repository build plans and documentation; purchased components retain separate rights. No complete manufacturer source for every COTS part implied. [S001] [S003] [S004]
electronicsavailable · Apache-2.0
Repository build plans and documentation; purchased components retain separate rights. No complete manufacturer source for every COTS part implied. [S001] [S003] [S004]
firmwarenot found · License not fully assessed
Complete matching RoboClaw/controller firmware source not established in the inspected archives. [S008] [S015]
softwareavailable · Apache-2.0
Separately preserved control repository; not a verified matched release for the hardware snapshot. [S009] [S014] [S015]
documentationavailable · Apache-2.0
Repository build plans and documentation; purchased components retain separate rights. No complete manufacturer source for every COTS part implied. [S001] [S003] [S004]

Rover platform profile selects no learned policy or dataset.

References

Links identify the documentation and revisions used in this profile. Access dates record when each source was retrieved.

  1. S001 · nasa-jpl / project contributors
    Upstream project overview
    Accessed 2026-10-01 · README.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  2. S002 · nasa-jpl / project contributors
    Repository revision and release metadata
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  3. S003 · nasa-jpl / project contributors
    Repository license
    Accessed 2026-10-01 · LICENSE.txt
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  4. S004 · nasa-jpl / project contributors
    Pinned repository artifact inventory
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c archive file inventory
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  5. S005 · nasa-jpl / project contributors
    Rover v4.0.0: parts_list/README.md
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c / parts_list/README.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  6. S006 · nasa-jpl / project contributors
    Rover v4.0.0: parts_list/extra_parts.md
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c / parts_list/extra_parts.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  7. S007 · nasa-jpl / project contributors
    Rover v4.0.0: electrical/pcb/README.md
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c / electrical/pcb/README.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  8. S008 · nasa-jpl / project contributors
    Rover v4.0.0: electrical/wiring/README.md
    Accessed 2026-10-01 · 85078c20b0409ea327d3d73b96096bca00b8d15c / electrical/wiring/README.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  9. S009 · nasa-jpl / project contributors
    Separate rover software: README.md
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / README.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  10. S010 · nasa-jpl / project contributors
    Separate rover software: setup/rpi.md
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / setup/rpi.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  11. S011 · nasa-jpl / project contributors
    Separate rover software: setup/rover_bringup.md
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / setup/rover_bringup.md
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  12. S012 · nasa-jpl / project contributors
    Separate rover software: ROS/osr_bringup/launch/osr_launch.py
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / ROS/osr_bringup/launch/osr_launch.py
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  13. S013 · nasa-jpl / project contributors
    Separate rover software: init_scripts/launch_osr.sh
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / init_scripts/launch_osr.sh
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  14. S014 · nasa-jpl / project contributors
    Separate rover software: LICENSE.txt
    Accessed 2026-10-01 · 6b17c22a900182f5339c23ba1f86739b5c9e8c1c / LICENSE.txt
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

  15. S015 · nasa-jpl / project contributors
    Preserved software revision and inventory
    Accessed 2026-10-01 · Separate snapshot; no release compatibility claim
    Source notes

    Source text inspected for the cited scoped claims; see profile claim notes.

Research and review details

Source research only; no installation, physical build or performance test performed. No affiliate links added.

Profile edited 2026-10-01 · Sources checked 2026-10-01 · Next review target 2026-10-31

Revision: 85078c20b0409ea327d3d73b96096bca00b8d15c (release v4.0.0). Combined hardware and software repository activity recorded 2023-09-14 [S002]

Correction guidance · Discussion is not enabled · Profile format 0.6.0-draft.1

Change history