Everyone,

the remaining crashes I have seen in quite a while were all due to the task watchdog triggering. I have now added capturing the names of the tasks that failed feeding the dog and capturing the event that was processed at the time of the crash/wdt to the RTC boot data.

If set, it's shown by the "boot" command and transmitted to a v2 server via the "*-OVM-DebugCrash" records.

Example:

OVMS# boot status
Last boot was 10 second(s) ago
Time at boot: 2020-07-18 11:53:07 CEST
  This is reset #1 since last power cycle
  Detected boot reason: Crash (12/12)
  Reset reason: Task watchdog (6)
  Crash counters: 1 total, 0 early

Last crash: abort() was called on core 0
  Backtrace:
  0x4008e627 0x4008e8c1 0x400e6100 0x40083f6a
  Event: ticker.1@module 64 secs
  WDT tasks: OVMS Events
  Version: 3.2.013-303-gfc79b92f/factory/edge (build idf v3.3.2-879-g0137aef47 Jul 18 2020 11:29:45)

This was a test trigger by "module trigger twdt".

DebugCrash record structure is now:
    // H type "*-OVM-DebugCrash"
    //  ,<firmware_version>
    //  ,<bootcount>,<bootreason_name>,<bootreason_cpu0>,<bootreason_cpu1>
    //  ,<crashcnt>,<earlycrashcnt>,<crashtype>,<crashcore>,<registers>,<backtrace>
    //  ,<resetreason>,<resetreason_name>
    //  ,<curr_event_name>,<curr_event_handler>,<curr_event_runtime>
    //  ,<wdt_tasknames>


Regards,
Michael

-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26