Servers by jDrones

New LOG_DISARMED and LOG_REPLAY parameters


(tridge) #1

After some discussions with Randy, Peter and Paul I have pushed changes to add new LOG_DISARMED and LOG_REPLAY parameters. I’ve also renamed EK2_LOGGING to EK2_LOG_MASK.
The new parameters are meant to make it easier for users to gather logs that are sufficiently detailed to run an EKF replay on while keeping the logs as small as possible.
The LOG_DISARMED parameter replaces the previous bitmask for choosing if we log while disarmed. It defaults to 0 meaning no logging while disarmed. To getting logging while disarmed set LOG_DISARMED=1
The LOG_REPLAY parameter controls the creation of “replay compatible” logs. When this is enabled logging of key sensor data is controlled by libraries/AP_NavEK2, allowing it to log exactly the data and timestamps it needs for a replay.
The key message for users and developers is that if you want a Replay compatible log for debugging issues with EKF2 then you should set:

  • LOG_DISARMED=1
  • LOG_REPLAY=1

EKF2 errors at startup
(tridge) #2

note that you can also raise LOG_FILE_BUFSIZE to commit more memory to logging. That helps you cope with slower microSD cards. For most people setting LOG_FILE_BUFSIZE to 40 will be good if you want to have a high chance of no lost messages.
Buying a good microSD card really helps. The SanDisk Ultra 8GByte is good value.
You can check if you are missing any messages by looking at the PM.LogDrop message. That tells you how many log messages have been lost in that time period.


(Sundeep) #3

Hi, hope your doing well,
i was wondering if it is really important to use log_disarm enabled or not.
as I am using it and memory gets full very fast, so every time i have to format my sd card.
can you please suggest anything on it.


(Shawn) #4

You really only need to turn on Log_Disarmed if you are trying to pin point an issue preventing arming or after land and disarm. You would normally leave Log_Disarmed=0