This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

sd_flash_write returns NRF_ERROR_INTERNAL

Hello.

Using nrf51_8.0.0_API, I'm experiencing the function sd_flash_write returning the value NRF_ERROR_INTERNAL. As documented in nrf_soc.h, this error code can never be returned.

I'm using a testing software which periodically calls sd_flash_write. After a couple of hundred successful calls with return code NRF_SUCCESS, it sooner or later crashes receiving NRF_ERROR_INTERNAL since it is not expected, accordingly to the API documentation.

Is there a bugfix available or any suggestion?

Many thanks in advice. Milena

Parents
  • Hi Martin.

    Both are true: The device is advertising while it is in a connection.

    The delay between the connections is approximately 10 seconds. Each connect and disconnect triggers the advertising to start. The failure may occur spontaneously after 500 or more loops. Please find below a trace illustrating the last few loops before the failure, including the timestamps:

    2017-09-01 11:30:07.1: WAL: Started advertising

    2017-09-01 11:30:08.2: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:11.3: WAL: Started advertising

    2017-09-01 11:30:15.2: WAL: BLE_GAP_EVT_DISCONNECTED

    2017-09-01 11:30:18.2: WAL: Started advertising

    2017-09-01 11:30:19.0: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:22.0: WAL: Started advertising

    2017-09-01 11:30:25.8: WAL: BLE_GAP_EVT_DISCONNECTED

    2017-09-01 11:30:28.9: WAL: Started advertising

    2017-09-01 11:30:29.5: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:32.6: WAL: Started advertising

    2017-09-01 11:30:33.8: FTM: sd_flash_write returns errCode = 3.

    2017-09-01 11:30:33.8: FTM: Softdevice internal error // crash!

    No, we don't use the Timeslot API.

    Thank you.

Reply
  • Hi Martin.

    Both are true: The device is advertising while it is in a connection.

    The delay between the connections is approximately 10 seconds. Each connect and disconnect triggers the advertising to start. The failure may occur spontaneously after 500 or more loops. Please find below a trace illustrating the last few loops before the failure, including the timestamps:

    2017-09-01 11:30:07.1: WAL: Started advertising

    2017-09-01 11:30:08.2: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:11.3: WAL: Started advertising

    2017-09-01 11:30:15.2: WAL: BLE_GAP_EVT_DISCONNECTED

    2017-09-01 11:30:18.2: WAL: Started advertising

    2017-09-01 11:30:19.0: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:22.0: WAL: Started advertising

    2017-09-01 11:30:25.8: WAL: BLE_GAP_EVT_DISCONNECTED

    2017-09-01 11:30:28.9: WAL: Started advertising

    2017-09-01 11:30:29.5: WAL: BLE_GAP_EVT_CONNECTED

    2017-09-01 11:30:32.6: WAL: Started advertising

    2017-09-01 11:30:33.8: FTM: sd_flash_write returns errCode = 3.

    2017-09-01 11:30:33.8: FTM: Softdevice internal error // crash!

    No, we don't use the Timeslot API.

    Thank you.

Children
No Data
Related