Andrew Tridgell
14265d9580
AP_NavEKF2: don't use disabled gyros in opticalflow takeoff detection
2019-07-06 15:50:34 +10:00
Andrew Tridgell
91889d22cd
AP_Mount: don't use disabled IMUs in solo gimbal code
2019-07-06 15:50:34 +10:00
Andrew Tridgell
1f309e8401
AP_AHRS: only use enabled IMUs in DCM
...
honor the INS_USE parameters for DCM
2019-07-06 15:50:34 +10:00
Andrew Tridgell
7a9203ef29
AP_InertialSensor: zero accumulators on time step
...
this zeros the delta angle and delta velocity accumulators when a
sensor is unavailable for a period of 0.1s. This prevents garbage
values being passed into the EKF when a sensor dies and then becomes
available again some time later
2019-07-06 15:50:34 +10:00
Andrew Tridgell
a5e3cd664b
AP_InertialSensor: added RC switch for killing IMUs
2019-07-06 15:50:34 +10:00
Andrew Tridgell
d0792f29da
HAL_ChibiOS: cope with calling delay_microseconds_boost() multiple times
...
needed for updated IMU wait code
2019-07-06 10:03:18 +10:00
Andrew Tridgell
0bbe9bfb71
AP_InertialSensor: try much harder to get all IMU samples
...
this we ensures we get new data for all active IMUs on each loop,
rather than sometimes returning with some IMUs not having data.
This matters as not having a sample on an IMU for a single loop can
cause an EKF IMU failover, which will degrade the learned bias
variances
The issue is usually only seen under high load, such as requesting a
loop rate beyond what the hardware is capable of
2019-07-06 10:03:18 +10:00
Andrew Tridgell
47f9cce612
AP_NavEKF3: added inactive bias learning
...
this allows for biases on inactive IMUs to be learned so that an IMU
switch within an EKF lane does not cause a jump in the IMU data
2019-07-06 08:34:31 +10:00
Andrew Tridgell
9f4085b0bc
AP_NavEKF2: learn gyro biases for inactive gyros
...
this allows us to learn the gyro biases each lane would need if it had
to switch to another gyro due to a sensor failure. This prevents a
sudden change in gyro bias on IMU failure
2019-07-06 08:33:59 +10:00
Andrew Tridgell
a91af12364
AP_GPS: fixed u-blox F9 auto configuration
...
# Conflicts:
# libraries/AP_GPS/AP_GPS_UBLOX.cpp
2019-07-06 08:33:15 +10:00
Andrew Tridgell
1cd90e5ae7
AP_GPS_UBLOX: add support for TIMEGPS message. used to get gps week
2019-06-29 10:05:03 +10:00
Andrew Tridgell
a03b3051fc
HAL_ChibiOS: fixed LEDs on new CUAVv5 revision
...
# Conflicts:
# libraries/AP_HAL_ChibiOS/hwdef/CUAVv5/hwdef.dat
2019-05-03 17:32:32 +10:00
Andrew Tridgell
c51b433c28
HAL_ChibiOS: fixed LEDs on CUAVv5Nano
...
need to be opendrain
2019-05-03 17:31:45 +10:00
Andrew Tridgell
376031c5f4
AP_Notify: don't use pinMode for pixracer LEDs
...
this is needed for LEDs that are driven by 5V, which means they need
to use OPENDRAIN.
2019-05-03 17:31:41 +10:00
Jaaaky
715f117d4b
AP_InertialSensor: fix accelcalsimple watchdog
2019-05-03 10:37:34 +10:00
Andrew Tridgell
2094ffbf28
HAL_ChibiOS: fixed brick2 valid status in POWR flags for fmuv5
...
and fixed sense of VBUS
2019-04-26 07:13:11 +10:00
Andrew Tridgell
7acbcd88f8
AP_BoardConfig: add targetted check for cube black internal sensors
...
# Conflicts:
# libraries/AP_BoardConfig/board_drivers.cpp
2019-04-24 12:31:33 +10:00
Jonathan Challinger
e29d03a994
AP_Baro: make crc4 a static member of AP_Baro_MS56xx
2019-04-24 12:31:02 +10:00
Jonathan Challinger
2b6ca186a8
AP_HAL_ChibiOS: add define HAL_CHIBIOS_ARCH_CUBEBLACK to cubeblack hwdef
2019-04-24 12:30:59 +10:00
Michael du Breuil
b236e80e41
AP_GPS: Log reciever status to GPS SD card
...
This improves log analysis of bad GPS health messages when you have a
report of bad GPS health but lost the MAVLink message, or didn't have
access to the autopilot log with the information for some reason.
2019-04-23 11:07:04 +10:00
Andrew Tridgell
1bfa79b744
AP_GPS: Remove external event from GPS data stream
...
If the event pin floats, this can lead to UART congestion, causing the
EKF to reject the GPS data, and the vehicle will drift around the sky in
a most disturbing manner
# Conflicts:
# libraries/AP_GPS/AP_GPS_SBF.cpp
2019-04-23 11:06:59 +10:00
Andrew Tridgell
3680d8f1fa
HAL_PX4: added empty flash driver
2019-04-22 15:58:01 +10:00
Andrew Tridgell
ca37b06af2
AP_InertialSensor: don't set INS_ENABLE_MASK to found IMU mask
2019-04-22 14:47:43 +10:00
Andrew Tridgell
a53480f904
AP_AHRS: ensure AHRS never uses an unhealthy gyro
2019-04-22 14:35:11 +10:00
Andrew Tridgell
087d20b22c
HAL_ChibiOS: mark SDIO and SDMMC IO as pullup
...
this is needed for boards such as PixhackV3 which don't have hardware
pullups. Thanks to Hongle for reporting this.
2019-04-22 11:35:36 +10:00
Andrew Tridgell
5d0e785e73
AP_Arming: make arm_checks() virtual
2019-04-22 11:11:45 +10:00
Andrew Tridgell
6d3160b473
HAL_ChibiOS: fixed merge errors with hal.flash usage
2019-04-22 09:43:25 +10:00
Andrew Tridgell
33908f06a5
HAL_ChibiOS: use hal.flash API
...
# Conflicts:
# libraries/AP_HAL_ChibiOS/Storage.cpp
# libraries/AP_HAL_ChibiOS/Util.cpp
2019-04-22 09:16:26 +10:00
Andrew Tridgell
c77e4e6ec1
HAL_ChibiOS: fixed iomcu build with flash driver
2019-04-22 09:05:17 +10:00
Andrew Tridgell
ac1136d633
HAL_SITL: added empty flash driver
2019-04-22 09:05:01 +10:00
Andrew Tridgell
ca3f26f33a
HAL_Linux: added empty flash driver
2019-04-22 09:04:58 +10:00
Andrew Tridgell
b7286ee03b
HAL_Empty: added empty flash driver
2019-04-22 09:04:45 +10:00
Andrew Tridgell
35d711093b
HAL_ChibiOS: implement flash driver
2019-04-22 09:03:05 +10:00
Andrew Tridgell
463bb6609e
AP_HAL: added hal.flash driver
...
needed for semaphore
2019-04-22 09:02:49 +10:00
Andrew Tridgell
cd3881823b
AP_HAL: added save/restore of attitude in backup registers
2019-04-21 13:08:46 +10:00
Andrew Tridgell
f8e5ef38e8
HAL_ChibiOS: added save/restore of attitude in backup registers
2019-04-21 13:08:46 +10:00
Andrew Tridgell
49d82efdc5
AP_AHRS: added save/restore of attitude in backup registers
2019-04-21 13:08:29 +10:00
Andrew Tridgell
2a7f0e4c47
HAL_ChibiOS: fixed build with older gcc
2019-04-20 20:29:51 +10:00
Andrew Tridgell
9f0312d744
AP_AHRS: save/restore home to backup registers
...
restore on watchdog reset
2019-04-20 19:50:25 +10:00
Andrew Tridgell
723a7bb647
HAL_ChibiOS: save/restore home position in backup registers
2019-04-20 19:49:46 +10:00
Andrew Tridgell
186f36a5bd
AP_HAL: added save/restore of home to backup registers
2019-04-20 19:49:11 +10:00
Andrew Tridgell
4139450db8
AP_InertialSensor: prevent watchdog in accelcal
2019-04-20 17:35:49 +10:00
Andrew Tridgell
6e80174147
HAL_ChibiOS: allow for delay in bootloader flash
2019-04-20 16:33:27 +10:00
Andrew Tridgell
f89aadd2ba
HAL_ChibiOS: fixed watchdog timeout setting
2019-04-20 16:31:28 +10:00
Andrew Tridgell
337cc16880
GCS_MAVLink: added method to lockup autopilot
...
used for watchdog testing
2019-04-20 15:17:55 +10:00
Andrew Tridgell
6252f97df4
AP_Logger: prevent log erase from triggering watchdog
...
# Conflicts:
# libraries/DataFlash/DataFlash_File.cpp
2019-04-20 14:16:22 +10:00
Andrew Tridgell
b6285547c3
AP_Logger: force logging on an armed watchdog reset
...
and don't clear sdcard space
2019-04-20 14:16:22 +10:00
Andrew Tridgell
f5e170c76b
HAL_ChibiOS: implement was_watchdog_armed()
2019-04-20 14:16:22 +10:00
Andrew Tridgell
63e636fd5a
AP_HAL: added was_watchdog_armed()
...
allow decisions to be based on whether this is a watchdog reset and we
were armed
2019-04-20 14:16:22 +10:00
Andrew Tridgell
ff3527eef5
AP_BoardConfig: auto-restore safety state on watchdog reset
2019-04-20 14:16:22 +10:00