fwt_software/hardware
pgdalmeida 2d2b498ff2
Find a legacy tower's Leonardo and its old launcher, and refuse to install while the old program holds the port
2026-09-28 16:36:41 +02:00
..
common Find a legacy tower's Leonardo and its old launcher, and refuse to install while the old program holds the port 2026-09-28 16:36:41 +02:00
lattepanda-3-delta Support the legacy towers' DHT11 and fan, and fix the installer's reflash and test steps 2026-09-28 14:43:05 +02:00
lattepanda-iota Add an installer that sets up a tower from scratch or repairs one 2026-09-23 21:15:00 +02:00
README.md Add the LattePanda IOTA setup kit and headless camera profile export 2026-09-16 18:27:39 +02:00

README.md

Board setup kits

One directory per board the fleet runs on. A kit holds everything that turns a freshly imaged machine into a tower host, and nothing that differs between two towers built on the same board:

<board>/
  packages.txt        apt packages the build and the runtime need
  preconditions/      udev rules, tmpfiles.d - the settings that must survive a reboot
  install.sh          apply the preconditions, install the packages, probe the
                      machine and emit a starting hardware.ini
  NOTES.md            quirks found on this board, and when they were last verified

install.sh fills in what a machine can be asked - board model, the motor MCU's by-id path, the camera's DEV_ id - and leaves to a human what no probe can distinguish from a fault: which axes the gimbal has, whether an IMU or an ambient sensor was fitted, and the drivetrain figures. See docs/hardware-config-plan.md §8 and §10.

The file it writes is /etc/fire_gimbal_control/hardware.ini, deliberately outside the directory deploy.sh rsyncs: a deploy cannot overwrite what it never touches.

Kit Board State
lattepanda-iota/ LattePanda IOTA (N150, RP2040 MCU) in use on FWT tower 10.11.12.121
lattepanda-3-delta/ LattePanda 3 Delta (N5105, ATmega32U4 MCU) not written - the Delta fleet predates the kits