openDog V3
James Bruton's third-gen brushless quadruped with cycloidal drives and ODrive control.
- MIT
- robot dog12 DoF
- cost not published
About openDog V3
openDog V3 is the third generation of James Bruton's open-source quadruped. Each of the 12 joints uses a brushless motor with a 3D-printed cycloidal drive, driven by ODrive controllers with AS5047P absolute encoders. The repo ships a zipped main STEP assembly, additional component CAD, Arduino control code and a BOM.ods spreadsheet listing motors, belts, carbon-fiber tube, electronics, batteries, bearings, fasteners, nylon washers and spacers with quantities and example suppliers. The 3D view is the main CAD assembly from CAD/openDog V3.zip.
Licenses
Degrees of freedom
12 DoF legs 12
Quadrupedsource
How to build openDog V3
5 stepsSteps marked Motari summary condense the linked source; follow the source for exact instructions.
Print the cycloidal drives and frame
Print all parts in PLA from the STEP CAD. Larger parts: around 15% infill, 3 perimeters, 0.3 mm layers. Smaller parts such as the cycloidal drive internals: 4 perimeters and up to 30 to 40% infill.
Motari summarygithub.com/XRobots/openDogV3Build the cycloidal actuators
Assemble each of the 12 cycloidal drives around a 9225 90 KV brushless motor using the BOM bearings, steel pins, washers and spacers, and fit one AS5047P encoder per motor. The knees are driven by HTD 5M belts.
Motari summarygithub.com/XRobots/openDogV3Wire the ODrives
In the ODrive tool, configure the AS5047 encoders for absolute position mode and run the offset calibration per the ODrive documentation. The ODriveInit.ino routine then sets the current limit and closed loop control.
Motari summarygithub.com/XRobots/openDogV3Cast the feet
Use the provided foot mould CAD and 25A Shore platinum-cure silicone over carbon-fibre tubes.
Motari summarygithub.com/XRobots/openDogV3Flash, calibrate, and walk
Upload openDogV3.ino with kinematics, calibrate joint zeros, then run the IK and gait modes from the remote.
Motari summarygithub.com/XRobots/openDogV3
Wiring, power and firmware are safety-relevant and shown for reference only. Check them against the source before building.
openDog V3 bill of materials
10 rowsCost to build
The sources do not publish a cost total. The rows below are what they list, without a sum.
openDog V3 parts, as the source lists them. Prices are the source's, not checked against vendors.
| Part | Qty | Spec | Source | Confidence |
|---|---|---|---|---|
9225 90 KV brushless motorsGeneral Parts / Motor row | 12 | Turnigy Multistar 9225 90 KV or EaglePower 8308 stator / 9225 can 90 KV motors | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
HTD 5M 630 mm knee drive beltsGeneral Parts / Belts row | 4 | HTD 5M pitch, 630 mm length timing belts for knee drives | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
28 mm OD carbon fiber tubeGeneral Parts / Carbon Fiber tube row | 4 | 28 mm outer diameter, at least 1 mm wall; four 1 m lengths cut to CAD dimensions | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
ODrive 3.6 BLDC motor driversElectronics row | 6 | ODrive 3.6 dual-axis BLDC motor drivers; source note says 2 per axis | ODrive Robotics / supplier from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
AMS AS5047P motor encodersElectronics row | 12 | AS5047P absolute magnetic motor encoders, one per axis | Digi-Key / supplier from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Dog and remote microcontrollersElectronics rows | 2 | Teensy 4.1 for the robot and Teensy LC for the remote | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Dog and remote electronics setElectronics rows | 1 | 5V regulator, MPU6050 IMU, NRF24L01 radios, D-range connectors, switches, volt meters, LCD, encoder cable, joysticks, toggles and momentary switches | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Main and electronics batteriesBatteries rows | 2 | 6S high-drain LiPo main battery and 2S small electronics battery | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Cycloidal drive bearing setBearings rows | 1 | 384 internal 12x4x4 mm bearings, 36 cam/cap 32x20x7 mm bearings, 24 top/bottom 85x65x10 mm bearings, plus thin-wall, knee, and knee-idler bearings | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Cycloidal drive pin and fastener setSteel bar, Nuts & Bolts, Nylon rows | 1 | 4 mm steel bar pins; M4/M3 motor, cam, output, case, axis, and leg fasteners; nylon washers and 4 mm ID spacers | example suppliers from the project's BOMprice not listedBOM.ods in XRobots/openDogV3 at commit 537aa0d | high |
Rows from the source's own parts list 9
BOM.ods@537aa0dods
| Source row | Qty | Price and vendor | Line |
|---|---|---|---|
BOM.ods scope and columns | raw.githubusercontent.comno price listed | L1 | |
9225 90 KV brushless motors | 12 | aliexpress.comno price listed | L1 |
HTD 5M 630 mm knee drive belts | 4 | beltingonline.comno price listed | L1 |
28 mm OD carbon fiber tube | 4 | ebay.co.ukno price listed | L1 |
ODrive and encoder electronics | 6 ODrive, 12 encoders, 1 Teensy 4.1, 1 Teensy LC | odriverobotics.comdigikey.co.ukno price listed | L1 |
Dog and remote electronics set | assorted electronics quantities listed in ODS | source-listed example suppliersno price listed | L1 |
Main and electronics batteries | 1 main battery, 1 electronics battery | hobbyking.comno price listed | L1 |
Cycloidal drive bearing set | 384 + 36 + 24 + 8 + 8 + 16 bearing quantities | AliExpress / Simply Bearings example suppliersno price listed | L1 |
1 more rows in BOM.ods
openDog V3 source files
9 files- CAD/openDog V3.zip
- CAD/openDog V3_internals_toleranced.stp
- CAD/bone.stp
- CAD/Remote.stp
- Code/openDogV3_experimental_stability/openDogV3_experimental_stability.ino
- Code/openDogV3/openDogV3.ino
- Code/openDogV3/kinematics.ino
- BOM.ods
- 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.
openDog V3 in simulation
Robot description files a simulator or CAD tool can load, linked at the commit they were found.
No URDF, MJCF, SDF, USD or Onshape model has been found in the sources.
The 3D specimen on this page is converted from CAD/openDog V3.zip at 537aa0d.
Builds of openDog V3
0 reviewedNo reviewed builds of openDog V3 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 and provenance
Sources
- Hardwaregithub.com/XRobots/openDogV3537aa0d
- Bill of materialsgithub.com/XRobots/openDogV3/blob/main/BOM.ods537aa0d
Last push to XRobots/openDogV3: 2023-03-19 (checked 2026-10-01)
Related links
- PredecessoropenDog V1/V2
- Derived designTOPS quadruped
How this page was made
Assembled from public sources on 2026-06-04, 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: source BOM.ods 537aa0d.
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 openDog V3? 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/opendog-v3)<a href="https://motari.io/r/opendog-v3"><img src="https://motari.io/api/v1/badge/opendog-v3" alt="Motari reproducibility score for openDog V3" height="20"></a>Not fully met yet: wiring diagram, build instructions (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