TOPS
3D-printed 12-DoF quadruped with source workbook BOM and full CAD assembly.
- No license file
- robot dog12 DoF
- $3,329.27source total
About TOPS
TOPS (Traverser of Planar Surfaces, 'SPOT' backwards) is Aaed Musa's 3D-printed source-published quadruped. Each of the 12 joints pairs a 90KV brushless motor with an ODrive S1 FOC controller, coordinated by a Teensy 4.1; the abduction and hip joints use a 3D-printed 9:1 planetary gearbox and the knees a 9:1 belt reduction. The repo publishes the CAD assembly, a BOM spreadsheet, a full wiring schematic, and the Teensy control code. The repository ships no license file, so no reuse rights are granted by default. The build log reports that the knee belts skip, the robot cannot jump and each leg is calibrated manually at startup.
Licenses
- Hardware
- No license file
- Software
- No license file
- Docs
- Not published
Degrees of freedom
12 DoF hip 4abad 4knee 4
Quadrupedsource
How to build TOPS
5 stepsSteps 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 actuators and frame
Print the 9:1 planetary gearboxes and structural parts from the TOPS CAD Assembly.zip; the frame combines printed parts with carbon fibre.
Motari summaryhackaday.io/project/192122-tops-quadrupedBuild 12 QDD actuators
Build the 12 actuators, each a 90KV brushless motor driven by an ODrive S1. The abduction and hip actuators use a printed 9:1 planetary gear set; the knee actuators use a 9:1 belt and pulley reduction instead.
Motari summaryhackaday.io/project/192122-tops-quadrupedWire per the schematic
Follow Full Robot Schematic.png: CAN from the Teensy 4.1 through a CAN transceiver to all 12 ODrive S1 controllers, plus the 6S LiPo power. The transceiver is not in the upstream BOM.
Motari summaryhackaday.io/project/192122-tops-quadrupedCast silicone feet
Fit 30A silicone feet to the leg ends for grip.
Upstream stephackaday.io/project/192122/log/223929-full-robot-buildFlash and tune
Set up each actuator in the ODrive GUI (settings, motor calibration and CAN bus node ID), then upload TOPS_Workout.ino with the Arduino libraries from the repo. Each leg is calibrated by hand on startup before running the trot gait.
Motari summaryhackaday.io/project/192122-tops-quadruped
Wiring, power and firmware are safety-relevant and shown for reference only. Check them against the source before building.
TOPS bill of materials
16 rowsCost to build
- workbook total: 4 leg assemblies (12 Eaglepower 8308 90KV motors, 12 ODrive S1) plus electronics and frame; excludes the CAN transceiver shown in the schematic
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.
TOPS parts, as the source lists them (read 2026-09-30). Prices are the source's, not checked against vendors.
| Part | Qty | Spec | Source | Confidence |
|---|---|---|---|---|
Leg AssemblySingle-leg source BOM total is $757.45; robot workbook allocates four legs | 4 | Four source workbook leg assemblies; each single-leg BOM includes ABAD, hip, knee actuator and leg hardware sections | see the project's workbook$757.45 each; $3,029.80 totalTOPS BOM.xlsx Robot Assembly BOM row 6 | high |
Teensy 4.1 MicrocontrollerRobot assembly electronics row | 1 | Main controller | see the project's workbook$35.38TOPS BOM.xlsx Robot Assembly BOM row 7 | high |
6S 5200mAh 60C LiPo BatteryMain robot battery | 1 | 6S 5200mAh 60C LiPo | see the project's workbook$69.99TOPS BOM.xlsx Robot Assembly BOM row 8 | high |
16x2 LCD ScreenAllocated from a three-pack in the source workbook | 1 | 16x2 LCD screen | see the project's workbook$3.66TOPS BOM.xlsx Robot Assembly BOM row 9 | high |
SPST SwitchAllocated from a 16-pack in the source workbook | 1 | SPST switch | see the project's workbook$0.44TOPS BOM.xlsx Robot Assembly BOM row 10 | high |
5V RegulatorAllocated from a four-pack in the source workbook | 1 | 5V regulator | see the project's workbook$3.22TOPS BOM.xlsx Robot Assembly BOM row 11 | high |
Voltage DisplayAllocated from a two-pack in the source workbook | 1 | Voltage display | see the project's workbook$4.95TOPS BOM.xlsx Robot Assembly BOM row 12 | high |
RC Transmitter and ReceiverSource workbook spelling: Reciever | 1 | RC transmitter and receiver | see the project's workbook$54.99TOPS BOM.xlsx Robot Assembly BOM row 13 | high |
USB IsolatorRobot assembly electronics row | 1 | USB isolator | see the project's workbook$14.99TOPS BOM.xlsx Robot Assembly BOM row 14 | high |
XT60H ConnectorsAllocated from a 12-pack in the source workbook | 5 | XT60H connector pack allocation | see the project's workbook$3.33TOPS BOM.xlsx Robot Assembly BOM row 15 | high |
22 AWG WireSource workbook uses a fractional units-needed value; rounded to whole units here | 1 | 22 AWG wire, 0.25 source unit allocation | see the project's workbook$4.25 allocatedTOPS BOM.xlsx Robot Assembly BOM row 16 | high |
14 AWG WireSource workbook uses a fractional units-needed value; rounded to whole units here | 1 | 14 AWG wire, 0.25 source unit allocation | see the project's workbook$5.25 allocatedTOPS BOM.xlsx Robot Assembly BOM row 17 | high |
26mm OD x 24mm ID x 500mm carbon fiber tube stockThe workbook allocates 2000 mm of tube; the build log says the frame uses 4 carbon fiber tubes | 4 | 26mmOD x 24mmID x 500mm carbon fiber tube stock | see the project's workbook$59.96 allocatedTOPS BOM.xlsx Robot Assembly BOM row 21 | high |
30A Silicone A-B mixRobot assembly general-parts row | 1 | 30A silicone A-B mix for feet | see the project's workbook$27.69TOPS BOM.xlsx Robot Assembly BOM row 22 | high |
PLA FilamentRounded to whole units here; gram allocation preserved in spec | 1 | PLA filament, 569g allocation | see the project's workbook$11.38 allocatedTOPS BOM.xlsx Robot Assembly BOM row 23 | high |
CAN transceiverShown in the full robot schematic but missing from the upstream workbook, so it is not in the $3,329.27 total | 1 | CAN transceiver on Teensy 4.1 pins 22 and 23 | you source itprice not listedFull Robot Schematic.png and the Hackaday build log | high |
Rows from the source's own parts list 17
TOPS BOM.xlsx@516cf9bxlsx
| Source row | Qty | Price and vendor | Line |
|---|---|---|---|
Leg Assembly | 4 | vendor not listed$3029.80 | L6 |
Teensy 4.1 Microcontroller | 1 | vendor not listed$35.38 | L7 |
6S 5200mAh 60C LiPo Battery | 1 | vendor not listed$69.99 | L8 |
16x2 LCD Screen | 1 | vendor not listed$3.66 | L9 |
SPST Switch | 1 | vendor not listed$0.44 | L10 |
5V Regulator | 1 | vendor not listed$3.22 | L11 |
Voltage Display | 1 | vendor not listed$4.95 | L12 |
RC Transmitter and Receiver | 1 | vendor not listed$54.99 | L13 |
8 more rows in TOPS BOM.xlsx
TOPS source files
7 files- Full Robot Schematic.png
- Code/TOPS_Workout.ino
- QIK Derivations.pdf
- README.md
- TOPS BOM.xlsx
- TOPS CAD Assembly.zip
- TOPS CAD Assembly.stp
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.
TOPS 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 TOPS CAD Assembly.zip at 516cf9b.
Builds of TOPS
0 reviewedNo reviewed builds of TOPS 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/aaedmusa/TOPS516cf9b
- Bill of materialsgithub.com/aaedmusa/TOPS/blob/main/TOPS%20BOM.xlsx516cf9b
- Build guidehackaday.io/project/192122-tops-quadruped
- Documentationaaedmusa.com/projects/tops
- Softwaregithub.com/aaedmusa/TOPS/blob/main/Code/TOPS_Workout.ino516cf9b
Last push to aaedmusa/TOPS: 2023-10-06 (checked 2026-10-01)
Related links
- Inspired byopenDog V3
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.xlsx 516cf9b.
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 TOPS? 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/tops-quadruped)<a href="https://motari.io/r/tops-quadruped"><img src="https://motari.io/api/v1/badge/tops-quadruped" alt="Motari reproducibility score for TOPS" height="20"></a>Not fully met yet: build instructions (partial), oshw-compatible license. 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