Commit Graph

25104 Commits

Author SHA1 Message Date
Andrew Tridgell
1ccda938cb AP_NavEKF3: make external navigation optional 2021-01-24 11:56:52 +11:00
Andrew Tridgell
8da511f039 AP_NavEKF3: make body odomotry build depend on vehicle type
saves about 11k of flash
2021-01-24 11:56:52 +11:00
E Thomas
2ee052b36e AP_GPS: Made GPS_DISABLE prevent last_fix_time_ms updates 2021-01-23 17:25:00 +11:00
Peter Barker
ade1c487d8 AP_Logger: remove default reason argument for Write_Mode
All callers now supply this
2021-01-22 17:27:26 +11:00
Leonard Hall
25fff17e48 AC_AttitudeControl: constify some local variables 2021-01-22 14:22:18 +09:00
Peter Barker
3582b69e9c AP_NavEKF3: remove getFilterTimeouts access methods 2021-01-22 13:04:36 +11:00
Peter Barker
445a461f12 AP_NavEKF2: remove getFilterTimeouts access methods 2021-01-22 13:04:36 +11:00
Peter Barker
401cccca19 AP_NavEKF2: correct description on NKF3.SVT 2021-01-21 21:26:17 +11:00
Peter Barker
b3bacdd33c AP_NavEKF3: remove internal-only getTiltError method 2021-01-21 21:26:17 +11:00
Peter Barker
dddb285209 AP_NavEKF2: remove internal-only getTiltError method 2021-01-21 21:26:17 +11:00
Peter Barker
5ad0ac6727 AP_NavEKF3: remove unused getAccelNED method 2021-01-21 21:26:17 +11:00
Peter Barker
6b60bae068 AP_NavEKF2: remove unused getAccelNED method 2021-01-21 21:26:17 +11:00
Peter Barker
e32ca819fc GCS_MAVLink: mark results as unused 2021-01-21 20:41:17 +11:00
Peter Barker
60d0b0f07c AP_AHRS: add WARN_IF_UNUSED to some getters 2021-01-21 20:41:17 +11:00
Andrew Tridgell
6c8a57c2d7 AP_InertialSensor: review fixes 2021-01-21 13:09:21 +11:00
Andrew Tridgell
3ff71c7814 AP_InertialSensor: changes from review feedback 2021-01-21 13:09:21 +11:00
Andrew Tridgell
b12a663f7a AP_InertialSensor: apply accel scaling 2021-01-21 13:09:21 +11:00
Andrew Tridgell
9febcc0f98 SITL: added accel scaling parameters 2021-01-21 13:09:21 +11:00
Andrew Tridgell
73ddde3629 AP_InertialSensor: changes for new SITL IMU params 2021-01-21 13:09:21 +11:00
Andrew Tridgell
b5089580a9 SITL: cleanup IMU parameters
allow for biases per IMU
2021-01-21 13:09:21 +11:00
Andrew Tridgell
5e60fac37e AP_InertialSensor: remove unused variable 2021-01-21 13:09:21 +11:00
Andrew Tridgell
285b53fe07 AP_InertialSensor: use vector polyfit
this reduces memory usage
2021-01-21 13:09:21 +11:00
Andrew Tridgell
a1fb0592a9 AP_Math: specialise polyfit for vectors
this is needed to get the precision good enough for wide temperature
ranges when summing the resulting polygon coefficients
2021-01-21 13:09:21 +11:00
Andrew Tridgell
c8aaceb6ac AP_LeakDetector: remove warning message on all non-sub builds
pointless pragma
2021-01-21 13:09:21 +11:00
Andrew Tridgell
d0d480e858 AP_Compass: fixed matrix inverse for new name 2021-01-21 13:09:21 +11:00
Andrew Tridgell
8278a8a00b AP_AccelCal: rename from review feedback 2021-01-21 13:09:21 +11:00
Andrew Tridgell
2e2ccb40b2 AP_AccelCal: fixed inverse matrix call for new name 2021-01-21 13:09:21 +11:00
Andrew Tridgell
999268cbba AP_Math: fixup matrix algorithms to be in cpp file
this fixes an issue where optimize O2 was forced on any file that
included AP_Math.h. It also fixes the test suite for matrix_alg, and
fixes the type handling to be consistent
2021-01-21 13:09:21 +11:00
bugobliterator
3b3e2c01f8 AP_Math: templatize matrix_alg methods 2021-01-21 13:09:21 +11:00
Andrew Tridgell
ffe20f7958 AP_InertialSensor: use a fixed reference temperature of 35C
this allows us to timeout the calibration when the temperature stops
rising as the polynomial no longer depends on the maximum temperature
2021-01-21 13:09:21 +11:00
Andrew Tridgell
dc58b0b950 AP_InertialSensor: changes from review feedback
thanks Sid!
2021-01-21 13:09:21 +11:00
Andrew Tridgell
9561f24c0e AP_Filesystem: added @SYS/persistent.parm 2021-01-21 13:09:21 +11:00
Andrew Tridgell
5ed19c764e HAL_ChibiOS: expose load_persistent_params for @SYS 2021-01-21 13:09:21 +11:00
Andrew Tridgell
1680e6e7d6 AP_HAL: expose load_persistent_params() in hal.util 2021-01-21 13:09:21 +11:00
Andrew Tridgell
c9a83c8127 AP_InertialSensor: added INS_TCAL_OPTIONS
make persistent params optional, and allow save of accelcal
2021-01-21 13:09:21 +11:00
Andrew Tridgell
5c823debc0 HAL_ChibiOS: support saving persistent parameters to bootloader sector
when we flash the bootloader we can save key peristent parameters to
the end of the bootloader sector, allowing them to persistent across
changes of firmware type

This allows for factory temperature calibration
2021-01-21 13:09:21 +11:00
Andrew Tridgell
504f500fae AP_Common: added get_writeable_string to ExpandingString 2021-01-21 13:09:21 +11:00
Andrew Tridgell
1ddc21c9bb AP_InertialSensor: support saving tempcal params persistently 2021-01-21 13:09:21 +11:00
Andrew Tridgell
8caea96ab1 AP_InertialSensor: start auto-learning at boot
This makes it easier to setup the params. The ENABLE=2 value only
takes effect at boot
2021-01-21 13:09:21 +11:00
Andrew Tridgell
7cb7ad3636 AP_InertialSensor: fixed build error 2021-01-21 13:09:21 +11:00
Andrew Tridgell
2e9f61fe49 AP_InertialSensor: fixed IMU index display in msgs
start at 1 for users
2021-01-21 13:09:21 +11:00
Andrew Tridgell
d5b511f4a0 AP_InertialSensor: fixed start timer for temperature in SITL
when we are doing an autotest we want the temperature to start
climbing when we first set SIM_IMUT_FIXED=0
2021-01-21 13:09:21 +11:00
Andrew Tridgell
30e55d8dfc AP_InertialSensor: cope with user changing TMAX while calibrating 2021-01-21 13:09:21 +11:00
Andrew Tridgell
68526262b7 AP_Arming: don't allow arming during IMU temp cal 2021-01-21 13:09:21 +11:00
Andrew Tridgell
e2e97c67ce AP_InertialSensor: catch user attempt to change TMAX during cal 2021-01-21 13:09:21 +11:00
Andrew Tridgell
73e53369e8 AP_Notify: added notify events for temperature calibration 2021-01-21 13:09:21 +11:00
Andrew Tridgell
3fb720354d AP_InertialSensor: added notify events for temperature calibration 2021-01-21 13:09:21 +11:00
Andrew Tridgell
cc3579ea5d AP_InertialSensor: change TCAL sampling to be even in temperature 2021-01-21 13:09:21 +11:00
Andrew Tridgell
cf47c19c0d Filter: fixed low pass 2p filter to auto-init
this prevents the init to zero for temperature filters
2021-01-21 13:09:21 +11:00
Andrew Tridgell
4495414d05 Filter: added reset with value to LowPassFilter2p 2021-01-21 13:09:21 +11:00
Andrew Tridgell
fc0f8b990a AP_InertialSensor: added online learning of temp cal
use INS_TCAL1_ENABLE=2 to start learning
2021-01-21 13:09:21 +11:00
Andrew Tridgell
64d9f43d94 AP_Math: added polygon fitting code 2021-01-21 13:09:21 +11:00
Andrew Tridgell
720f9a1de0 AP_Math: cleanup maths functions
use class template instantiation, and cleanup const in matrix code
2021-01-21 13:09:21 +11:00
Andrew Tridgell
6f6f89e5aa AP_InertialSensor: enable temperature sensor on LSM9DS0
this allows for temperature calibration of the LSM303D in CubeBlack
and Pixhawk1
2021-01-21 13:09:21 +11:00
Andrew Tridgell
0c156e324b AP_Compass: enable temperature on lsm303d 2021-01-21 13:09:21 +11:00
Andrew Tridgell
c0ba7c29ca SITL: use TCal class for temp adjustment in SITL 2021-01-21 13:09:21 +11:00
Andrew Tridgell
4bdf506d10 AP_InertialSensor: apply 1e-5 scale factor
this keeps the params in a reasonable range for parameter editors
2021-01-21 13:09:21 +11:00
Andrew Tridgell
0f6f6bac6b AP_InertialSensor: expose TCal class for use in SITL 2021-01-21 13:09:21 +11:00
Andrew Tridgell
7921e042f1 AP_InertialSensor: added IMU temperature calibration support
this adds parameters that can be setup by an external script for
compensating for temperature variation in gyros and accels using a 3rd
order polynomial
2021-01-21 13:09:21 +11:00
Andrew Tridgell
580cd143b8 AP_AccelCal: added active() method 2021-01-21 13:09:21 +11:00
Siddharth Purohit
f53d80374b SITL: fix build for macos systems 2021-01-21 13:09:21 +11:00
Peter Barker
e58d2ecf2f GCS_MAVLink: add mavlink command option to create a 250ms long loop 2021-01-21 11:35:57 +11:00
Andrew Tridgell
d81c2ee407 HAL_ChibiOS: allow for some embedded parameters on AP_Periph builds 2021-01-21 06:19:46 +11:00
murata
fd91cb03b4 SITL: Change the Kelvin value to a defined name 2021-01-20 20:27:19 +11:00
bugobliterator
8b90eb23e0 AP_HAL_ChibiOS: distcc doesn't like lst generation commands 2021-01-20 19:21:14 +11:00
Randy Mackay
031be010ac AC_AttitudeControl: tailsitter sets target rates more efficiently 2021-01-20 18:21:12 +11:00
Leonard Hall
4e2c7880c5 AC_Avoidance: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall
e2308e9414 AC_Loiter: use AP_Math control tools common functions 2021-01-20 18:19:40 +11:00
Randy Mackay
6320338771 AC_PosControl: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall
1129a3fd59 AC_AttitudeControl: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall
1e38440c83 AP_Math: add control common functions 2021-01-20 18:19:40 +11:00
Andy Piper
2fadcf6ba0 AP_HAL_ChibiOS: handle UP/CH channel sharing on H7 correctly 2021-01-20 18:15:17 +11:00
Andy Piper
9e641a32ad AP_HAL_ChibiOS: don't share flash SPI on BeastH7 and compile with -Os 2021-01-20 18:12:57 +11:00
Andy Piper
2b885cd79f AP_HAL_ChibiOS: ensure that serial LED setup goes via an intermediate buffer
protect serial LED buffer transfers with mutex
protect serial LED buffer size with mutex
prevent serial LED interactions before rcout is ready
allocate a serial led buffer per channel that needs it
setup clock mask when needed
2021-01-20 18:10:18 +11:00
yaapu
ecfcd98f8a AP_RCTelemetry: apply a 5s hysteresis to RF mode changes and rate reporting 2021-01-20 18:06:24 +11:00
Andy Piper
23158480c7 AP_RCTelemetry: calculate CRSF custom frame support correctly 2021-01-20 18:06:24 +11:00
Andy Piper
39219451bd AP_RCTelemetry: detect CRSF tracer RX and switch to 250Hz high speed telemetry 2021-01-20 18:06:24 +11:00
Andy Piper
f6a2d20579 AP_RCProtocol: add tracer 250Hz mode 2021-01-20 18:06:24 +11:00
yaapu
79640e5d94 RC_Channel: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu
1c3b7d5ecd GCS_MAVLink: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu
6b26a64f77 AP_Frsky_Telem: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu
5ef20aec27 AP_RCProtocol: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu
4933544489 AP_RCTelemetry: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
Andrew Tridgell
9db0862d61 HAL_Linux: use nullptr for vnav rcinput
this makes it clearer what is going on
2021-01-20 13:49:26 +11:00
Michael du Breuil
15fd8480f8 AP_EFI: Correct a bad conversion from Kelvin to Celsius
(was off by 0.15 degrees)
2021-01-20 11:10:25 +11:00
Andrew Tridgell
dff6a5bff9 HAL_Empty: allow return of last value in RCOutput
this is needed for linux boards with no native RCOutput that use SBUS
out on a serial port to ensure they can display the servo values in
the GCS
2021-01-20 10:06:45 +11:00
Andrew Tridgell
1ce77111e5 AP_AHRS: allow override of default EKF type 2021-01-20 10:06:45 +11:00
Andrew Tridgell
009cb8f62b HAL_Linux: setup RCIN for vnav 2021-01-20 10:06:45 +11:00
Andrew Tridgell
a9f8c9517c AP_HAL: added vnav linux target 2021-01-20 10:06:45 +11:00
Andrew Tridgell
103d6c54e1 AP_ExternalAHRS: added vnav linux target 2021-01-20 10:06:45 +11:00
Peter Barker
933aba66f8 AP_HAL_SITL: avoid nullptr dereference in Replay 2021-01-19 15:15:35 +11:00
Peter Barker
c0ea19e5c5 SITL: add test for maxbotixi2cxl 2021-01-19 11:20:47 +11:00
Peter Barker
78b49a2c35 AP_RangeFinder: maxbotix: use i2c-address parameter 2021-01-19 11:20:47 +11:00
Iampete1
9be19b0bfa AP_Scripting: add plane spesific quadplane in_vtol_mode binding 2021-01-19 11:18:10 +11:00
Iampete1
7de14f2e2f AP_Scripting: desc: update AP_Terrain depends 2021-01-19 11:18:10 +11:00
Iampete1
2a75432fa2 AP_Scripting: Generator: support depends 2021-01-19 11:18:10 +11:00
Pierre Kancir
30a4747898 GCS_MAVLink: send sim_state msg 2021-01-19 10:40:43 +11:00
Pierre Kancir
c1f1208c89 SITL: add support for SIM_STATE msg 2021-01-19 10:40:43 +11:00
Andrew Tridgell
d9dbcb17c4 AP_Math: enable constrain value with line numbers on all boards 2021-01-19 10:24:39 +11:00
Andrew Tridgell
5def8a64ab SITL: avoid negative current and voltage in flightaxis
RealFlight9 will sometimes give meaningless negative values
2021-01-19 10:21:35 +11:00