Giter Site home page Giter Site logo

betaflight / firmware-presets Goto Github PK

View Code? Open in Web Editor NEW
93.0 93.0 527.0 1005 KB

Configuration Snippets for the Betaflight Flight Controller Firmware

License: GNU General Public License v3.0

JavaScript 96.17% Shell 3.83%
hacktoberfest hacktoberfest2021

firmware-presets's Introduction

Betaflight

Latest version Build License: GPL v3 Join us on Discord!

Betaflight is flight controller software (firmware) used to fly multi-rotor craft and fixed wing craft.

This fork differs from Baseflight and Cleanflight in that it focuses on flight performance, leading-edge feature additions, and wide target support.

Events

Date Event
28-04-2024 Firmware 4.5 Release

News

Requirements for the submission of new and updated targets

The following new requirements for pull requests adding new targets or modifying existing targets are put in place from now on:

  1. Read the hardware specification

  2. No new F3 based targets will be accepted;

  3. For any new target that is to be added, only a Unified Target config into https://github.com/betaflight/unified-targets/tree/master/configs/default needs to be submitted. See the instructions for how to create a Unified Target configuration. If there is no Unified Target for the MCU type of the new target (see instructions above), then a 'legacy' format target definition into src/main/target/ has to be submitted as well;

  4. For changes to existing targets, the change needs to be applied to the Unified Target config in https://github.com/betaflight/unified-targets/tree/master/configs/default. If no Unified Target configuration for the target exists, a new Unified Target configuration will have to be created and submitted. If there is no Unified Target for the MCU type of the new target (see instructions above), then an update to the 'legacy' format target definition in src/main/target/ has to be submitted alongside the update to the Unified Target configuration.

Features

Betaflight has the following features:

  • Multi-color RGB LED strip support (each LED can be a different color using variable length WS2811 Addressable RGB strips - use for Orientation Indicators, Low Battery Warning, Flight Mode Status, Initialization Troubleshooting, etc)
  • DShot (150, 300 and 600), Multishot, Oneshot (125 and 42) and Proshot1000 motor protocol support
  • Blackbox flight recorder logging (to onboard flash or external microSD card where equipped)
  • Support for targets that use the STM32 F4, G4, F7 and H7 processors
  • PWM, PPM, SPI, and Serial (SBus, SumH, SumD, Spektrum 1024/2048, XBus, etc) RX connection with failsafe detection
  • Multiple telemetry protocols (CRSF, FrSky, HoTT smart-port, MSP, etc)
  • RSSI via ADC - Uses ADC to read PWM RSSI signals, tested with FrSky D4R-II, X8R, X4R-SB, & XSR
  • OSD support & configuration without needing third-party OSD software/firmware/comm devices
  • OLED Displays - Display information on: Battery voltage/current/mAh, profile, rate profile, mode, version, sensors, etc
  • In-flight manual PID tuning and rate adjustment
  • PID and filter tuning using sliders
  • Rate profiles and in-flight selection of them
  • Configurable serial ports for Serial RX, Telemetry, ESC telemetry, MSP, GPS, OSD, Sonar, etc - Use most devices on any port, softserial included
  • VTX support for Unify Pro and IRC Tramp
  • and MUCH, MUCH more.

Installation & Documentation

See: https://betaflight.com/docs/wiki

Support and Developers Channel

There's a dedicated Discord server here:

https://discord.gg/n4E6ak4u3c

We also have a Facebook Group. Join us to get a place to talk about Betaflight, ask configuration questions, or just hang out with fellow pilots.

https://www.facebook.com/groups/betaflightgroup/

Etiquette: Don't ask to ask and please wait around long enough for a reply - sometimes people are out flying, asleep or at work and can't answer immediately.

Configuration Tool

To configure Betaflight you should use the Betaflight-configurator GUI tool (Windows/OSX/Linux) which can be found here:

https://github.com/betaflight/betaflight-configurator/releases/latest

Contributing

Contributions are welcome and encouraged. You can contribute in many ways:

  • implement a new feature in the firmware or in configurator (see below);
  • documentation updates and corrections;
  • How-To guides - received help? Help others!
  • bug reporting & fixes;
  • new feature ideas & suggestions;
  • provide a new translation for configurator, or help us maintain the existing ones (see below).

The best place to start is the Betaflight Discord (registration here). Next place is the github issue tracker:

https://github.com/betaflight/betaflight/issues https://github.com/betaflight/betaflight-configurator/issues

Before creating new issues please check to see if there is an existing one, search first otherwise you waste people's time when they could be coding instead!

If you want to contribute to our efforts financially, please consider making a donation to us through PayPal.

If you want to contribute financially on an ongoing basis, you should consider becoming a patron for us on Patreon.

Developers

Contribution of bugfixes and new features is encouraged. Please be aware that we have a thorough review process for pull requests, and be prepared to explain what you want to achieve with your pull request. Before starting to write code, please read our development guidelines and coding style definition.

GitHub actions are used to run automatic builds

Translators

We want to make Betaflight accessible for pilots who are not fluent in English, and for this reason we are currently maintaining translations into 21 languages for Betaflight Configurator: Català, Dansk, Deutsch, Español, Euskera, Français, Galego, Hrvatski, Bahasa Indonesia, Italiano, 日本語, 한국어, Latviešu, Português, Português Brasileiro, polski, Русский язык, Svenska, 简体中文, 繁體中文. We have got a team of volunteer translators who do this work, but additional translators are always welcome to share the workload, and we are keen to add additional languages. If you would like to help us with translations, you have got the following options:

  • if you help by suggesting some updates or improvements to translations in a language you are familiar with, head to crowdin and add your suggested translations there;
  • if you would like to start working on the translation for a new language, or take on responsibility for proof-reading the translation for a language you are very familiar with, please head to the Betaflight Discord chat (registration here), and join the 'translation' channel - the people in there can help you to get a new language added, or set you up as a proof reader.

Hardware Issues

Betaflight does not manufacture or distribute their own hardware. While we are collaborating with and supported by a number of manufacturers, we do not do any kind of hardware support. If you encounter any hardware issues with your flight controller or another component, please contact the manufacturer or supplier of your hardware, or check RCGroups https://rcgroups.com/forums/showthread.php?t=2464844 to see if others with the same problem have found a solution.

Betaflight Releases

https://github.com/betaflight/betaflight/releases

Open Source / Contributors

Betaflight is software that is open source and is available free of charge without warranty to all users.

Betaflight is forked from Cleanflight, so thanks goes to all those who have contributed to Cleanflight and its origins.

Origins for this fork (Thanks!):

  • Alexinparis (for MultiWii),
  • timecop (for Baseflight),
  • Dominic Clifton (for Cleanflight),
  • borisbstyle (for Betaflight), and
  • Sambas (for the original STM32F4 port).

The Betaflight Configurator is forked from Cleanflight Configurator and its origins.

Origins for Betaflight Configurator:

  • Dominic Clifton (for Cleanflight configurator), and
  • ctn (for the original Configurator).

Big thanks to current and past contributors:

  • Budden, Martin (martinbudden)
  • Bardwell, Joshua (joshuabardwell)
  • Blackman, Jason (blckmn)
  • ctzsnooze
  • Höglund, Anders (andershoglund)
  • Ledvina, Petr (ledvinap) - IO code awesomeness!
  • kc10kevin
  • Keeble, Gary (MadmanK)
  • Keller, Michael (mikeller) - Configurator brilliance
  • Kravcov, Albert (skaman82) - Configurator brilliance
  • MJ666
  • Nathan (nathantsoi)
  • ravnav
  • sambas - bringing us the F4
  • savaga
  • Stålheim, Anton (KiteAnton)

And many many others who haven't been mentioned....

firmware-presets's People

Contributors

antoni9 avatar blckmn avatar chrisrosser avatar comsterfpv avatar ctzsnooze avatar directory avatar dusking1 avatar feisarfpv avatar fpvian avatar garban5 avatar haslinghuis avatar illusionfpv avatar jawz101 avatar jikanos avatar jyesmith avatar karatebrot avatar limonspb avatar lorenzod121 avatar mikeller avatar mralucarddante avatar nemesisxb avatar nightflasher avatar rochford77 avatar sfjuocekr avatar spatzengr avatar sugaark avatar supaflyfpv avatar tehllamafpv avatar vikibaarathi avatar virtualender avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

firmware-presets's Issues

BMI 270 presets are confusing users. Update or remove them.

I understand the proper place for this discussion is on the respective PRs but unfortunately the original author has blocked me for simply bringing up the issue, and I cannot comment on their PRs.

The bmi270 presets by dusking were created before we made the decision to have OSR4 be the default in betaflight.

Every day, I see posts on various socials confused about what they should do, and what they need to flash. The problem is users have the impression that the BMI270 by default needs exotic software filtering, which is no longer the case in betaflight.

This isn't meant to be a discussion about what mode is best, that has already been decided as OSR4 is currently the default. However, one of the main reasons in support of OSR4 being the default was to give users a seemless experience across different gyro platforms, and increase ease of use, which isn't being fully accomplished with the existence of these presets.

I think one of the following actions would help clear up confusion for users

  • rename the presets to something like "Duskings Alternative Cutoff BMI 270 filters" or "Duskings Advanced BMI 270 filters" or "Duskings extreme BMI 270 filters" and an update to the preset description explaining what the preset is actually doing (moving the internal cutoff up and applying additional filtering in betaflight, and why that is beneficial) so that it's clear to users that they don't NEED the preset (at least in the same way they NEED to be flashing something like an RC link preset) but that it provides value on top of what the defaults are.

  • make the preset a 4.2 preset, as a user would "NEED" the additional filtering on older firmwares (but remove the change in hardware mode as that wouldn't be an option on legacy firmware)

  • remove the presets entirely, but I don't think that is necessarily the best option the more I think about it.

Required: TUNE defaults change

Per discussion with @ctzsnooze we need RC_SMOOTHING parameters to be in TUNE defaults.txt as well.
Because we allow RC_SMOOTHING parameters in the TUNE presets, we must be resetting them in TUNE defaults.

For some of the option allow just a single one being selected

Don't know if this is the right place to create the issue or if it should be done for configurator. Let me know if I should close it here and open it there.

I have a couple of presets that have multiple options, but the user should not be able to select both options. I was thinking that some of the options can be group to only allow a single option to be selected in the group. Like grouped radio buttons work basically. Multiple groups should be possible, maybe even giving the group a name.

As example below. Maybe the items can be grouped without the EXCLUSIVE tag, just making it more readable. It should also be backwards compatible as the OPTIONGROUP should be optional.

The only way of solving this with the current implementation is to inform the user in the disclaimer or description to only select one item.

#$ TITLE: SpeedyBee TX800 VTX Tables
#$ FIRMWARE_VERSION: 4.2
#$ FIRMWARE_VERSION: 4.3
#$ CATEGORY: VTX
#$ STATUS: COMMUNITY
#$ KEYWORDS:  vtx, vtx table, speedybee, tx800
#$ AUTHOR: NemesisXB
#$ DESCRIPTION: VTX tables for the SpeedyBee TX800.
#$ DESCRIPTION: Select the regulatory domain in the options (EU or US).
#$ DISCLAIMER:  Only select one regulatory option. All previous VTX Table settings will be reset.
#$ INCLUDE_DISCLAIMER: misc/disclaimer/en/vtxtable.txt
#$ DISCUSSION:  https://github.com/betaflight/firmware-presets/pull/105 

#$ INCLUDE: presets/4.3/vtx/defaults_vtx_tables.txt

# Configure common vtxtable settings
vtxtable bands 5
vtxtable channels 8
vtxtable powerlevels 5
vtxtable powervalues 25 200 400 600 600
vtxtable powerlabels 25 200 400 800 800

#$ OPTIONGROUP BEGIN (EXCLUSIVE): Regulatory Domain
#$ OPTION BEGIN (UNCHECKED): EU
vtxtable bands 4
vtxtable band 1 BOSCAM_A A CUSTOM  5865 5845 5825 5805 5785 5765 5745    0
vtxtable band 2 BOSCAM_B B CUSTOM  5733 5752 5771 5790 5809 5828 5847 5866
vtxtable band 3 FATSHARK F CUSTOM  5740 5760 5780 5800 5820 5840 5860    0
vtxtable band 4 RACEBAND R CUSTOM     0    0    0 5769 5806 5843    0    0
#$ OPTION END

#$ OPTION BEGIN (CHECKED): US
vtxtable band 1 BOSCAM_A A CUSTOM  5865 5845 5825 5805 5785 5765 5745 5725
vtxtable band 2 BOSCAM_B B CUSTOM  5733 5752 5771 5790 5809 5828 5847 5866
vtxtable band 3 BOSCAM_E E CUSTOM  5705 5685 5665    0 5885 5905    0    0
vtxtable band 4 FATSHARK F CUSTOM  5740 5760 5780 5800 5820 5840 5860 5880
vtxtable band 5 RACEBAND R CUSTOM  5658 5695 5732 5769 5806 5843 5880 5917
#$ OPTION END
#$ OPTIONGROUP END

Wrong value for max power in "TBS Unify Pro32 Nano - SA 2.1" preset

"TBS Unify Pro32 Nano - SA 2.1" preset's Note 1. Max power set to 36db...
https://api.betaflight.com/firmware-presets/presets/4.3/vtx/Unify_Pro32_Nano_SA2_1.txt
Actual value is 28 instead of 36:
vtxtable powervalues 14 20 26 28

TBS source: https://www.team-blacksheep.com/vtx-table-for-betaflight.txt
//TBS Unify Pro32 Nano - SA 2.1
//max power set to 36db as it wil lforce the vtx to ouput max power
vtxtable powervalues 14 20 26 36

From these information I think the 36 is the correct value, but "TBS Unify Pro32 Nano - SA 2.1" preset does not provide it.
Correct powervalues should be:
vtxtable powervalues 14 20 26 36

Information in default file is simply wrong and misleading

image
Here the Karate preset shows some wrong information. Integrated yaw is being confused for FPV Camera Angle. Integrated yaw does not mix roll and pitch, integrated yaw literally integrates the yaw pidsum.

Wrong information like this in presets will only add to user confusion and should be fixed.

vtxtable powerlabels typo

The CLI line for vtx powerlabels repeats 800. Please correct for 600.

vtxtable powerlabels 25 200 400 800 800

Presets don't work on subsequent RC versions

Presets don't work on subsequent RC versions - tried Karate on RC 2-3-6-7 on Foxeer stack 60A + 533 2070kv + 51466/51466v2 frames used: 533SBpro and my own custom frame, was getting a strange mid-corner high-P-sounding oscillation, happened on hard cornering when blipping throttle / on the second part of the blip [throttle increase]. At first didn't use blackbox and tried different settings, incl. motor timing - burned one motor when timing was set to 31, burned another one when ever-so-sligthly clipping a gate.

Using blackbox, there's something in the preset that's causing the inside back motor to max out in this scenario, tried to return yaw motors reversed to normal and the issue went away. Then tried to reverse yaw and stock BF tune - the issue isn't present.
Screen Shot 2022-06-06 at 11 29 53
BTFL_BLACKBOX_LOG_20220604_172755.BBL.zip

Remarks about RC Link /50 Hz ELRS Preset

Hi,

2 things about 50Hz ELRS preset :

  • in RC Link, the chosen Serial Rx Provider is CRSF, may be a source of error if you have a spi ELRS RX
  • In RC Link, If cinematic option is chosen, a 25 stronger jitter factor is added but 20 seems to be the max.

Betaflight Indexer NPM package

I've extracted indexer to separate project: https://github.com/gebeto/betaflight-indexer to be able to run own Betaflight Source without doing fork of official source.

Now I just need to install betaflight-indexer package globally with yarn or npm, and just simply run betaflight-indexer command inside my own source folder

Can we make this officially?

Or we can also add "version" to package.json in this project, and then I'll be able to install this repo as dependency in my betaflight-indexer and use your sources of indexer instead of copy-pasting it to my package

request preset for VTX - Tmotor FT800

https://store.tmotor.com/product/ft800-vtx.html

It also supports SmartAudio

# vtxtable
vtxtable bands 6
vtxtable channels 8
vtxtable band 1 BAND_A A CUSTOM 5865 5845 5825 5805 5785 5765 5745 5725
vtxtable band 2 BAND_B B CUSTOM 5733 5752 5771 5790 5999 5828 5847 5866
vtxtable band 3 BAND_E E CUSTOM 5705 5685 5665 5645 5885 5905 5925 5945
vtxtable band 4 AIRWAVE F CUSTOM 5740 5760 5780 5800 5820 5840 5860 5880
vtxtable band 5 RACEBAND R CUSTOM 5658 5695 5732 5769 5806 5843 5880 5917
vtxtable band 6 LOWRACE L CUSTOM 5362 5399 5436 5473 5510 5547 5584 5621
vtxtable powerlevels 4
vtxtable powervalues 14 23 27 29
vtxtable powerlabels 25 200 500 800

Add presets for ELRS 915MHz @ 200Hz control link?

Currently there is only preset for ELRS 50Hz/150Hz/250Hz/500Hzcontrol link. However, ELRS 915MHz runs at 200Hz, which isn't covered by any available presets.

Here I post my flyable settings for ELRS 200Hz. However, I'm far from a good tuner to produce perfect results. I wish ELRS@200Hz can be officially covered.

My settings for ELRS 200Hz:

# Feedforward
feedforward_averaging = 2_POINT
feedforward_smooth_factor = 65
feedforward_jitter_factor = 12
feedforward_boost = 5

# RC Smoothing
rc_smoothing = ON
rc_smoothing_auto_factor = 30
rc_smoothing_auto_factor_throttle = 30

SpeedyBee VTX800 VTX Table

The labels and values for the 600mW and 800mW are incorrect.

Is:

vtxtable powervalues 25 200 400 600 600
vtxtable powerlabels 25 200 400 800 800

Should be:

vtxtable powervalues 25 200 400 600 800
vtxtable powerlabels 25 200 400 600 800

impossible to save 2 different pid preset with different filters

Describe the bug

i have 2 different preset of PID but it's impossible to have different filters between the 2 preset .
when i change filter settings in the first preset, it's automatically changing on the second preset !

To Reproduce

just create 2 profil of pid and test to have different filter settings between this 2 profil

Expected behavior

juste want to have 2 different preset with different filter settings .

Support ID

8e268521-324e-4386-9774-79f7b43cc2c4

Flight controller

aikon F7V2

Other components

Aikon AK55A V3 esc /fusion C220 frame
crossfire / axisflying AF227 1960KV / vista with dji camera

How are the different components wired up (including port information)

No response

Add any other context about the problem that you think might be relevant here

i run Bf configurator 10.9 on windows 11 and quad is on BF4.4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.