1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-23 16:25:31 +03:00
Commit graph

269 commits

Author SHA1 Message Date
4712
2af929797d Fix for: serial buffer broke BLHeli 1wire pass through 2016-02-10 11:10:35 +01:00
borisbstyle
99d9d7483f Add failsafe_procedure 2016-02-09 12:06:00 +01:00
borisbstyle
3fc14404dc Prevent saving wrong gyro_sync_denom through configurator 2016-02-08 14:50:33 +01:00
borisbstyle
350bae1ae9 Remove Some WTF's 2016-02-07 01:49:37 +01:00
borisbstyle
cdb671b0d6 Configurable gyro Denominator when gyro_lpf set to OFF 2016-02-06 13:09:40 +01:00
borisbstyle
9f15da0641 Fix Profile selection Bug MSP and rc_controls.c warnings 2016-02-05 23:00:23 +01:00
borisbstyle
36de2bbc23 Merge pull request #159 from KiteAnton/config_cleanup
Config cleanup
2016-02-05 22:50:22 +01:00
Michael Jakob
47f1d7e955 SPI3 fix
reintroduce SPI timeout to avoid driver blockage
AlienFlight related fixes
2016-02-05 22:14:49 +01:00
borisbstyle
c55d0baf31 Fix non Working Anti Windup 2016-02-04 01:55:44 +01:00
KiteAnton
cd30abdec6 Additional fix to solve rebase misses 2016-02-03 21:42:53 +01:00
KiteAnton
62e0e59ab5 Additional configs moved from profile to master 2016-02-03 21:10:08 +01:00
KiteAnton
69c7c2f9c7 Move modes and adjustments from profile to free up flash 2016-02-03 21:03:27 +01:00
borisbstyle
3fc0d85003 Gyro Speed selectable through Gui by Looptime setting 2016-02-03 11:57:12 +01:00
borisbstyle
4888a3a375 Update MSP // Sync to Cleanflight version 2016-02-03 11:00:26 +01:00
borisbstyle
d3d08389f7 Fix some compile errors 2016-02-03 01:53:12 +01:00
borisbstyle
a1ebe6fd4f Remove old mixer // Separate Acro Plus from Airmode // Fix MOTOLAB merge issues 2016-02-03 00:58:38 +01:00
Nicholas Sherlock
09904b2206 Better reporting of fatal SD card states 2016-02-02 23:36:41 +01:00
Nicholas Sherlock
9d29efdd5d Only look for SD card during initial startup and give up after timeout 2016-02-02 23:36:40 +01:00
Nicholas Sherlock
e9b6867d40 Add MSPs for Blackbox and SD card status/configuration 2016-02-02 23:36:39 +01:00
Michael Hope
195456f9ac serial: allow buffering to speed up USB virtual COM ports.
Add begin write and end write hints.  If implemented by the serial
driver, then the driver can buffer up data sent via serialWrite() and
flush it when serialEndWrite() is called.

Implemented at the buffer level as it requires the least change to how
serial_msp and serial_cli are architected.

Also tidy up the visibility in the VCP driver.

Signed-off-by: Michael Hope <mlhx@google.com>
2016-02-02 23:36:25 +01:00
Michael Hope
0e460c18b0 msp: add buffering around the writes.
This bulks up the writes and lets the USB VCP driver send one 20 byte
frame instead of 20 one byte frames.  This speeds up the blackbox
download and makes VCP much more reliable when running under a virtual
machine.

Signed-off-by: Michael Hope <mlhx@google.com>
2016-02-02 23:36:25 +01:00
Michael Jakob
7634e4c635 AlienFligth F3 V2 support
Updated SPI driver (SPI3 on F3 targets)
AK8963 Mag support (part of MPU9250)
MPU9250 SPI support via MPU6500 driver
Updated LED driver for alternative LED sets
Enable gyro intterupt for AlienFlight F3 targets
Update AlienWii/AlienFlight documentation
Rename AlienWii to AlienFlight
2016-02-02 23:31:55 +01:00
Konstantin Sharlaimov (DigitalEntity)
fa49931b43 Improved scheduling. Betaflight Port digitalentity/cf-scheduler
Disallow arming if system load > 100 (waiting task count > 1)

Dont show inactive tasks in CLI

Realtime priority task and guard interval implementation

Dynamic guard interval. Bugfix for realtime scheduling hickups

Optimisations

Compile out CLI command help and CLI tasks command for CJMCU

Naming fixes // re-Add Gyro Sync // Fix port issues
2015-12-23 00:05:34 +01:00
borisbstyle
0e37cb3278 Move Airmode below Horizon/Angle (needed some OSD's) 2015-12-10 22:04:39 +01:00
borisbstyle
83d186057f AIR MODE implementation 2015-12-06 02:19:35 +01:00
borisbstyle
eafa631a32 IDLE UP switch // Remove pid_at_min_throttle 2015-12-04 16:17:44 +01:00
4712
02b297afa7 Runtime ESC count / gpio / pin detection
Runtime ESC gpio/pin detection
Runtime ESC count detection
2015-11-13 18:32:57 +01:00
4712
ce743d3acc Fix 1wire pass through for F3 + target config changes 2015-11-05 00:40:11 +01:00
4712
42523e4bcb Revert "Fix 1wire pass through for F3 + target config changes"
This reverts commit c2b1dd3259.
2015-11-05 00:28:49 +01:00
4712
c2b1dd3259 Fix 1wire pass through for F3 + target config changes
Conflicts:
	src/main/io/serial_1wire.c
	src/main/target/RMDO/target.h
2015-11-05 00:19:51 +01:00
YANN OEFFNER
a2b795580b vOrtex 250 change
- vOrtex 250 configuration added (new target for 250 IRCFUSIONF3)
- fix for barometer on fusion gen 2
- added betaflight identifier (BTLF)
2015-10-29 16:27:28 +01:00
borisbstyle
2eee0f3e4f New version structure 2015-10-29 16:06:01 +01:00
borisbstyle
d685b4d6d8 Pid Controller Cleanup
Correction to dump
2015-10-23 01:10:21 +02:00
Konstantin Sharlaimov (DigitalEntity)
5df8ca926c Quaternion-based DCM IMU (original code my S.Madgwick)
Restore binaries from merge
2015-10-22 10:45:36 +02:00
borisbstyle
4b3ba927e9 Merge branch 'master' into betaflight
Conflicts:
	src/main/blackbox/blackbox_io.c
	src/main/drivers/serial_usb_vcp.c
	src/main/flight/imu.c
	src/main/mw.c
	src/main/target/CC3D/target.h
2015-10-12 23:53:43 +02:00
Dominic Clifton
a319394f6b Merge branch 'blackbox-serial-budget' of https://github.com/sherlockflight/cleanflight-dev into sherlockflight-blackbox-serial-budget
Conflicts:
	src/main/blackbox/blackbox.c
2015-10-12 20:14:20 +01:00
borisbstyle
12c9f65f43 Merge branch 'master' into betaflight
Conflicts:
	Makefile
	docs/Cli.md
	src/main/config/config.c
	src/main/drivers/accgyro_mpu3050.c
	src/main/drivers/accgyro_mpu6050.c
	src/main/drivers/accgyro_mpu6050.h
	src/main/drivers/accgyro_spi_mpu6000.c
	src/main/drivers/accgyro_spi_mpu6000.h
	src/main/drivers/accgyro_spi_mpu6500.c
	src/main/drivers/accgyro_spi_mpu6500.h
	src/main/drivers/barometer_bmp280.c
	src/main/drivers/sensor.h
	src/main/flight/pid.c
	src/main/mw.c
	src/main/rx/rx.c
	src/main/sensors/initialisation.c
	src/main/target/CC3D/target.h
2015-10-07 17:12:54 +02:00
Dominic Clifton
123a4ccfc5 Merge branch 'GTune' of https://github.com/MJ666/cleanflight into
MJ666-Harakiri_PID_update

Conflicts:
	Makefile
	src/main/blackbox/blackbox_fielddefs.h
	src/main/flight/pid.c
	src/main/io/serial_msp.c
	src/main/mw.c
	src/main/target/ALIENWIIF3/target.h
	src/main/target/CC3D/target.h
	src/main/target/NAZE/target.h
	src/main/target/NAZE32PRO/target.h
	src/main/target/SPARKY/target.h
2015-10-06 20:16:37 +01:00
Dominic Clifton
d36da111b2 Delete autotune. 2015-10-06 19:38:02 +01:00
Michael Jakob
43f5792a61 G-Tune port from Harakiri
Enabled for NAZE, ALIENWWIIF1 and ALIENWIIF3 targets
Implement G-Tune for all PID controllers
The G-Tune tuning results will be save if G-Tune mode will be disabled
during copter is disarmed.
Update PID controller and G-Tune documentation
2015-10-04 18:37:18 +02:00
borisbstyle
5a871928af Get targetLooptime from gyro_sync.h 2015-10-04 03:06:09 +02:00
Moto Moto
fe89535126 MSP LOOP_TIME commands for Configurator 0.66 2015-10-03 17:13:37 -05:00
Nicholas Sherlock
6e504ca52a Ability to see how many Tx bytes are free in serial port buffer 2015-10-01 16:48:56 +13:00
borisbstyle
babab7aa4e Merge remote-tracking branch 'Pierre-A/CLI_beeper_off' into betaflight 2015-09-29 12:21:18 +02:00
borisbstyle
c944083f73 Merge branch 'master' into betaflight
Conflicts:
	src/main/config/config.c
	src/main/flight/imu.c
2015-09-29 01:03:25 +02:00
Nicholas Sherlock
8e9669dc0c Fix RX_MSP writing to rcData was causing feedback loop with channel map
Fixes support for RX_MSP > 8 channels
2015-09-25 01:34:50 +12:00
borisbstyle
0501e5ff91 Code Cleanup
More code cleanup and BUMP EEPROM

Code Cleanup

Fix loop trigger
2015-09-19 01:37:48 +02:00
Pierre-A
09e7a01b2c Selectively turning on/off the beeper through CLI 2015-09-15 15:41:30 +02:00
borisbstyle
febee3fb90 Merge branch 'master' into betaflight
Conflicts:
	src/main/drivers/system.c
	src/main/rx/rx.h
2015-09-07 10:08:34 +02:00
ProDrone
f0681de53d Updates and feature additions to failsafe system.
- Added failsafe flightmode and rc control box.

To make failsafe procedure a separate flight mode and make it possible
to trigger failsafe with an AUX switch.

- Failsafe mode is activated when failsafe is active.

RC link lost is simulated with the failsafe AUX switch.
When NOT armed: failsafe switch to failsafe mode is shown in GUI (mode
tab).

- Activate failsafe mode with AUX switch.

- Prevent arming when failsafe via AUX switch is active (safety issue).

- Make failsafe disarm if motors armed and throttle was LOW (2D & 3D)
for `failsafe_throttle_low_delay` time (__JustDisarmEvent__).

Applied code changes to effectively add pull request: Make failsafe
disarm if motors armed and throttle low #717.

- Use failsafeIsMonitoring() to actually start monitoring.

- Added `failsafe_kill_switch` to code.

When set to 1 (0 is default), the failsafe switch will instantly disarm
(__KillswitchEvent__) instead of executing the landings procedure.
Arming is NOT locked after
this, so the craft could be re-armed if needed.
This is intended for racing quads where damage and danger must be
minimized in case of a pilot error.

- Added `failsafe_throttle_low_delay`, adapted documentation.

Used to adjust the time throttle level must have been LOW
to _only disarm_ instead of _full failsafe procedure_
(__JustDisarmEvent__).

- Updated the failsafe documentation.

- Re-enable arming at end of failsafe procedure.

At the end of a handled failsafe event, that means: auto-landing,
__JustDisarmEvent__ or __KillswitchEvent__, the RX link is monitored for
valid data.
Monitoring is a part of the failsafe handling, which means the craft is
still in failsafe mode while this is done.
Arming is re-enabled (allowed) when there is a valid RX link for more
then XX seconds, where XX depends on the handled event like this:
1. XX = 30 seconds after auto landing.
2. XX = 3 seconds after __JustDisarmEvent__.
3. XX = 0 seconds after __KillswitchEvent__.

NOTE: When armed via an AUX switch, you will have to switch to the
disarmed position at the very end to be able to re-arm.
The failsafe mode will not end until you do.

- __KillswitchEvent__ has now priority over __JustDisarmEvent__

- Apply rxfail values instantly when failsafe switch is ON

- Added missing cases to display.c

Show M when failsafe is monitoring for RX recovery (AND disarming when
armed with a switch).

===

Reworked the code from counter-based to time-based.

- AUX failsafe switch now has identical behavior to RX loss.

- Added RX failure and RX recovery timing.

- __KillswitchEvent__ skips RX failure detection delay (direct disarm).

===

[UNIT TESTS]

Adapted failsafe related unittests from counter-based to time-based

- Added failsafeOnValidDataFailed() to some tests

- Removed duplicate test setup from rc_controls_unittest.cc

- Removed magic numbers from rx_ranges_unittest.cc and rx_rx_unittest.cc

- Reworked all test-cases for flight_failsafe_unittest.cc
2015-09-04 16:55:40 +02:00