Skip to content

@mikeller mikeller released this Jun 2, 2019 · 603 commits to master since this release

Maintenance Release

Please read the Betaflight 4.0 Release Notes.

This release contains bugfixes and target changes only. For a full list of new features see 4.0.0.

We have tried to make this release as bug free as possible. If you still find a bug, please report it back to us by opening an issue here.

If you want to talk about Betaflight, ask configuration questions, or just hang out with fellow pilots, you can do this in our Facebook group.

Betaflight also has a presence in the Slack messaging platform. Register here, and then come join us in Slack. Most developers hang out there, so this is a great place to talk about the things you are tinkering with in Betaflight, or get help with really complicated configuration problems.

Important information when upgrading from an earlier version of 4.0

  • a number of users reported issues with their craft taking off with throttle at idle when running on Betaflight 4.0.0's default settings. It was identified that the default settings did not have enough filtering for setups with a lot of vibrations. More filtering was added to the defaults in 4.0.1. It is recommended that you upgrade directly to 4.0.1 or newer, to eliminate the risk of unintended flyaways introduced by this problem (#8043);
  • Betaflight 4.0.1 has a bug that is affecting all F3 based flight controllers, stopping them from working. A fix for this bug is included in 4.0.2. Users with F3 based flight controllers should upgrade directly to 4.0.2 or newer (#8148);
  • the format of the CLI timer command that is used to configure a timer has been changed. It now uses the alternate function index that is also used in the hardware manufacturer's reference documentation: timer <pin> af<alternate function>. The format that was introduced with Betaflight 4.0.0 that used an arbitrary option number (timer <pin> <option>) is deprecated and will be dropped in Betaflight 4.1 (#8305, #8306, #8320);
  • unfortunately, bugfixes in the flight controller core functionality have led to an increase of the firmware size, causing it to overflow the available space on a number of F3 based flight controllers. As a result, some features have had to be removed from a number of F3 based flight controllers in order to make the firmware fit into flash. The following targets are affected: AIORACERF3 (#8178).

Fixes:

  • fixed inconsistency in the D_min configuration (#8167);
  • fixed USB ID pin support (#8170);
  • fixed crash in CMS (#8222);
  • fixed flash initialisation (#8238);
  • fixed bug causing blackbox header corruption (#8284);
  • fixed setting / printing of 32 bit values in CLI (#8302);
  • fixed printing of DMA options in CLI 'diff' (#8303);
  • changed CLI 'timer' command to use alternate functions (#8305, #8306, #8320);
  • removed RTC6705 VTX clock hack (#8322);
  • fixed bug affecting copying of profiles (#8331);
  • fixed bug corrupting the configuration when setting VTX frequency directly (#8338);
  • fixed bug in flash erasing (#8342);
  • fixed bug allowing distance for descent to go negative in GPS rescue (#8356).

Target Updates:

  • added gyro support for the Viva F4 AIO board to the DALRCF405 target (#8097, #8349);
  • added new target MAMBAF722 (#8182);
  • removed the FURYF7 target (#8205);
  • added new target AIRBOTF7 (#8208, #8328);
  • added new target XILOF4 (#8209);
  • added new target OMNIBUSF7NANOV7 (#8210);
  • removed unneeded pin definition on NUCLEOF722 target (#8220);
  • added new target TRANSTECF7 (#8243);
  • added new target VGOODRCF4 (#8249);
  • added camera control pin to FURYF4 target (#8264);
  • added support for multi gyro on OMNIBUSF4NANOV7 target (#8267);
  • removed deprecated use of USE_MULTI_GYRO (#8281);
  • removed deprecated ACC_x_ALIGN defines (#8287);
  • added barometer support to SPRACINGF3NEO target (#8321);
  • added barometer, flash, softserial to EXF722DUAL target (#8333);
  • fixed barometer support for SPARKY2 target (#8346).
Assets 175

@mikeller mikeller released this May 5, 2019 · 603 commits to master since this release

Maintenance Release

Please read the Betaflight 4.0 Release Notes.

This release contains bugfixes and target changes only. For a full list of new features see 4.0.0.

We have tried to make this release as bug free as possible. If you still find a bug, please report it back to us by opening an issue here.

If you want to talk about Betaflight, ask configuration questions, or just hang out with fellow pilots, you can do this in our Facebook group.

Betaflight also has a presence in the Slack messaging platform. Register here, and then come join us in Slack. Most developers hang out there, so this is a great place to talk about the things you are tinkering with in Betaflight, or get help with really complicated configuration problems.

Important information when upgrading from an earlier version of 4.0

  • a number of users reported issues with their craft taking off with throttle at idle when running on Betaflight 4.0.0's default settings. It was identified that the default settings did not have enough filtering for setups with a lot of vibrations. More filtering was added to the defaults in 4.0.1. It is recommended that you upgrade directly to 4.0.1 or newer, to eliminate the risk of unintended flyaways introduced by this problem (#8043);
  • Betaflight 4.0.1 has a bug that is affecting all F3 based flight controllers, stopping them from working. A fix for this bug is included in 4.0.2. Users with F3 based flight controllers should upgrade directly to 4.0.2 or newer (#8148).
  • unfortunately, bugfixes in the flight controller core functionality have led to an increase of the firmware size, causing it to overflow the available space on a number of F3 based flight controllers. As a result, some features have had to be removed from a number of F3 based flight controllers in order to make the firmware fit into flash. The following targets are affected: AIORACERF3 (#8178).

Fixes:

  • fixed problems when using AND conditions to configure modes (#8130);
  • fixed build problem if no barometer is configured (#8133);
  • fixed problems with output pins on F3 (#8148);
  • fixed freeze when enabling LED_STRIP without a pin defined (#8157);
  • fixed incorrect confirmation when changing timer from 'NONE' in CLI (#8165).

Target Updates:

  • fixed motor assignment for target PIKOF4OSD (#8049);
  • removed features from target AIORACERF3 to fix flash overflow (#8178).
Assets 170

@mikeller mikeller released this May 1, 2019 · 61 commits to 4.0.x-maintenance since this release

Important

Betaflight 4.0.1 has a bug that is affecting all F3 based flight controllers, stopping them from working. A fix for this bug will be included in 4.0.2 (#8148). Until the release of 4.0.2, 4.0.0 should be used on F3 based flight controllers.

Maintenance Release

Please read the Betaflight 4.0 Release Notes.

This release contains bugfixes and target changes only. For a full list of new features see 4.0.0.

We have tried to make this release as bug free as possible. If you still find a bug, please report it back to us by opening an issue here.

If you want to talk about Betaflight, ask configuration questions, or just hang out with fellow pilots, you can do this in our Facebook group.

Betaflight also has a presence in the Slack messaging platform. Register here, and then come join us in Slack. Most developers hang out there, so this is a great place to talk about the things you are tinkering with in Betaflight, or get help with really complicated configuration problems.

Safety Improvements:

  • changed the default filter settings to reduce the risk of flyaways (#8043).

Fixes:

  • fixed gyro initialisation for setups with multiple MPU6000 / MPU9250 (#7950);
  • lowered the minimum frequency for dynamic notch filters to 60hz (#7984);
  • fixed OSD crash when enabling vario display on targets without barometer (#7993);
  • fixed excessive return speed with GPS rescue in edge cases (#8007);
  • fixed display of failsafe flight mode in OSD (#8010);
  • added overflow checking for OSD timers (#8016);
  • fixed gyro detection code code for multi gyro setups (#8033);
  • added detection for screen overflow in OSD (#8063);
  • fixed problem with power level display for SmartAudio in OSD (#8064);
  • fixed writing of debug mode into the blackbox log header (#8089);
  • fixed problem with timers when using pins with no defined timers (#8093);
  • fixed inconsistency in the active gyro configuration (#8102);
  • fixed incorrect application of motor output limits when changing profiles (#8108);
  • fixed resource configuration for CC2500 based SPI RX (#8120);
  • fixed build problems on targets without barometer / magnetometer support (#8121);
  • fixed problem with incorrectly reporting barometer / magnetometer as present for targets built without support for them (#8135);
  • fixed GPS rescue problem for builds without barometer support (#8136).

Target Updates:

  • updates to target FF_RACEPIT (#8046);
  • re-added some features to target BETAFLIGHTF3 (#8068);
  • changed the default configuration for target CLRACINGF7 (#8078);
  • removed unneeded barometer default from target SPRACINGF3NEO (#8129).
Assets 170

@mikeller mikeller released this Apr 11, 2019 · 603 commits to master since this release

Important

A number of users reported issues with their craft taking off with throttle at idle when running on Betaflight 4.0.0's default settings. It was identified that the default settings did not have enough filtering for setups with a lot of vibrations. More filtering was added to the defaults in 4.0.1. It is recommended that you upgrade directly to 4.0.1, to eliminate the risk of unintended flyaways introduced by this problem (#8043).

It took us a long time, but now it’s here, and it’s got so many new things!

When we released 3.5 in August last year, the number of different targets supported by Betaflight had reached 150, and maintaining them was becoming a major effort and taking up a lot of our time. It became clear that we had to do something. We had been working on changing the architecture of Betaflight to make it possible to use the same firmware for different flight controllers for some time, and so we decided to complete this change before releasing the next version, and that because of this fundamental change the next version would be 4.0.

As we approached the originally set release date for Betaflight 4.0, we realised that we were not quite ready, and we decided to take another three months, in order to be able to complete the work we had started.

So now, here we are, ‘Unified Targets’, as we called the new ‘one firmware for many flight controllers’ technology, is now a reality in Betaflight 4.0. There is still some work left to be done to add support for flashing Unified Targets with their configurations to Betaflight configurator, but once this is done, we will be able to allow manufacturers to make firmware for any number of boards, or RTF products, available directly in configurator.

As you have come to expect from Betaflight, we have picked up a number of new and exciting improvements to the flight performance, like ESC RPM based filtering, D term management with D_min, and throttle based dynamic gyro and D term filtering.

And, again as expected we have added some more, non flight related new features like launch control, OSD profiles, and support for on-board SPI attached RX.

For an extended list of new features see below.

To get the best out of the flight performance improvements, please read these tuning tips.

If you are upgrading from an earlier version of Betaflight, please read the following section containing a list of things that you might have to change in your configuration.

We have tried to make this release as bug free as possible. If you still find a bug, please report it back to us by opening an issue here.

If you want to talk about Betaflight, ask configuration questions, or just hang out with fellow pilots, you can do this in our Facebook group.

Betaflight also has a presence in the Slack messaging platform. Register here, and then come join us in Slack. Most developers hang out there, so this is a great place to talk about the things you are tinkering with in Betaflight, or get help with really complicated configuration problems.

Kia kaha (stay strong)

Important information when upgrading

  • A number of changes and improvements in this release require changes to the Betaflight configurator. These changes have been added to Betaflight configurator 10.5.1 (installation instructions here), please update your Betaflight configurator to at least this version;
  • if you are using the Blackbox Log Viewer, there is an updated version 3.3.1 to go with Betaflight 4.0 (installation instructions here). Please update to at least this version;
  • if you are using OpenTX and the Betaflight TX Lua scripts, please update them to at least version 1.2.0 in order to get support for the latest features introduced in Betaflight 4.0;
  • there are a number of flight performance related improvements in Betaflight 4.0. Therefore, pasting back-ups of the tuning settings for older versions of Betaflight into Betaflight 4.0 will most likely result in poor flight performance! The default settings in Betaflight 4.0 should be reasonably well flyable for most hardware configurations, but users wanting to tune the performance of their craft should read the 4.0 Tuning Notes to learn everything they need to know about tuning Betaflight 4.0 (#6432, #6943, #7078, #7264, #7271, #7304, #7373, #7538);
  • there was a fix to how the min_check 'zero throttle' dead zone is applied. Before the fix, there was an additional, undocumented deadband of the same size as the min_check range above the min_check range. The fix has not brought a change to the arming behaviour and throttle is still required to be below min_check for arming to be possible. However the extra unintended throttle deadband above min_check has been eliminated. This will result in more responsive throttle near minimum and a slight increase in throttle resolution. If you desire to retain the same range for the 'zero throttle' dead zone, you need to double the amount of dead zone configured in min_check (offset from 1000). Be aware that this will also double the throttle range within which the craft can be armed (#7463);
  • there is a new 'Stick Overlay' OSD element that shows an overlay of the current stick positions. In order to use it, the font loaded onto the OSD needs to be updated to the latest version (available in configurator 10.5.0 or newer) (#7476);
  • the functionality of the 'crash flip arrow' OSD element was extended to activate as well when the craft is not in crash flip mode, but small_angle is set, and the craft is unarmed and tilted more than small_angle. This is to show pilots that they won't be able to arm from the current orientation, and allow them to activate crash flip mode and then right their craft (#7250);
  • As part of the introduction of Unified Targets, the existing resource command was complemented with two new commands for resource management: timer and dma. Just like resource can be used to assign pins to functions, timer can be used to assign timers to pins, and dma can be used to assign DMA streams to subsystems and pins (if they have a timer assigned). Important: Since DMA streams are linked to pins through timers, timer assignments for pins have to be made first, before dma assignments to these pins can be made (#5824, #6837, #7620);
  • The syntax for the resource, timer, and dma commands was consolidated, and as part of this the resource list subcommand was renamed into resource show. This aligns it with the new dma show and timer show subcommands (#7712);
  • the following parameters were renamed to more closely match their function: p_level => angle_level_strength, i_level => horizon_level_strength, d_level => horizon_transition (#6673);
  • the gyro configuration was unified from being done by gyro hardware model to being generic for all gyro models. This means that for some targets that are used for multiple different boards that come with different gyro models that are mounted with different orientations, it is necessary from Betaflight 4.0 on to manually set gyro_1_sensor_align (and / or gyro_2_sensor_align for boards with a second gyro) to match the gyro orientation on the board that is used. See note #6761 for an explanation, and instructions for individual boards. This is a temporary workaround, per-board configurations with correct gyro alignment will be released as Unified Target configurations (#5868);
  • unfortunately, bugfixes in the flight controller core functionality have led to an increase of the firmware size, causing it to overflow the available space on almost all F3 based flight controllers. As a result, features have had to be removed from all but a few of the currently supported F3 based flight controllers. Some of the affected targets are: AIORACERF3, BETAFLIGHTF3, CHEBUZZF3, CRAZYBEEF3FR, FURYF3, FURYF3OSD, IMPULSERCF3, LUX_RACE, LUXV2_RACE, MIDELICF3, OMNIBUS, RACEBASE, RMDO, SIRINFPV, SPRACINGF3, SPRACINGF3MINI, SPRACINGF3NEO, STM32F3DISCOVERY (#6900, #6955, #7037, #7038, #7045, #7306, #7381, #7392, #7402, #7421, #7501, #7508, #7518, #7829, #7842);
  • in addition to the above point, the following features had to be removed from all F3 based flight controllers in order to make the firmware fit into flash: Smart Feedforward, support for flashing / configuration of SimonK based ESCs (#7272, #7274, #7391);
  • support for status display through LED strips was removed from F3 based flight controllers, in order to be able to reclaim some flash space. In its place, LED Strip Profiles (except for the 'Status' profile which is not supported on F3) can be used to set LED strips to fixed colours. LED strip profiles are also available on F4 / F7, to enable simple configuration of the LED strip in OSD (#7485);
  • since the above three measures proved to be insufficient to keep flash space from overflowing on F3 based flight controllers, a system of classifying F3 based flight controllers into a number of 'feature cut' levels, and removing features according from them according to their level were introduced. This was used to reduce the number of features built into most F3 based flight controllers even more (#7429).

Major features:

  • real time ESC RPM feedback, and notch filtering based on motor RPM (#7264, #7271);
  • D term management with D_min (#7373, #7538);
  • throttle based dynamic gyro and D term filtering (#6943);
  • launch control (#6992);
  • switchable OSD profiles (#6714);
  • SPI attached Spektrum RX (#7210);
  • Unified Targets (#5824, #6837, #7620).

Minor features:

  • cascaded dynamic notches (#7078);
  • thrust linearisation (#7304);
  • integrated yaw control (#6432);
  • switchable LED_STRIP profiles (#7303);
  • stick overlays in OSD (#7167);
  • profile switching based on battery cell count (#7516);
  • per profile limiting of maximum motor output (#7482);
  • support for the Futaba SFHSS protocol on CC2500 (FrSky SPI) hardware (#6865);
  • EU LBT mode for the FrSky SPI RX (#7339);
  • support for STM32F765xx based flight controllers (#6669).
  • configuration over HoTT telemetry (#6224).

Changes from Release Candidate 6:

Fixes:

  • fixed potential problem when in crash flip mode with bidirectional Dshot enabled (#7929);
  • added missing help text for CLI vtx command (#7934);
  • fixed bug with altitude warning when disabled (#7937);
  • fixed problem on F446 boards (#7942).

Target Updates:

  • added target RUSHCORE7 to 4.0 (#7930);
  • added target FF_RACEPIT to 4.0 (#7931);
  • add target KAKUTEF7MINI to 4.0 (#7932);
  • added target FLYWOOF411 to 4.0 (#7933);
  • updated target OMNIBUSF4NANOV7 (#7939).
Assets 170
Pre-release

@mikeller mikeller released this Apr 3, 2019 · 629 commits to master since this release

Important

This is a release candidate. It is intended for testing, and some things still need fixing and fine tuning. Please use it with caution and report back any issues at https://github.com/betaflight/betaflight/issues. Thank you.

Important information when upgrading

  • A number of changes and improvements in this release require changes to the Betaflight configurator. These changes have been added to Betaflight configurator 10.5.0 (to be released in the coming days, installation instructions here). Please update your Betaflight configurator to version 10.5.0 (or newer) as soon as it is available, or use the CLI for now;
  • if you are using the Blackbox Log Viewer, there will be an updated version 3.3.0 to go with Betaflight 4.0 (installation instructions here). Please update as soon as it becomes available;
  • there are a number of flight performance related improvements in Betaflight 4.0. Therefore, pasting back-ups of the tuning settings for older versions of Betaflight into Betaflight 4.0 will most likely result in poor flight performance! The default settings in Betaflight 4.0 should be reasonably well flyable for most hardware configurations, but users wanting to tune the performance of their craft should read the 4.0 Tuning Notes to learn everything they need to know about tuning Betaflight 4.0 (#6432, #6943, #7078, #7264, #7271, #7304, #7373, #7538);
  • there was a fix to how the min_check 'zero throttle' dead zone is applied. Before the fix, there was an additional, undocumented deadband of the same size as the min_check range above the min_check range. The fix has not brought a change to the arming behaviour and throttle is still required to be below min_check for arming to be possible. However the extra unintended throttle deadband above min_check has been eliminated. This will result in more responsive throttle near minimum and a slight increase in throttle resolution. If you desire to retain the same range for the 'zero throttle' dead zone, you need to double the amount of dead zone configured in min_check (offset from 1000). Be aware that this will also double the throttle range within which the craft can be armed (#7463);
  • there is a new 'Stick Overlay' OSD element that shows an overlay of the current stick positions. In order to use it, the font loaded onto the OSD needs to be updated to the latest version (available in configurator 10.5.0 or newer) (#7476);
  • the functionality of the 'crash flip arrow' OSD element was extended to activate as well when the craft is not in crash flip mode, but small_angle is set, and the craft is unarmed and tilted more than small_angle. This is to show pilots that they won't be able to arm from the current orientation, and allow them to activate crash flip mode and then right their craft (#7250);
  • As part of the introduction of Unified Targets, the existing resource command was complemented with two new commands for resource management: timer and dma. Just like resource can be used to assign pins to functions, timer can be used to assign timers to pins, and dma can be used to assign DMA streams to subsystems and pins (if they have a timer assigned). Important: Since DMA streams are linked to pins through timers, timer assignments for pins have to be made first, before dma assignments to these pins can be made (#5824, #6837, #7620);
  • The syntax for the resource, timer, and dma commands was consolidated, and as part of this the resource list subcommand was renamed into resource show. This aligns it with the new dma show and timer show subcommands (#7712);
  • the following parameters were renamed to more closely match their function: p_level => angle_level_strength, i_level => horizon_level_strength, d_level => horizon_transition (#6673);
  • the gyro configuration was unified from being done by gyro hardware model to being generic for all gyro models. This means that for some targets that are used for multiple different boards that come with different gyro models that are mounted with different orientations, it is necessary from Betaflight 4.0 on to manually set gyro_1_sensor_align (and / or gyro_2_sensor_align for boards with a second gyro) to match the gyro orientation on the board that is used. See note #6761 for an explanation, and instructions for individual boards. This is a temporary workaround, per-board configurations with correct gyro alignment will be released as Unified Target configurations (#5868);
  • unfortunately, bugfixes in the flight controller core functionality have led to an increase of the firmware size, causing it to overflow the available space on almost all F3 based flight controllers. As a result, features have had to be removed from all but a few of the currently supported F3 based flight controllers. Some of the affected targets are: AIORACERF3, BETAFLIGHTF3, CHEBUZZF3, CRAZYBEEF3FR, FURYF3, FURYF3OSD, IMPULSERCF3, LUX_RACE, LUXV2_RACE, MIDELICF3, OMNIBUS, RACEBASE, RMDO, SIRINFPV, SPRACINGF3, SPRACINGF3MINI, SPRACINGF3NEO, STM32F3DISCOVERY (#6900, #6955, #7037, #7038, #7045, #7306, #7381, #7392, #7402, #7421, #7501, #7508, #7518, #7829, #7842);
  • in addition to the above point, the following features had to be removed from all F3 based flight controllers in order to make the firmware fit into flash: Smart Feedforward, support for flashing / configuration of SimonK based ESCs (#7272, #7274, #7391);
  • support for status display through LED strips was removed from F3 based flight controllers, in order to be able to reclaim some flash space. In its place, LED Strip Profiles (except for the 'Status' profile which is not supported on F3) can be used to set LED strips to fixed colours. LED strip profiles are also available on F4 / F7, to enable simple configuration of the LED strip in OSD (#7485);
  • since the above three measures proved to be insufficient to keep flash space from overflowing on F3 based flight controllers, a system of classifying F3 based flight controllers into a number of 'feature cut' levels, and removing features according from them according to their level were introduced. This was used to reduce the number of features built into most F3 based flight controllers even more (#7429).

Major features:

  • real time ESC RPM feedback, and notch filtering based on motor RPM (#7264, #7271);
  • d term management with D_min (#7373, #7538);
  • throttle based dynamic gyro and dterm filterig (#6943);
  • launch control (#6992);
  • switchable OSD profiles (#6714);
  • SPI attached Spektrum RX (#7210);
  • Unified Targets (#5824, #6837, #7620).

Minor features:

  • cascaded dynamic notches (#7078);
  • thrust linearisation (#7304);
  • integrated yaw control (#6432);
  • switchable LED_STRIP profiles (#7303);
  • stick overlays in OSD (#7167);
  • profile switching based on battery cell count (#7516);
  • support for the Futaba SFHSS protocol on CC2500 (FrSky SPI) hardware (#6865);
  • EU LBT mode for the FrSky SPI RX (#7339);
  • support for STM32F765xx based flight controllers (#6669).
  • configuration over HoTT telemetry (#6224).

Changes from Release Candidate 5:

Fixes:

  • fixed the gyro detection for multi gyro setups (#7914);
  • fixed setting of non-working low pass defaults when Betaflight configurator 10.4 is used (#7918);
  • fixed CMS over CRSF (#7919).

Target Updates:

  • updated the configuration for target JHEF7DUAL for Betaflight 4.0 (#7906);
  • updated the configuration for target SYNERGYF4 for Betaflight 4.0 (#7913).
Assets 166
Pre-release

@mikeller mikeller released this Apr 1, 2019 · 643 commits to master since this release

Important

This is a release candidate. It is intended for testing, and some things still need fixing and fine tuning. Please use it with caution and report back any issues at https://github.com/betaflight/betaflight/issues. Thank you.

Important information when upgrading

  • A number of changes and improvements in this release require changes to the Betaflight configurator. These changes have been added to Betaflight configurator 10.5.0 (to be released in the coming days, installation instructions here). Please update your Betaflight configurator to version 10.5.0 (or newer) as soon as it is available, or use the CLI for now;
  • if you are using the Blackbox Log Viewer, there will be an updated version 3.3.0 to go with Betaflight 4.0 (installation instructions here). Please update as soon as it becomes available;
  • there are a number of flight performance related improvements in Betaflight 4.0. Therefore, pasting back-ups of the tuning settings for older versions of Betaflight into Betaflight 4.0 will most likely result in poor flight performance! The default settings in Betaflight 4.0 should be reasonably well flyable for most hardware configurations, but users wanting to tune the performance of their craft should read the 4.0 Tuning Notes to learn everything they need to know about tuning Betaflight 4.0 (#6432, #6943, #7078, #7264, #7271, #7304, #7373, #7538);
  • there was a fix to how the min_check 'zero throttle' dead zone is applied. Before the fix, there was an additional, undocumented deadband of the same size as the min_check range above the min_check range. The fix has not brought a change to the arming behaviour and throttle is still required to be below min_check for arming to be possible. However the extra unintended throttle deadband above min_check has been eliminated. This will result in more responsive throttle near minimum and a slight increase in throttle resolution. If you desire to retain the same range for the 'zero throttle' dead zone, you need to double the amount of dead zone configured in min_check (offset from 1000). Be aware that this will also double the throttle range within which the craft can be armed (#7463);
  • there is a new 'Stick Overlay' OSD element that shows an overlay of the current stick positions. In order to use it, the font loaded onto the OSD needs to be updated to the latest version (available in configurator 10.5.0 or newer) (#7476);
  • the functionality of the 'crash flip arrow' OSD element was extended to activate as well when the craft is not in crash flip mode, but small_angle is set, and the craft is unarmed and tilted more than small_angle. This is to show pilots that they won't be able to arm from the current orientation, and allow them to activate crash flip mode and then right their craft (#7250);
  • As part of the introduction of Unified Targets, the existing resource command was complemented with two new commands for resource management: timer and dma. Just like resource can be used to assign pins to functions, timer can be used to assign timers to pins, and dma can be used to assign DMA streams to subsystems and pins (if they have a timer assigned). Important: Since DMA streams are linked to pins through timers, timer assignments for pins have to be made first, before dma assignments to these pins can be made (#5824, #6837, #7620);
  • The syntax for the resource, timer, and dma commands was consolidated, and as part of this the resource list subcommand was renamed into resource show. This aligns it with the new dma show and timer show subcommands (#7712);
  • the following parameters were renamed to more closely match their function: p_level => angle_level_strength, i_level => horizon_level_strength, d_level => horizon_transition (#6673);
  • the gyro configuration was unified from being done by gyro hardware model to being generic for all gyro models. This means that for some targets that are used for multiple different boards that come with different gyro models that are mounted with different orientations, it is necessary from Betaflight 4.0 on to manually set gyro_1_sensor_align (and / or gyro_2_sensor_align for boards with a second gyro) to match the gyro orientation on the board that is used. See note #6761 for an explanation, and instructions for individual boards. This is a temporary workaround, per-board configurations with correct gyro alignment will be released as Unified Target configurations (#5868);
  • unfortunately, bugfixes in the flight controller core functionality have led to an increase of the firmware size, causing it to overflow the available space on almost all F3 based flight controllers. As a result, features have had to be removed from all but a few of the currently supported F3 based flight controllers. Some of the affected targets are: AIORACERF3, BETAFLIGHTF3, CHEBUZZF3, CRAZYBEEF3FR, FURYF3, FURYF3OSD, IMPULSERCF3, LUX_RACE, LUXV2_RACE, MIDELICF3, OMNIBUS, RACEBASE, RMDO, SIRINFPV, SPRACINGF3, SPRACINGF3MINI, SPRACINGF3NEO, STM32F3DISCOVERY (#6900, #6955, #7037, #7038, #7045, #7306, #7381, #7392, #7402, #7421, #7501, #7508, #7518, #7829, #7842);
  • in addition to the above point, the following features had to be removed from all F3 based flight controllers in order to make the firmware fit into flash: Smart Feedforward, support for flashing / configuration of SimonK based ESCs (#7272, #7274, #7391);
  • support for status display through LED strips was removed from F3 based flight controllers, in order to be able to reclaim some flash space. In its place, LED Strip Profiles (except for the 'Status' profile which is not supported on F3) can be used to set LED strips to fixed colours. LED strip profiles are also available on F4 / F7, to enable simple configuration of the LED strip in OSD (#7485);
  • since the above three measures proved to be insufficient to keep flash space from overflowing on F3 based flight controllers, a system of classifying F3 based flight controllers into a number of 'feature cut' levels, and removing features according from them according to their level were introduced. This was used to reduce the number of features built into most F3 based flight controllers even more (#7429).

Major features:

  • real time ESC RPM feedback, and notch filtering based on motor RPM (#7264, #7271);
  • d term management with D_min (#7373, #7538);
  • throttle based dynamic gyro and dterm filterig (#6943);
  • launch control (#6992);
  • switchable OSD profiles (#6714);
  • SPI attached Spektrum RX (#7210);
  • Unified Targets (#5824, #6837, #7620).

Minor features:

  • cascaded dynamic notches (#7078);
  • thrust linearisation (#7304);
  • integrated yaw control (#6432);
  • switchable LED_STRIP profiles (#7303);
  • stick overlays in OSD (#7167);
  • profile switching based on battery cell count (#7516);
  • support for the Futaba SFHSS protocol on CC2500 (FrSky SPI) hardware (#6865);
  • EU LBT mode for the FrSky SPI RX (#7339);
  • support for STM32F765xx based flight controllers (#6669).
  • configuration over HoTT telemetry (#6224).

Changes from Release Candidate 4:

Fixes:

  • fixed inconsistencies in the display of some OSD elements and stats (#7877);
  • fixed MCU type display for STM32F446 based boards (#7882);
  • fixed PID calculation for GPS rescue altitude (#7884);
  • fixed the output of the CLI 'timer' command (#7885);
  • fixed the defaults and validation for lowpass filter parameters (#7888);
  • added debug modes for absolute control (#7889);
  • changed absolute control to be applied to yaw as well (#7890);
  • fixed the PWM beeper (#7891);
  • fixed validation to disable 'BOTH' gyro setting when the RPM filter is enabled (#7895);
  • fixed ESCSERIAL serial port to ESC forwarding (#7898);
  • disabled absolute control by default (#7901).

Target Updates:

  • updated the configuration for target ELINF405 for Betaflight 4.0 (#7880);
  • updated the configuration for target ELINF722 for Betaflight 4.0 (#7887).
Assets 164