Caio Marcelo de Oliveira Filho
ef615a5da1
Replay: implement HAL::Callbacks
...
Also removes includes for each board since they are not necessary
anymore.
2015-10-21 09:16:09 +11:00
Caio Marcelo de Oliveira Filho
ec52df991c
build: compile only the HAL files needed by the board
...
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho
2e464a53c2
AP_HAL: make code not depend on concrete HAL implementations
...
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.
A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.
The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.
Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.
The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Andrew Tridgell
643178fbe3
Replay: handle EKF2 replay
2015-09-23 18:56:15 +10:00
Andrew Tridgell
b71678b901
Replay: fixed build with NavEKF2
2015-09-23 11:57:18 +10:00
Randy Mackay
803ca92f73
Replay: remove INS start style
2015-09-21 17:06:53 +09:00
Andrew Tridgell
da2ad49276
Replay: fix for changes to AP_RangeFinder API
2015-09-08 16:46:52 +10:00
Peter Barker
43adcd39ab
Replay: DataFlash needs a version string
2015-09-03 15:20:20 +10:00
Gustavo Jose de Sousa
84b5555a1a
Tools: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:28:41 +10:00
Peter Barker
dbbc5ed816
Replay: fix double-free in MsgHandler
2015-07-10 18:56:20 +10:00
Andrew Tridgell
f2106f39aa
Replay: save CHEK messages when not being generated
2015-07-09 10:20:45 +10:00
Andrew Tridgell
2eb204d0ca
Replay: added --downsample option
2015-07-07 15:55:41 +10:00
Andrew Tridgell
dd53f5a7a1
Replay: added --nottypes option
2015-07-07 15:14:05 +10:00
Lucas De Marchi
547dbb3906
Replay: use ARRAY_SIZE macro
2015-07-07 07:56:30 +10:00
Andrew Tridgell
dee1bf3da3
Replay: show smaller parameter changes
2015-07-07 07:56:17 +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
bd27fed241
Replay: fixed missing import
2015-07-02 17:14:42 +10:00
Andrew Tridgell
ef36d74a1c
Replay: added generation of -checked logs
2015-07-02 17:05:09 +10:00
Andrew Tridgell
c74d39558c
Replay: initial version of CheckLogs.py
2015-07-02 17:05:09 +10:00
Andrew Tridgell
4f9ccf727a
Replay: cope with bad NSats field from old logs
2015-07-02 17:05:09 +10:00
Andrew Tridgell
a5abb7c698
Replay: use tabs in replay_results.txt
2015-07-02 14:28:44 +10:00
Andrew Tridgell
f79ae4b749
Replay: add to replay_results.txt when run with --check
2015-07-02 14:28:44 +10:00
Andrew Tridgell
b93101b1bf
Replay: reduced verbosity
2015-07-01 21:11:46 +10:00
Andrew Tridgell
2c0d6c0406
Replay: fixed yaw error calculation
2015-07-01 20:44:08 +10:00
Andrew Tridgell
d07b93e661
Replay: fixed writing of CHEK messages
2015-07-01 20:44:08 +10:00
Peter Barker
8bbeedb158
Replay: flush dataflash log on floating point exception
2015-06-30 16:19:22 +10:00
Andrew Tridgell
2291a8994e
Replay: fixed build
2015-06-29 15:59:53 +10:00
Peter Barker
2266f118e9
Replay: DataFlash frontend/backend split
2015-06-26 16:02:50 +10:00
Andrew Tridgell
f2756ecb22
Replay: added checking of solution
2015-06-26 15:55:19 +10:00
Andrew Tridgell
9016a3d3db
Replay: added --chek-generate option
...
adds CHEK messages based on current estimates
2015-06-26 15:55:18 +10:00
Peter Barker
54efa3d727
Replay: split off a ReplayVehicle class
...
Like "Copter copter" and "Plane plane": "ReplayVehicle replayvehicle"
2015-06-23 09:49:13 +10:00
Andrew Tridgell
9e36e2c562
Replay: fixed handling of dual-GPS HDop field
2015-06-18 09:28:59 +10:00
Andrew Tridgell
47834759e5
Replay: fixed build warnings
2015-06-17 12:46:55 +10:00
Andrew Tridgell
31f7525a61
Replay: added --no-imt flag
2015-06-17 12:46:55 +10:00
Andrew Tridgell
c7cb980498
Replay: support IMT messages
2015-06-16 09:53: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
7eb588e9ff
Replay: use a subclasss of DataFlashFileReader to determine log rate
2015-06-14 16:47:52 +10:00
Peter Barker
d41b21cd19
Replay: split off a base class for reading dataflash logs
2015-06-14 16:47:52 +10:00
Peter Barker
0b5e645075
Replay: grab reference to timestamp rather than timestamp
...
PARM messages would not have been updating the clock correctly
Also, random stack corruption...
2015-06-14 16:34:01 +10:00
Peter Barker
125042e1db
Replay: use GetOptLong for command line parsing
2015-06-10 10:14:15 +10:00
Peter Barker
f4db241bf6
Replay: avoid dataflash buffer filling up on many pass-through messages
2015-06-09 21:52:46 +10:00
Peter Barker
5fb46b0e11
Replay: fix dataflash overflow on timestamp-poor (older) logfiles
2015-06-09 21:52:45 +10:00
Andrew Tridgell
b1002eae3b
Replay: fixed -A0 for "arm immediately"
2015-06-03 12:31:21 +10:00
Andrew Tridgell
26e55f078a
Replay: converted to .cpp files
2015-06-01 16:15:08 +10:00
Andrew Tridgell
b27d0a6525
Replay: handle replay on older logs
...
we now pass-thru all messages except those that are being generated by
replay. We also pass-thru the FMT headers for those messages
2015-05-28 13:30:38 +10:00
Andrew Tridgell
2007d2b6eb
Replay: cope with FRAM messages
...
use them to trigger ahrs updates
2015-05-28 13:30:37 +10:00
Peter Barker
8eafc209a9
Replay: understand and use 64-bit timestamps in Replay
2015-05-27 11:54:17 +10:00