Hi Mark, Michael,

The module updated itself to the 1d03 firmware early this morning, on schedule, and the update was only done the one time (no double updates as yet).  'metric list version' shows :
3.2.008-126-g0291d03/ota_1/edge (build idf v3.3-beta3-775-gdc1ca69 Jan 31 2020 08:10:46)
So it appears that the issue has been resolved. 

I haven't tried rebooting the module to look at the boot sequence, as I thought I should let it sit for a day (to scan past the update window a second time) to see if it remains stable.  I'll give the boot sequence a look in a day or so.

Thanks for figuring this out!  Great teamwork.

Greg



Mark Webb-Johnson wrote:
I put some telemetry on this and see (for the first ten seconds of boot):

I (43) events: Initialising EVENTS (1200)
I (612) events: SignalEvent: event 'config.mounted' queued (0 waiting, 20 free)
I (682) ovms_main: Starting HOUSEKEEPING...
I (682) housekeeping: Initialising HOUSEKEEPING Framework...
I (842) events: SignalEvent: event 'housekeeping.init' queued (1 waiting, 19 free)
I (1022) housekeeping: Executing on CPU core 1
I (1022) housekeeping: reset_reason: cpu0=12, cpu1=12
I (1022) housekeeping: Initialising WATCHDOG...
I (1022) housekeeping: Starting PERIPHERALS...
I (1262) events: SignalEvent: event 'egpio.output.1.low' queued (1 waiting, 19 free)
I (1262) housekeeping: Auto init max7317 (free: 193092 bytes)
I (1272) housekeeping: Auto init ext12v (free: 193092 bytes)
I (1282) housekeeping: Auto init dbc (free: 193092 bytes)
I (1282) housekeeping: Auto init wifi (free: 193092 bytes)
I (1462) housekeeping: Auto init modem (free: 149952 bytes)
I (1472) housekeeping: Auto init vehicle (free: 149656 bytes)
I (1482) events: SignalEvent: event 'power.can1.on' queued (4 waiting, 16 free)
I (1492) events: SignalEvent: event 'egpio.output.2.low' queued (5 waiting, 15 free)
I (1502) housekeeping: Auto init obd2ecu (free: 141484 bytes)
I (1502) housekeeping: Auto init server v2 (free: 141484 bytes)
I (1512) housekeeping: Auto init server v3 (free: 141484 bytes)
I (1522) housekeeping: Auto init javascript (free: 141484 bytes)
I (1522) housekeeping: Auto init done (free: 141484 bytes)
I (1532) housekeeping: Starting USB console...
Firmware: 3.2.008-125-g1fca0362-dirty/factoents: 
SignalEvent: event 'system.start' queued (7 waiting, 13 free)
I (2022) events: SignalEvent: event 'ticker.1' queued (8 waiting, 12 free)
I (2202) simcom: State: Enter CheckPowerOff state
I (2202) events: SignalEvent: event 'egpio.output.3.low' queued (1 waiting, 19 free)
I (2202) events: SignalEvent: event 'egpio.output.0.low' queued (2 waiting, 18 free)
I (3022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (4022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (5022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (6022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (6022) sdcard: SD CARD has been inserted
I (6022) events: SignalEvent: event 'sd.insert' queued (1 waiting, 19 free)
I (7022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (8022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (8022) events: SignalEvent: event 'sd.mounted' queued (1 waiting, 19 free)
I (9022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (10022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (11022) events: SignalEvent: event 'ticker.1' queued (1 waiting, 19 free)
I (11022) events: SignalEvent: event 'ticker.10' queued (1 waiting, 19 free)

(that doesn’t include scheduled events, only the ones from OvmsEvents::SignalEvent)

I think the issue was most likely triggered by the egpio events introduced a while back. Agree with Thomas that this is most likely just a simple queue overflow. Perhaps EGPIO is flapping at startup, causing a flurry of these egpio events? I am guessing that this is aggravated in Greg’s case as he is doing some egpio and power work for HUD control.

I’ve increased the OVMS_HW_EVENT_QUEUE_SIZE to 40 on my test build, and just released that to the production server (for edge). As this sdkconfig file is not included in github, I recommend all developers do the same for their local builds.

@Michael can you set the same on your production build server?

@Greg can you check your existing firmware boot (via usb) and check for 'queue overflow, event '%s’ dropped’ style messages on startup (probably around the time is says ’Starting USB console…’.

@Greg please try the edge 3.2.008-126-g0291d03 firmware. Update to it, reboot, and see if ‘metric list version’ shows the version correctly. Hopefully this resolves (or works around) the issue.

Regards, Mark.

On 30 Jan 2020, at 8:07 PM, Michael Balzer <dexter@expeedo.de> wrote:

Maybe OVMS_HW_EVENT_QUEUE_SIZE is just too small now, with the added events during boot and async event processing?

Regards,
Michael
{snip}