2024-12-11 06:13 AM
For the moment our stakeholders have ordered only BLE support for our device, but on the HW side we already decided to take the 1MB WB55 variant to have enough room for future Thread support.
Since the stm32wb5x_BLE_Thread_dynamic_fw is so big that in field updates of the stack are impossible, my idea was to produce the BLE only generation also with the BLE+Thread stack installed.
To test this, I took all the memory constraints from the example project (Ble_Thread_Dyn_SED_FreeRTOS), installed the big stack and ran my bluetooth application (which works fine with light and full BLE stack).
Now when I start to advertise, all the aci functions give positive feedback, but I can see no advertisement on the air. So what more do I need to do? Probably something to appease the Thread part of the concurrent stack?
2024-12-12 01:08 AM
The Thread part of the stack needs to be enabled even if you are not going to actively use it. You can take a look at the example application code itself - this is done in APP_THREAD_Init_Dyn_1(). It should be enough to call APP_THREAD_RegisterCmdBuffer(), APP_THREAD_TL_THREAD_INIT(), APP_THREAD_Init_UART_CLI() and ThreadInitStatus = SHCI_C2_THREAD_Init() in your code.