1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-16 21:05:35 +03:00
Commit graph

11134 commits

Author SHA1 Message Date
mikeller
53df5d1129 Removed code marked as legacy from OMNIBUSF4. 2018-04-01 12:38:08 +12:00
Michael Keller
b5c0076bc8
Added USE_ESC_SENSOR_INFO define, cleaned up USE_ESC_SENSOR define. (#5580) 2018-04-01 11:33:07 +12:00
Andrey Mironov
b8aa6ac915 Added AIKONF4 (#5355)
* Added AIKONF4

* Replaced binary literals with explicit bit macros

* Removed invalid backdoor timers

* Added board description to docs folder
2018-04-01 11:10:39 +12:00
Michael Keller
92d19e7be6
Merge pull request #3036 from cleanflight/spracingf7dual-pidaudio (#5586)
PID-Audio feature
2018-04-01 11:08:41 +12:00
Michael Keller
5a258070bc
Fixed DMA conflicts for CRAZYBEEF3 targets. (#5590) 2018-04-01 11:00:03 +12:00
Michael Keller
c3cb2e1605
Fixed CLI array assignment. (#5589) 2018-04-01 10:57:19 +12:00
proggod
1a29e88f57 Revoltosd (#5557)
* added FlightOne revolt header

* comments

* Added OSD config

* more target file changes

* more target file changes

* REVOLTOSD

* REVOLTOSD

* timer fixes

* timer fixes

* osd

* config

* Added USE_TARGET_CONFIG

* osd

* osd

* spi changes

* more spi changes working now

* Added REVOLTOSD target

* folder rename and other target fixes

* more changes

* additional target changes

* one typo

* fixed typo
2018-03-31 14:33:23 +13:00
Teracis
45e64edb0b Removed mixer halving in 3D mode. (#5582) 2018-03-31 13:43:16 +13:00
codecae
8131e4f840 Created generic SmartAudio interface (#5561) 2018-03-31 13:01:30 +13:00
pulquero
cf6b3639e2 Add OSD message to report motor/esc problem. (#5550)
Signed-off-by: Mark Hale <mark.hale@physics.org>
2018-03-31 02:09:33 +13:00
etracer65
a7eccffa38 Clear crash flip mode flag on disarming (#5566)
Previously the flag was only set during arming so after crash flip mode was used the flag would stay active until the next arming. This caused the "CRASH FLIP" warning message to erroneously display on the OSD when disarmed.
2018-03-30 18:09:35 +13:00
Michael Keller
8bbd92cb43
Added UART2 TX pin definition to FPVM_BETAFLIGHTF7 target. (#5562) 2018-03-30 18:07:31 +13:00
Michael Keller
d55ce930c0
Added code of conduct. (#5560)
This is from a default template suggested by GitHub. It's fairly broad, but non specific.
2018-03-30 18:06:16 +13:00
Michael Keller
b55ff3fefc
Added documentation for the FrSky SPI RX. (#5545) 2018-03-30 18:01:12 +13:00
allenfor2017
a02c404157 add new target SpeedyBee F4 (#5552)
* add new target speedybee f4

* modify BEEPER define
2018-03-30 17:54:25 +13:00
codecae
22004cfd56 Created generic Tramp protocol interface (#5527) 2018-03-30 17:50:19 +13:00
Míguel Ángel Mulero Martínez
39904a3065 Add default telemetry for iBus (#5570)
The "standard" telemetry is RPM, temperature and external voltage.
2018-03-30 17:41:50 +13:00
etracer65
59dbe0e4e3 Correct accelerometer initialization for MPU6000 and MPU9250 (#5559)
Accelerometer should be initialized to 16G scale.
2018-03-30 17:11:14 +13:00
Anders Höglund
11e22e634f Spektrum SRXL improvements. Collect TM data in sync with transmission instead of async 30Hz, performancs +50%. B-channel Cap/Cur/temp was visible even though not used, corrected. Incomplete compile conditions corrected. (#5556) 2018-03-30 17:02:38 +13:00
Míguel Ángel Mulero Martínez
efef50ced1 Increment AG GAIN step in CMS (#5568) 2018-03-30 16:54:55 +13:00
Míguel Ángel Mulero Martínez
7ad4bbfa0f Simplify the precompiler condition for MSP_VOLTAGE_METERS (#5554)
... and MSP_CURRENT_METERS
2018-03-28 08:11:08 +13:00
Míguel Ángel Mulero Martínez
8095d3442c Fix MSP_VOLTAGE_METERS and MSP_CURRENT_METERS (#5547)
Only sustract the unused voltage/current meters from ESC when
USE_ESC_SENSOR is defined
2018-03-28 03:34:53 +13:00
Michael Keller
5a7b1879ee
Fixed spurious 'bad RX' arming disable detection. (#5541) 2018-03-27 09:52:14 +13:00
Andrey Mironov
9cf0eca620
Fixed missing extern on throttleBoost (#5549) 2018-03-26 23:01:25 +03:00
Michael Keller
83e614c139
Made MSC initialisation pin configurable. (#5535) 2018-03-27 01:04:59 +13:00
zuim
605962d9a5 Get current time using gps (#5520)
* Get time using gps with nmea and ublox protocol. The rtctime is set once gps time is available.

* Fix issues with Gps time

* Fix problems with gpstime
2018-03-27 01:04:41 +13:00
Michael Keller
3a8901daa8
Added assertion about OSD warning field size. (#5533) 2018-03-26 20:53:12 +13:00
Michael Keller
4b20ab5d7b
Fixed naming inconsistency for OSD elements. (#5534) 2018-03-26 11:30:19 +13:00
Michael Keller
474d99e77c
Removed conditional from struct for SD card parameter group. (#5537) 2018-03-26 10:50:46 +13:00
joelucid
ee8daac41d ITerm rotation (#5469)
* ITerm rotation

* address requested changes

* now counting up

* scale errors according to Ki while rotating

* iterm_rotation profile setting

* revert to non scaled version, style related fixes

* Triggering a CI build.
2018-03-26 10:50:21 +13:00
Michael Keller
d6af4c2d6b
Fixed blinking of OSD RSSI element. (#5542) 2018-03-26 10:46:46 +13:00
Michael Keller
71cd500b99
Simplified code path in fc_rc. (#5536) 2018-03-25 22:35:30 +13:00
etracer65
9edce2359a Add current battery voltage as an option for the OSD stats page (#5531)
Allows the user to configure a new OSD stat item called "BATTERY" that will display a live and updating battery voltage. This would allow the user to see how their battery was recovering after disarming by comparing to the stat "END BATTERY".
2018-03-25 13:56:25 +13:00
conkerkh
b9ab42d6a7 Enable Composite USB HID for all F4, add PG for USB device. (#5525) 2018-03-25 12:44:57 +13:00
joelucid
efda704ee5 Throttle boost (#5508)
* throttle boost which temporarily boosts throttle in both directions to improve response

* fix comment and use pt1FilterGain

* incorporate review suggestions

* incorporate review suggestions

* use float constant to avoid double promotion

* formatting changes

* formatting change

* hopefully last style changes
2018-03-25 11:33:22 +13:00
Andrey Mironov
172642383d
Fixed notch Q calculation to be dimensionless as it should (#5529)
* Fixed notch Q calculation to be dimensionless as it should

* Get rid of one division and leverage multiply-accumulate instr
2018-03-24 20:27:39 +03:00
etracer65
0c7ae49464 Fix OSD stats not clearing when entering OSD menu (#5522)
The pitch stick high can be used to clear the OSD stats screen, but it's also part of the sequence to enter the OSD menu. Entering the OSD menu from the stats page should have cleared the stats, but because of a race condition they weren't always cleared and the OSD menu would draw on top of the stats.  Changed the logic to ensure that if the OSD menu is entered the stats page is exited and cleared.
2018-03-24 18:03:43 +13:00
etracer65
c8a646ebc3 Cleanup 32K capable gyro includes (#5523)
Added a `USE_32K_CAPABLE_GYRO` define set in `common_fc_post.h` that replaces the repeated testing for each gyro define wherever 32KHz compatibility is checked.
2018-03-24 18:02:27 +13:00
Michael Keller
a8e86880f5
Generalised USB MSC use for all F4 targets with SD card. (#5519) 2018-03-24 16:00:53 +13:00
Michael Keller
79debdc993
Increased MSP API version for 3.4.0 to 1.39. (#5518) 2018-03-24 01:54:52 +13:00
conkerkh
56e916932c Add DiscF407 target for developers (#5442)
* Add DiscF407 target for developers

* Requested changes
2018-03-23 20:18:48 +13:00
githubDLG
cd72348dd3 add new target CrazyBee F3 FS (#5495)
* add new target CrazyBee F3 FS

add new target CrazyBee F3 FS

* merge crazybeef3fs to crazybeef3fr
2018-03-23 20:11:59 +13:00
joelucid
98a77dcd96 Discontinuity fix (#5509)
* use continuous feed-forward

* use continuous feed-forward

* formatting
2018-03-23 14:13:32 +13:00
AJ Christensen
a0add440f0 common filters: pt1FilterGain must accept uint16_t (#5513)
* all places that call pt1FilterGain use lpfHz which is of type uint16_t. I have
  not confirmed yet but believe that when lpfHz were greater than 255 we would
  have seen data loss / overflow / wrap around. TBC
2018-03-23 13:42:56 +13:00
Andrey Mironov
eca6fb3a0c Simplified lmaSmoothingUpdate and made it's state aligned for all members (#5510) 2018-03-23 13:41:40 +13:00
conkerkh
a539bd60bc CDC+HID HotFixes (#5512)
- For now disables Composite (it can be enabled, with USB_CDC_HID define)
- Modified descriptors so they are properly recognized
- Changed PID for Composite device (otherwise it doesn't work probably due to windows feature - automatically finding drivers based on those values)
2018-03-23 13:19:14 +13:00
Michael Keller
5dc23e662f Fixed display of CLI lookup options. (#5493) 2018-03-22 09:40:49 +03:00
conkerkh
4786e1a333 Add Composite CDC+HID device option. (#5478)
* Add Composite CDC+HID device option.

- It passes on though HID interface 8 channels received from TX
- Endpoints are reconfigured to support HID interface
- Potentially this can slow down SPI Flash transfer though CDC interface...
- This could be addressed by support for MSC when using SPI Flash (emulating FATFS)

* Different way to handle MIN redefine
2018-03-22 15:21:22 +13:00
githubDLG
b2e807be6c add flysky rx indicating led (#5476)
* add flysky rx indicating led

add flysky rx indicating led

* add Conditional compilation directives

add Conditional compilation directives

* rewrite some code

rewrite some code and add some definitions/defines according to comments

* delete extra whitespace
2018-03-22 14:04:47 +13:00
etracer65
062ef77276 Rework gyro sample rate and DLPF configuration and expose additional filter cutoffs (#5483)
The old gyro_lpf setting was based on the DLPF_CFG values for the MPU6050 gyro and the enumeration was inaccurate and misleading.  For example, the default "OFF" setting did not disable the DLPF, but actually set it to around 250hz.  The actual cutoff frequency for each setting varies by gyro hardware so the literal frequencies in the enumeration were also incorrect.

Removed gyro_lpf and replaced it with gyro_hardware_lpf (8KHz) and gyro_32khz_hardware_lpf (32KHz).  The parameters were renamed to indicate that they are hardware filtering options to differentiate from the many software lowpass filtering options.

gyro_hardware_lpf - This parameter sets the filtering and sample rate options for 8KHz gyros (or 32KHz capable gyros running in 8KHz mode).

- NORMAL - default setting that is equivalent to the previous "OFF" setting.  Configures 8KHz sampling with ~250Hz filter cutoff.
- EXPERIMENTAL - 8KHz sampling with a higher frequency filter cutoff (around 3000hz).  Considerably more noisy and requires additional software filtering.  Note that for the MPU6000 Invensense doesn't officially document the filter cutoff frequency for this selection and simply lists it as "reserved".  In testing it's clear that a higher frequency filter cutoff is being selected due to the increased noise, but the actual cutoff frequency is unknown.
- 1KHZ_SAMPLING - 1KHz sample rate with and approximate 188Hz filter cutoff.

Note that the following additional 1KHz sample rate options with lower filter cutoffs have been eliminated - "98HZ", "42HZ", "20HZ", "10HZ", "5HZ".  It seems unlikely that these are still needed are probably no longer viable and flight performance would be very poor.

gyro_32khz_hardware_lpf - This parameter sets the filtering options while running in 32KHz mode on capable gyros.  It also exposes a new high frequency filter cutoff mode.

- NORMAL - The default and matches the current settings used for 32KHz mode.  Provides a filter cutoff around 3000Hz.
- EXPERIMENTAL - Selects a filter cutoff around 8000Hz.  This is a very noisy setting and will require substantial software filtering.

The default values for both 8KHz and 32KHz sample rates were chosen to match the previous defaults and users should not experience any performance differences.

Normalized the gyro initialization.  Previously there was little consistency on how the initialization was performed and the settings interpreted.  For example, MPU9250 used a completely different logic tree when configuring the registers.

Disconnected the literal parameter value from the gyro initialization.  The gyro_lpf parameter contained a number from 0-7 that was literally applied to the configuration register during the gyro initialization.  This caused some older gyro initializations to be incorrect as they used a different register layout (MPU3050 and L3G4200D).  By transitioning to a logical selection the actual value applied to the hardware register is abstracted.  This will better future-proof the design as new gyros may have a different register structure that may be incompatible with the old method.

Added a gyroregisters command to the CLI that is used to read the current register settings from the gyro and dump them to the CLI.  This is used to verify the configuration in comparison to the datasheets for the various gyros.  Testing empirically by looking at the relative noise from the gyros can give a rough estimate whether the different options are selecting correctly, but it's not very precise.  The code for the gyroregisters CLI command is wrapped inside #ifdef USE_GYRO_REGISTER_DUMP blocks to allow easy disabling.  It's currently enabled for all targets but we may decide to disable before release or only limit to targets with more available space (>=F4).
2018-03-22 14:02:30 +13:00