Our fork of the ArduPilot firmware has supported driving
the LEDs using servo outputs (one for each of the red, green and blue channels)
for a long while now. However, one thing that was missing is to allow the servo
outputs to be inverted in case you have a wiring where a full duty cycle PWM
signal turns your LEDs off instead of setting them to full brightness. With this
firmware update, you can now set the value of the
SHOW_LED0_TYPE firmware to
8, in which case the servo outputs will be driven by taking the inversion into
Besides this, we have also fixed a few bugs; most notably, the yaw angle of the drone is now controlled in a more strict manner during takeoff. We also embedded a default parameter set for the Entron 300 show drone so the LEDs should now work out-of-the-box, even after a firmware reset to factory settings.
You can download our firmware on the download page, or
get its source code from Github.
Make sure to work with one of the
CMCopter-... branches as the
branch simply tracks ArduPilot’s
Cover photo by Victor Aznabaev on Unsplash