Commit Graph

525 Commits

Author SHA1 Message Date
Peter Barker 34524d3475 AP_Logger: correct logging when rally disabled 2023-09-05 22:23:51 +10:00
muramura 337ba27370 AP_Logger: Align indentation with others 2023-09-04 13:55:43 +10:00
Anthony Luo 43eacbee33 AP_Logger: fix typo in AP_Logger.h 2023-09-01 17:49:00 +10:00
Peter Barker 771f8855b7 AP_Logger: correct use of nullptr in SITL structure sanity checks
A developer might be able to craft a fault such that s could be nullptr here.  They would need to work at it, but we can do better.
2023-08-14 22:25:50 +10:00
Peter Barker 10ef10da45 AP_Logger: trim LogStructure base off included code 2023-08-01 10:07:28 +10:00
Asif Khan b5d1363c28 AP_Logger: add MNT log msg for mount's actual and target angles logging 2023-07-26 17:33:18 +10:00
Peter Barker 8ff9fc0f70 AP_Logger: add Write_NamedValueFloat
for getting diagnostics into the code during ddebug fast
2023-07-18 11:34:31 +10:00
Andy Piper d9869290ee AP_Logger: remove unused counter 2023-07-13 11:02:40 +10:00
Henry Wurzburg f71826a992 AP_Logger:correct blk rate param metadata 2023-06-30 15:13:52 +01:00
Peter Barker e5dda42056 AP_Logger: remove requirement to know storage type of fence item in headers 2023-06-24 14:21:01 +10:00
Peter Barker 023316b269 AP_Logger: use AP_AHRS_ENABLED define 2023-06-24 14:21:01 +10:00
Peter Barker edb0a9b7fe AP_Logger: simplify setting of HAL_LOGGER_FENCE_ENABLED
This is automatically unset in chibios_hwdef.py
2023-06-24 14:21:01 +10:00
Tatsuya Yamaguchi 3fc8f27899 AP_Logger: make SCR name field instance 2023-05-23 10:27:21 +10:00
Peter Barker 6dbf1f2d66 AP_Logger: replace HAVE_FILESYSTEM_SUPPORT with backend defines 2023-05-17 09:40:39 +10:00
Andrew Tridgell db60b2586e AP_Logger: expand servo status logging 2023-05-09 09:40:53 +10:00
Peter Barker 395961883f AP_Logger: avoid many method calls logging RCOU 2023-04-17 21:28:49 +10:00
Andrew Tridgell 48acb1a2f7 AP_Logger: added LOG_DARM_RATEMAX
this sets the logging rate max when disarmed. In combination with
LOG_DISARMED=3 it gives a very nice setup to get always on logging
with very little addition to the log sizes. It is particularly useful
in combination with LOG_REPLAY=1
2023-04-14 07:48:24 +10:00
Andrew Tridgell 63e45a3910 AP_Logger: added LOG_DISARMED=3
when LOG_DISARMED is set to 3 then we log while disarmed but if we
reboot without ever arming the log is discarded. This allows for using
LOG_DISARMED without filling the microSD.
2023-04-14 07:48:24 +10:00
Andrew Tridgell 3b4f5d77af AP_Logger: use AP_Enum for log_disarmed 2023-04-14 07:48:24 +10:00
Peter Barker 6eda22e7de AP_Logger: do not rotate logs when disarming if we are replay-logging 2023-04-14 07:47:33 +10:00
Peter Barker 3ba349fdb6 AP_Logger: add and use RC_Channel_config.h 2023-03-22 14:25:09 +11:00
Peter Barker e715e1e14e AP_Logger: factor Write_PSC[NED] methods to save bytes 2023-03-10 14:47:33 -08:00
Peter Barker e25d6bb8e4 AP_Logger: rename HAL_SCHEDULER_ENABLED to AP_SCHEDULER_ENABLED
there's AP_HAL::Scheduler which confuses this
2023-02-28 11:26:04 +11:00
Iampete1 a4f1951780 AP_Logger: add outout throttle to MOTB message 2023-02-28 11:06:32 +11:00
Peter Barker a471d5a9b7 AP_Logger: add @FieldValueEnum for rangefinder status
will add meaning to Wiki and log analysis tools

--- LogMessages.rst-master	2023-02-11 14:03:51.204650105 +1100
+++ LogMessages.rst	2023-02-11 14:04:32.297022568 +1100
@@ -4764,6 +4764,20 @@
 | Dist     | Reported distance from sensor                 |
 +----------+-----------------------------------------------+
 | Stat     | Sensor state                                  |
+|          | Values:                                       |
+|          |                                               |
+|          | +----------------+---+--+                     |
+|          | | NotConnected   | 0 |  |                     |
+|          | +----------------+---+--+                     |
+|          | | NoData         | 1 |  |                     |
+|          | +----------------+---+--+                     |
+|          | | OutOfRangeLow  | 2 |  |                     |
+|          | +----------------+---+--+                     |
+|          | | OutOfRangeHigh | 3 |  |                     |
+|          | +----------------+---+--+                     |
+|          | | Good           | 4 |  |                     |
+|          | +----------------+---+--+                     |
+|          |                                               |
 +----------+-----------------------------------------------+
 | Orient   | Sensor orientation                            |
 +----------+-----------------------------------------------+
2023-02-13 08:34:58 +11:00
Peter Barker 42b784b581 AP_Logger: add unit 'y' for litres/second 2023-02-02 11:42:04 +11:00
Peter Barker 0320f18ef9 AP_Logger: include litres in unit list 2023-02-02 11:42:04 +11:00
Iampete1 b238ed8dd9 AP_Logger: Split MCU montering into new log message, nan if VCC and servo voltge not avalalbe 2023-01-31 15:43:50 +11:00
Peter Barker c25720a47e AP_Logger: use FieldBitmaskEnum and FieldValueEnum 2023-01-25 19:50:34 +11:00
Peter Barker 96f359b4e3 AP_Logger: avoid logging duplicate FMT/UNIT/FMTU/MULT messages
Failing due to being out of time meant we wouldn't incremement the counter, even though we'd emitted the item.

it is important we try to send something, so move this check to be after we increment whichever counter we are using.
2023-01-18 10:09:43 +11:00
Peter Barker 6524bf3729 AP_Logger: create and use AP_Logger_config.h 2023-01-03 11:24:14 +11:00
Paul Riseborough fd7c4bc841 AP_Logger: Add option to disable disarmed logging on USB connection
AP_Logger: Update LOG_DISARMED parameter description
2022-12-15 10:38:15 +11:00
Peter Barker ee908e8df2 AP_Logger: include PIDInfo header in place of PID header
AC_PID.h includes a remarkable amount of stuff
2022-12-14 22:21:27 +11:00
Randy Mackay c258d1b32c AP_Logger: PM msg gets LR field 2022-12-06 11:00:51 +11:00
Andrew Tridgell ae84adf632 AP_Logger: prevent long loops due to parameter logging
ensure that the logging process() doesn't take more than 1ms
2022-12-04 18:08:40 +11:00
Andy Piper 38bc9bfab1 AP_Logger: on example sketches there is always time to write out FMT messages 2022-11-09 19:01:14 +11:00
Andy Piper f9451e36f5 AP_Logger: control PrepForArming in UNKNOWN builds 2022-11-09 19:01:14 +11:00
Andy Piper 209dd15346 AP_Logger: need to be able to finish format messages even when there is no fence 2022-11-08 17:56:00 +11:00
Iampete1 1547c65ff3 AP_Scripting: bindings: logging: add flag to copy format strings 2022-11-08 10:49:43 +11:00
Iampete1 1df00d879a AP_Logger: add option allocate scripting format strings in msg_fmt_for_name 2022-11-08 10:49:43 +11:00
Iampete1 6578c020d8 AP_Logger: log structure: SCR: update description 2022-11-03 09:50:59 +11:00
Peter Barker 8e06d5cd36 AP_Logger: include required AP_Vehicle_Type header 2022-11-02 18:35:48 +11:00
Iampete1 c623ae8b82 AP_Logger: MessageWriter: SysInfo: write RCOut string 2022-10-18 11:53:59 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Andy Piper cfdf6306ef AP_Logger: ensure that we don't read the same block more than once, dramatically increasing performance. 2022-10-03 07:52:43 +11:00
Andrew Tridgell eae2bed630 AP_Logger: fixed missing doc field 2022-09-26 14:17:53 +10:00
Paul Riseborough 59d4808786 AP_Logger: Fix ARSP data type string 2022-09-26 14:17:53 +10:00
Paul Riseborough 592793b510 AP_Logger: Add consistency test ratio to ASPD logging 2022-09-26 14:17:53 +10:00
Yuri 32c38434a2 AP_Logger: increase short board names to 23 chars 2022-09-21 17:56:42 +10:00
Peter Barker f254a3ef2b AP_Logger: fold AP_Filesystem_Available.h into AP_Filesystem_config.h 2022-09-15 10:53:02 +10:00
Michael du Breuil 18e374e687 AP_Logger: Fix an error in the doc string for the MAVC message 2022-09-15 09:45:33 +10:00
Michael du Breuil 0c73da5e79 AP_Logger: Strictly handle NACK/ACK
This is a change in bevaiour. The previous behaviour was to check for a
NACK, and if it wasn't a NACK it was assumed to be an ACK. This is a bad
assumption to let people get away with, because in the future if we ever
add other options to the enum we are more likely to have to cope with
bad implementation in the wild
2022-09-07 10:25:30 +10:00
Peter Barker a9a3de8f20 AP_Logger: correct compilation when fence compiled out 2022-09-01 08:25:55 +10:00
Iampete1 fc2bc2822e AP_Logger: MessageWriter: convert enums to enum class's 2022-08-30 09:07:27 +10:00
Iampete1 47853383b1 AP_Logger: add fence message writer 2022-08-30 09:07:27 +10:00
Peter Barker bf5817e108 AP_Logger: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
Iampete1 8352a7b2b3 AP_Logger: params always use set method 2022-08-03 13:43:48 +01:00
Henry Wurzburg 530d59017a AP_Logger: add increment on file rate limiting to allow <1Hz 2022-08-02 10:22:48 +10:00
Henry Wurzburg a395b3d2a8 AP_Logger: add AUX switch to pause logging of streamed entries 2022-08-02 10:15:08 +10:00
Iampete1 63e03622d4 AP_Logger: log default param values 2022-07-20 17:59:59 +10:00
Peter Barker 659f801650 AP_Logger: remove unused includes 2022-07-20 17:32:24 +10:00
Iampete1 ecc3ae2d05 AP_Logger: Log Structure: remove comma on included AIS structure 2022-07-12 09:39:54 +10:00
RuffaloLavoisier 0e0c23a8e3 AP_Logger : correct spelling on comment 2022-07-11 08:51:27 +09:00
Andy Piper f666ed8ec7 AP_Logger: support W25N01GV flash chips
add separate driver for W25N01GV triggered via HAL_LOGGING_DATAFLASH_DRIVER
move flash_test() into AP_Logger_Block.
cleanup use of 4k sector commands to account for chips that only have block commands
2022-06-08 21:44:21 +10:00
Andrew Tridgell 2c962e46c1 AP_Logger: don't compiler AP_Logger.cpp if logging not enabled
for some reason this fixes f103-GPS build, even though the code wasn't
referenced
2022-06-06 14:50:40 +10:00
Andrew Tridgell a15cf3192d AP_Logger: save crash_dump.bin to sdcard on boot
on each boot write crash_dump.bin to the microSD if it is available
this makes it easier for users to send in their crash dumps, and less
likely they will overwrite it with a fw update
2022-06-06 14:50:40 +10:00
Andrew Tridgell c02aef8a50 AP_Logger: allow for new log msgs in Replay
this makes replay tuning and code testing much easier as up to 10 new
log messages can be added in the replay code
2022-06-01 17:07:41 +10:00
Randy Mackay 5b40808ee8 AP_Logger: error subsystem added for dead reckon failsafe 2022-05-25 20:05:21 +09:00
Andy Piper ccbe62589e AP_Logger: add W25Q128 variant 2022-05-24 10:32:34 +10:00
Iampete1 48b3549158 AP_Logger: RCOUT only log if there is a valid output channel 2022-05-22 12:07:37 +10:00
Iampete1 8110b9ac2d AP_Logger: add loging of servo out 15 to 32 2022-05-22 12:07:37 +10:00
Peter Barker 3cb104f537 AP_Logger: log airspeed primary changes 2022-05-17 10:27:57 +10:00
murata 6102e094be AP_Logger: Console output can be disabled 2022-05-17 09:53:06 +10:00
Tamas Nepusz f91ea8a0dd AP_Logger: make LogStructure non-packed to fix compilation of SITL on Apple M1 2022-05-11 07:54:06 +10:00
Andrew Tridgell 43a947f390 AP_Logger: fixed a bug in wrapped log count
fixes #20687
2022-05-06 06:56:33 +10:00
Peter Barker 750fd2c820 AP_Logger: tidy includes 2022-05-03 09:14:58 +10:00
Andrew Tridgell ed1a5c086b AP_Logger: removed annoying message on missing logs 2022-04-19 11:45:26 +10:00
Andrew Tridgell 93b55e367e AP_Logger: fixed log listing with gap, and EKF error on log list
this fixes two issues:

The first issue that if we are missing a log file in the middle of the
list then it was not possible to download recent logs, as we get the
incorrect value for total number of logs. This happened for me with
107 logs, with log62 missing from the microSD. It would only show 45
available logs, so the most recent logs could not be downloaded.

The second issue is that get_num_logs() was very slow if there were a
lot of log files in a directory. This would cause EKF errors and ESC
resets. Using a opendir/readdir loop is much faster (approx 10x faster
in my testing with 107 logs on a MatekH743).
2022-04-19 11:45:26 +10:00
xianglunkai f7f053191a AP_Logger: must set default fd = -1 2022-04-19 10:00:32 +10:00
Peter Barker e5c40d0e54 AP_Logger: move logging of Beacon into Beacon library 2022-04-13 16:22:19 +10:00
Peter Barker 795427e574 AP_Logger: move logging of Proximity into Proximity library 2022-04-13 16:22:19 +10:00
Peter Barker 23f2055330 AP_Logger: move logging of RPM into RPM library 2022-04-13 16:22:19 +10:00
Peter Barker 0c32eeca2e AP_Logger: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker b80cc9a610 AP_Logger: remove old, unused log metadata for MON 2022-04-06 21:54:15 +10:00
Peter Barker a546bc797c AP_Logger: source IDs and structs from HAL_ChibiOS 2022-04-06 21:54:15 +10:00
Iampete1 0a0178988d AP_Logger: add 1e-9 log multiplyer 2022-04-06 17:22:30 +10:00
Andrew Tridgell 06b6632f30 AP_Logger: fixed @SYS file logging
the key fix is the reset of the fd to -1. Without that fix we only
ever log @SYS/uarts.txt

The timing change is needed to get the files out in a reasonable
time. The function is actually getting called at 100Hz or less, not
1kHz (measured on MatekH743 copter at 400Hz). So we need to run it
faster to get the files logged in a reasonable time
2022-04-06 07:46:29 +10:00
Andrew Tridgell a01ca35939 AP_Logger: increase stack of log_io thread by 256
This was seem on omnibusf4pro, it is a bit too close:

  log_io PRI= 59 sp=0x20015CC0 STACK=144/1656
2022-04-01 19:56:30 +11:00
Andrew Tridgell ee6a7f21ec AP_Logger: added terrain correction logging field 2022-03-28 16:01:21 +11:00
Iampete1 1435fdcf97 AP_Logger: log structure: update airspeed heath probability feild name 2022-03-02 16:14:50 +11:00
Andrew Tridgell e715972264 AP_Logger: reduce the stack log frequency
10Hz is plenty
2022-02-22 12:17:17 +11:00
Peter Barker 67b86867f2 AP_Logger: add LogMessage documentation for PIDN and PIDE 2022-02-17 10:53:41 +11:00
Andy Piper 4f785b4aaa AP_Logger: add @SYS/timers.txt to logged files 2022-02-16 15:28:04 +11:00
Peter Barker 85b4ee289e AP_Logger: log VER - ArduPilot version information 2022-02-09 18:32:38 +11:00
Peter Barker 189c4cc4c7 AP_Logger: add missing documentation for RCI2 message 2022-02-01 22:45:19 +11:00
Andrew Tridgell 94c117fe62 AP_Logger: log original fw string if available 2022-01-19 08:07:45 +11:00
Iampete1 cf1202ae65 AP_Logger: add MOTB message 2022-01-18 10:18:10 +11:00
Mark Whitehorn 5f7f1cff2b AP_Logger: fix _RATEMAX parameter descriptions 2022-01-12 10:15:45 +11:00
Peter Barker fc46fe71f0 AP_Logger: fix memory leak logging files at startup 2022-01-11 14:18:14 +11:00
Andy Piper 835e0be245 AP_Logger: support Winbond W25X32 for KakuteH7Mini 2022-01-11 10:58:55 +11:00