Commit Graph

538 Commits

Author SHA1 Message Date
xianglunkai
4f00dfa69a correct the filling order of the struct, otherwise it may cause compilation errors 2023-11-10 17:12:17 +11:00
Iampete1
1bfe83bb63 AP_Logger: log rally point flags field 2023-11-01 19:06:39 +11:00
Andrew Tridgell
69371e84fd AP_Logger: added build directory to VER message
this allows log review tools to use right parameter and mode map when vendor has changed the
vehicle type strings
2023-10-13 15:13:10 +11:00
Peter Barker
7f90de0973 AP_Logger: allow for compilation without AP_RTC_ENABLED 2023-10-11 19:17:27 +11:00
Willian Galvani
fd4da61067 AP_RangeFinder: log signal quality 2023-10-11 08:29:58 +11:00
Pierre Kancir
01f94e9aa5 AP_Logger: don't virtual out_of_time_for_writing_messages for DF
This save use some flash against the solution with override
2023-09-27 08:15:42 +10:00
Pierre Kancir
06836b947f AP_Logger: make some functions final 2023-09-27 08:15:42 +10:00
Pierre Kancir
247a72b823 AP_Logger: fix warning for implicit overrided function 2023-09-27 08:15:42 +10:00
Iampete1
93ccec3203 AP_Logger: Write_PID: add PD sum limit flag 2023-09-26 10:41:05 +10:00
Iampete1
5def9e7038 AP_Logger: PID move limit to flag bit 2023-09-26 10:41:05 +10:00
Peter Barker
86aad6f6bf AP_Logger: log valid-input and in-rc-failsafe
Can now sensibly log these now the RC_Channels library has the methods
2023-09-12 19:14:18 +10:00
Peter Barker
eb344ee35c AP_Logger: remove AP_Logger.h include in AP_Logger_Backend
Don't need the storage size in the header
2023-09-09 17:35:15 +10:00
Peter Barker
198268e03c AP_Logger: use HAL_LOGGING_ENABLED defines 2023-09-06 20:26:25 +10:00
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