The controller for Doug, the omni-wheeled robot!
GIF of the robot in action!
See my MakerWorld design for more details!
Join my 3D Design Discord and say hi and talk shop!
- Designed to be a universal toolbox of robotics control
- MultiMotor library: control different motor types together on the same CAN bus—mix and match any supported motors!
- CANBus Drives: (supports mixed bus with different drives at once)
- ODrive (and odrive clone like steadywin motors)
- Xiaomi CyberGear motors
- RobStride is a work-in-progress
- Serial drives (e.g. Dynamixel) coming soon
- CANBus Drives: (supports mixed bus with different drives at once)
- Multi-operator support
- Multiple ESP-NOW controllers/CRSF remotes can connect and take-over
- Nice seamless switching between controllers
- Multi-robot support
- One remote can switch between multiple robots (work-in-progress)
- Supports different radio protocols
- CRSF serial systems: ExpressLRS & Crossfire
- ESP-NOW for low-latency control without external hardware
- IMUs!
- Right now using the M5Stack IMU abstractions
- Uses a Madgwick filter for orientation estimation
- Fancy rotation matrix for on-end balancing
- LCD support using M5Stack library
- has system for tuning PID gains
- Clone the repo
- Open in PlatformIO
- Either from command-line or, recommended:
- VSCode. Install the PlatformIO extension and open the project
- Choose the target you want and just hit upload!
