1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-17 13:25:30 +03:00
Commit graph

14880 commits

Author SHA1 Message Date
ctzsnooze
dd73ce4dd7
Re-name ezDisarm variables and tidying up (#13835)
* just re-naming variables and tidying up

* change name to landing_disarm_threshold
2024-08-21 09:01:49 +02:00
Ivan Efimov
8feb741e17
bbx 3d speed when gps_use_3d_speed==true (#13831) 2024-08-20 10:31:58 +02:00
Ivan Efimov
295d5425ad
Reschedule stats saving on disarm, if quad still moving (#13637)
* Rescedule stats saving on disarm, if quad still moving

* Review suggestions by KarateBrot and Ledvinap

* Moved statsSaveMoveLimit under statsConfig_t
2024-08-20 14:44:40 +10:00
luckk
6dcc268918
Add apm32f405/f407 support (#13796)
* Add APM32F4 driver libraries and USB middleware

* Add the APM32F405 and APM32F407 target files

* Add APM32 startup files

* Add APM32F4 linker files

* Add APM32F4.mk

* Add APM32 driver files

* Add APM32F40X MCU type

* Sync with the Betaflight master branch and modify the driver directory structure

* Implement CLI on the APM32

* Implement ADC on the APM32

* Implement  config streamer on the APM32

* Implement I2C on the APM32

* Implement SPI on the APM32

* Implement DSHOT on the APM32

* Implement transponder ir on the APM32

* Implement serial uart on the APM32

* Implement MCO on the APM32

* Implement DWT on the APM32

* Update the init.c file, adding APM32 MCO configuration

* Remove all duplicated APM32 driver files and retaining only the APM32 LIB directory

* Create APM32F4.mk

* Add linker files for APM32F405 and APM32F407

* Add startup and library config files for APM32F405 and APM32F407

* Add target files for APM32F405 and APM32F407

* Add apm32 MCU driver files

* Add build configuration for APM32 MCU

* Implement config streamer on APM32

* Implement CLI on the APM32

* Implement ADC on the APM32

* Implement RCC on the APM32

* Implement MCO on the APM32

* Implement I2C on the APM32

* Implement SPI on the APM32

* Implement serial uart on the APM32

* Implement IO on the APM32

* Implement DMA on the APM32

* Implement DSHOT on the APM32

* Implement transponder ir on the APM32

* Update init.c

* Add the inclusion of the 'platform.h' file to the APM USB driver source file

* Merge bus SPI duplicate code from APM32 to STM32

* Update timer_apm32.c

* Merge motor duplicate code from APM32 to STM32

* Merge serial uart duplicate code from APM32 to STM32

* Update APM32F4.mk

* Update cli.c

* Update APM32F4.mk

* Remove the apm32_flash_f4_split.ld

* Associate the apm32 linker file with stm32_flash_f4_split.ld
2024-08-19 08:34:31 +10:00
Mark Haslinghuis
27ec01ddda
Add MCU ID to blackbox (#13825)
* Add MCU ID to blackbox

* Update firmware type
2024-08-19 08:27:17 +10:00
Alexander
fcecabf01e
Fix searching a resource (#13826)
If you add a new resource whose name starts with an existing resource name it won't be found. For example if you add `PWM_EX` resource after `PWM` you won't be able to store a pin into it. So when you execute `resource PWM_EX 1 A01` it will be stored into `PWM`.
2024-08-17 20:25:39 +02:00
ainosukii
91439e0ac2
Modify STM32F405 UID Address for MSC Enumeration (#13769)
Update usbd_msc_desc.c
2024-08-16 07:15:26 +10:00
Mark Haslinghuis
04fe4b4461
Fix telemetry for Spektrum/SRXL (#13814)
* Fix telemetry for Spektrum/SRXL

* Update after ledvinap review

* Update comments
2024-08-14 17:31:25 +02:00
ctzsnooze
f890287598
Auto-disarm on landing impact (#13803)
* Disarm on landing

* Changes from review comments, thanks PL

* Sorry missed that one

* calculate Acc magnitude once only, not multiple times

* Include gyro factors as in crashRecovery

* Fix bug in CrashRecovery delta gains

Add temporary debugs to monitor error and delta inputs

* remove 1G subtraction for accMagnitude

thanks Karate

* Use AccDelta or Jerk - thanks Karate

* Revert using Gyro Setpoint and Delta

* Fix typo, thanks Mark

* increment PG version to 9
2024-08-10 08:34:51 +02:00
Ivan Efimov
8f10f17245
Piecewise linear interpolation routine (#13798)
* piecewise linear interpolation routines

* haslinghuis review

* triling spaces removed

* KarateBrot review

* ledvinap's review

* minor style fixes
2024-08-07 18:21:02 +02:00
Steve Evans
9520b5b40f
Add DEBUG_TASK mode (#13799)
* Add DEBUG_TASK mode

* Add difference between expected and actual execution time

* Increment config version

* Fix unit test
2024-08-05 15:54:13 +02:00
Steve Evans
665a42e295
Add OSD display of 2nd block of debug values (#13800)
Add OSD display of 2nd blocks of debug values
2024-08-05 15:48:41 +02:00
Steve Evans
2525be9a33
Fix flash_scan (#13789) 2024-07-31 12:03:20 +02:00
Brian White
1fb73b36f4
Increase Number of Available Dynamic Notches to 7 (#13750) 2024-07-29 05:10:36 +09:00
Steve Evans
5e40ec857d
Fix unused variable compile time error (#13707) 2024-07-28 10:15:56 +09:00
Ivan Efimov
e43b33a02a
TPA gravity factor (for wings) (#13778)
* Wing TPA gravity factor

* Small corrections according to ledvinap's review (not all yet)

* Some review changes for tpa_gravity

* using throttle after LPF to scale between thr0 and thr100

* tpa gravity further review and fixes

* tpa gravity: removed logging of pitch angle, since it's just pitch

* moved tpa_gravity to the end in pid.h

* KarateBrot review
2024-07-27 09:50:32 +02:00
Steve Evans
bafcebcb8e
Read gyro data from correct lsm6dsv16x registers (#13784) 2024-07-26 22:13:15 +02:00
Mark Haslinghuis
0819a56d55
Add SPI ELRS Model Match ID (#13774) 2024-07-26 08:05:29 +02:00
Ivan Efimov
9730f9ee16
rename fix: smoothStepUpTransition (#13768)
smoothStepUpTransition rename fix
2024-07-15 16:55:47 +02:00
Benedikt Kleiner
ee9172f4da
fix at32 serial bidir pp od init and smart audio (#13764)
include fix for F4 and G4 as well

Co-authored-by: Eike Ahmels <ea@weslink.de>
2024-07-15 11:57:09 +02:00
Bryan Mayland
1bcde73c3c
Add FLRC F-modes to ELRS SPI implementation (#12936)
* Add FLRC F-modes to ELRS implementation

* Code quality changes per review

* Remove unused variable
2024-07-10 16:45:17 +02:00
Benedikt Kleiner
75f94d8c5c
at32: add PC6 and PC7 as i2c pins (#13760) 2024-07-10 10:48:54 +10:00
Brian White
cf6d1c1eb6
Put gyro debug axis in header (#13752)
* Put gyro debug axis in header

* Update blackbox.c 

added #include "sensors/gyro_init.h"
then changed line 1539 as per  @Haslinghuis suggestion
2024-07-07 12:01:12 +02:00
Hochmueller
2ff71b0a1f
Fixes #13664 - Smartaudio don't work with Softserial (#13715)
Fixing issue #13664
Softserial port option has changed from 4.4.x to 4.5.0. By this the Smartaudio line is in an unknown voltage state while not TX is running - this violates the Smartaudio standard. vtx_softserial_alt should be set to OFF to use Smartaudio.
2024-06-27 17:53:13 +02:00
Steve Evans
a1e5292946
Update to LSM6DSV16X gyro driver (#13724)
* Enable LPF1_G_EN

* Gyro intialisation review input from STMicro

* Update src/main/drivers/accgyro/accgyro_spi_lsm6dsv16x.c

Error in code from STMicro

Co-authored-by: Petr Ledvina <ledvinap@gmail.com>

---------

Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
2024-06-27 14:15:35 +02:00
Mark Haslinghuis
0686b74197
Add altitude variant for OSD (#13716) 2024-06-27 06:19:06 +10:00
Ivan Efimov
2ceb8e0417
Setpoint PID attenuation (for wings) (#13719)
* Setpoint PID attenuation

* Suggestions from ledvinap's review
2024-06-25 23:38:43 +02:00
J Blackman
5762688f6d
CLEANUP: Move flash drivers to their own directory (#13691)
* CLEANUP: Move flash drivers to their own directory

* Missed flash_w25q128fv.h.

* Directories in #include, and specifying all source files explicitly.

* Revert RX driver src file implicit declaration
2024-06-25 16:24:40 +02:00
Mark Haslinghuis
352350f8d0
Fix redundant debug (#13711) 2024-06-25 07:30:34 +10:00
J Blackman
c2c3d6740c
CLEANUP: MCU file locations (#13692) 2024-06-22 09:21:08 +10:00
Steve Evans
cff4c9cde3
Set next state expected time on per element basis (#13706)
* Set next state expected time on per element basis

* Rename osdNextElement to be clearer
2024-06-21 13:15:34 +02:00
J Blackman
a84042199d
CLEANUP: small adjustment to the legacy gyro directory (#13693)
* CLEANUP: small adjustment to the legacy gyro directory

* Legacy source explicit declaration.
2024-06-20 19:58:25 +02:00
J Blackman
5fd8c02908
Move launch control default to pitchonly (#13699)
Move launch control default to pitchonly.
2024-06-20 19:54:35 +02:00
Ivan Efimov
f140fec847
Allow TPA_LOW to be negative (for wings) (#13661)
* Allow TPA_LOW to be negative (for wings)

* Fix minimax type

Co-authored-by: Mark Haslinghuis <mark@numloq.nl>

* Range -128 to 127

Co-authored-by: Mark Haslinghuis <mark@numloq.nl>

* Proper limits for TPA

Co-authored-by: Jan Post <Rm2k-Freak@web.de>

* separate minmaxes for wing/without wing for TPA_LOW

Co-authored-by: Mark Haslinghuis <mark@numloq.nl>

* Separate define for TPA_LOW_RATE_MIN

---------

Co-authored-by: Mark Haslinghuis <mark@numloq.nl>
Co-authored-by: Jan Post <Rm2k-Freak@web.de>
2024-06-20 12:06:30 +02:00
Ivan Efimov
e2e1a68ba0
S-term (for wings) (#13679)
* S-term for wings

* tabs

Co-authored-by: Petr Ledvina <ledvinap@gmail.com>

* pidData[axis].S

---------

Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
2024-06-20 12:01:13 +02:00
Ivan Efimov
00ca8232d5
TPA delay in ms (for wings) (#13662)
* TPA delay in ms (for wings)

* Added comments for time constant

* ledvinap's suggestions

* tpaFactor local variable (based on ledvinap's suggestions)

* pt1FilterGainFromDelay with inlined calculations for cutoff (based on ledvinap's suggestions)

* Karatebrot extra review

* Pump PG for pidConfig_t

* Fixes based on review

* Moved tpaLpf to the end of pidRuntime_t
2024-06-18 23:23:07 +02:00
J Blackman
7075ed67b8
Adding exclude file for H563 (so not included in CI) (#13690) 2024-06-16 13:04:19 +10:00
J Blackman
a49c5c3a35
Adding initial H563 target files in preparation (#13686)
* Adding initial H563 target files in preparation
* Start up files
* Explicit inclusion of source files for @ledvinap suggestion
- adding system_stm32h5xx.c
2024-06-16 12:57:35 +10:00
Petr Ledvina
e0483ada8f
flash_w25n - remove macro with hidden variable reference (#13680) 2024-06-16 12:06:37 +10:00
Míguel Ángel Mulero Martínez
dc40b8f655
Add RSSI dBm alarm to MSP (#13682)
* Upgrade MSP version to 1.47

* Add RSSI dBm alarm to MSP

* Fix unit test after changing MSP version
2024-06-13 15:05:07 +02:00
J Blackman
d82c8facb2
Cleanup HAL usb driver (#13669) 2024-06-11 12:53:33 +10:00
Eike Ahmels
49adddbdd5
only apply osd defines if not set (#13612)
Co-authored-by: Eike Ahmels <ea@weslink.de>
2024-06-09 03:31:54 +02:00
Steve Evans
ab022b0467
Add support for W25N02K 2Gbit/256Mbyte FLASH (#13677)
* Add support for W25N02K 2Gbit/256Mbyte FLASH

* Remove duplicate defintion check

* Rename W25N01G_BB_*_BLOCK macros

* Remove debug

* Create unified driver for W25N01G and W25N02K devices

* Put device parameters in a table

* Add W25N01GV to stacked die driver
2024-06-09 08:30:33 +10:00
Mark Haslinghuis
6885deb89b
Fix Wstringop-overflow warning on latest ARM SDK (#13659)
Fix Wstringop-overflow warning
2024-05-31 01:24:04 +02:00
Mark Haslinghuis
1074950e42
Update ARM SDK (#12286)
* Update ARM SDK
* Add ARM_SDK_BASE_DIR
* Update ARM SDK to latest 13.2.Rel1
2024-05-30 13:06:42 +10:00
Mark Haslinghuis
e60224395e
Add MSP support for gyro_cal_on_first_arm (#13626)
* Add MSP support for gyro_cal_on_first_arm

* Update comment

* Add parameter to MSP

* Fix unit test

* Adjust condition

* Fix unittest instead
2024-05-22 16:38:54 +02:00
Mark Haslinghuis
4ae4a06b16
Do not enable features by default (#13608)
* Do not enable features by default

* Enable OSD by default if included

* Enable OSD by default if included 2

* Fixes per review blckmn

* Add gate

* Only enable defined features

* No need for DEFAULT_FEATURES predefine

* No need for gating as we use featuresSupportedByBuild

* Fixes per review from ledvinap
2024-05-21 15:12:54 +02:00
Štěpán Dalecký
2a627829cc
Tune huffman table to save nearly 500B (#11171) 2024-05-21 10:46:38 +02:00
Petr Ledvina
286cfb5022
Improve features (+ cli) (#13494)
* Features - refactor featureNames[]

Use designated initializers for used features. NULL values are stored
in gaps.
Use ARRAYLEN() for featureNames iteration
Use `unsigned` for bitmasks

* Features - add featuresSupportedByBuild

bitmask of features that are supported in current build
configuration. Copied from init.c sanitization

* Features - simplify feature sanitization code

featuresSupportedByBuild makes things much easier

* Features - improve cli feature handling

- refuse all features that are not compiled in
- AlreadyDisabled/AlreadyEnabled info
- refuse operation if multiple features match

* fixup! Features - improve cli feature handling

* Features - print available and not supported features separately

* Update src/main/cli/cli.c

Co-authored-by: Mark Haslinghuis <mark@numloq.nl>

* features - print full state without command

---------

Co-authored-by: Petr Ledvina <ledvinap@hp124.ekotip.cz>
Co-authored-by: Mark Haslinghuis <mark@numloq.nl>
2024-05-20 16:03:19 +02:00
Petr Ledvina
dac4939215
beeper - minor refactoring (#13610) 2024-05-17 20:19:01 +10:00