Hex 3

Overview
Hex3 is the third generation of our Hexapod platform. Highlights of this generation:
- 10kg (~22lb) payload capacity
- Drivable via Xbox controller
- Fully 3D printed body and legs
- 18 degrees-of-freedom (DOF) design with 3 DOF per leg
- Custom low-cost servos made using DC gear motors and AS5600 magnetic encoders (as opposed to the hobby-servos that were prone to overheating on Hex2.)
- Spring loaded toe with position sensor to measure force applied by each leg
- Three-level control to follow user commands
- High level whole hexapod gait
- Model predictive control enabling each leg to apply a directionally controlled force of a specified magnitude
- Each axis controlled using PID with feedforward control based on current loads and requested accelerations for accurate path following
- Custom PCBs for Pi and leg connectivity
- Standard hardware holding the Hexapod together
- Modular compute architecture
- Deterministic real time compute provided by Xiao RP2350s
- ROS2 on Raspberry Pi 5 to allow easy build in to existing robotic development platforms
Price point: ~$2,000 USD.
Note
The Hex3 platform is not being actively developed against, and is instead considered "steady-state" for a release. If you have modifications or features you would like to add, please either make a PR and request a review in our Hex Discord, or publish a fork of this project.


Software Stack
Command and control still runs on a Raspberry Pi 5, but each leg now carries its own Seeed Xiao RP2350 microcontroller instead of a single central Teensy. The Pi talks to all six leg controllers over a shared CAN bus, so each leg handles its own axis control, encoder feedback, and toe (foot contact) sensing locally, then reports state back over CAN.
Hex3 runs ROS2 inside a Docker container on the Pi. Xbox controller input flows through a small pipeline of nodes:
control (xbox input) → tripod_gait → inverse_kinematics → can (dispatches to each leg's Xiao over CAN).
See the Common Commands page for how to launch this stack and the individual nodes, and the Raspberry Pi Setup page for configuring the Pi itself.
Each leg's real-time control loop (motor PID, encoder reads, toe sensing, and CAN messaging) runs as firmware on that leg's Xiao RP2350 — see Real-Time Firmware for building, flashing, and calibrating it, and Electronics Setup for wiring.
Fully 3D printed body and legs — see 3D Printing for print recommendations.
Project Glossary
Potential Improvements
The following items are not planned prior to the release of Hex3, but would likely be beneficial for someone to tackle in the future:
CAD
- S1 to have replaceable magnet holder (similar to S2/S3)
- Make the entire hexapod a few mm taller to account for this
- S0 gear cover prevent breakage
- Redesign S3 to allow for toe replacement without needing to fully disassemble S2 + S3
- S1 gear cover thicker to allow for M18 screws
- Increase S2 thickness to allow for more S3 motor pinout clearance
- Beef up S2 due to consistent breaking
Non-Real Time Code
- Vibrate the controller on low battery
- Remove outdated/unnecessary code
- Add in additional macros
Real Time Code
- Configure toe ToF sensors + integrate them into walking gaits
- Dynamic gait adjustment based on payload
Main PCB
- Switch over to more powerful Buck Converter, instead of two smaller buck converters (liklely this buck converter)
- Capacitors on input to Buck Converter