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

PSTORAGE_MAX_APPLICATIONS

Hi Nordic, I am adding pstorage capability to ble_app_proximity example. Before adding pstorage, the example could receive Immediate Alert from a central and set on/off to a led. As referring to ble_app_template_with_pstorage_operations, I added pstorage functions to the example. The result was that pstorage_register() retuned NRF_ERROR_INVALID_PARAM. So I modified PSTORAGE_MAX_APPLICATIONS definition in pstorage_platform.h from 1 to 2. pstorage_register() returns no error, but Immediate Alert event cannot be received. Why does the modification of PSTORAGE_MAX_APPLICATIONS have a influence to Immediate Alert Service? It looks like that ble event does't occurs periodically after the modification. Please let me know the workaround. Thanks.

Parents
  • There is no direct link with the pstorage_register function with Alert event. Anyhow it seems that the pstorage_register function now succeeded after your change but after the program moved ahead there are some other failures in your code. It is difficult to say what it is without debugging. Did you verify that your program is running normally and still there are problems with Immediate Alert events?

  • NVIC_SystemReset is called from APP_ERROR_CHECK macro. In your application you call a function and the error code is returned (lets say) to err_code. Then when your app checks this error code APP_ERROR_CHECK(err_code), then it expects the err_code to be NRF_SUCCESS. Else something went wrong and it will call app_error_handler().

    The default behavior of this weakly linked function is to do a system reset, you can override this function to handle errors in the way you like. app_error_handler will be in the file app_error.c if i remember it correctly.

    regarding the other event that you were asking, I have answered it in your other question that you asked here

Reply
  • NVIC_SystemReset is called from APP_ERROR_CHECK macro. In your application you call a function and the error code is returned (lets say) to err_code. Then when your app checks this error code APP_ERROR_CHECK(err_code), then it expects the err_code to be NRF_SUCCESS. Else something went wrong and it will call app_error_handler().

    The default behavior of this weakly linked function is to do a system reset, you can override this function to handle errors in the way you like. app_error_handler will be in the file app_error.c if i remember it correctly.

    regarding the other event that you were asking, I have answered it in your other question that you asked here

Children
No Data
Related