# Hexapod A six-legged walking robot (Teensy 4.0) 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 LEGACY/ older material kept for reference scripts/ PlatformIO helper (per-environment sketch folder) ``` ## 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 the repo root 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.