I am new to RSL10 as I have been using nordic chipsets so far. Sorry for the very basic questions.
I am evaluating the deep sleep current characteristic (25-50 nA) mentioned in the datasheet. I have used sleep_RAM_retention project from the CMSIS pack, and the below given is the current profile I observed.
Could you please help me to configure the code to run from FLASH instead of RAM ?
Could you please help me to setup the minimal code to put the device into deep sleep mode (50 nA) and wakeup using a GPIO ? - I dont need any other functionalities running in the code, like LED, switch. the sequence should be as simple as given below:
How to wakeup from flash?
Our RSL10 Firmware Reference 5.3.3 Boot and wakeup initialization section has this information on the page 45. As for the code reference, please refer to sleep_RAM_retention project.
Sleep_RAM_retention sample. This is deep sleep mode . It can close all except analog registers. This deep sleep mode is wakeup from flash. The deep sleep mode can have very low current consumption. (**nA).
For instance peripheral_server_sleep sample code, this sleep mode is wakeup from RAM . So between advertising interval and connection interval, chip goes into sleep mode.
The normal sleep mode can have higher current consumption. (**uA).
In the sections.d we have defined an area for .data section. These data variables are initialized data.
Example like this in the code:
Before running main function, we need copy these initialized data from FLASH to RAM.
Now we use flash copy function to achieve this.
A1: Wakeup is not based on frame transmission. It is related BB timer, (like advertising interval and connection interval). When baseband controller find there is no transmission event, it will go to sleep.
Q2. If after is it then allowed to update the frame content?
A2: After wakeup, you can update the frame content.
Q3. Are there any other events resulting in a BB wakeup ?