Skip to content

Bill of materials

bom.xlsx is the bill of materials and its single source of truth. Copy it to track your own build. It has these sheets:

  • Summary: totals per group, each split into owned, ordered and still to buy. All are formulas, so they follow your edits.
  • One sheet per group (Actuators, Hands, Compute & sensors, Power, Electronics & wiring, Structure & materials, Fasteners, Tooling, Safety). Each item has one line: an id, the item, a Status dropdown (owned or ordered; empty means to buy), the quantity the robot uses, spares, unit price, a line total (formula, quantity plus spares), where the price came from, a source link and notes. Every status ships empty: mark what you own or have ordered in your copy. Owned lines keep their price, so the total stays the full cost to replicate.
  • Sourcing: where each researched item is sold (official store first, then distributors), with links, prices, tiers, availability, the date checked and whether the price was confirmed.
  • Made parts (CAD) and Actuator bolts (CAD): generated by python -m cad.export from the CAD. CI checks that they are current. Their Status and Build notes columns are yours, and the export keeps them.

tools/bom/book.py keeps the workbook consistent. Either edit the workbook by hand (add a row anywhere in a group’s sheet, or change a status, price or source) and then tidy it:

Terminal window
python tools/bom/book.py # re-sort, re-format, rebuild formulas, dropdowns and Summary

Or edit it from the command line, which tidies it as well:

Terminal window
python tools/bom/book.py set cells unit_usd=9.95 "price_basis=dealer 2026-11-02"
python tools/bom/book.py add usb-hub group=electronics "item=USB 3 hub" qty=1 unit_usd=30
python tools/bom/book.py source cells "vendor=Some dealer" url=https://example.com unit_usd=9.95
python tools/bom/book.py set compute status=owned
python tools/bom/book.py remove usb-hub

python tools/bom/book.py --check (CI) fails if a line is invalid (unknown status or group, duplicate id, a sourcing row without its line) or if the workbook isn’t tidy. python tools/bom/summary.py prints the totals. Sheets the tool doesn’t manage are left alone. A workbook saved by a spreadsheet program may need one tidy run before --check passes again. The tool stores each formula’s result in the file as well, so previews that don’t compute formulas still show the totals; a spreadsheet program recomputes them as you edit.

At November 2026 prices the full robot comes to about $17.7k (tools/bom/summary.py). By group: actuators $6.3k, compute and sensors $4.7k (the Jetson AGX Orin 64 GB developer kit alone is $3,499, up from $1,999 before NVIDIA’s July 2026 price rise), structure and materials $2.6k, power $1.6k, and the rest $2.4k. This is the cost of building the robot from nothing.

Not counted:

  • Desktop GPU for training (optional). Isaac Lab training and GR00T fine-tuning want an RTX card with 24-32 GB. The RTX 5090 lists at $1,999, but in late 2026 it sold for about $4,000 or more. A rented cloud GPU works too.
  • The desktop CNC mill and 3D printer (R60), shipping, import duties and tariffs. Most actuators and the hand kits ship from China.

Prices and links are indicative only. Each one is what a listing showed on the date given in its Price basis column, often from a reseller and not confirmed with the maker (marked unverified or “estimate”). Lines marked “estimate” have no listing behind them yet: online machining, the IMU, the charger and most power and wiring parts. They are not quotes or endorsements. The project has no affiliation with any vendor and earns nothing from these links. Check current prices, specifications and import costs before buying.


This page is generated from bom/README.md in the repository.