★ PROJECT HEXAPOD ★ INTERNAL
Phase 3 — Mechanical build.
GOAL: ALL 6 LEGS ASSEMBLED, MOUNTED, WIRED; ROBOT STANDS ON ITS OWN. · 3 EVENINGS · DAY 6–8
01 · Safety prerequisites
▸470 µF – 1000 µF electrolytic across V+ / GND at each PCA9685
Servo current spikes are vicious. Place close to the board.
▲Tie ESP32 GND to servo-rail GND
Separate grounds cause random PWM glitches. This has confused many people. Tie them at the buck GND.
02 · What you need from Shop
MG996R metal-gear servo
qty 18 · PiShop
R1 942.20
PCA9685 16-ch I²C PWM module
qty 2 · Micro Robotics
R158.70
DC-DC Buck converter, 300 W 20 A
qty 1 · Micro Robotics
R147.20
OnBO 3300 mAh 2S 25C LiPo (XT60)
qty 1 · Rclipo
R572
IMAX B6 balance charger (clone)
qty 1 · Bobshop
R250
Fireproof LiPo safe bag
qty 1 · Africa Drone Kings
R200
XT60 male+female pigtails (pair)
qty 2 · Communica
R60
2S low-voltage alarm buzzer
qty 1 · Communica
R50
Inline 30 A blade fuse + holder
qty 1 · Communica
R53
M3 screw/nut assortment kit (6–25 mm)
qty 1 · Communica
R150
M2.5 servo-horn screws (100 pack)
qty 1 · Communica
R80
M3 heat-set threaded inserts (50 pack)
qty 1 · DIYElectronics
R120
Male-female Dupont jumpers (40 × 20 cm)
qty 2 · Multiple
R80
Silicone wire 18 AWG, 1 m red + 1 m black
qty 1 · Rclipo
R80
Creality PETG filament, black, 1 kg
qty 1 · PiShop
R231.32
Shipping across ~3 suppliers (Jo'burg)
qty 1 · Various
R400
Contingency (solder, heat-shrink, 1 DOA servo, cable ties)
qty 1 · —
R300
03 · Tasks
T12Print parts + install heat-set inserts· depends T1
Acceptance:All STL parts printed cleanly; M3 brass inserts seated flush at every screw boss; parts grouped by leg.
T13Assemble one leg + verify range· depends T11, T12
Acceptance:Leg holds neutral stance under code; IK lands the foot within 5 mm of the commanded XYZ target.
T14Assemble remaining 5 legs· depends T13
Acceptance:All 6 legs hold a symmetric neutral pose when bus.centerAll() is called.
T15Mount legs, PCA9685s, route wiring· depends T14
Acceptance:Tidy, labelled wiring; nothing crosses a moving joint; visual inspection passes for all 18 servo leads.
T16First standing pose· depends T15
Acceptance:Robot stands on its own under bus.centerAll() with no leg slipping or buckling.
Calibration steps
- STEP 1Mount-angle conventionLeg 0 = right-front, going clockwise viewed from above. Mount angles: 60°, 0°, -60°, -120°, 180°, 120°. If you mount them in a different order, every IK target needs to be rotated.
- STEP 2One leg fully right before moving onDon't bulk-build all six legs hoping calibration will sort itself later. Build leg 0, verify IK lands the foot within 5 mm, then replicate. Catches print/servo issues early.
Reference docs
- → docs/05_MECHANICAL.md
- → docs/07_CALIBRATION_PROCEDURE.md