ARCHITECTURE CHANGE: batteries no longer sit flat on the base plate. They mount VERTICALLY on a central mast via a height-adjustable carousel. CG is tuned by sliding the carousel up/down the stem. Part A — prototype_baseplate.scad (Rev C): - PLATE_DEPTH: 210mm → 130mm (no battery footprint constraint) - Removed all battery tray geometry (holes, strap slots, expansion mounts) - Added central stem socket: Ø38.6mm bore + 4x M5 flange bolt holes on Ø66mm BC - Added stem_flange() module: laser-cut ring (qty 2, one each side of plate) - Wiring pass-through slots flanking stem centre - FC mount relocated to FC_X_OFFSET = -40mm (front of plate, clear of stem) - New RENDER="stem_flange_2d" DXF export option Part B — stem_battery_clamp.scad (new): - Collar: two 3D-printed D-shaped halves, split at Y=0 - Ø38.6mm bore (1.5" EMT / 6061-T6 tube) - 4x M6 clamping bolts + hex nut pockets - 1x M6 set screw per half for height/rotation lock - Arm attachment pads with M4 through-holes + nut pockets - Arms: flat bars, laser-cut or printed, ARM_REACH=55mm - Battery cradles: U-channel, open top, Velcro strap slots at 30% + 65% height - BATT_COUNT param: 2 (180°), 3 (120°), or 4 (90°) radial batteries - ARM_START_ANGLE chosen per BATT_COUNT to keep all arms clear of Y=0 split - Battery ghosts in assembly for visualisation - Full RENDER control: assembly / collar_half / arm / arm_2d / cradle - Assembly sequence + CG tuning notes in file footer BOM.md → Rev C: - Part A table updated (5 laser-cut parts + stem tube) - Part B table added (collar halves, arms, cradles, fasteners) - Battery section: flat-deck layout replaced with vertical stem guide - Fastener table updated to match new architecture Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
SaltyLab self-balancing bot firmware (STM32F722)
Languages
Python
67.1%
C
11.4%
JavaScript
9.2%
OpenSCAD
7.8%
HTML
1.5%
Other
2.9%