stanford/pupper-v3 · spec sheet
Stanford Pupper v3 specs
Open-source educational quadruped developed through Stanford courses, with brushless motors, a Raspberry Pi 5 and a reinforcement-learning locomotion policy out of the box.
Media
4 items · credited and licensed
render
render
Specifications
6/12 fields sourced| Heightspecs.heightCm | unsourced |
|---|---|
| Massspecs.massKg | 3kg |
| Degrees of freedomspecs.dof | 12 |
| Payloadspecs.payloadKg | unsourced |
| Top speedspecs.speedMps | unsourced |
| Runtimespecs.runtimeMin | unsourced |
| Battery capacityspecs.batteryWh | unsourced |
| Pricespecs.priceUsd | unsourcedRoughly $1000 BOM per project README; ~$2000 to build per Stanford page |
| Actuatorsspecs.actuators | GIM4305 400 W brushless motors |
| Computespecs.compute | Raspberry Pi 5 |
| Sensorsspecs.sensors | Luxonis SR depth camera |
| Year introducedyear | 2024 |
| Licenselicense.hw / .sw / .docs | Software: AGPL-3.0 AND GPL-3.0 AND MIT |
Note · Ships with an RL locomotion policy. Third-party vendors (e.g. AIFITLAB) sell kits. Year = docs '2024' edition. Licenses (GitHub license API, 2026-09-25): pupper-v3-documentation AGPL-3.0, pupperv3-monorepo and pupperv3-mjx GPL-3.0, pupper_v3_description MIT. CAD is a public Onshape/Fusion share with no stated license. Mass 3 kg per the docs tech specs page.
| Artifact | Public | Weight | Points |
|---|---|---|---|
| CADopenness.cad | yes | 25 | 25 |
| Bill of materialsopenness.bom | yes | 20 | 20 |
| Sim model (URDF/MJCF)openness.sim | yes | 20 | 20 |
| Firmwareopenness.firmware | yes | 15 | 15 |
| Softwareopenness.software | yes | 10 | 10 |
| Trained policiesopenness.policies | yes | 10 | 10 |
| score = Σ weight × public | 100 | ||
BOM by category · USD from priced lines
| Category | Lines | Qty | USD |
|---|---|---|---|
| Actuators | 2 | 14 | 1,332 |
| Electronics | 9 | 10 | 274 |
| Compute | 3 | 3 | 164 |
| Power | 1 | 2 | 100 |
| Sensors | 4 | 4 | 92 |
| Fasteners | 4 | 254 | 32 |
| Other | 3 | 6 | 29 |
| Printed | 1 | 1 | 20 |
| Cabling | 6 | 119 | — |
Offers in CN · EU · GLOBAL · US from 12 vendors
Subsystems · assembly groups
| Group | Steps | Min | Safety |
|---|---|---|---|
| Electronics prep | 3 | — | 1 |
| Fabrication | 2 | — | 1 |
| Software | 3 | — | — |
| Brain | 3 | — | — |
| Body | 4 | — | 1 |
| Legs | 3 | — | — |
| Bring-up | 1 | — | 1 |
| Options | 1 | — | — |
| Policy | 1 | — | — |
Fabrication: FDM print ×18 · Laser cut ×1
Firmware
- Targets
- Control board Rev 3.5, two STM32 MCUs: SPIneV1.elf via ST-Link V2 / STM32CubeProgrammer, 12 x Steadywin GIM4305 SHS drivers: vendor firmware .elf via ST-Link, parameters and CAN ID via Steadywin Motor Wizard over CP2102 UART, Raspberry Pi 5: pupOS image (PiOS + ROS 2 Jazzy + pupperv3-monorepo)
- Repo
- github.com/Nate711/pupperv3-monorepo
- Calibrate
- Motor encoders: 'calibrate encoder' then Sync in Motor Wizard during driver setup. Joint zero: automatic at every start; control_board_hardware_interface drives each joint to its end stop (homing stages, velocities and torque thresholds from the ros2_control xacro) and then to the rest pose.
- Notes
- Firmware binaries (SPIneV1.elf, motor .elf, Motor Wizard .exe) are Google Drive downloads, not source in a repo. The Pi runs ROS 2 (neural_controller, control_board_hardware_interface over SPI to the control board, which talks CAN to the motors). robot.service runs `ros2 launch neural_controller launch.py` at boot.
Policies
- velocity-tracking locomotion from joystick (default walking policy) · MuJoCo MJX + Brax PPO (pupperv3-mjx), JSON weights run by the neural_controller ROS 2 node · github.comGit LFS file (~39 MB); config.yaml neural_controller.model_path points at it. Same folder also holds policy.json and two named W&B runs.
- three-legged walking · MuJoCo MJX + Brax PPO (pupperv3-mjx) · github.comUsed by the neural_controller_three_legged entry in config.yaml. Git LFS.
Caveats · stated by the package
- Upstream pins: HandsOnRobotics/pupper-v3-documentation@c25c91d54f09a1ed202b9cd9a3b13b33f09c0df2 (2025-10-20), readthedocs latest as of 2026-09-25; Google Sheets BOM tab 'v3.5' exported 2026-09-25; Google Slides 'Pupper Build Instructions' and motor flashing Google Doc exported 2026-09-25; Nate711/pupperv3-monorepo@6f96c5e79faa05492992c19918f8cd90b9243281 (2026-07-25); Nate711/pupperv3-mjx@684932a451819584847b10e5c9aec546443a9462 (2025-10-17); G-Levine/pupper_v3_description@1a3c8590189d3a406219d155f4177afc491a7d77 (2024-11-08)
- BOM totals (v3.5 tab): $2,158.91 all lines, $1,785.91 'min cost'. The docs index says about $2,000; the StanfordQuadruped README says roughly $1,000 BOM (older figure). The 12 motors are $1,320 of that.
- USD figures are the BOM's approximate line totals; per-unit prices here are those totals divided by quantity (motors: 12 x $105 + $60). Cable and sleeving lines have no price.
- Several items the build slides install as standard are marked [Optional] in the BOM (AI kit, M.2 adapter, camera, lens, speaker, ear servos, microphone).
- The motor driver firmware, control board firmware (SPIneV1.elf), Motor Wizard and pupOS image are Google Drive downloads with no source repo; build instructions and the motor flashing guide are Google Slides/Docs, so they can change without version history visible here.
- Custom PCBs need a JLCPCB PCBA order with the BNO086 global-sourced; the docs call this 'a little tricky'. Motors bought as the AIFitLab 'Pupper v3 version' skip the driver flashing.
- Kits: Present Perfection (US, run by the project's kit builder) and AIFitLab (China, unaffiliated) per the docs; neither is a BOM line here.
- The DeWalt pack has no low-voltage cutoff on the robot; the docs say not to run longer than 40 minutes. Motors get hot after long runs.
- The build slides contain a 'TODO COME BACK TO THIS' note at the screen pogo-pin step, and a few screw callouts differ (e.g. M2.5x8 text vs M2.5x10 label on the abduction bracket).
- Licenses: pupper-v3-documentation AGPL-3.0; pupperv3-monorepo and pupperv3-mjx GPL-3.0; pupper_v3_description MIT. CAD is a public Onshape/Fusion share with no stated licence.
- Default password in the docs is `rhea123`; change it.
Package stanford/pupper-v3@0.1.0 · upstream HandsOnRobotics/pupper-v3-documentation@c25c91d54f09a1ed202b9cd9a3b13b33f09c0df2 (2025-10-20), readthedocs latest as of 2026-09-25; Google Sheets BOM tab 'v3.5' exported 2026-09-25; Google Slides 'Pupper Build Instructions' and motor flashing Google Doc exported 2026-09-25; Nate711/pupperv3-monorepo@6f96c5e79faa05492992c19918f8cd90b9243281 (2026-07-25) … (full pins in caveats) · 19 package sources
Models, repositories, links
7 links- URDFgithub.com/G-Levine/pupper_v3_descriptionmodel
- Repogithub.com/HandsOnRobotics/pupper-v3-documentationgithub.com
- Repogithub.com/G-Levine/pupper_v3_descriptiongithub.com
- Repogithub.com/Nate711/pupperv3-monorepogithub.com
- Repogithub.com/Nate711/pupperv3-mjxgithub.com
- Docspupper-v3-documentation.readthedocs.io/en/latest/pupper-v3-documentation.readthedocs.io
- Buyaifitlab.com/collections/pupper-v3aifitlab.com
News and papers
0 stories · 0 papersNews mentioning Pupper v3
Papers using Pupper v3
Sources
last checked 2026-09-25- [1]Pupper v3 docs: technical specifications (3 kg)pupper-v3-documentation.readthedocs.io/en/latest/learn_more/tech_specs.htmlchecked 2026-09-25
- [2]pupperv3-monorepo (ROS 2 stack, policies; GPL-3.0)github.com/Nate711/pupperv3-monorepochecked 2026-09-25
- [3]pupperv3-mjx (MJX training; GPL-3.0)github.com/Nate711/pupperv3-mjxchecked 2026-09-25
- [4]Pupper v3 docs: modifying code, training a policypupper-v3-documentation.readthedocs.io/en/latest/development/modifying_code.htmlchecked 2026-09-25
- [5]Pupper v3 documentationpupper-v3-documentation.readthedocs.io/en/latest/checked 2026-09-24
- [6]README: Pupper v3 quick specsgithub.com/stanfordroboticsclub/StanfordQuadrupedchecked 2026-09-24
Suggest a correction
Related
Nearest by size (height, mass)
- Stanford ToddlerBot
- Poppy Humanoid
- ROBOTIS OP3
- Noetix Bumi
- UC Berkeley Humanoid
- UC Berkeley Humanoid Lite
Also by Stanford Student Robotics / Hands-On Robotics
Cite this page
humanoidrobots.systems. “Stanford Pupper v3 specs.” Hyperspawn, data revision 2026-10-08. https://humanoidrobots.systems/stanford/pupper-v3
Machine-readable: /data.json (record stanford/pupper-v3).