1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-21 15:25:29 +03:00
Commit graph

404 commits

Author SHA1 Message Date
Konstantin Sharlaimov (DigitalEntity)
11cc82cf41 FILTER: Replace FIR by BiQuad by @borisbstyle. First implementation. Kept PT1 filter as it's used in navigation
FILTER: BiQuad filter optimisations

FILTER: BiQuad filtering fix for REWRITE PID controller. Divide delta by dT before filtering to reduce delta noise caused by dT jitter and make things more correct from DSP point of view
2016-02-17 22:39:07 +10:00
Konstantin Sharlaimov (DigitalEntity)
e70999b7f9 SPARKY: Fixed compilation bug 2016-01-22 23:24:55 +10:00
Konstantin Sharlaimov (DigitalEntity)
27c769888d INAV: Option to disable usage of GPS VelNED information; GPS: Disable GPS version detection - some NEO-7Ms seem to lack support of the PVT message 2016-01-22 23:24:54 +10:00
Konstantin Sharlaimov (DigitalEntity)
7c1680ff34 GPS: Configurable LOW_G (pedestrian) and HIGH_G (airborne>4g) GPS navigation model for Ublox. For NEO-6 this should do autoconfig in roughly the same way as original Cleanflight does 2016-01-22 23:24:54 +10:00
Konstantin Sharlaimov (DigitalEntity)
28672eb0c6 GPS: UBLOX version auto-detection and PVT message support from @Sambas. Some code refactoring. NAZA GPS support. 2016-01-22 23:24:44 +10:00
Konstantin Sharlaimov (DigitalEntity)
69cfbb04d2 GPS: Protocol-independent stack. UBLOX binary driver implementation. Autoconfig works. Autobaud works.
GPS: Native MAG support (for future NAZA GPS support), bugfixes

GPS: Supported GPS protocols on a per-target basis
2016-01-22 23:24:42 +10:00
Konstantin Sharlaimov (DigitalEntity)
491d71fe32 CLI: Fix nav PIDs max values 2016-01-13 12:23:37 +10:00
Konstantin Sharlaimov (DigitalEntity)
c81be6e687 Cooperative task scheduler
Improved scheduling. Calculation of average tasks waiting. MSP_STATUS_EX message

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

Compile out CLI command help and CLI tasks command for CJMCU

Gyro sync busy-waiting implementation. Kudos to @borisbstyle for initial implementation
2015-12-30 23:21:56 +10:00
Konstantin Sharlaimov (DigitalEntity)
dc3e84ea5b Merge branch 'master' into inav-dev
Conflicts:
	Makefile
	src/main/common/filter.c
	src/main/common/filter.h
	src/main/config/config.c
	src/main/config/config_master.h
	src/main/config/config_profile.h
	src/main/drivers/sonar_hcsr04.c
	src/main/flight/altitudehold.c
	src/main/flight/failsafe.c
	src/main/flight/failsafe.h
	src/main/flight/imu.c
	src/main/flight/imu.h
	src/main/flight/navigation.c
	src/main/flight/pid.c
	src/main/flight/pid.h
	src/main/io/rc_controls.c
	src/main/io/serial.c
	src/main/io/serial.h
	src/main/io/serial_cli.c
	src/main/mw.c
	src/main/sensors/sonar.c
	src/main/sensors/sonar.h
	src/main/target/NAZE/target.h
	src/main/telemetry/ltm.c
	src/test/Makefile
	src/test/unit/flight_imu_unittest.cc
	src/test/unit/navigation_unittest.cc
2015-12-23 14:19:33 +10:00
Dominic Clifton
79144e9689 Merge pull request #1498 from borisbstyle/gyro_sync_rework
Gyro Sync feature (Loop synced to Gyro)
2015-12-22 09:40:09 +01:00
Konstantin Sharlaimov (DigitalEntity)
e321526a3f NAV: Configurable position sensor timeout. Ability to disable emergency landing 2015-12-21 23:24:48 +10:00
borisbstyle
10a96b0dfc Gyro Sync feature (Loop synced to Gyro)
Remove double MPU_RA_PWR_MGMT_1

Looptime to Gyro refresh rate

disable 2khz when acc used for F3

Gyro sync code improvement

doc change

MPU6500 INT_STATUS support // MPU3500 dummy handling

Enable full 1khz sampling on F1 boards (no acc mode)

Add MPU3050 INT_STATUS

F1 target decreased max refresh

Configurable optione (sync_gyro_to_loop)

correction watchdog

correct filter

Coding style and cleanup code

Cli.md

Bump EEPROM version

MPU6050 MPU DATA READY Pin instead of i2c

Add more targets and corrections

correction to CC3D

ident

MPU6500 correction

INT_ENABLE MPU6500

add interrupt mpu6500

MPU6500 corrections from rebase

MPU6500 correct

Final fix to compile // ready for testing and review

MPU6000 / MPU3050 Corrections

Add CC3D extiConfig

add mpu6500

Fix intStatus position

fix returns

Add COLIBRI_RACE MPU INT

Change CLI name to gyro_sync

This is shorter typing and speaks for itself

Fix MotoLab After rebase

Add motolab

Full gyro Sync rework

Idents etc

Doc update

more corrections

Fix serial_cli

refactor // ident

GPL

single line

runloop refactor
2015-12-18 15:11:35 +01:00
Martin Budden
dfe8b5640b Fixed code so that it builds whether or not USE_SERVOS is defined. 2015-12-18 10:39:50 +01:00
Dominic Clifton
6926c2057f Merge pull request #1592 from digitalentity/flysky-ibus-receiver
FlySky i-Bus receiver CLI bug fixed
2015-12-18 10:09:08 +01:00
Dominic Clifton
14ade88ca9 Merge branch '1wire_pass_through_optimize' of https://github.com/4712/cleanflight into 4712-1wire_pass_through_optimize 2015-12-18 09:51:12 +01:00
Konstantin Sharlaimov (DigitalEntity)
e7a180816b FlySky i-Bus receiver CLI bug fixed 2015-12-18 09:00:17 +10:00
borisbstyle
995f40c2f4 Gyro Soft LPF Rework // Filter rework
remove 3 point average

lux optimize
2015-12-16 01:25:09 +01:00
Konstantin Sharlaimov (DigitalEntity)
6ed460e96c A fix for airplane loiter (works at least with RTH). Disabled RTH landing sequence for airplanes 2015-12-15 21:14:19 +10:00
Dominic Clifton
faf8f5deba Merge pull request #1568 from ProDrone/failsafe_tab_support
Failsafe - added support for failsafe tab in configurator
2015-12-14 21:41:49 +01:00
ProDrone
0a40d9a787 Added support for failsafe tab in configurator
- Added DROP failsafe mode to failsafe handler

- Added MSP support for configurator failsafe tab
Modified MSP_FAILSAFE_CONFIG
Modified MSP_SET_FAILSAFE_CONFIG
Bumped API minor version

- Adapted failsafe documentation - 1

- Force auto mode to flight-channels when failsafe stage 2 is disabled
This is to prevent a configuration that may cause a fly-away.

- AUX switch was active in background with `FEATURE_FAILSAFE` disabled.
When a switch was assigned to failsafe mode and the failsafe feature was disabled, then hat switch stayed active in the background, forcing `rxfail` values to be used when on.
2015-12-13 17:11:06 +01:00
Konstantin Sharlaimov (DigitalEntity)
0121d81da9 HIL now outputs rcCommand for multicopters and selects between rcCommand and axisPID for airplanes 2015-12-12 00:00:44 +10:00
Konstantin Sharlaimov (DigitalEntity)
5c045ba898 Configurable descent speed for RTH landing and EMERG landing 2015-12-11 16:27:41 +10:00
Konstantin Sharlaimov (DigitalEntity)
b8ea813a6c Fake baro, fake mag, fake GPS for debugging on the bench on acro board 2015-12-09 16:04:37 +10:00
Konstantin Sharlaimov (DigitalEntity)
fb647b181e Retarded arm cleanup. New option inav_gps_min_sats to control the min sat count to consider valid 2015-12-08 15:50:21 +10:00
Konstantin Sharlaimov (DigitalEntity)
93b89c189b Disable retarded arm (complete cleanup pending) 2015-12-07 21:50:12 +10:00
Konstantin Sharlaimov (DigitalEntity)
9d023cabb0 Fixed soft filter CLI lookup table 2015-12-06 12:36:35 +10:00
borisbstyle
a2fbf56493 IDLE UP switch // Remove pid_at_min_throttle 2015-12-05 18:57:51 +10:00
Konstantin Sharlaimov (DigitalEntity)
dfc2fcc722 Soft filtering CLI varibale lookup table added 2015-12-05 18:52:56 +10:00
Konstantin Sharlaimov (DigitalEntity)
a110665af1 Renamed some CLI variables for consistency. New names: nav_pos_hold_deadband, nav_alt_hold_deadband, nav_mc_min_fly_thr 2015-12-05 11:17:24 +10:00
Konstantin Sharlaimov (DigitalEntity)
660b8ce181 Fixed bug with mc_min_fly_throttle actually setting hover throttle 2015-12-05 10:30:12 +10:00
Konstantin Sharlaimov (DigitalEntity)
5052d5cd1c Configurable maximum banking angle for MC poshold controller. Min flyable throttle parameter for landing detection 2015-12-03 12:50:09 +10:00
Konstantin Sharlaimov (DigitalEntity)
8130be4772 Fixes and optimisations to FSM. Smoother transition from PH to RTH. Option to execute RTH tail first 2015-12-02 23:21:15 +10:00
Konstantin Sharlaimov (DigitalEntity)
cf8cab53f4 Remove MultiWii23 PID controller. Better LEVEL defaults for MultiWiiRewrite 2015-12-02 23:21:14 +10:00
Konstantin Sharlaimov (DigitalEntity)
069994bd92 Quaternion-based Mahony's DCM IMU (implementation by S. Madgwick)
Mag declination correction. Some cleanups
    DCM code changes from @MauroMombelli, allow gyro-only operation when neither ACC nor MAG can be used (i.e. no MAG and ACC is saturated.
    Replaced 'inclination' and 'heading' with 'attitude', converted all angles to decidegrees
    Prevent magnetometer readings from affecting roll/pitch angles. Compass now affects only yaw axis and magnetic interference won't mess up attitude calculations
    Ability to lock heading to GPS cource for airplanes
    Allow faster acquisition by initial attitude by using higher DCM kP gain on powerup
    Optimize magnetometer correction per @ledvinap suggestion. Better speed and less memory usage
    Prevent acceleration from affecting accSmooth if acceleration magnitude is too high
    Fixed incorrect GPS heading lock
2015-12-02 23:06:03 +10:00
Konstantin Sharlaimov (DigitalEntity)
5ef05268de Waypoint code rework. Upload/download mission works. Waypoint actions RTH and WAYPOINT are supported (untested) 2015-12-01 17:02:58 +10:00
4712
57efb91d59 Changed disable beeper method.
Fix indentation level to 4.
Removed CLI support for 1wire pass through
2015-11-30 15:36:23 +01:00
Dominic Clifton
0c82a7b927 Fix invalid values in cli error messages. Use 0 based index for 1wire,
now it is consistent with mmix.  Replace typo in 1wire error message
with standard cli parse error message.
2015-11-28 14:35:20 +00:00
Dominic Clifton
9add024327 Fix whitespace. Remove commented out code. 2015-11-28 14:09:12 +00:00
4712
a2218ca918 Runtime ESC count / gpio / pin detection
Runtime ESC gpio/pin detection
Runtime ESC count detection
2015-11-28 14:09:09 +00:00
Pierre-A
4f2ed7ff0a fix wrong declaration for baro parameters in CLI 2015-11-28 13:29:23 +00:00
Konstantin Sharlaimov (DigitalEntity)
fa901e9b9b Fixed issue then bailing out of RTH to PH and position was not reset (drone would still be going home). Fixed conditionless activation of WP mode (required GPS, BARO and ARMED now). FC version string changed. Possible fix to MAG mode (untested). 2015-11-28 14:12:41 +10:00
Konstantin Sharlaimov (DigitalEntity)
d731486235 Remove dead reckoning possibility. Removed throttle_tilt_compensation option. Added extra arming safety - disable arming if no GPS fix 2015-11-27 15:25:41 +10:00
Konstantin Sharlaimov (DigitalEntity)
472ab7694c CLI fixes, emergency landing controller fixes 2015-11-26 17:32:58 +10:00
Konstantin Sharlaimov (DigitalEntity)
68e60f5c37 Added a configurable mc_hover_throttle parameter to be used when calculating altitude controller 2015-11-26 10:20:52 +10:00
Konstantin Sharlaimov (DigitalEntity)
6850fe324f RTH on failsafe can now be set via CLI. Disabled RC input when executing failsafe RTH. 2015-11-25 16:28:43 +10:00
Konstantin Sharlaimov (DigitalEntity)
ed0f85c41b Fix CLI parameter declaration for baro and PIDs 2015-11-25 15:03:54 +10:00
Konstantin Sharlaimov (DigitalEntity)
68abea6a04 Allow I2C GPS to be selected in CLI 2015-11-25 15:00:26 +10:00
Konstantin Sharlaimov (DigitalEntity)
0fa3a4d18f Setting magzero_* variables from CLI now sets the MAG_CALIBRATION_DONE persistent flag 2015-11-21 23:10:25 +10:00
digitalentity
34046169c7 An implenentaion of nav-rewrite (squashed commit, November 17th).
Automatic magnetic declination from GPS coordinates (approximate to 1-2 degrees) (disabled)
Accelerometer bias compensation
Quaternion-based Mahony's DCM IMU (implementation by S. Madgwick)
Ability to lock heading to GPS cource for airplanes
Faster acquisition by initial attitude by using higher DCM kP gain on powerup
Changes to mag calibration algorithm (@HaukeRa's code). Compass calibration now independent from align_mag.
Changed acc calibration to proper 3-axis offset calculation code (same code as for mag). Changed board alignment angles to decidegrees (configurator incompatibility). Removed accelerometer trims (values passed thru MSP are ignored). Accel trim stick combo now adjusts board alignment directly (real-time, without reboot). Removed inflight acc calibration.
FIR filter implementation for different looptimes. Option gyro_cut_hz replaced with gyro_fir_enable (default gyro_soft_filter=3 preset - a very pessimistic filter with fairly large delay but low cutoff frequency for large or very noisy copters)
iNav-related PIDs renamed in CLI to avoid re-usage of old values when restoring config dumps.
PID with back-calculation and I-term anti-windup. Smarter max acceleration and jerk limiting
Initial support for airplane navigation. ALTHOLD, POSHOLD (circular loiter around the waypoint) and RTH should work. UNTESTED! RTH altitude probably needs some work. Autolanding will NOT function at the moment - the AUTOLAND phase will never complete. Absolutely no throttle control at the moment (fully manual control).
Increase delay for bmp085 baro detection. Resolves an issue with bmp085 not being detected sometimes on powerup
Fixed the missing checks for MIXER_CUSTOM_AIRPLANE
Lots of small fixes
2015-11-17 15:19:46 +10:00
Dominic Clifton
df7d4be263 Ignore leading whitespace when setting values by name,
Previously this didn't work:
`set blackbox_device = SPIFLASH`
Users had to type in:
`set blackbox_device =SPIFLASH`
2015-11-14 16:35:42 +00:00