Commit Graph

59 Commits

Author SHA1 Message Date
Luiz Georg b59a2143ae Tools/LogAnalyzer: fix python2/3 compatibility 2022-07-19 22:01:31 +10:00
Luiz Georg d76f3d71ae Tools/LogAnalyzer: pass flake8
`TestDualGyroDrift.py` ignored because it is mostly commented out code
2022-07-19 22:01:31 +10:00
Luiz Georg da0c365f3d Tools/LogAnalyzer: Use more specific exceptions 2022-07-19 22:01:31 +10:00
Luiz Georg 42f202d0ff Tools/LogAnalyzer: apply Black and isort 2022-07-19 22:01:31 +10:00
murata 690d64d664 LogAnalyzer: Support for decacopters 2020-12-08 11:59:10 +11:00
Peter Barker 2eeac9e6fd Tools: LogAnalyzer: Python3 fixes 2020-07-17 11:16:06 +10:00
Peter Barker 642935fd43 Tools: random Python cleanups based on lgtm analysis 2019-09-21 22:26:03 +10:00
Peter Barker bead34be98 Tools: LogAnalyzer: correct to understand field type 'a' 2019-04-27 08:43:36 +10:00
Peter Barker 65bfe322af Tools: LogAnalyzer: cope with text version of mode in MODE line 2018-12-26 13:12:25 +09:00
Peter Barker 3dc6c34465 Tools: LogAnalyzer: fix various Tests for newer-style logs
Tools: LogAnalyzer: don't continue if we fail to set vehicle type from MSG

Tools: LogAnalyzer: cope with renamed CTUN.BarAlt attribute

Tools: LogAnalyzer: cope with renamed CTUN.BarAlt attribute

Tools: LogAnalyzer: cope with missing THR_MIN parameter
2017-12-02 09:26:09 +11:00
Peter Barker 6bd5ac78f5 Tools: LogAnalyzer: fix string-method-on-int bug for unknown modes 2017-09-30 09:19:17 +10:00
Peter Barker ac3cb355c4 Tools: LogAnalyzer: fix bugs, handle newer log formats
Tools: LogAnalyzer: avoid fatal error if mag data is all zeros

Tools: LogAnalyzer: correct comparisons against logdata.vehicleType

Tools: LogAnalyzer: handle logs with TimeUS in place of TimeMS

Tools: LogAnalyzer: handle logs with CTUN.ThO in place of CTUN.ThrOut

Tools: LogAnalyzer: correct motor average value
2017-09-24 12:34:23 +10:00
Peter Barker 2c0e2aab15 Tools: LogAnalyzer: derive motor count from frame type MSG 2017-09-11 12:01:24 +10:00
Peter Barker a6fd812051 Tools: LogAnalyzer: use repr in place of deprecated backticks 2017-07-22 09:28:28 +10:00
Peter Barker cb56cf38d0 Tools: LogAnalyzer: remove vehicle-type-is-first-MSG-assumption 2017-07-22 09:15:59 +10:00
Peter Barker 44d1c77b0c Tools: LogAnalyzer: use print_function 2017-07-22 09:09:51 +10:00
Peter Barker 043b7598d1 Tools: correct error path for corrupt logs 2017-02-07 11:37:38 +11:00
Peter Barker f42df1bc54 Tools: LogAnalyzer: handle MODE lines appearing before vehicle MSGs 2016-09-08 08:41:09 +10:00
Peter Barker 214bca8b30 Tools: LogAnalyzer: correct CTUN test 2016-09-08 08:41:09 +10:00
Peter Barker e357be3d85 LogAnalyzer: adjust for change in vehicle definition MSG string
We changed from ArduCopter to APM:Copter, breaking parts of the LogAnalyzer

This change has LogAnalyzer canonicalise its output to Ardu{Plane,Rover,Copter}

Also account for change in MODE message - ThrCrs has gone away
2015-10-15 09:40:25 +09:00
Peter Barker 82d36520ad LogAnalyzer: fix for 64-bit ints
Also, sqrt must come from math
Also, d indicates a double (a Python float)
2015-10-14 08:50:38 +09:00
Peter Barker f49aedb639 LogAnalyzer: turn times from strings to ints before doing maths 2015-10-13 19:39:02 +09:00
Peter Barker ce558b2b98 LogAnalyzer: cope with TimeUS
See also: 177f61656f
2015-07-10 19:00:22 +10:00
Jason Martens a08d57149e LogAnalyser: Add double support to DataflashLog.py
Doubles were added to dataflash in commit 3991e0c476.
2015-07-10 18:58:11 +10:00
Holger Steinhaus 1cdc5f7c7f LogAnalyser: adapt to new APM:* vehicle names 2015-05-09 12:20:28 +09:00
Holger Steinhaus 46c3c26065 LogAnalyser: fix buffer calculations 2015-05-09 12:20:25 +09:00
Holger Steinhaus a146b188a7 LogAnalyser: fix parsing of log messages without attributes (e.g. STRT) 2015-05-09 12:20:23 +09:00
Markus Koetter c2030de4ec LogAnalyzer: write \xff EOF assumption to stderr 2014-10-27 15:53:36 -07:00
Markus Koetter cf4435989e LogAnalyzer: Binary Logs may end with \xff
- ignoreBadlines can be used to assume this is a proper EOF
2014-10-27 15:53:35 -07:00
Kevin Hester 81bd4c0b4c LogAnalyzer: If skipping badlines, ignore parse errors 2014-08-26 15:36:56 +09:00
Aaron Curtis 179d854a26 LogAnalyzer: Update to include the new "format" argument, and fix scoping on two new tests. 2014-07-08 14:13:00 -07:00
Aaron Curtis 406fedf727 LogAnalyzer: Allow instantiation of DataFlashlog with no input filename, for backward compatibility. My changes make m_dflog=DataFlashlog('/path/to/file.log') work, which seems like the preferable way, but we don't want to break backwards compatibility. 2014-07-08 14:12:59 -07:00
Aaron Curtis 0f5360fefa LogAnalyzer: Default to automatic log format detection. 2014-07-08 14:12:58 -07:00
Aaron Curtis c6d783409c LogAnalyzer: There is no self.logfile, so this must be self.filename. 2014-07-08 14:12:58 -07:00
Aaron Curtis fc79a06b9f LogAnalyzer: Fix indent which I broke when merging. 2014-07-08 14:12:57 -07:00
Aaron Curtis 842f5d20c4 LogAnalyzer: Fix scoping in DataflashLog.py so that multiple instances of DataflashLog can coexist.
Conflicts:
	Tools/LogAnalyzer/DataflashLog.py
2014-07-08 14:12:55 -07:00
Markus Koetter c1d1406c59 LogAnalyzer - accept invalid FMT messages in binary logs
- I really wish this was not necessary, but it is.
2014-07-07 17:54:45 -07:00
Markus Koetter 4e445a716a LogAnalyzer - label/name & format/type consistency 2014-07-07 17:54:44 -07:00
Markus Koetter 099d40f0f8 LogAnalyzer - adjust modeChanges for Plane/Rover
- I lack logs for both, not tested.
2014-07-07 17:54:43 -07:00
Markus Koetter 33d19fc893 LogAnalyzer - add binary log parsing
- parse using ctypes.LittleEndianStructure
 - define classes from FMT messages
 - use the classes as with Text logs for processing
2014-07-07 17:54:41 -07:00
Markus Koetter 64ae2011b5 LogAnalyzer - binary log parsing preparations
- use FMT messages to create classes using type()
 - work with these classes instead of arrays
 - split parsing and processing
2014-07-07 17:54:40 -07:00
Kevin Hester 0bccbf2409 tools: my change to use stdin, broke reading logs that have no header
This fixes it (I'm careful to avoid seeking)
2014-07-01 14:29:15 +10:00
Kevin Hester ddd24e8135 tools: LogAnalyser if we fall off end of GPS data, return a valid time
Found cases where the loiter test would fail with some flights if
the vehicle never left that mode.  Don't use None in that case
2014-07-01 14:28:27 +10:00
Kevin Hester 1a4fce60e8 tools: LogAnalyser, ensure error msgs go to stderr not stdout 2014-07-01 14:28:23 +10:00
Kevin Hester 7dc356f4ca tools: LogAnalyzer fixes to work with pipes as input
seek is not supported on pipes (and not needed in this case)
tell is also not supported, so count bytes on our own
2014-07-01 14:28:11 +10:00
Kevin Hester a756e4f3ef tools: Allow LogAnalyzer to read from stdin rather than just files
Use - intead of the filename
2014-07-01 14:28:04 +10:00
Kevin Hester a31498f599 tools: Change LogAnalyzer tabs to spaces (per APM python conventions) 2014-07-01 14:23:42 +10:00
Andrew Chapman f122b1ba37 LogAnalyzer: added 'import collections', allowed for some AC3.2 logging changes 2014-06-24 15:07:47 +10:00
Andrew Chapman 0f5a89f22e LogAnalyzer: added check for binary log files (can't parse yet) 2014-06-24 15:07:46 +10:00
Andrew Chapman 130a2dcb0b LogAnalyzer: added LogIterator, copter roll/pitch > max lean angle test, 2014-06-24 15:07:46 +10:00