Tom Pittenger
a5d33cacb5
AP_Soaring: add units to param SOAR_THML_BANK
2021-01-29 11:20:09 -08:00
Samuel Tabor
4ec1e55833
AP_Soaring: Add SOAR_THML_BANK parameter and associated logic.
2021-01-29 11:20:09 -08:00
yaapu
4fbba17506
AP_Scripting: added bindings for frsky telemetry library
2021-01-29 09:55:22 +11:00
yaapu
24382e25fc
AP_Frsky_Telem: added support for sending frsky telemetry data from scripting
2021-01-29 09:55:22 +11:00
Michael du Breuil
0f363809f5
AP_GPS: Fix some unit errors with the GPS blended instance
...
Also add a static assert and some docs on the fact that blending only
works with 2 actual recievers at the moment
Also a small optimization to not call get_rate_ms() twice
2021-01-28 11:55:30 +11:00
Andy Piper
6f5d5c2bf9
AAP_HAL_ChibiOS: allow asserts to be printed on a GPIO pin
2021-01-27 19:36:58 +11:00
Andy Piper
d41c92d317
AP_HAL_ChibiOS: don't overwrite fault handler data, register forced faults
2021-01-27 19:13:18 +11:00
Andy Piper
20d928a86a
AP_HAL_ChibiOS: don't share DMA on OmnibusNanoV6 for Flash SPI
2021-01-27 19:04:49 +11:00
Andy Piper
873d35acd9
AP_HAL_ChibiOS: bi-directional dshot for MatekH743
2021-01-27 18:58:38 +11:00
Andy Piper
877dde4736
AP_HAL_ChibiOS: on BeastF7 share TIM3 UP/CH and give flash SPI dedicated channel
2021-01-27 18:54:43 +11:00
Andy Piper
2395018000
AP_BLHeli: don't log invalid bi-dir dshot values as they are never used
2021-01-27 18:54:10 +11:00
Andy Piper
9249b73e8b
AP_HAL_ChibiOS: correctly allow mixing of bidir and non-bidir channels
2021-01-27 18:49:15 +11:00
Andy Piper
2823fa7245
AP_HAL_ChibiOS: never write bytes that have not been erased on H7
...
Be more careful about flash failure conditions on H7
2021-01-27 18:30:36 +11:00
Andy Piper
78735a946e
AP_HAL_ChibiOS: allow STM32_FLASH_DISABLE_ISR for H7
2021-01-27 18:30:36 +11:00
Andrew Tridgell
155de6d2bc
HAL_ChibiOS: fixed build of AP_Periph on H7
2021-01-27 18:24:03 +11:00
Andrew Tridgell
0535c4f592
AP_InertialSensor: default TMAX to 70
...
if user forgets to set this then better to just timeout rather than
calibrating over a small range
2021-01-27 09:49:35 +11:00
Andrew Tridgell
9861a02c60
HAL_ChibiOS: save INS_ACC*ID persistent parameters
...
this enables full factory accelerometer calibration, so the user is
not required to run an accelcal, even if they change vehicle type
2021-01-27 09:49:35 +11:00
Andrew Tridgell
bdb364d461
AP_InertialSensor: save the accelerometer ID parameters
...
this is needed for factory accel cal
2021-01-27 09:49:35 +11:00
Andrew Tridgell
87528f47c8
AP_IOMCU: prevent internal error on bootloader flash
...
when we flash the bootloader on boards with an IOMCU we expect a long
delay as the CPU stops during the flash
2021-01-27 09:49:35 +11:00
Andrew Tridgell
6163659887
AP_HAL: prevent a single bad transfer causing an IMU to be marked unhealthy
...
This is a response to this issue:
https://discuss.ardupilot.org/t/gyro-problem-after-waypoint-log-analisys
The 2nd gyro went bad with a large offset. Then the first gyro was
marked unhealthy, forcing the EKF to switch to the 2nd gyro. That
resulted in a crash.
I think the SPI bus was getting bad transfers and the register check
code happened to get a bad transfer, thereby marking the first gyro
unhealthy
This change ensures we only fail the register check if two transfers
in a row are bad. This makes it much less likely that a noisy bus will
lead to an unhealthy gyro
2021-01-27 09:47:55 +11:00
Iampete1
ebfe593e38
AP_Scripting: add example script setting up a custom MotorMatrix
2021-01-26 11:07:36 +09:00
Iampete1
5c397d4674
AP_Scripting: add MotorMatrix bindings
2021-01-26 11:07:36 +09:00
Iampete1
fca6f7027b
AP_Motors: allow Matrix config from scripting
2021-01-26 11:07:36 +09:00
Peter Hall
d0e1e85b9e
AP_Motors: add get_frame_mav_type
2021-01-26 11:07:36 +09:00
Randy Mackay
f6cb0819ef
AP_NavEKF3: pre_arm_check may skip position checks
2021-01-26 10:46:49 +11:00
Randy Mackay
8ecac27777
AP_NavEKF_Source; pre_arm_check may skip position checks
2021-01-26 10:46:49 +11:00
Randy Mackay
62932f884f
AP_AHRS: pre_arm_check may skip position checks
2021-01-26 10:46:49 +11:00
Andrew Tridgell
1716fcf995
GCS_MAVLink: fixed valgrind errors with AP_Param::ParamToken
2021-01-26 10:43:09 +11:00
Andrew Tridgell
ac35867c17
AP_Param: fixed valgrind errors with AP_Param::ParamToken
2021-01-26 10:43:09 +11:00
Andrew Tridgell
12b93e2922
AP_OSD: fixed valgrind errors with AP_Param::ParamToken
2021-01-26 10:43:09 +11:00
Andrew Tridgell
6c684538d3
AP_Param: greatly speed up param download with disabled parameters
...
allows fast skip over disabled subgroups. This removes a long delay
with param download on a MatekF405-STD where the final parameters
associated with the OSD took 80ms to fetch, causing a long loop delay
2021-01-26 10:43:09 +11:00
Peter Barker
d426d8e1f8
AP_GPS: use ground_course in preference to ground_course_cd
2021-01-26 10:22:28 +11:00
Peter Barker
358069df24
AP_AHRS: use ground_course in preference to ground_course_cd
2021-01-26 10:22:28 +11:00
WillyZehnder
2e2ec79992
RC_Channel: reserve AUX_FUNC for MISSION_RELATIVE
2021-01-26 10:14:11 +11:00
Andrew Tridgell
2843cfa42d
AP_InertialSensor: use mavlink statustext for cal info
2021-01-25 16:24:50 +11:00
Andrew Tridgell
b542f947f7
AP_InertialSensor: don't mark accels as calibrating during trim
...
we need the accels with offsets applied when doing accel trim
2021-01-25 16:24:50 +11:00
Andrew Tridgell
e908a996af
AP_InertialSensor: support SIM_ACC_TRIM
...
and cleanup vector maths
2021-01-25 16:24:50 +11:00
Andrew Tridgell
7292b4f260
SITL: added SIM_ACC_TRIM_{X,Y,Z} for simulating IMU trim
...
this will enable an autotest for AHRS trim
2021-01-25 16:24:50 +11:00
Andrew Tridgell
ddc4d08e8f
AP_NavEKF3: make drag fusion optional
2021-01-24 11:56:52 +11:00
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