janosbrodbeck opened a new issue #912: URL: https://github.com/apache/mynewt-nimble/issues/912
While running experiments with extended advertisings I encountered a reproducable assertion fail in the `ble_ll_scan_aux_data_unref()` function. The exact position is: `ble_ll_scan.c:1092`. I could trigger this assert only in scenarios when a node scans and advertises extended advertisings. Only advertising or only scanning could not trigger this until now. Unfortunately, the error cannot be triggered on purpose, but occurs 'randomly' after a while. Sometimes after a few minutes/hours, sometimes all experiments run for hours without a problem. But higher payload and lower intervals seems to trigger it with a higher chance. I've written a [small and simple example application](https://github.com/janosbrodbeck/nimble_app_assertion_fail) for mynewt to reproduce it. This application more or less simulates ICMPv6 pings with a payload of 1100 bytes. It needs two nodes (e.g. nrf52dk/nrf52840) to run. Brief instructions are in the repo. The error should be triggered very fast with an interval between 500ms and 300ms. Some background: * Originally I ran with RIOT into this issue but reproduced it with mynewt in the same scenarions * Scan parameters are nimBLE (fast window/interval) defaults. Scan duration/window is set to 0 = continously scanning. * Advertising happens with `FAST_INTERVAL1_MIN`/`FAST_INTERVAL1_MAX`, 1M PHY. This is the assertion: ``` # 017040 Assert @ 0x1a6d1 - repos/apache-mynewt-nimble/nimble/controller/src/ble_ll_scan.c:1092 # 017040 Unhandled interrupt (2), exception sp 0x20004710 # 017040 r0:0x0000005e r1:0x00000000 r2:0x80000000 r3:0xe000ed00 # 017040 r4:0x0001a6d1 r5:0x0002bb0c r6:0x00000444 r7:0x00000000 # 017040 r8:0x000000f8 r9:0x00000001 r10:0x000000f8 r11:0x2000235c # 017040 r12:0xa0000000 lr:0x0000c89f pc:0x0000c88e psr:0x61000000 # 017040 ICSR:0x00421802 HFSR:0x00000000 CFSR:0x00000000 # 017040 BFAR:0xe000ed38 MMFAR:0xe000ed34 ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org