Radio Test and BT exlusive coexistense in same firmware image

Hi,

First I like to share some background. We have a normal BLE application, which is made in nRF Connect and for nRF52833. We like to have radio test functionality and BLE functionality in the same firmware image. It doesn't mean that BLE functionality and radio test functions are used at the same time. Radio test commands are commanded over UART and BLE is not even initialized (bt_enable()) in that case. Seems reasonable to expect that if the BLE is not even enabled, then it should be possible to use radio test functionality.

Now about the problem. My experiments show that when BLE functionality is enabled from the configuration (CONFIG_BT=y) then the modulated carrier TX test crashes the system. It seems to me that BLE enabling from the configuration already takes some resources statically and that even without bt_enable() call.

Is there any thinkable way how BLE feature enabled from the configuration can coexist with radio tests in the same firmware image? Important here is that BLE is even not dynamically initialized when radio tests are used.

By the way, I have made the experiment with the Nordic provided radio test example, where I have only enabled the BLE from configuration (CONFIG_BT=y) and I have observed the same system hard fault.

The hard fault itself looked like the following:

E: MPSL ASSERT: 112, 2189
E: ***** HARD FAULT *****
E: Fault escalation (see below)
E: ARCH_EXCEPT with reason 3

E: r0/a1: 0x00000003 r1/a2: 0x0000000a r2/a3: 0x00000000
E: r3/a4: 0x2000ccbe r12/ip: 0x00000000 r14/lr: 0x0003f407
E: xpsr: 0x61000011
E: Faulting instruction address (r15/pc): 0x0003f412
E: >>> ZEPHYR FATAL ERROR 3: Kernel oops on CPU 0
E: Fault during interrupt handling

E: Current thread: 0x20002aa0 (main)
E: Resetting system

Related