diff --git a/epicardium/ble/ble.c b/epicardium/ble/ble.c index a6f840f76b6ca14fb6d3a9dd8942a81cccd86d3a..5e6fa1cb4427aa8cb89c1e751966dee264e24f3f 100644 --- a/epicardium/ble/ble.c +++ b/epicardium/ble/ble.c @@ -244,10 +244,18 @@ void vBleTask(void *pvParameters) vTaskDelay(pdMS_TO_TICKS(500)); WsfInit(); + taskENTER_CRITICAL(); + /* Critical section to prevent a loop in iq_capture2 / meas_freq in + * /home/maxim/Documents/src/BLE/mcbusw/Hardware/Micro/ME14/Firmware/trunk/NDALibraries/BTLE/phy/dbb/prot/ble/pan2g5/afe/max32665/board_config.c:275 + * if BHI160 and -Ddebug_prints=true is enabled*/ StackInit(); + taskEXIT_CRITICAL(); BbBleDrvSetTxPower(0); setAddress(); + /* We are going to execute FreeRTOS functions from callbacks + * coming from these interrupts. Their priority needs to be + * reduced to allow this. */ NVIC_SetPriority(BTLE_SFD_TO_IRQn, 2); NVIC_SetPriority(BTLE_TX_DONE_IRQn, 2); NVIC_SetPriority(BTLE_RX_RCVD_IRQn, 2);