Commit Graph

24322 Commits

Author SHA1 Message Date
Andrew Tridgell
2945de4796 AP_Logger: use WITH_SEMAPHORE in _WritePrioritisedBlock
this prevents a 1ms delay when waiting for the semaphore
2020-11-10 16:15:45 +11:00
Andrew Tridgell
7a8e8b8b51 AP_DAL: removed use of BUILD macros in headers
fixes sempahore build
2020-11-10 16:15:45 +11:00
Andrew Tridgell
5be818f8a1 AP_DAL: re-pack GPS replay data
this fixes antenna offset for blended GPS, and reduces the average
amount of data in logs for GPS replay
2020-11-10 16:15:45 +11:00
Andrew Tridgell
cb830dcc11 AP_AHRS: added comment from review 2020-11-10 16:15:45 +11:00
Andrew Tridgell
905ffed7fd AP_DAL: cleanups from review 2020-11-10 16:15:45 +11:00
Andrew Tridgell
509b9f5e63 AP_DAL: only enable standalone build with --no-gcs and --disable-scripting 2020-11-10 16:15:45 +11:00
Andrew Tridgell
4f17edc67d AP_DAL: moved standalone example to tools
prevent trying to build with all examples
2020-11-10 16:15:45 +11:00
Andrew Tridgell
70abf799c3 AP_DAL: check for zero time in accel/gyro filtering 2020-11-10 16:15:45 +11:00
Andrew Tridgell
dd96d7c205 AP_DAL: fixed standalone linking 2020-11-10 16:15:45 +11:00
Andrew Tridgell
6fe05a9ab6 AP_NavEKF3: restore XKTV message 2020-11-10 16:15:45 +11:00
Andrew Tridgell
f5275fd0ad AP_NavEKF3: fixed use of pointers in ringbuffers
these don't work with AP_DAL
2020-11-10 16:15:45 +11:00
Andrew Tridgell
16f7e51ea5 AP_NavEKF2: fixed use of pointers in ringbuffers
these don't work with AP_DAL
2020-11-10 16:15:45 +11:00
Andrew Tridgell
eaa8474563 AP_NavEKF3: cope with INS_MAX_INSTANCES below 3 2020-11-10 16:15:45 +11:00
Andrew Tridgell
246a441883 AP_NavEKF2: cope with INS_MAX_INSTANCES below 3 2020-11-10 16:15:45 +11:00
Andrew Tridgell
021e305340 AP_Mount: cope with INS_MAX_INSTANCES below 3 2020-11-10 16:15:45 +11:00
Andrew Tridgell
dab091a801 AP_AHRS: cope with INS_MAX_INSTANCES below 3 2020-11-10 16:15:45 +11:00
Andrew Tridgell
f6c45c3bcd AP_InertialSensor: cope with INS_MAX_INSTANCES < 3 2020-11-10 16:15:45 +11:00
Andrew Tridgell
bb3b59966f HAL_ChibiOS: define INS_MAX_INSTANCES if less than 3
save some flash and memory
2020-11-10 16:15:45 +11:00
Andrew Tridgell
4ef7d5b468 AP_DAL: make more APIs const 2020-11-10 16:15:45 +11:00
Andrew Tridgell
9b81c5a1e0 AP_NavEKF3: use dal reference in EKF backends
saves a bit of flash space
2020-11-10 16:15:45 +11:00
Andrew Tridgell
5f0e943f0f AP_NavEKF2: use dal reference in EKF backends
saves a bit of flash space
2020-11-10 16:15:45 +11:00
Andrew Tridgell
e273f73cb4 AP_DAL: fixed shadowed variable 2020-11-10 16:15:45 +11:00
Andrew Tridgell
1bdf6173ec AP_NavEKF3: removed have_ekf_logging 2020-11-10 16:15:45 +11:00
Andrew Tridgell
21dfdc2192 AP_NavEKF3: use DAL for body frame odometry 2020-11-10 16:15:45 +11:00
Andrew Tridgell
8591b31665 AP_NavEKF2: cleanup unused code 2020-11-10 16:15:45 +11:00
Andrew Tridgell
9635231088 AP_DAL: added body frame odomotry 2020-11-10 16:15:45 +11:00
Andrew Tridgell
6c4e552a0b AP_GPS: removed have_ekf_logging() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
353ec29ab6 AP_Compass: removed have_ekf_logging() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
b0ec4f8b93 AP_Baro: removed have_ekf_logging() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
1bc82d3118 AP_AHRS: removed have_ekf_logging() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
851cb30e0d AP_Logger: speed up startup with replay if LOG_DISARMED=0 2020-11-10 16:15:45 +11:00
Andrew Tridgell
29ab747982 AP_DAL: fixed navio build 2020-11-10 16:15:45 +11:00
Andrew Tridgell
c7cc26d9bc AP_DAL: rename xxprintf() to rprintf() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
9542f365f6 AP_DAL: fixed range beacon handling 2020-11-10 16:15:45 +11:00
Andrew Tridgell
d01534c7c6 AP_DAL: remove unnecessary variables 2020-11-10 16:15:45 +11:00
Andrew Tridgell
a0de6c620f AP_NavEKF3: use selected GPS for gps_yaw_deg()
more than one GPS could provide yaw
2020-11-10 16:15:45 +11:00
Andrew Tridgell
f4c3d7286c AP_NavEKF3: support replay with wheel odomotry 2020-11-10 16:15:45 +11:00
Andrew Tridgell
b8a3413f5e AP_DAL: support wheel odomotry 2020-11-10 16:15:45 +11:00
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
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
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
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
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
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
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
Peter Barker
814aa4e5ec AP_AHRS: take secondary attitude from EKF3 if it is configured 2020-11-10 10:59:08 +11:00
Andrew Tridgell
f7daa4a93a AP_Compass: raise max scale factor and make symmetric 2020-11-10 10:15:39 +11:00
Rishabh
68b6ecc59c AC_Avoid: Mark OA_OPTIONS as a Rover-Only param 2020-11-09 08:37:47 +09:00
Andrew Tridgell
cb034c50a7 HAL_ChibiOS: fixed orientation of compass on M10070B 2020-11-08 16:13:17 +11:00
Andrew Tridgell
3b7b2b89a5 HAL_ChibiOS: added baro for mRo Location-one GPS 2020-11-08 16:13:17 +11:00
Tom Pittenger
df90e28b89 AP_ADSB: move code to new uAvionix backend 2020-11-05 07:02:56 -08:00
Tom Pittenger
f784fc7c5c AP_ADSB: create frontend/backend split 2020-11-05 07:02:56 -08:00
Peter Barker
fd9068de8a AP_L1_Control: correct zeroing of cross-track integrator
This routine is generally only called at 10Hz, so the integrator was
regularly reset.
2020-11-05 17:32:38 +11:00
Randy Mackay
d6869b9234 AC_PosControl: fix typo in posxy_p param desc 2020-11-05 14:59:00 +09:00
Mark Whitehorn
5f8b4968ec AP_Vehicle: add instructions for config_error loop 2020-11-05 15:04:10 +11:00
Mark Whitehorn
30a9bb4ff4 AP_BoardConfig: change message interval to 5 seconds to match scheduler_delay_callback 2020-11-05 15:04:10 +11:00
bugobliterator
9acaa84b8f AP_Param: disable cmdline parameters for AP_Periph 2020-11-04 19:59:40 +11:00
bugobliterator
0d41db5520 AP_HAL_SITL: flush data from select call as we don't wait select in AP_Periph 2020-11-04 19:59:40 +11:00
bugobliterator
09a0d8d0c0 HAL_SITL: add support for AP_Periph SITL build 2020-11-04 19:59:40 +11:00
bugobliterator
9f4457f1d2 HAL_Empty: add empty protocol method in RCInput 2020-11-04 19:59:40 +11:00
Tom Pittenger
7a09f88e83 AP_ADSB: refactor and renamed things and general cleanup for pre-backend split 2020-11-04 16:22:47 +11:00
Tom Pittenger
8bcc32db78 RC_Channel: added adsb health check 2020-11-04 16:22:47 +11:00
Tom Pittenger
37c6622b96 AP_Arming: add arming check for ADSB 2020-11-04 16:22:47 +11:00
Iampete1
e95376fbef AP_Scripting: add notify LED get RGB binding and example 2020-11-02 17:40:21 -07:00
Iampete1
0f2c06d798 AP_Notify: RGBLed: rename OFF define 2020-11-02 17:40:21 -07:00
Iampete1
2e4b61d96e AP_Notify: add scripting LED type 2020-11-02 17:40:21 -07:00
Iampete1
cf599952f5 AP_Notify: RGB LED remove unused varables 2020-11-02 17:40:21 -07:00
Iampete1
0668c5c584 AP_Scripting: support pass by refence on none bool return 2020-11-02 17:40:21 -07:00
Michael du Breuil
b30c55b3f3 AP_GPS: Support yaw from moving base station on SBF drivers 2020-11-03 11:12:20 +11:00
Michael du Breuil
4161e2eb28 AP_GPS: Factor out moving base offset helper 2020-11-03 11:12:20 +11:00
Hwurzburg
230798546e RC_Channel: correct metadata for RC_OPTION param 2020-11-03 11:06:36 +11:00
Michael du Breuil
0f5179d204 AP_Scheduler: Emit last internal error line 2020-11-03 11:04:13 +11:00