Commit Graph

351 Commits

Author SHA1 Message Date
Andrew Tridgell 7568639af7 Replay: don't build on chibios 2020-11-10 16:15:45 +11:00
Andrew Tridgell 0ca54016bb Replay: cleanup use of globals 2020-11-10 16:15:45 +11:00
Andrew Tridgell 85aa64780c Replay: allow replay to run on SITL instead of linux HAL 2020-11-10 16:15:45 +11:00
Andrew Tridgell f1f547f723 Replay: allow check_replay to be called as library 2020-11-10 16:15:45 +11:00
Andrew Tridgell 0d8a36d0c0 Replay: fixed linux build warning 2020-11-10 16:15:45 +11:00
Andrew Tridgell 541d11ee05 Replay: cleanup unused code 2020-11-10 16:15:45 +11:00
Andrew Tridgell 367c993673 Replay: fixed cast of REY3 2020-11-10 16:15:45 +11:00
Andrew Tridgell e7fa722290 Replay: support overriding parameters 2020-11-10 16:15:45 +11:00
Andrew Tridgell 3d2f07e757 Replay: support body frame odometry 2020-11-10 16:15:45 +11:00
Andrew Tridgell afb11cf29b Replay: support wheel odomotry 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 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 09265a8a9b Replay: improved failure reporting in check_replay.py 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
Patrick José Pereira 27720f2235 Tools: Replay: Move from uint to uint32_t in MsgHandler
uint is not a fundamental type and does not exist under cstdint

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-09-26 20:28:18 +10:00
Peter Barker 1cefd2943b Replay: correct various atrophications in Replay tool
Replay: tear down threads before exitting

NKQ is a generated name - don't copy it across to output

Stop whinging about presence of NKF6 and friends; we know these generated names are not going to be present in modern logs

memcpy rather than strncpy within log_FMT

Correct strings vs optionally-terminated structure entries in sanity checks

Call AP_Param::load_all() to start the parameter saving thread.  AP_Compass' init() method now saves parameters (compass reordering), and because we're disarmed we will block until the parameter is pushed onto the to-save queue; if there's no thread popping off that list we block indefinitely.

Remove duplicate definitions of various singleton objects.

Replay: write out GPS message to output log

Useful for diagnosis, but also because we struggle to find a time base
without this and the pymavlink tools take forever to work

Replay: set COMPASS_DEV_ID and COMPASS_PRIO1_ID so EKF gets mag data

Replay: avoid use of system clock; use stopped-clock only

Replay: constraint to emitting output for single core only
2020-09-15 10:02:36 +10:00
Andrew Tridgell 71732d07f0 Replay: disable case-align for Replay build 2020-07-10 13:31:27 +10:00
Peter Barker b8087c3e84 Replay: let AP_Vehicle handle loop() 2020-02-06 14:41:06 +11:00
Peter Barker bde97596eb Tools: adjust Replay for new AP_Vehicle requirements 2020-01-28 11:34:51 +11:00
Peter Barker d95956a587 Replay: EKF objects have moved into AP_AHRS_NavEKF 2020-01-21 11:53:18 +11:00
Tatsuya Yamaguchi 058cd4200f Tools: Replay: allow scripts to get modes 2020-01-14 11:16:29 +11:00
Andrew Tridgell c0d9731dd4 Replay: fixed for AP_Vehicle usage 2019-12-30 13:02:04 +11:00
Andy Piper 30878553d6 Tools: add AP_Camera to list of libraries
remove dummy Camera methods from Replay
add rcmapper to replay
make replay a vehicle
2019-12-30 13:02:04 +11:00
Peter Barker 1ba0e5350f Tools: NavEKF constructors no longer take rangefinder 2019-12-11 08:09:01 +11:00
Marian Soban 018d6bd35b Tools: Replay: add stubs to avoid linking LTM telemetry 2019-11-26 12:14:13 +11:00
Peter Barker cd1c9309e6 Tools: add method to avoid linking AP_Avoidance 2019-11-12 13:48:09 +11:00
Peter Barker b8cbd64c86 Tools: Replay: use Event enumeration from Logger header 2019-11-05 08:19:26 +08:00
Peter Barker f431c0b256 Replay: use ahrs singleton to log ATT, POS and AHRS2 2019-10-24 13:15:46 +11:00
Peter Barker 642935fd43 Tools: random Python cleanups based on lgtm analysis 2019-09-21 22:26:03 +10:00
Peter Barker 192b275837 Tools: Replay: add dummy AP::advancedfailsafe method 2019-09-17 09:13:43 +10:00
Peter Barker 6c22faa585 Tools: Replay: correct compilation (missing override keywords) 2019-09-04 08:55:27 +10:00
Michael du Breuil 7ca6fd928e Replay: Included needed headers directly 2019-08-28 13:13:03 +10:00
Peter Barker 6c5b03dbb7 Tools: Replay: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 92dde5b111 Tools: Replay: move automatic declination setting into AP_Compass itself 2019-08-13 10:02:13 +10:00
Peter Barker 070e9e56b3 Tools: rangefinder no longer takes SerialManager in constructor 2019-07-16 09:29:48 +10:00
Peter Barker bb677756a0 Tools: Replay: EKF logging moved to AHRS from logger 2019-07-06 19:05:51 +10:00
Michael du Breuil 0e4b751786 Replay: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Peter Barker 5ab000376b Tools: Replay: correct format strings 2019-06-13 13:41:27 +10:00
Peter Barker 6fd138d613 Tools: Replay: build and link against AP_Arming 2019-05-30 07:37:30 +09:00
Michael du Breuil 3a25897ab4 Replay: Fix rangefinder constructor 2019-04-06 09:15:22 +11:00
Michael du Breuil f92ee78890 Replay: Fix include 2019-04-05 20:12:53 +11:00
Tom Pittenger a8908e3c57 Tools/Replay: rename datalogger to logger 2019-03-28 16:40:58 +11:00
Peter Barker d4fe65b43c Tools: Replay: remove definition of Devo constructor 2019-03-23 11:25:21 +11:00
Peter Barker eb16c30bdb Tools: Replay: add stubs to avoid linking devo 2019-03-19 14:39:14 +11:00
Peter Barker b346e82b3e Replay: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Dr.-Ing. Amilcar do Carmo Lucas edac5e1a80 Tools: replace location_offset() and get_distance() function calls with Location object member function calls
This allows removing duplicated code
2019-02-28 11:44:09 +11:00
Peter Barker bf9b8f41bf Tools: Replay: cope with WARN_IF_UNUSED on AP_AHRS::set_home 2019-02-15 08:28:45 +11:00
Peter Barker 9eea14054e Tools: Replay: fix build 2019-01-18 18:08:20 +11:00
Peter Barker 6fc76a32af GLOBAL: use AP::logger() and strip redundant Log_ from methods 2019-01-18 18:08:20 +11:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Peter Barker 3a53c5f99c Tools: Replay: update Replay for Location/Location_Class merge 2019-01-16 11:45:29 +11:00
Michael du Breuil 2c8b5c651d Tools: Remove unneeded AP_Buffer include 2018-12-31 11:41:43 +09:00
Andrew Tridgell 15853adb04 build: removed remaining make.inc files 2018-12-22 11:06:59 +11:00
Peter Barker 5452730fc9 Tools: Replay: make it work again
Tools: Replay: ignore setting of LOG_DISARMED

Otherwise log files that come in with LOG_DISARMED false don't get any
significant output

Tools: Replay: apply user parameters after any PARM message

Tools: Replay: emit timestamp when EKF is force-started

Tools: Replay: use stderr for what it's good for

Tools: Replay: force log disarmed
2018-10-31 16:05:33 +11:00
Peter Barker af66d72510 Tools: Replay: correct -n command-line argument 2018-10-31 16:05:33 +11:00
Peter Barker 961aac454b Tools: Replay: use Log_Write for CHEK message 2018-10-31 16:05:33 +11:00
Peter Barker 95f7b1aeb7 Tools: add dummy AP::camera method to avoid linking camera 2018-08-31 15:48:56 +10:00
Michael du Breuil 8ab3b666fa Tools: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Peter Barker 357a57f68a Tools: Replay: implement more dummy camera methods to avoid linking camera 2018-07-06 09:43:09 +10:00
Peter Barker 5665feb29e Tools: Replay: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Andrew Tridgell 9096bcf7b2 Tools: fixed reference to linux-debug 2018-05-09 14:17:32 +10:00
Andrew Tridgell 2aceab2b66 Replay: fixed build 2018-04-24 21:33:10 +10:00
khancyr 9ade6cd579 Replay: Remove AP_InertialNav 2018-04-24 21:33:10 +10:00
Michael du Breuil 8fbec1cfa3 Replay: Support GCS_MAVLink changes 2018-03-27 22:12:21 +01:00
Lucas De Marchi 5282ed3a1b Tools: use ins singleton 2018-03-16 00:37:35 -07:00
Peter Barker 3a718366e1 Tools: Replay: use baro singleton 2018-03-08 21:20:05 -08:00
Peter Barker e76865eb9c Tools: Replay: AP_AHRS no longer requires GPS in constructor 2017-12-27 00:58:02 +00:00
Andrew Tridgell 88abd34d40 Replay: fixed build with no create() 2017-12-14 08:12:28 +11:00
Peter Barker ada7d700c2 Tools: support for units on fields
Tools: add units to minimal log format

Tools: add units to CHEK message
2017-11-23 10:40:30 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 63ca1f755e Tools: Replay: fix compiler warning for printf string
format ‘%ld’ expects argument of type ‘long int’, but argument has type ‘uint64_t {aka long long unsigned int}’
2017-10-25 20:27:55 +11:00
Lucas De Marchi beabae6a98 global: use static method to construct AP_AHRS_NavEKF 2017-09-26 03:01:21 +01:00
Lucas De Marchi c9fbf7b722 global: use static method to construct AP_NavEKF3 2017-09-26 03:01:21 +01:00
Lucas De Marchi e2fe36357a global: use static method to construct AP_NavEKF2 2017-09-26 03:01:21 +01:00
Lucas De Marchi 72fd2d6f05 global: use static method to construct AP_SerialManager 2017-09-26 03:01:21 +01:00
Lucas De Marchi 40fd1b346c global: remove rangefinder from AP_AHRS_NavEKF
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.

For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer.  Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi 9027a55696 global: use static method to construct RangeFinder 2017-09-26 03:01:21 +01:00
Lucas De Marchi 53c82b4aaf global: use static method to construct DataFlash_Class 2017-09-26 03:01:21 +01:00
Lucas De Marchi 8094482f21 global: use static method to construct AP_GPS 2017-09-26 03:01:21 +01:00
Lucas De Marchi 87b30b4552 global: use static method to construct AP_InertialSensor 2017-09-26 03:01:21 +01:00
Lucas De Marchi c1a957fbf3 global: use static method to construct Compass 2017-09-26 03:01:21 +01:00
Lucas De Marchi 91feec0e14 global: use static method to construct AP_Baro 2017-09-26 03:01:21 +01:00
Peter Barker d475b91564 Tools: Replay: pass a lambda function to LR_MsgHandler_PARM to set parameters
This avoid duplication of parameter setting logic.
2017-09-14 13:43:50 +01:00
Peter Barker 0062084c40 Tools: Replay: option to print packet counts out at end 2017-09-12 19:01:59 +01:00
Peter Barker b5e206f72f Replay: print some statistics on exit 2017-09-06 02:30:38 +01:00
Randy Mackay cd8661c665 Replay: integrate simpler Log_Write_EKF 2017-08-23 11:19:14 +09:00
Michael du Breuil 1b6c3aeea1 Replay: Avoid linking AFS 2017-08-15 15:14:56 +01:00
Peter Barker 1c2e1eeaf8 Tools: provide dummy function to avoid linking the AP_Camera 2017-08-09 16:18:22 +01:00
Peter Barker dff026e30c Tools: Replay: move starting of new logs into DataFlash 2017-07-19 16:37:28 +01:00
Peter Barker 6a7ed2646c Tools: Replay: Use GCS_Dummy GCS singleton 2017-07-07 16:18:37 +01:00
Peter Barker 29de7b1a17 Replay: provide a log bitmask to Dataflash constructor 2017-06-29 15:43:38 +01:00
Peter Barker 10b69b46e1 Replay: StartUnstartedLogging replaces logging_started/start_logging 2017-06-11 20:34:12 +01:00
Randy Mackay bc89432019 Replay: fix rangefinder instantiation 2017-02-27 15:18:14 +09:00
Peter Barker e2f15e5fdb Tools: create a GCS_Replay class
Avoids a segfault as we assume gcs() returns an object
Provides some usefult debug as to what we're sending to the GCS as
 debug
2017-02-23 23:03:54 -08:00
Peter Barker f5c89117f6 Replay: remove unused variables
Also avoids segmentation fault on exit
2017-02-23 17:18:47 +11:00
priseborough c8bdf2fab8 Replay: enable replay to ignore EK3_ENABLE setting in log 2017-01-27 16:57:42 +09:00
Andrew Tridgell bebc7e4519 Replay: removed EKF_ENABLE parameter 2016-12-19 08:07:13 +11:00
Andrew Tridgell 35bed59bd4 Tools: Add EKF3 and remove EK1 2016-12-19 08:07:10 +11:00
Randy Mackay d1f944d0c9 Replay: remove call to EKF1 logging 2016-11-30 17:57:09 +09:00