We are proud to announce the release of version 20230920 of our firmware, which is now based on ArduCopter 4.4.0, bringing you all the latest and greatest improvements in the ArduCopter codebase. At the time of writing, 4.4.0 is the latest stable release of ArduCopter and we are committed to keeping our firmware fork updated in the future with newer versions of ArduCopter.
New supported flight controllers #
Due to popular demand, we also added the Speedy Bee F4 v3 to the list of flight controllers for which we are providing pre-compiled binaries. The only catch is that this flight controller has only 1 MB of flash memory, and it is getting increasingly harder to fit the fimrware into 1 MB of flash, so we had to disable support for OSD displays in our firmware variant.
The firmware is also available as pre-compiled binaries for the Lightdynamix Pixel drone.
New features #
We have added support for I2C-based and NeoPixel RGBW LEDs in the firmware.
Internally, the show files still represent colors with RGB components as this
is the easiest to work with in Blender. However, if you configure an RGBW LED
on the drone, the firmware will automatically convert RGB colors into RGBW,
saving precious battery power if you use the white color frequently. RGBW
conversion uses the naive use-min-of-R-G-and-B-as-white algorithm by default,
but if you happen to know the exact color temperature of your W LED, you
can use the SHOW_LED0_WTEMP
parameter to fine-tune the algorithm.
Internally, the old SHOW_MAX_XY_ERR
parameter was renamed to SHOW_TAKEOFF_ERR
;
the conversion is automatic and you do not need to do anything during the
upgrade. We also introduced two new parameters: SHOW_MAX_XY_ERR
and
SHOW_MAX_Z_ERR
, which represent trajectory tracking thresholds during the
execution of a show. When the actual and the desired position of the drone
differs by more than SHOW_MAX_XY_ERR
meters horizontally or SHOW_MAX_Z_ERR
vertically, a status flag is triggered in the status packets. Future versions
of Skybrush Server and Live (to be released soon) will use this flag to tell
the operator whether a drone is struggling with keeping up with the planned
trajectory. The firmware also logs the horizontal and vertical drift from the
desired trajectory in the SHOW
log records, which is useful not only for
tuning the position controller of the drone but also for testing new shows
before showing them to your clients and audience.
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 master
branch simply tracks ArduPilot’s master
branch.
Cover photo by Victor Aznabaev on Unsplash