Deep Sleep mode in nRF54l15

Hello, 
I am using nRF Connect SDK v2.9.0. While working on the nRF52840 board, I used sys_poweroff() to put the board in deep sleep mode. But before calling it, I called

nrf_power_rampower_mask_on(NRF_POWER, 0, NRF_POWER_RAMPOWER_S0POWER_MASK);
nrf_power_rampower_mask_on(NRF_POWER, 1, NRF_POWER_RAMPOWER_S1POWER_MASK);
if I wanted to keep the RAM content in Deep Sleep and I called 

nrf_power_rampower_mask_off(NRF_POWER, 0, NRF_POWER_RAMPOWER_S0POWER_MASK);
nrf_power_rampower_mask_off(NRF_POWER, 1, NRF_POWER_RAMPOWER_S1POWER_MASK);
if I want to not keep the RAM content in Deep Sleep.
Now, I want to do migration and use the board nRF54L15 rather than nRF52840. When I replaced the board and tried to build the code, I got errors as these functions are undefined for the board nRF54L15.
Also, I got errors in 
uint32_t reset_reason = nrf_power_resetreas_get(NRF_POWER);
 nrf_power_resetreas_clear(NRF_POWER, reset_reason);
if (reset_reason & NRF_POWER_RESETREAS_RESETPIN_MASK)
{
   *penu_wakeup_reason = WAKEUP_FROM_EXT_PIN_RESET;
}
As, the functions nrf_power_resetreas_get, nrf_power_resetreas_clear, and NRF_POWER_RESETREAS_RESETPIN_MASK macro are not defined for the nRF54L15 board while they were working with the nRF52840 board
Parents Reply
  • Hi,

    That is odd. It works on my end, and is an important part of the sample. Did you put CONFIG_APP_USE_RETAINED_MEM=y in prj.conf? Also, can you confirm that the system_off sample you are using is the one under zephyr/samples/boards/nordic/system_off/?

    If it still does not work, can you share the full sample project with your modification as well as the build output so that I see exactly what you are doing and can attempt to reproduce on my end?

Children
Related