Commit Graph

454 Commits

Author SHA1 Message Date
Peter Barker a12c2a6b87 AP_Logger: use instance numbers for logging GPS data 2020-11-20 09:45:57 +11:00
Peter Barker 58c23e618e AP_Logger: remove unused IMUDT code
Unused since we've moved to new Replay code
2020-11-19 08:31:49 +11:00
Andrew Tridgell 6bf7f9e864 AP_Logger: use load_file()
save a bit of flash
2020-11-18 09:11:36 +11:00
Andrew Tridgell 019544ceb1 AP_Logger: allow for replay with both EKF enabled
even when one is disabled in the original log
2020-11-17 13:45:07 +11:00
Andrew Tridgell 04f60001ff AP_Logger: allow WriteV() to work within Replay
save formats for lookup by WriteV
2020-11-16 10:28:43 +11:00
Peter Barker 48385b82dc AP_Logger: use instance number for Mag logging 2020-11-11 19:31:53 +11:00
Peter Barker 12f0e9dd43 AP_Logger: use instance number for Baro logging 2020-11-11 19:31:53 +11:00
Peter Barker 2437cf8a24 AP_Logger: use instance number for IMU logging 2020-11-11 19:31:53 +11:00
Andrew Tridgell 3152da98e1 AP_Logger: skip structure validation in replay 2020-11-10 16:15:45 +11:00
Andrew Tridgell a08a1a4247 AP_Logger: allow for larger LOG_FILE_BUFSIZE
larger sizes on F7 and H7 allow for much more rapid loggging
2020-11-10 16:15:45 +11:00
Andrew Tridgell 71e4d72fe3 AP_Logger: removed 64k limitation on log buffer
the reason for the limit is gone with AP_FileSystem
2020-11-10 16:15:45 +11:00
Andrew Tridgell 2945de4796 AP_Logger: use WITH_SEMAPHORE in _WritePrioritisedBlock
this prevents a 1ms delay when waiting for the semaphore
2020-11-10 16:15:45 +11:00
Andrew Tridgell 851cb30e0d AP_Logger: speed up startup with replay if LOG_DISARMED=0 2020-11-10 16:15:45 +11:00
Andrew Tridgell b7d60b1d97 AP_Logger: added C field to EKF msgs 2020-11-10 16:15:45 +11:00
Andrew Tridgell 09aff03edc AP_Logger: support new replay system
added allow_start_ekf and block write method for replay

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Andrew Tridgell daa0abeb13 AP_Logger: make structure check errors clearer
add message name to more error messages
2020-11-10 16:15:45 +11:00
Andrew Tridgell bd7ed003c2 AP_Logger: split out EKF messages and prepare for new replay
adds core to more EKF message structures

Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
Michael du Breuil 25ca2a0828 AP_Logger: Reserve space in PM for last internal error line 2020-11-03 11:04:13 +11:00
Andrew Tridgell 66596dcf25 AP_Logger: allow for retry of log open with LOG_DISARMED=1
if booting without a microSD and with LOG_DISARMED=1 then this allows
for a retry of opening the log every 5s
2020-10-27 20:35:56 +11:00
Patrick José Pereira 258083a6f2 AP_Logger: AP_Logger_File: Set custom log directory in init
`_log_directory` was used before `ensure_log_directory_exists`,
to fetch the log path

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-10-20 09:31:49 +11:00
Michael du Breuil b04844ca13 AP_Logger: Log all vibration instances 2020-10-06 14:20:49 +11:00
Randy Mackay d9b90bf19f AP_Logger: VISP and VISV get ignored field 2020-10-06 09:18:04 +09:00
Peter Barker 8e6cde25dc AP_Logger: keep pointer to link rather than using its ->chan 2020-09-25 09:01:00 +10:00
Andy Piper dc0084a2b2 AP_Logger: only write final log out a page at a time to avoid lock contention
remove health check timing hack
2020-09-21 20:44:34 +10:00
Mark Whitehorn f25a1e7a0d AP_Logger: fix description of BAT.Res 2020-09-21 08:50:49 +10:00
Andy Piper d036b57de3 AP_Logger: stop logs safely in the block logger and asynchronously where possible 2020-09-17 10:45:57 +10:00
Andrew Tridgell 930726ca9a AP_Logger: fixed string warnings 2020-09-15 09:40:03 +10:00
Andy Piper 3bbac765f0 AP_Logger: correct units on raw accel data 2020-09-13 12:15:33 +10:00
Randy Mackay 36dee8791a AP_Logger: revert adding PSCP log structure 2020-09-12 08:10:33 +09:00
Iampete1 9753a20404 AP_Logger: add PSCP log structure 2020-09-11 10:12:08 +10:00
Iampete1 02c225ee93 AP_Logger: add structure for PSC message 2020-09-11 10:12:08 +10:00
Andrew Tridgell bea9769b82 AP_Logger: log unhealthy barometers 2020-09-09 06:35:50 +10:00
Andy Piper 5c554221c7 AP_Logger: address review commenst from #14299 2020-09-06 09:12:59 +10:00
Andy Piper ccb583d092 AP_Logger: make block logger conform to mavlink expectations of numbering
add support for log time to block logger
refactor rotation into backed. Don't start logs when erasing
correct log start logic
separate read and write points so that requesting log information does not corrupt the current log
when starting a new log stop logging first
clear the write buffer when starting a new log
insert utc time when requesting info for the current log
stop logging and request formats again when starting a new log
cope with erase happening while we are logging
keep pushing out startup messages even when format messages are done
don't log to the gcs in the io thread
don't start new logs in the io thread
don't validate logs while erasing
flush logs when stopping logging
account for page header when calculating logs sizes
don't return data when asked for more data than in the log
optimize locking and use separate semaphore to mediate ring buffer access
stop logging when the chip is full and send a notification
calculate logs sizes correctly even when they wrap
read log data correctly even when it wraps
add stats support to block logger
reset dropped when starting a new log
fail logging when the chip is full
refactor critical bufferspace checks
increase messagewriter budget to 250us and to 300us for FMT
2020-09-05 10:20:39 +10:00
Harshit Kumar Sankhla 9588a68e1b AP_Logger: added logging of baro, gps, airspeed to XKFS
new XKFS message for "XKF Sensor"
2020-08-27 20:20:51 +10:00
Harshit Kumar Sankhla 775a40e4cc AP_Logger: Add RErr and ErSc fields to NKF3 log
RErr (Core Relative Errors) and ErSc (Core Error Scores)
2020-08-27 20:20:51 +10:00
Peter Barker 716e7622be AP_Logger: log RCIN channels 14 and 15 in RCI2 2020-08-25 10:27:00 +10:00
Rishabh ad3a7e4d49 AP_Logger: Update logs based on new BendyRuler type 2020-08-24 08:53:20 +09:00
Randy Mackay f7ec08ff18 AP_Logger: add Write_Winch 2020-08-07 21:55:07 +09:00
Randy Mackay 5d99ce9a84 AP_Logger: remove winch events 2020-08-07 21:55:07 +09:00
Rishabh 251ebf9286 AP_Logger: Log Simple Avoidance 2020-08-05 15:37:04 +09:00
Peter Barker c539698528 AP_Logger: add documentation for GRAW, GRXH and GRXS messages 2020-07-22 12:29:19 +10:00
Mark Whitehorn 2b96b7915b AP_Logger: align PID(RPYAS) description to message names 2020-07-22 09:19:43 +09:00
Peter Barker 721d94a23b AP_Logger: log accumulated power status flags; all flags ever set 2020-07-21 09:12:14 +10:00
Paul Riseborough 0cf70fe961 AP_Logger: Log D gain limit cycle gain scaler
Used by Plane roll and pitch loops in APM_Control
2020-07-13 13:47:50 +10:00
Andrew Tridgell f80ca85428 AP_Logger: use strncpy_noterm 2020-07-10 13:32:24 +10:00
Randy Mackay 30bcf4d13b AP_Logger: VISP and VISV reset counter becomes uint8 2020-06-25 15:31:43 +10:00
Rishabh 4fa2c3f5ba AP_Logger: Log if BendyRuler has avoided changing directions 2020-06-24 11:42:20 +09:00
Randy Mackay 912e089c18 AP_Logger: fix BCL voltage scaling
voltages are in millivolts
2020-06-24 10:19:15 +09:00
Randy Mackay 82423384bf AP_Logger: BCL msg logs up to 12 battery cell voltages 2020-06-24 10:19:15 +09:00
Peter Barker 0c5d31f40f AP_Logger: ensure log directory exists before opening log
This will help with starting logs when inserting a fresh SD card which
doesn't have the ardupilot log directory on it
2020-06-16 12:03:21 +10:00
Peter Barker 66f8359c6b AP_Logger: factor out an ensure_log_directory_exists method 2020-06-16 12:03:21 +10:00
Peter Barker 0e964a4654 AP_Logger: use config error loop rather than abort
Also add a specific check for the length of the labels field
2020-06-10 09:02:35 +10:00
chobitsfan 255c685a8a AP_Logger: fix missing unit description in VISP 2020-06-09 13:31:21 +09:00
Randy Mackay 6714aa4e83 AP_Logger: shorten VISP and VISV log field names 2020-06-09 13:31:21 +09:00
chobits 5e5a0d2111 AP_Logger: log ext nav pos err and ang err 2020-06-09 13:31:21 +09:00
Iampete1 fee5b998bf AP_Logger: add min MB free param 2020-06-09 09:23:25 +10:00
Randy Mackay 08f6b2128e AP_Logger: add VISV field descriptions 2020-06-02 08:33:42 +09:00
Randy Mackay 714975662d AP_Logger: VISP message gets velocity error field 2020-06-02 08:33:42 +09:00
chobits 9b480ca755 AP_Logger: support VISION_SPEED_ESTIMATE 2020-06-01 17:51:24 +09:00
MisterMower 41245acf14 AP_Logger: Added units to CurrTot message
Units are not associated with the CurrTot message. AP_BattMonitor.h indicates the total current consumed is reported in mAh. This change sets the units for CurrTot to Ampere seconds and applies a multiplier of 3.6 to convert the reported mAh value to Ampere seconds.
2020-05-26 16:19:14 +10:00
Peter Barker 1d9c2b1726 AP_Logger: add documentation for SBPH and SBRH 2020-05-26 14:13:06 +10:00
Peter Barker 49918d070e AP_Logger: add documentation for ESC LoggerMessage 2020-05-24 13:07:35 +10:00
Peter Barker cc60faa58e AP_Logger: use single message number for all ESCs by using instance # 2020-05-24 13:07:35 +10:00
Andrew Tridgell 97f335396b AP_Scripting: fixed memory leak 2020-05-19 09:09:48 +10:00
Peter Hall 19ba9abc89 AP_Logger: add function and make public for scripting use 2020-05-19 09:09:48 +10:00
Peter Barker 115751833b AP_Logger: process pending rotate on arming
If the user arms the vehicle during the logging-persist-timeout we
should rotate the log immediately.
2020-05-15 16:02:09 +10:00
Peter Barker ca4af94833 AP_Logger: prevent potential infinite recursion in log-open codepath
If anything in start_new_log did logging (for example, by sending a
statustext), we end up infinitely recursing.

With the patch:

diff --git a/libraries/AP_Logger/AP_Logger_File.cpp b/libraries/AP_Logger/AP_Logger_File.cpp
index 69b8ef0431..eb422d10f8 100644
--- a/libraries/AP_Logger/AP_Logger_File.cpp
+++ b/libraries/AP_Logger/AP_Logger_File.cpp
@@ -778,6 +778,7 @@ void AP_Logger_File::PrepForArming()
  */
 void AP_Logger_File::start_new_log(void)
 {
+    gcs().send_text(MAV_SEVERITY_WARNING, "Starting new log");
     stop_logging();

     start_new_log_reset_variables();
pbarker@bluebottle:~/rc/ardupilot(master)$

We see:

    at ../../libraries/AP_Logger/AP_Logger_File.cpp:781
    this=0x555555ad9d30, pBuffer=0x7fffff8209d0, size=75, is_critical=true)
    at ../../libraries/AP_Logger/AP_Logger_Backend.cpp:372
    this=0x555555ad9d30, pBuffer=0x7fffff8209d0, size=75)
    at ../../libraries/AP_Logger/AP_Logger_Backend.h:32
    this=0x555555ad9d30, message=0x7fffff820b10 "Starting new log")
    at ../../libraries/AP_Logger/LogFile.cpp:466
    this=0x555555a6d758 <copter+11384>,
    message=0x7fffff820b10 "Starting new log")
    at ../../libraries/AP_Logger/AP_Logger.cpp:752
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log", arg_list=0x7fffff820be0,
    dest_bitmask=1 '\001') at ../../libraries/GCS_MAVLink/GCS_Common.cpp:1847
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log", arg_list=0x7fffff820be0)
    at ../../libraries/GCS_MAVLink/GCS.cpp:53
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log")
    at ../../libraries/GCS_MAVLink/GCS.cpp:60
    at ../../libraries/AP_Logger/AP_Logger_File.cpp:781
    this=0x555555ad9d30, pBuffer=0x7fffff820dc0, size=75, is_critical=true)
    at ../../libraries/AP_Logger/AP_Logger_Backend.cpp:372

I'm not aware of any instances in the code where this will actually
happen - but it could easily sneak in.
2020-05-11 15:12:36 +10:00
Peter Barker 7befe84f0c AP_Logger: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker ad9493caca AP_Logger: use logger Write method for logging Solo gimbal
Also document the messages
2020-04-28 09:56:09 +10:00
Peter Barker 830176f2f4 AP_Logger: remove unused SBFE 2020-04-27 16:16:50 +10:00
Peter Barker f882bd0c3e AP_Logger: remove unused UBY1/UBY2 messages
These appear to have been replaced with instance fields on the UBX1 and
UBX2 messages.

Also mark the Instance field on UBX1, UBX2 as an instance field.
2020-04-26 11:35:04 +10:00
Peter Barker 7e3c9c209e AP_Logger: document GPSB and GPAB 2020-04-26 09:02:39 +10:00
Peter Barker eee0f028ba AP_Logger: fix examples
Having a valid AP_Scheduler is now a requirement
2020-04-23 11:33:41 +09:00
Peter Barker a83c25cfa7 AP_Logger: add documentation for EKF messages
NKF0, NKF1, NKF2, NKF3, NKF4, NKF5, NKQ

XKF0, XKF1, XKF2, XKF3, XKF4, XKF5, XKFD, XKQ, XKV1, XKV2
2020-04-21 09:48:43 +10:00
Mark Whitehorn 874c293911 AP_Logger: expand description of GPS.spd 2020-04-18 15:33:43 +10:00
Peter Barker 870159c14f AP_Logger: add times-full to MAV log structure 2020-04-17 22:21:14 +10:00
Peter Barker 908dfa58f3 AP_Logger: remove unused FORMATS stage in DFLogStart messagewriter 2020-04-17 21:42:15 +10:00
Peter Barker 678d6f43c5 AP_Logger: use existing LoggerMessageWriter to log uploaded missions
Instead of creating a MessageWriter explicitly to log uploaded missions
we fiddle the state of the one stored in the startup message writer.

This has the advantage of being much more likely to log the entire
mission (as the buffer constraint is removed), and with the addition of
a time-remaining check much less likely to cause a timing glitch.
2020-04-15 16:24:40 +10:00
Peter Barker d8582d864a AP_Logger: convert Solo gimbal messages to TimeUS from TimeMS
Also remove unused gimbal3 message entirely
2020-04-15 16:11:04 +10:00
Peter Barker acba2a78f6 AP_Logger: add message validation check against duplicate labels 2020-04-14 12:30:58 +10:00
Randy Mackay 4f639481c1 AP_Logger: VISP msg adds reset_counter 2020-04-14 10:28:03 +10:00
Peter Barker 767c010332 AP_Logger: add documentation for WENC, CESC, PRX, ADSB, BCN, BCL, OABR, OADF 2020-04-14 07:34:59 +10:00
Peter Barker c3b8db95b8 AP_Logger: add DSTL log message documentation 2020-04-12 08:36:48 +10:00
Randy Mackay c0187fe05f AP_Logger: add log message description for VISO 2020-04-09 19:41:08 +09:00
Randy Mackay f18be824ea AP_Logger: add VISP message 2020-04-09 19:41:08 +09:00
chobits 63320f140a AP_Logger: constraints time spend in header writing, more complete 2020-04-09 19:17:17 +10:00
chobits b829384fdf AP_Logger: constraints time spended in header writing 2020-04-09 19:17:17 +10:00
murata f83f6c71e4 AP_Logger: const extern hal reference 2020-04-07 20:45:51 +09:00
murata 264a90bb45 AP_Logger: Change to coding style (NFC)
AP_Logger: Change to coding style (NFC)
2020-04-07 20:37:33 +09:00
Rishabh 76b4e42bca AP_Logger: Logger documentation TimeUS and typo fix 2020-04-07 18:57:01 +10:00
Peter Barker 2ed550966d AP_Logger: correct units for velocity on OF log message 2020-04-06 10:46:45 +10:00
Peter Barker 33f17d7739 AP_Logger: document ARSP,ASP2,CAM,TRIG,POWR,TERR,CSV,CMD,OF,AHR2 2020-04-06 10:46:45 +10:00
Peter Barker 3fb61c4cf0 AP_Logger: add documentation for more log messages
ERR,DSF,EV,SIM,ORGN,POS,LGR,MON,TSYN,IMU,IMUT
2020-04-05 12:49:19 +10:00
Peter Barker 09152cd254 AP_Logger: correct time field name on DMS 2020-04-05 12:49:19 +10:00
Peter Barker 50c60aa8f2 AP_Logger: add documentation for ACC1,ACC2,ACC3,DMS,GPA,GPA2,GPS2,GYR1,GYR2,GYR3,MAVC,PM 2020-04-05 10:12:03 +10:00
Peter Barker a92206d090 AP_Logger: log dataflash-over-mavlink timestamp in micros rather than millis
... like the vast majority of our dataflash messages
2020-04-05 10:10:49 +10:00
Peter Barker e41ea5a273 AP_Logger: add docco for BAR2,BAR3,MSG,RAD,RALY,RFND,RPM,RSSI 2020-04-04 10:05:15 +11:00
Peter Barker 1770199c41 AP_Logger: add documentation for MAV and PARM 2020-04-01 10:13:03 +11:00
Peter Barker be6ed0be9f AP_Logger: add stream_slowdown to MAV message 2020-03-31 11:13:11 +11:00
Peter Barker 8a28fa2244 AP_Logger: rename struct log_NKF2a to log_XKF2 2020-03-31 10:25:59 +11:00
Peter Barker aeb45bf146 AP_Logger: fix extremely unlikely nullptr dereference in SITL sanity checks 2020-03-29 08:07:29 +11:00
Andrew Tridgell b5cc1f236a AP_Logger: use new DirHandle for directory listings 2020-03-28 15:28:03 +11:00
Peter Barker 7f0e722a33 AP_Logger: add onboard LogMessage documentation 2020-03-27 08:05:53 +11:00
Henry Wurzburg c34c857123 AP_Logger: update logger meta-data, add to gitignore 2020-03-25 14:20:53 +11:00
Peter Barker 35ad582440 AP_Logger: correct various onboard log message documentation 2020-03-22 18:35:14 +11:00
Henry Wurzburg 7bb5d92dcc AP_Logger: fix typos in logger message meta-data 2020-03-22 10:04:53 +11:00
Peter Barker fa50b5f76d AP_Logger: add more metadata for logged messages
LogStructure: add MAG log information

LogStructure: add MODE log information

LogStructure: add PID log information

AP_Logger: add ATT information

AP_Logger: add documentation for BAT log message

LogStructure: add RCIN and RCOU messages

AP_Logger: add VIBE message information
2020-03-21 09:34:43 +11:00
Peter Barker de36b6a16a AP_Logger: add LoggerMessage metadata for GPS message 2020-03-20 13:05:46 +11:00
Peter Barker 55ee3362b9 AP_Logger: add example of documentation for a log structure 2020-03-20 13:05:46 +11:00
Peter Barker 8679e95fca AP_Logger: add comments about message_writer being leaked
These are really "shouldn't happen", and only happen at startup, so
impact of the memory leak is quite limited.

Fixing this requires putting in a virtual destructor on the
MessageWriter class - this and the calls add up to several hundred bytes
of flash.
2020-03-12 15:10:42 +11:00
Andrew Tridgell ed37ebede8 AP_Logger: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Randy Mackay 2ee5f9dcc5 AP_Logger: ARM msg logs ArmChecks as uint32_t 2020-02-25 19:55:54 +09:00
Peter Barker 10c9bc3659 AP_Logger: add flags to MAV dataflash log
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Peter Hall 7bef426531 AP_Logger: EKF4 change flags state from uint16_t to uint32_t 2020-02-19 06:45:07 +11:00
murata f6595a41ae AP_Logger: Change the type of a method 2020-01-22 12:45:27 +11:00
Andrew Tridgell 71a0645a59 AP_Logger: make all semaphores recursive
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
2020-01-19 20:19:30 +11:00
Andrew Tridgell 56035fa5a1 AP_Logger: add a semaphore to protect creation of new log formats 2020-01-17 00:54:00 +11:00
Andrew Tridgell 25f5069b58 AP_Logger: removed old NuttX hack 2020-01-16 22:16:30 +11:00
Randy Mackay 6aff18d22d AP_Logger: remove non-error init messages 2020-01-16 16:47:28 +11:00
Andrew Tridgell 2ebfdefc11 AP_Logger: regain some logging IDs
this gains a lot of logging ID slots by moving elements before LOG_FORMAT_MSG
2020-01-15 21:30:38 +11:00
Peter Barker 6b94710e4e AP_Logger: include method and forced in armed log message 2020-01-14 11:39:36 +11:00
Andy Piper d167dacfae AP_Logger: fix locking issues, uninitialized read and status message length
account for erased partial sectors when looking at wrapped logs
2020-01-14 10:25:42 +11:00
Peter Barker 2c5e07cb09 AP_Logger: log battery and cell information using instance numbers 2020-01-08 13:00:17 +11:00
Jaaaky 1817280e01 AP_Logger: fix 'last_file' may be used uninitialized with debug build 2020-01-06 14:53:03 +11:00
Andrew Tridgell 58fcd4601a AP_Logger: added CESC message for logging CAN ESC status 2020-01-05 15:25:56 +11:00
Andrew Tridgell 2666853100 AP_Logger: added CSRV logging for CAN servo status 2020-01-05 15:25:56 +11:00
Andy Piper 54b6e7b264 AP_Logger: mavlink backend needs to be the last backend
be really careful to catch aborted erases
take care to protect shared structures in io thread
if flash corruption is detected try and recover whole files
overwrite format in erase to make sure erase happens
output useful messages at critical times
a block is 64k a sector is 4k, rename internal variables appropriately
cope with log wrapping when sending log listings over mavlink
2020-01-02 18:18:04 +11:00
Randy Mackay 2e09acc2ae AP_Logger: add error code for rtl missing rangefinder 2019-12-17 20:02:01 +09:00
Peter Barker 9d7016dca8 LogStructure: adjust for using instance numbers on NavEKF libraries 2019-12-17 12:22:07 +11:00
Peter Barker bd8a27ff4c AP_Logger: tidy and rearrange log structures
Move non-SBP stuff out of the SBP block.  Remove unused split between
normal and advanced log entries
2019-12-16 17:11:43 +11:00
Peter Barker 031c97db30 AP_Logger: correct Write() containing 'a' entries 2019-12-11 15:50:42 +11:00
Peter Barker 9c17fdb851 AP_Logger: use enum class for transfer activity
These weren't great symbols to create...
2019-12-05 16:42:48 +11:00
Randy Mackay 94d641d3d5 AP_Logger: ESC logging includes motor temperature 2019-11-26 11:56:33 +11:00
Peter Barker f337d011e7 AP_Logger: make LogEvent an enum class, split off LogDataID
We were mixing the enumeration values across different messages, which
isn't great
2019-11-05 08:19:26 +08:00
Peter Barker daba5e26a5 AC_Logger: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Michael du Breuil c369139be0 AP_Logger: Support new ModeReason 2019-10-25 08:48:22 +08:00
Peter Barker c30873097a AP_Logger: use ahrs singleton to log ATT, POS and AHRS2 2019-10-24 13:15:46 +11:00
Peter Barker e84082a099 AP_Logger: canonicalize on STANDBY rather than STANDY_BY 2019-10-21 21:22:17 +08:00
Randy Mackay dee4e867e4 AP_Logger: add vibration failsafe error subsystem 2019-10-18 11:15:25 +09:00
Leonard Hall e8e969af62 AP_Logger: Support for Standby functions 2019-10-17 14:57:18 +09:00
Michael du Breuil cb5bba8379 AP_Logger: Log GPS yaw accuracy 2019-10-15 11:06:11 +11:00
Michael du Breuil 05d104675e AP_Logger: Fix logging of current on non primary instances 2019-10-11 08:39:28 +11:00
Peter Barker 083d4ac3ea DataFlash: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker 4d17a7cf89 AP_Logger: tidy MessageWriter stages using enum class 2019-10-05 16:37:43 +10:00
Michel Pastor dec5b97275 AP_Logger: fix logging on 256Mbit flash chips 2019-10-05 16:25:22 +10:00
Michel Pastor 49bf0a3057 AP_Logger: fix AP_Logger_Block::get_num_logs() 2019-10-04 12:49:16 +10:00
Peter Barker fd0a8b72b4 AP_Logger: correct uninitialised value when logging all rally points 2019-10-04 10:39:01 +10:00
Andrew Tridgell 3ebc69320c AP_Logger: fixed LOG_FILE_DSRMROT with delayed log stop
now that we persist logging for 15s after disarm we need to also delay
the log rotation if LOG_FILE_DSRMROT=1. Otherwise we will put the log
data into the next log, which defeats the purpose of the 15s
persistance
2019-10-03 07:17:16 +10:00
Andrew Tridgell 889b18022b AP_Logger: use HAL_MEM_CLASS for logging buffer size 2019-10-01 09:29:55 +10:00
Andrew Tridgell 3bf3ebb703 AP_Logger: try harder to use close to user buffer size
this stops us drastically reducing buffer size when low on memory
2019-10-01 09:29:55 +10:00
Randy Mackay 3431938bce AP_Logger: add error code to Write_OADijkstra 2019-09-28 07:58:48 +09:00
Andrew Tridgell d7ee622edc AP_Logger: fixed use of old irqsave() API 2019-09-21 15:36:47 +10:00
Andrew Tridgell 108d7fa024 AP_Logger: added logging of extra loop time from the scheduler 2019-09-19 18:25:20 +10:00
Peter Barker 6d71ef5cf8 AP_Logger: move EKF timing logging out to EKF 2019-09-03 09:28:37 +10:00
Michael du Breuil fa6e43be77 AP_Logger: Forward declare AHRS
This reduces the number of places this is implicitly included, and helps
to reduce the scope of files that get rebuilt
2019-08-28 13:13:03 +10:00
Peter Barker 78af091869 AP_Logger: log parameter space used as part of log open 2019-08-28 11:51:09 +10:00
Andrew Tridgell d40835c666 AP_Logger: use AP::FS().set_mtime() 2019-08-27 15:40:43 +10:00
Andrew Tridgell df4cb00970 AP_Logger: added LOG_FILE_TIMEOUT parameter
this allows for cards to be removed and re-inserted while continuing
logging
2019-08-27 15:40:43 +10:00
Andrew Tridgell 667b4e045a AP_Logger: convert to use AP_Filesystem 2019-08-27 15:40:43 +10:00
Peter Barker 631725f817 AP_Logger: add Write_Command for writing out received mavlink commands 2019-08-27 09:32:00 +10:00
Andrew Tridgell 66dc36ef88 AP_Logger: ifdef out _need_rtc_update 2019-08-26 15:41:44 +10:00
Andrew Tridgell 4418495c99 AP_Logger: use UNUSED_RESULT
Co-Authored-By: Francisco Ferreira <OXINARF@users.noreply.github.com>
2019-08-26 15:41:44 +10:00
Andrew Tridgell 8e58cb993d AP_Logger: fix timestamp on log files opened before GPS lock 2019-08-26 15:41:44 +10:00
murata 1a8e644437 AP_Logger: GPA/GPA2 Change the unit of DELTA. 2019-08-26 14:22:47 +10:00
Andrew Tridgell 7d5c0e92ae AP_Logger: added logging of I2C ISR count 2019-08-26 09:13:39 +10:00
Peter Barker 6af3149adc AP_Logger: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 20be080325 AP_Logger: correct example to add required override keywords 2019-08-14 09:41:54 +10:00
Peter Barker e18174e4ac AP_Logger: correct use of uninitialised stack value 2019-08-13 10:43:05 +10:00
Peter Barker b2d9d7b6a0 AP_Logger: const-struct many structures, use temp for navekf object 2019-08-06 11:45:04 +10:00
Randy Mackay b666b172c4 AP_Logger: replace Write_OA with Write_OABendyRuler and Write_OADijkstra 2019-08-06 08:15:45 +09:00
Andrew Tridgell 0c314c36b6 AP_Logger: log baro health 2019-07-31 12:53:57 +10:00
Randy Mackay 95bc52de8e AP_Logger: fix PRX distance scaling
distance values logged are in meters
2019-07-26 21:51:44 -07:00
Leonard Hall 4aa74c5c53 AP_Logger: Missing label change 2019-07-26 09:16:51 +09:00
Leonard Hall 94ee2fb2fd AP_Logger: add error to PID message 2019-07-25 17:38:15 +09:00
Leonard Hall 157f786adf Global: rename desired to target in PID info 2019-07-25 17:38:15 +09:00
Peter Barker a89593856d AP_Logger: remove dangling print_mode method declaration 2019-07-24 13:35:01 +09:00
Siddharth Purohit 359dd3f71c AP_Logger: add logging for 3rd instance of EKF core 2019-07-23 12:34:38 +10:00
Pierre Kancir 781e9ae9c1 AP_Logger: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Michael du Breuil da3602b90d AP_Logger: Log unknown battery values as out of band 2019-07-14 00:28:00 -07:00
Michael du Breuil ee3511c1fa AP_Logger: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Andrew Tridgell a2e75876bf AP_Logger: added logging of GPS yaw
some GPS modules can give true yaw, whether moving or not
2019-07-13 11:05:57 +10:00
Peter Barker 7c102b90fa AP_Logger: use singletons when logging camera information 2019-07-09 09:32:39 +10:00
Peter Barker e009b7aee5 AP_Logger: move logging of EKF packets out to EKF 2019-07-06 19:05:51 +10:00
Peter Barker 502f74f0d9 AP_Logger: switch to using stderr for log structure debug
The console output doesn't seem to appear anywhere now.
2019-07-05 12:05:27 +10:00
Peter Barker 288952b5a2 AP_Logger: reserve W for watts as a unit 2019-07-05 12:05:04 +10:00
Peter Barker 3d91547039 AP_Logger: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker d9c30f489f AP_Logger: use beacon singleton 2019-07-01 07:20:58 +09:00
Andrew Tridgell dd3eec2a38 AP_Logger: persist logging for 15s after disarm or arming failure
this will provide useful information in logs on disarms in flight or
reasons for arming failure
2019-06-21 11:40:53 +10:00
Peter Barker 7bca6d5ec0 AP_Logger: log RC protocol each time a log is opened 2019-06-18 11:35:38 +10:00
Michael du Breuil f8750a6d18 AP_Logger: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 23439de39a AP_Logger: Don't include AP_BattMonitor which we don't need 2019-06-18 10:02:05 +10:00
Peter Barker 733b7b7f1a AP_Logger: include internal error count in log structure 2019-06-12 10:05:59 +10:00
Peter Barker 5f877294c9 AP_Logger: re-add lost validate_structure loop
Lost with bad rebase
2019-06-12 10:05:59 +10:00
Peter Barker cd0265644d AP_Logger: disable float-mult-zero sanity check for the time being 2019-06-12 10:05:59 +10:00
Randy Mackay c7b1ad3443 AP_Logger: add Write_OA 2019-06-11 13:13:22 +09:00
Andrew Tridgell 91f80613dd AP_Logger: removed internal error for logging without sem 2019-06-06 16:35:22 +10:00
Tatsuya Yamaguchi 18a43601cd RangeFinder: Add up to 10 RangeFinder logs 2019-06-04 19:11:11 +10:00
Peter Barker be9df7f600 AP_Logger: add a README.md to help locating units/mults/fieldtypes 2019-06-04 19:00:11 +10:00
Peter Barker b644df14d0 AP_Logger: move documentation for fieldtypes, units and mults to top 2019-06-04 19:00:11 +10:00
Peter Barker d67e68eb03 AP_Logger: move LOG_ARM_DISARM_MSG in 2019-05-30 07:37:30 +09:00
Peter Barker a5f5b4349c AP_Logger: add a Write_Rally method 2019-05-22 08:53:45 +10:00
Andrew Tridgell 6b1374e55c AP_Logger: log SPI and I2C counters in PM msg 2019-05-17 08:56:06 +10:00
Peter Barker 0225b6817a AP_Logger: examples: add test for Write and WriteCritical 2019-05-16 17:21:24 +10:00
Peter Barker 54eff7eafc AP_Logger: add WriteCritical method to AP::logger()
For callers who emphatically want their custom messages to be written out.
2019-05-16 17:21:24 +10:00
Andrew Tridgell 6fa69c2297 AP_Logger: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4cdfe6bac3 AP_Logger: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell 0b20d972cd AP_Logger: prevent log erase from triggering watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 24c5bf42ae AP_Logger: force logging on an armed watchdog reset
and don't clear sdcard space
2019-04-22 16:53:35 +10:00
Andrew Tridgell 215c41dbb1 AP_Logger: handle long delays in opening log files 2019-04-22 16:53:35 +10:00
Peter Barker 146b0c69d6 AP_Logger: check return values from get_log_data 2019-04-19 13:34:42 +10:00
Peter Barker 540d4ae796 AP_Logger: RangeFinder library now does its own logging
Since we were poking the backends directly it should probably be over
there
2019-04-09 22:17:58 +10:00
Peter Barker 57c4cbc771 AP_Logger: use RSSI singleton for logging 2019-04-09 09:33:13 +10:00
Peter Barker d90e554608 AP_Logger: move logging of ARSP into Airspeed library 2019-04-09 09:29:35 +10:00
Peter Barker 26d8627d18 AP_Logger: use airspeed singleton for logging
This avoids the header dependency on airspeed
2019-04-09 09:29:35 +10:00
Michael du Breuil 2e2ef27670 AP_Logger: Remove unneeded includes 2019-04-05 20:12:53 +11:00
IamPete1 ade554b3f7 AP_logger: add ADSB log 2019-03-28 14:19:01 -07:00
Tom Pittenger 027f9afcf8 AP_logger: rename dataflash to logger and refactor the filename logger.bin 2019-03-28 16:40:58 +11:00
Peter Barker b6ee93aeef AP_Logger: change BAD_DEPTH logerror code from 0 to 3
We use 0 to mean cleared for many other subsystems, so this is a bit of
a wart.
2019-03-27 12:02:53 -04:00
Peter Barker 0d0dfd49bd AP_Logger: accomodation for Sub error subsystems and codes 2019-03-27 12:36:40 +11:00
Peter Barker d2a683a758 AP_Logger: move Log_Write_Error into library 2019-03-27 12:36:40 +11:00
Peter Barker bd8a27476e AP_Logger: make structure validation failure at runtime fatal 2019-03-26 10:18:05 +11:00
Michael du Breuil 3f1fbbf6c6 AP_Logger: simplify the message writers
Specifically:
  - Remove some unreachable nullptr checks
  - Remove a noop stage
  - Remove unneeded initilizers
2019-03-24 11:45:08 +11:00
Peter Barker ee690e7ab9 AP_Logger: use AP_InternalError for tracking internal errors 2019-03-21 21:34:33 +11:00
Peter Barker 422aa8ad7e DataFlash: include internal errors in dataflash PM message 2019-03-21 21:34:33 +11:00
Peter Barker 4e151197a8 AP_Logger: log units and multipliers correctly 2019-03-21 17:44:05 +11:00
Michael du Breuil 0743b979fa AP_Logger: Don't log AHR2 unless the quat is available
This should not be a functional change, because if the secondary
attitude is available then the secondary quat will be as well
2019-03-19 11:42:54 +11:00
Randy Mackay cf8a7fd423 AP_Logger: add values to backend-type param description 2019-03-09 14:22:28 +09:00
Peter Barker 539000df40 AP_Logger: remove more DataFlash references
Also strongly type the backend type
2019-03-02 22:28:13 +11:00
Peter Barker dfa5a423ec AP_Logger: add sanity check that trigger for bad float multipliers 2019-03-01 15:43:46 +11:00
Andrew Tridgell 5b762711fd AP_Logger: handle EEXIST for log dir create 2019-03-01 11:39:12 +11:00
Andrew Tridgell 202e6d38c4 AP_Logger: fixed race condition with multi-thread AP_Logger 2019-02-26 16:18:26 +11:00
Peter Barker b9cd3a8a39 AP_Logger: add logging of mavlink stats 2019-02-26 11:23:57 +11:00
Peter Barker 4ae64416c3 AP_Logger: add instance unit type 2019-02-26 11:23:57 +11:00
Randy Mackay e28efeceac AP_Logger: implement Write_ESC 2019-02-18 20:55:47 +09:00
Mark Whitehorn c9c802f617 AP_Logger: call wrap_360_cd on yaw in WriteAttitudeView 2019-02-15 09:17:08 +09:00
Peter Barker c4fd5ec350 AP_Logger: include stdio for some printfs 2019-02-15 08:15:45 +11:00
Peter Barker 9108eeb8f5 AP_Logger: log rally points into dataflash on upload 2019-02-12 11:48:55 +11:00
Peter Barker 9a04ae5cf7 AP_Logger: use a MessageWriter to emit rally points 2019-02-12 11:48:55 +11:00
Tom Pittenger 21db5e1a5c AP_Logger: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Tom Pittenger 1110fad8e7 AP_Logger: move wheelEncoder logging to library 2019-02-06 10:41:59 +09:00
Peter Barker 3071372c8d AP_Logger: add Sub-specific events 2019-02-04 09:30:07 +09:00
Peter Barker 78e76b84b2 AP_Logger: move handling Write_Event into AP_Logger 2019-02-04 09:30:07 +09:00
Tom Pittenger 9b540a6380 AP_Logger: log health failure probability 2019-02-03 08:25:46 -08:00
Peter Barker 5ecb730766 AP_Logger: remove rally argument from Write_Rally - use singleton 2019-01-31 09:51:25 +09:00
Peter Barker 7525c593cb AP_Logger: stop taking mission as argument to Write_EntireMission 2019-01-29 19:07:05 -08:00
vierfuffzig 81f77f5311 AP_Logger: fix _BACKEND_TYPE parameter description 2019-01-22 07:29:01 +11:00
Andrew Tridgell 1d57385184 AP_Logger: removed f4light logging backend 2019-01-21 21:57:21 +11:00
Andrew Tridgell e3c9f10e91 AP_Logger: revived block based logging 2019-01-21 21:57:21 +11:00
Peter Barker 78be3880ee AP_Logger: remove VRBRAIN-HAL-specific code 2019-01-19 19:44:19 +11:00