Hardware
§ Hardware
Bill of materials Parts list for a Haller — compute, mobile base, perception, arms, networking, tools.
Still partial. Suppliers, prices, and total cost are TODO — they need to be reconciled against actual purchase records. The line items below are accurate and complete enough to source a build; specific SKUs and CAD links are the remaining gap.
Item Qty Notes NVIDIA Jetson Orin Nano (8 GB dev kit) 1 Main on-board compute. JetPack 6 / Ubuntu 22.04. The 8 GB variant is required — vision pipeline (YOLOv8n + SegFormer-B0 in TensorRT FP16) won't fit in 4 GB. microSD card (≥128 GB, A2/U3) 1 Or NVMe SSD via M.2 if you populate the dev-kit slot. USB-C power supply (≥45 W) 1 For bench bring-up before the on-board battery is wired in. 5 V cooling fan 0–1 Dev-kit ships with one; recommended on if running vision continuously.
Item Qty Notes LK-TECH MF5010 BLDC motor (with built-in controller) 2 Drive motors. Speak CAN at 1 Mbps. See MF5010 datasheet + CAN protocol manual . Drive wheels (~100 mm diameter) 2 Wheel radius 0.05 m, matching motor_params.yaml. Hub geometry must match the MF5010 output. Passive / caster wheels 2 Front + rear, freely castering. CANable2 USB→CAN adapter (slcan firmware) 1 Becomes /dev/haller_can via udev. USB vendor:product 16d0:117e. CAN termination resistor (120 Ω) 1 Across the bus far end. Some MF5010s ship with one built-in — check the datasheet.
Item Qty Notes Chassis plates + motor mounts + fasteners — CAD link TODO. Material can be 3 mm aluminium, laser-cut plywood, or 3D-printed for prototypes. Wheel-separation: 0.34 m (center-to-center) — Matches wheel_separation: 0.34 in haller_motor_controller/config/motor_params.yaml. Change one, change the other. Battery pack (LiFePO4 12.8 V, 8–10 Ah recommended) 1 Powers the MF5010s. Capacity sizing depends on runtime target; ~5 Ah gives a working hour of light driving. Battery main fuse (5–10 A) 1 Inline on the positive lead. Sizing matches your motors' stall current. Hard E-stop switch (NC, ≥5 A rating) 1 Inline on the motor power feed. Independent of the HMI's software E-STOP. 12 V → 5 V buck converter (≥3 A) 1 Feeds the Jetson off the same pack.
Item Qty Notes Slamtec RPLIDAR A1M8 (2D LiDAR) 1 Becomes /dev/haller_lidar via udev. USB vendor:product 10c4:ea60 (CP2102 bridge). IMX219 camera module (CSI, e.g. Raspberry Pi Cam v2) 1 Front-facing perception camera into the Jetson CSI slot. See Vision pipeline / Hardware setup . USB webcam (wrist) 1 per arm For SO-101 dataset collection. Recent UVC-class webcams at 640×480 @ 30 fps work; Logitech C920/C925 are well-tested. USB webcam (base / overhead) 1 Same as wrist; sees the workbench in third-person.
Item Qty Notes SO-ARM100 mechanical kit (FDM-printed + fasteners + bearings) 2 Follower + leader. Source: TheRobotStudio/SO-ARM100 , or buy a prebuilt kit (e.g. WowRobo, Robotis). Feetech STS3215 servos (12 V variant, 1/345 gear ratio) 12 6 per arm. Both Haller arms use the same STS3215 — a deliberate symmetric-hardware choice , not the mixed-gear-ratio leader from the upstream docs. Voltage variant: match the supply — see the warning in the hardware checklist . Feetech bus servo adapter (Waveshare or equivalent) 2 One per arm. USB ↔ TTL half-duplex. Vendor:product 1a86:55d3 on the units used in Haller; udev rules also key on the unit's USB serial number. Servo power supply 1–2 7.4 V bench supply (5 A) for 7.4 V STS3215, or 12 V / 5 A brick for 12 V STS3215. Don't mix variants on the same bus. 3-pin TTL cables (servo daisy-chain) 10–12 5 cables per arm to chain motors 1–6 + the upstream link to the adapter board. Arm mounting plate (attaches arm to chassis) 2 CAD link TODO.
Item Qty Notes Powered USB hub (≥7 ports, ≥2 A per port) 1 Aggregates: CAN adapter + LiDAR + 2× arm bus adapters + 2–3 webcams. Underpowered hubs cause intermittent device drops — buy with margin. USB cables (A→B or A→C as needed) 6–8 One per peripheral. Short (≤1 m) keeps EMC clean. Wi-Fi (Jetson onboard, or USB dongle) — Used in AP fallback mode . Dev kit's onboard radio works as-is.
Soldering iron + flux + solder (battery harness, fuse holder, E-stop pigtails)
M2.5 / M3 hex keys (SO-ARM100 fasteners are mostly M2.5 / M3)
Screwdrivers including JIS Phillips (some servo horns)
Bench DC supply (≥30 V / ≥5 A) for first power-on before the battery is in the loop
Multimeter for continuity + voltage checks on the harness
USB OTG/data cable for first JetPack flash from another computer
Wire strippers, crimper, heat-shrink, zip ties
A working build comes in around the following — exact figures depend a lot on whether you buy the SO-101 kits prebuilt or print them yourself, and on regional availability:
Subsystem Rough cost Jetson Orin Nano dev kit + SSD/SD $500 Mobile base (motors + CAN + wheels + chassis + battery + harness) $700–900 Perception (LiDAR + CSI cam + 2× USB webcams) $250 Two SO-101 arms (kits + 12 servos + 2 bus adapters + 2 PSUs) $800–1200 Total ~$2300–2900
Per-line supplier links + part numbers + lead times.
CAD files for chassis plates, motor mounts, arm mounting plates.
Photo of an assembled Haller alongside this BOM.
Battery sizing guide vs. runtime / drive distance.
A "minimum viable Haller" variant (single arm, no LiDAR) for a cheaper first build.