Commit Graph

44578 Commits

Author SHA1 Message Date
Andrew Tridgell e87f98066f AP_NavEKF3: support replay with external navigation data 2020-11-10 16:15:45 +11:00
Andrew Tridgell bec095d661 AP_NavEKF2: support replay with external navigation data 2020-11-10 16:15:45 +11:00
Andrew Tridgell c068da154a AP_DAL: support external pos and velocity data 2020-11-10 16:15:45 +11:00
Andrew Tridgell 7f0113b82d autotest: added REPH and REVH 2020-11-10 16:15:45 +11:00
Andrew Tridgell 0ee8b415f2 Replay: support external position and velocity data 2020-11-10 16:15:45 +11:00
Andrew Tridgell 5260d677ef AP_DAL: fixed optical flow replay 2020-11-10 16:15:45 +11:00
Andrew Tridgell 7bbbbd314c AP_NavEKF3: added optflow support for AP_DAL 2020-11-10 16:15:45 +11:00
Andrew Tridgell 224792b8b8 AP_NavEKF2: added optflow support for AP_DAL 2020-11-10 16:15:45 +11:00
Andrew Tridgell dab9d824fd AP_DAL: added optflow support 2020-11-10 16:15:45 +11:00
Andrew Tridgell a56f07b74d AP_Math: allow build without other headers for vector2.h 2020-11-10 16:15:45 +11:00
Andrew Tridgell ef5baaf482 autotest: added ROFH msg 2020-11-10 16:15:45 +11:00
Andrew Tridgell 1fb421ae6a Replay: handle optical flow
and move frame processing to AP_DAL
2020-11-10 16:15:45 +11:00
Andrew Tridgell 614a77d2c9 Replay: allow for early log end in check_replay.py
when session is killed we can lose one frame worth of EKF msgs
2020-11-10 16:15:45 +11:00
Andrew Tridgell 4cd5ac5164 Replay: add call to RFRF handler 2020-11-10 16:15:45 +11:00
Andrew Tridgell 31091d6307 AP_NavEKF3: use ekf_low_time_remaining for core scheduling 2020-11-10 16:15:45 +11:00
Andrew Tridgell 90a8c5cb1a AP_NavEKF2: use ekf_low_time_remaining for core scheduling 2020-11-10 16:15:45 +11:00
Andrew Tridgell 47c3fadc17 AP_DAL: added ekf_low_time_remaining()
used by EKF for inter-lane scheduling
2020-11-10 16:15:45 +11:00
Andrew Tridgell 1848491ac2 AP_DAL: fixed GPS backend for multiple sensors 2020-11-10 16:15:45 +11:00
Andrew Tridgell bf61910c7c AP_DAL: fixed shadowed variable
found by semaphore build
2020-11-10 16:15:45 +11:00
Andrew Tridgell 50d03571da AP_DAL: fixed build without VisualOdometry 2020-11-10 16:15:45 +11:00
Andrew Tridgell b7d60b1d97 AP_Logger: added C field to EKF msgs 2020-11-10 16:15:45 +11:00
Andrew Tridgell 8ba067608b autotest: cope with LogStructure.h in multiple places
and allow for no docs in replay msgs
2020-11-10 16:15:45 +11:00
Andrew Tridgell 09265a8a9b Replay: improved failure reporting in check_replay.py 2020-11-10 16:15:45 +11:00
Andrew Tridgell f3c3778169 prevent duplicate EKF logging
vehicle code sometimes tries to log the same data twice
2020-11-10 16:15:45 +11:00
Andrew Tridgell fa75824948 AP_DAL: added standalone link test
useful to check for clean linking of EKF2/EKF3

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 42d62e138b Tools: updated test helpers to assist in replay testing
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 3ae237b652 autotest: started work on replay testing 2020-11-10 16:15:45 +11:00
Andrew Tridgell 161f2a8d2f autotest: improved error msg for missing doc fields
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 0c1d665818 waf: support no-gcs and DAL builds 2020-11-10 16:15:45 +11:00
Andrew Tridgell 603146c5ca waf: added --no-gcs build option
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 32bda36908 SITL: fixed build with no GCS 2020-11-10 16:15:45 +11:00
Andrew Tridgell 0700ca4882 AP_Vehicle: added DAL standalone vehicle type 2020-11-10 16:15:45 +11:00
Andrew Tridgell ae56f554b9 AP_Vehicle: send watchdog reset msg at startup
this helps if the watchdog will happen within 10s of startup
2020-11-10 16:15:45 +11:00
Andrew Tridgell 77687a9639 AP_UAVCAN: fixed build with no GCS
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 9b35bfba55 AP_AHRS: use enum class for takeoff/touchdown states
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 31fbb59384 AP_AHRS: delay EKF start until logging ready
for replay to work reliably we need all the parameters output before
we init the EKF.

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 096aab9388 AP_NavEKF3: convert to use AP_DAL for new replay structure
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 6be3d19e82 AP_NavEKF2: convert to use AP_DAL for new replay structure
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 97a2c5a576 AP_NavEKF: removed Log_EKF_Timing
not needed for new replay

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell c0b20881d6 AP_Math: allow vector3.h to be included earlier in include chain 2020-11-10 16:15:45 +11:00
Andrew Tridgell 09aff03edc AP_Logger: support new replay system
added allow_start_ekf and block write method for replay

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell daa0abeb13 AP_Logger: make structure check errors clearer
add message name to more error messages
2020-11-10 16:15:45 +11:00
Andrew Tridgell bd7ed003c2 AP_Logger: split out EKF messages and prepare for new replay
adds core to more EKF message structures

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell 81f96aedd2 Replay: new replay implemention
this uses log msgs from AP_DAL to replay more accurately

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell e116b1ff0a AP_DAL: added data access layer library
This provides a wrapper around sensor and system calls to allow for
logging for replay in EKF2 and EKF3

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Iampete1 1587d88f58 AP_Scripting: example saving serial data to SD card 2020-11-10 12:15:56 +11:00
Andrew Tridgell eea62bf733 Plane: added optional ground effect compensation for quadplanes
this allows for landings in aircraft badly effected by ground effect
to be compensated for
2020-11-10 12:05:48 +11:00
Iampete1 60951a7891 AP_GPS: add use primary if 3D fix GPS_AUTO_SWITCH option 2020-11-10 12:01:56 +11:00
Iampete1 347723dbaf AP_GPS: add primary param 2020-11-10 12:01:56 +11:00
Iampete1 0c2037438b AP_Motors: output mask: do not apply copter sin params and epxo 2020-11-10 11:09:56 +11:00