Hi everyone,
I have a custom Gimbal (or manipulator if you want) based on NEMA Stepper Motors and TB6600 Stepper Motor Drivers.
Can someone advise me on the best way to integrate it with ArduPilot: Rover?
I know that ArduPilot (like other autopilot systems) is designed to control various motors via PWM/PPM or SBUS, which are fast and accurate. However, it seems a bit odd to me to convert PWM to stepper PUL/DIR signals using another controller (e.g., Arduino) for my gimbal.
I’m using speedybeef4-v3 as my autopilot board which seems does not support GPIO and lua scripting so I really want to utilise avaliable comms like uart/i2c/spi.
There is a very helpful article for creating Custom Sensor Drivers - but this is for sensors (reading device), and I need a driver for controlling a device like a gimbal.
I found support for the SimpleBGC gimbal controller, which can communicate with ArduPilot using MAVLink or a custom serial protocol: common-simplebgc-gimbal
This looks like what I need, but I can’t find any articles showing where/how I can implement a custom serial protocol in a way that doesn’t require changing the ArduPilot core code.
Or maybe it’s better to go from other way and implement MAVLink protocol (v1) on my manipulator side?
I feel like I’m almost there with my research, but before I start coding, I would appreciate some advice or oppinion from the experts or community.
Looking forward to your feedback!