Commit Graph

42 Commits

Author SHA1 Message Date
Andrew Tridgell 1250f62c88 Replay: fix for WriteV usage and cleanup unused code 2020-11-16 10:28:43 +11:00
Andrew Tridgell 4edc784dc4 Replay: allow replay on ChibiOS 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 e7fa722290 Replay: support overriding parameters 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
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
Peter Barker 6c22faa585 Tools: Replay: correct compilation (missing override keywords) 2019-09-04 08:55:27 +10:00
Tom Pittenger a8908e3c57 Tools/Replay: rename datalogger to logger 2019-03-28 16:40:58 +11:00
Peter Barker 9eea14054e Tools: Replay: fix build 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 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 3a718366e1 Tools: Replay: use baro singleton 2018-03-08 21:20:05 -08:00
Andrew Tridgell 736c162d21 Replay: added --param-file option 2016-05-25 20:46:18 +10:00
Andrew Tridgell 4116f80901 Replay: added --no-params option 2016-05-16 17:22:11 +10:00
Andrew Tridgell f2106f39aa Replay: save CHEK messages when not being generated 2015-07-09 10:20:45 +10:00
Andrew Tridgell dd53f5a7a1 Replay: added --nottypes option 2015-07-07 15:14:05 +10:00
Andrew Tridgell bdddfae57f Replay: don't write out duplicate FMT messages
this makes replay output the same as input for when input is a replay
log
2015-07-04 22:43:54 +10:00
Andrew Tridgell 93800fb3a1 Replay: automatically find message types, and improve rate detection 2015-07-04 15:14:14 +10:00
Andrew Tridgell b20318aaeb Replay: remap msgids on pass-through to avoid conflicts
if msg IDs have changed since the log was produced they need to be
remapped
2015-07-03 09:32:05 +10:00
Andrew Tridgell 2291a8994e Replay: fixed build 2015-06-29 15:59:53 +10:00
Andrew Tridgell f2756ecb22 Replay: added checking of solution 2015-06-26 15:55:19 +10:00
Andrew Tridgell 31f7525a61 Replay: added --no-imt flag 2015-06-17 12:46:55 +10:00
Peter Barker 71bc48189e Replay: remove dangling declarations from LogReader.h
These seem to have been left in after MsgHandler was factored out
2015-06-14 17:25:08 +10:00
Peter Barker f996bf4307 Replay: move LR_MsgHandlers into their own files 2015-06-14 17:17:42 +10:00
Peter Barker d41b21cd19 Replay: split off a base class for reading dataflash logs 2015-06-14 16:47:52 +10:00
Andrew Tridgell dc1ff9a757 Replay: added in_list() method
neaten up code
2015-05-19 20:22:46 +10:00
Andrew Tridgell 64a55c908f Replay: fixed trailing nul and don't wait for EKF to init 2015-05-11 11:19:11 +10:00
Peter Barker 32beaea48c Replay: use column labels rather than IDs in Replay.pde 2015-05-10 08:33:32 +10:00
Peter Barker 56a8bf5460 Replay: use the message's name rather than number to determine which message handler to use for a message 2015-04-28 21:10:16 +10:00
Peter Barker 42351edfa6 Replay: use dataflash log format messages to extract message data instead of using structs
dataflash logs have been self-describing since 2013.  Replay now uses the descriptions supplied in the dataflash log to understand the format of any particular message.

This change should allow fields to be added to messages with no impact on Replay.
2015-04-28 21:10:15 +10:00
Andrew Tridgell 8f09ee077c Replay: try to cope better with millisecond timestamps in 400Hz copter logs 2015-04-20 15:12:51 +10:00
Andrew Tridgell 95a1ab0cab Replay: fixed build with new AP_Compass API 2015-03-13 18:46:16 +11:00
Andrew Tridgell 488714ccba Replay: updates for new AP_Baro API 2015-01-09 11:50:55 +11:00
Andrew Tridgell fa95ea91fd Replay: generate dataflash logs in Replay
this allows the calculated EKF flight path to be compared with
different parameters by using replay
2014-12-08 11:25:22 +11:00
Andrew Tridgell 6e0e56a6ef Replay: fixed loading of users parameters and parameter override
use compass.set_offsets() to avoid trying to write to storage
2014-10-15 09:17:22 +11:00
Andrew Tridgell 250deaa32f Replay: added vehicle class detection 2014-04-21 18:13:13 +10:00
Andrew Tridgell 623cbc3316 Replay: cope with too many log format msgs 2014-04-20 21:45:31 +10:00
Andrew Tridgell 60ad429d13 Replay: convert to new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell 5dfd9b074e Replay: fixed for rover logs 2014-03-06 17:51:49 +11:00
Andrew Tridgell ecdcf70ef5 Replay: added accel and gyro mask options 2014-03-02 08:00:51 +11:00
Andrew Tridgell 3218ac8e7a Replay: added parameter handling
use parameters from log, and allow override
2014-03-01 15:15:46 +11:00
Andrew Tridgell 853271dd37 Replay: moved replay tool into Tools/Replay 2014-03-01 14:30:55 +11:00