Commit Graph

322 Commits

Author SHA1 Message Date
Peter Barker 7cea90df98 Tools: fix --accuracy option to check_replay.py
args is not in-scope when check_replay is being used as a library rather
than as a script
2021-10-19 08:15:15 +11:00
Peter Barker 6dbefd63d3 Replay: define HAL_GCS_ENABLED to 0 2021-09-22 21:37:00 +10:00
Andrew Tridgell d181adfa75 Replay: added --accuracy option
useful for finding what has diverged
2021-07-21 17:55:04 +10:00
Siddharth Purohit b39b4abb12 Replay: move to using tool instead of tools program group 2021-07-07 17:31:09 +10:00
Andrew Tridgell 3a1d2f1852 Replay: remove takeoff/touchdown event handling 2021-06-02 11:13:16 +09:00
Peter Barker 40a84bc566 Replay: link AP_Avoidance
[864/864] Linking build/bbbmini/tools/Replay
11:47:27 runner ['/usr/lib/ccache/arm-linux-gnueabihf-g++', '-Wl,--gc-sections', '-pthread', 'Tools/Replay/DataFlashFileReader.cpp.34.o', 'Tools/Replay/LR_MsgHandler.cpp.34.o', 'Tools/Replay/LogReader.cpp.34.o', 'Tools/Replay/MsgHandler.cpp.34.o', 'Tools/Replay/Replay.cpp.34.o', '-otools/Replay', '-Wl,-Bstatic', '-Llib', '-lReplay_libs', '-Wl,-Bdynamic', '-lm', '-ldl']
lib/libReplay_libs.a(RC_Channel.cpp.0.o): In function `RC_Channel::do_aux_function_avoid_adsb(RC_Channel::AuxSwitchPos)':
RC_Channel.cpp:(.text._ZN10RC_Channel26do_aux_function_avoid_adsbENS_12AuxSwitchPosE+0x4): undefined reference to `AP::ap_avoidance()'
2021-04-29 13:00:40 +10:00
Siddharth Purohit 5657dad3e6 Replay: move underscore one layer down for GPS 2021-03-12 16:32:36 +09:00
Paul Riseborough 0a052d20ea Tools: Add handling for default airspeed variance 2021-03-05 12:10:01 +11:00
Andrew Tridgell 3f6fd49507 Replay: rename baro params to BARO* 2020-12-08 13:22:17 +11:00
Peter Barker d0236ceac9 Replay: check_replay_branch.py: inspect all logs for replayability 2020-12-03 17:28:26 +11:00
Peter Barker ba0367fa9f Replay: add check_replay_branch.py to check for EKF output changes
Create a replay log using master branch.
Check out a specified branch, compile and run Replay against replay log
Run check_replay.py over the produced log
2020-12-01 10:40:09 +11:00
Peter Barker 8d756d8758 Replay: check_replay.py: default to print for progress function 2020-12-01 10:40:09 +11:00
Andrew Tridgell 4e4a044d5d Tools: removed inhibitGps and inhibitGpsVertVel options
these were unused
2020-12-01 10:33:50 +11:00
Andrew Tridgell 70a8853e6a Replay: adjust lost message threshold
this needs to be a bit higher to cope with truncated logs (if SITL
ends in the middle of an EKF log write then we end up with a mismatch
in log msg counts)
2020-11-18 14:56:19 +11:00
Andrew Tridgell 32bead6013 Replay: use common events and structures
allows for --force-ekf2 and --force-ekf3 to run the other EKFs events
when needed
2020-11-17 13:45:07 +11:00
Andrew Tridgell 1250f62c88 Replay: fix for WriteV usage and cleanup unused code 2020-11-16 10:28:43 +11:00
Andrew Tridgell e143257f8a Replay: added GSF msgs to check_replay.py 2020-11-16 10:28:43 +11:00
Andrew Tridgell e122d8ae8e Replay: allow build with "./waf replay"
a bit easier to remember
2020-11-16 10:28:43 +11:00
Andrew Tridgell 7308384cdc Replay: require a filesystem for replay 2020-11-10 16:15:45 +11:00
Andrew Tridgell 20ecac5e9f Replay: fixed build on boards with OSD 2020-11-10 16:15:45 +11:00
Andrew Tridgell 4edc784dc4 Replay: allow replay on ChibiOS 2020-11-10 16:15:45 +11:00
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