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

nRF52 spurious resets with SDK12.2.0 - How to resolve?

Hello,

we have developed a solar powered LED module with an additional battery. It is based on the nrf52832. The WDT and TWI is mainly used and for BLE the soft device is applied. From time to time, the NRF resets itself. I do not really know, how to debug the problem, as it takes days or even weeks that it happens. Using RTT does not work, as it clears it buffers when reseting. We tried to store every possible error as some int value in the flash, but for that specific error, nothing is written. So we do not know what the problem could be. The TWI implementation uses timeouts and un/init in case of an error. Thus I do not believe that this is the problem.

Any suggestions to gain more insights?

[Update: The RESETREAS register is telling me 0x00000004; thus software reset. I implemented 'assert_nrf_callback(uint16_t, const uint8_t*)', 'app_error_fault_handler(uint32_t, uint32_t, uint32_t)' and 'HardFault_Handler(void)' and have there a while loop. As the WDT is activated, a WDT event should occur if these functions are active. I do not use 'NVIC_SystemReset()'. So how to proceed? Right now it is getting critical, as we get some complains about that spurious resets ... ]

Thanks.

Parents
  • Very strange.

    1. Are you using J-Link RTT Viewer? In my experience the messages just don't disappear unless I clear my screen programmatically in the beginning of the application. Are you doing this? Also, even if I do clear my screen, all messages still show up in the "All Terminals" tab in RTT Viewer regardless.
    2. Can you confirm that you have tried to define DEBUG in your preprocessor defines? I understand that you have redefined all the relevant functions without NVIC_SystemReset(), but it should be worth a shot anyway.

    If none of this is helpful I think we need to have a look at your code. You can upload it in confidence in our MyPage support portal if you want that.

Reply
  • Very strange.

    1. Are you using J-Link RTT Viewer? In my experience the messages just don't disappear unless I clear my screen programmatically in the beginning of the application. Are you doing this? Also, even if I do clear my screen, all messages still show up in the "All Terminals" tab in RTT Viewer regardless.
    2. Can you confirm that you have tried to define DEBUG in your preprocessor defines? I understand that you have redefined all the relevant functions without NVIC_SystemReset(), but it should be worth a shot anyway.

    If none of this is helpful I think we need to have a look at your code. You can upload it in confidence in our MyPage support portal if you want that.

Children
No Data
Related