An upgrade to 55g servo motors to make them more usable
This is still a work in progress, check out the wiki for more detailed information.
This upgrade consists of removing the original mainboard + potentiomenter and upgrading them with the following features:
- Temperature and current sensing
- Magnetic encoder for positioning
- Control over CAN (TWAI) bus
- Daisy chainable motors
- Onboard ESP32-C6, running FreeRTOS (ESP-IDF)
- Setable CAN ID
- Able to communicate sensor information back to other CAN nodes
- Setting RGB color
- Position Control
- PID
- Variable motor speed
- Limiting Current / Temperature
- Using RGB for status
- PID parameters over CAN
- Motor Sleep
- "All respond" node id
- Reboot Command
- Add RXSDO and TXSDO for getting and setting values without a specified command
- Add MCU temperature TXSDO
- Add MCU MAC address TXSDO
- Basic Velocity Control
- Proper Velocity Control (Change Velocity to RPM, rather than just "speed")
- Node ID set in NVS rather than in code
- Use a combination of MAC Address and receive all NODE ID
- MAC address is polled using TXSDO, node id is sent back from controller
- Node ID is saved to NVS
- Upload CAD
- Upload (and Update) PCB
- Upload (and Update) Schematic
- PDF Build Guide
1 x ESP32-C6-Zero (Waveshare)
1 x MP6550 Driver Carrier (Pololu)
1 x 10K resistor
1 x TJA1050, CAN Transceiver
1 x "Mini 360" Buck converter, MP2307
2 x 4p f 2.54 JST
1 x 6p f 2.54 JST