Flapper Drones Documentation
Docs» Firmware Update

Firmware Update

A) From the latest release using the Cfclient

This should be the default option, unless if you would like to adjust the firmware code yourself.

However, this method will not work for you and you will need to use method B) if:

  • your Flapper is equipped with an external receiver
  • was delivered prior to 2022
  • your Flapper has non standard flight controller

The easiest way to update your Flapper's firmware is via the cflient application, where you can get the latest stable release.

For instructions on how to update the firmware via cfclient, please consult the Firmware Upgrade section of the cflient userguide.

Make sure to select the correct platform, i.e. flapper:

Uploading the firmware for other platforms ('cf2', 'bolt', 'tag', …) might cause damage to Flapper's servos! Should that happen, power the Flapper down immediately and follow the firmware recovery instructions.

B) From source code

If you plan to do further development of the Flapper's firmware, or if you have a non-standard configuration, you will need to build it from the source code.

Since October 2022, the Nimble+ firmware is included in the standard crazyflie-firmware repository maintained by Bitcraze AB. Should you for any reason need to use an older firmware, please contact our support for legacy instructions

1. For general instructions on how to build and flash the firmware from the source code please refer to the Crazyflie project documentation.

2. For the Flapper Nimble+, you need to build the firmware for the “flapper” platform. In most cases, this can be done simply by

make clean
make flapper_defconfig
make

You will need to adjust the default configuration first if:

  • your Flapper has an older PCB version (rev B, delivered before 2022)
  • your Flapper has an external receiver installed
  • your Flapper was configured according to your special requirements

3. You can adjust the default configuration by editing the following file:

  • /configs/flapper_defconfig

If your Flapper is equipped with an external receiver, include:

CONFIG_DECK_FLAPPER_EXTRX_ENABLE=y

If you Flapper has an older PCB version (rev B, delivered before 2022), include:

CONFIG_POWER_DISTRIBUTION_FLAPPER_REVB=y

4. Default gains and some other settings of the flapper platform can be changed here:

  • /src/platform/interface/platform_defaults_flapper.h

If you plan to operate your Flapper autonomously, we recommend enabling the tumble detection. This will cut the throttle automatically when the Flapper tilts by more than 90 degrees from its hover (vertical) orientation, which is usually a crash situation.

Since this commit (from September 2024), tumble detection is turned on by default. It can be switched off via the parameter framework if needed (supervisor.tmblChckEn).

In earlier versions, in /src/platform/interface/platform_defaults_flapper.h change:

define SUPERVISOR_TUMBLE_CHECK_ENABLE true

Further, the tumble detection parameters should be changed in /src/modules/src/supervisor.c to:

const float acceptedTiltAccZ = 0.; const uint32_t maxTiltTime = M2T(2000);

Firmware recovery

If you upload the wrong code, this will force the Flapper's servoactuators to their limit positions. Should this happen, please power the Flapper down as soon as possible, as the servo motors might overheat and get damaged otherwise.

When you are ready to upload the correct firmware, long-press the power button to power the control board in bootloader mode and upload the correct firmware following the firmware recovery instructions.

In the process, make sure to select the correct platform, i.e. flapper:

Previous Next

Flapper Drones Documentation

Table of Contents

Table of Contents

  • Firmware Update
    • A) From the latest release using the Cfclient
    • B) From source code
    • Firmware recovery

FLAPPER NIMBLE+

GENERAL INFORMATION

  • Specifications
  • Components & accessories


GETTING STARTED

  • Battery charging & management
  • Pre-flight setup
  • Power-up & power-down
  • Remote controllers
  • Flying
  • Servicing


ADVANCED USE

  • Crazyflie Ecosystem
  • Software resources
  • PC client installation
  • Firmware update
  • Servo-trimming
  • Integrated features
  • Extra addon-decks & sensors
  • Motor mapping
  • State estimation & Control
  • Autonomous flight
  • Simulation resources
  • 3D CAD models
  • Scientific papers


SUPPORT/OTHER QUESTIONS?

support@flapper-drones.eu