Py-Apple Controller
An open-source quadruped robot controller based on ESP32, designed to support the Py-Apple Dynamics software suite for controlling quadruped robots.
- Quadruped
- Open source
- 3D printable
Suggested by Robotheca, created by @ToanTech (opens in a new tab), from github.com/ToanTech/py-apple-controller (opens in a new tab). Pinned to commit 83d989b (opens in a new tab).
- Hardware license
- GPL-3.0-only (opens in a new tab)
- Software license
- GPL-3.0-only (opens in a new tab)
- Commercial use
- Allowed
Photo
This repository has no photo of the robot yet.
What it can do
Written by Robotheca from the project's documents.
- Controls up to sixteen PWM servos
- Adjusts servo voltage from five to eight volts
- Reads MPU6050 six-axis IMU data
- Provides Wi-Fi 802.11n up to one hundred fifty megabits per second
- Provides Bluetooth Classic support
- Supports CAN bus and multiple serial ports
Bill of materials
This repository has no parts list Robotheca can read yet.
Build guide
The creator's steps, each with its instructions.
- 1Download the appropriate Controller version based on your needs
- 2Order PCB from a manufacturer like Taobao or JLCPCB
- 3Gather all electronic components listed in the open-source parts list
- 4Solder the components onto the controller board
- 5Download and install the latest software from the Py-Apple Dynamics repository
- 6Flash the program onto the controller
- 7Follow the usage tutorials and calibration methods
The guide appears here as you scroll.
Guide by @ToanTech (README.md), under GPL-3.0-only. The English translation is by Robotheca, shared under the same license.
Wiring and electronics
Notes written by Robotheca from the project's documents.
Main parts
- ESP32 dual-core Xtensa LX6 microcontroller
- MPU6050 six-axis gyroscope and accelerometer
- Servo power regulator for five to eight volts
- Wi-Fi and Bluetooth radio module
- CAN transceiver
- Multiple PWM servo outputs
Connections
- ESP32 I2C bus connects to MPU6050
- ESP32 PWM outputs drive up to sixteen servos
- Servo power rail set to five to eight volts
- CAN transceiver connected to ESP32 CAN peripheral
- Serial ports routed to expansion connectors