This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Softdevice hangs with big SPI master transfers.

After SD initialization and turning on advertising i have to send large amount of data via SPI continuously. SPI driver code initializes SPI module after SD init and advertising start. After few minutes of successful operation application execution suddenly stops. When i tried to stop code execution in debugger i saw that CPU runs in dead loop between addresses 0x000006B0 and 0x000006B6. And there was not any error handler call during that. And last, when advertise is off everything seems to work OK.

Chip is nrf51822, ver QFAAG00, SD version is s110 7.0.0, nRF51 SDK v. 6.0.0

Any ideas?

Parents
  • Sorry guys! Problem resolved. It was just going to the sleep state on BLE_GAP_EVT_TIMEOUT event with sd_power_system_off() calling. It was not depend on SPI module. When advertise timer expired device went to the sleep state. We just set APP_ADV_TIMEOUT_IN_SECONDS to 0 and we temporarily removed any appearance of the sd_power_system_off() function from our code. Thanks for quick responses!

Reply
  • Sorry guys! Problem resolved. It was just going to the sleep state on BLE_GAP_EVT_TIMEOUT event with sd_power_system_off() calling. It was not depend on SPI module. When advertise timer expired device went to the sleep state. We just set APP_ADV_TIMEOUT_IN_SECONDS to 0 and we temporarily removed any appearance of the sd_power_system_off() function from our code. Thanks for quick responses!

Children
No Data
Related