# Hexapod A six-legged walking robot (Teensy 3.6) and its handheld remote (Teensy 4.1 + Nextion touchscreen), linked over nRF24L01. ``` robot/ robot firmware: IK, gait, body pose, IMU stabilization, state machine remote/ remote firmware: 2 x 3-axis sticks, MPU6050 tilt, Nextion UI, RF24 TX shared/ HexapodProtocol: the CmdPacket wire format + radio settings used by both sim/ the unchanged robot firmware compiled into a DLL for the simulation Hexapod_Simulation_Unity/ Unity project that runs that DLL on the 3D model hardware/fusion360/ Fusion 360 designs: body, legs, servo, servo horn, remote case scripts/ PlatformIO helper (per-environment sketch folder) ``` This is the `2026-current/` folder of the hexapod-robot repo; the earlier generations (2009 onwards) are in the folders next to it, see [../README.md](../README.md). ## Build (PlatformIO) ``` pio run # build both pio run -e robot -t upload pio run -e remote -t upload pio device monitor -e robot ``` ## Simulation From this `2026-current` folder in PowerShell (the dev PC is Windows): ``` .\sim\build.ps1 # build hexapod_sim.dll + run the headless firmware checks ``` Then open `Hexapod_Simulation_Unity` and press Play. See [sim/README.md](sim/README.md). ## Where to go next - **[robot/README.md](robot/README.md)**: placeholder geometry to measure, the bench-check checklist, and the serial test harness for driving the robot without a remote. - **[remote/README.md](remote/README.md)**: wiring, control scheme, stick calibration, and the remote's serial console. - **[remote/NEXTION.md](remote/NEXTION.md)**: how to build the touchscreen HMI. - **[shared/HexapodProtocol/HexapodProtocol.h](shared/HexapodProtocol/HexapodProtocol.h)**: the protocol. Change it only by reflashing both boards.