Power Save Mode

I have 2 questions for the moment :
**1.**I use the command **AT+CPSMS=**1 to enable Power Save Mode(PSM).
The default TAU is 10000101 which is 150 sec. The first 3 bytes define the time unit and the other 5 bytes the number that will multiply this time unit ( 3GPP TS 24.008 Table 10.5.163a).
The default value of Active time is 00000011. But i cant understand how translate this 8 bits in time. I cant find the specification of that 8-bit coding.

**2.**If i enable the Power Save Mode, i should have to disable it every 150 sec (AT+CPSMS=0) or i just enabled once and this periodically will be turned off and on with the periods of TAU and Active time respectively. For example if the Active Timer is 20 sec and TAU is 150 sec, it means that if i will enable the PSM once after that for 150 sec will be in sleep mode and for 20 sec in active mode and this will be repeated all the time?

Well, this is a coincedence. I just started documenting about this for my school assignment. I’d be more than happy to share it with you, it is in Dutch though.

Short answer to your 1st question:

Can be found in the SARA-N2 application development note.

2nd question:
As far as I’ve been able to understand. The TAU set by T3412 is the time it takes to wake up after it went to PSM. This isusefull if you expect to get data from your server. Your network will know this time as well and will only send messages when it know the timer has expired. The active timer T3324 determines how long you can get a URC after sending a message before going into PSM.

Here’s a time diagram as how I interpreted the data sheets:
IDLE->Send message->T3324 starts: wait for messages, T3412 starts-> T3324 expires: go into PSM->PSM->T3412expires: messages can be send to module again.

Hope this helps.


Here’s the chapter from my documentation in Dutch, if you can read it :stuck_out_tongue:

3.1.4 Power Saving
Omdat de controller werkt op een batterij is power management van groot belang. In een later hoofdstuk wordt hier nog verder op ingegaan. Om energie te besparen is het noodzakelijk om de NB-IoT module zo kort mogelijk aan te laten staan. UBlox heeft hier twee slimme oplossingen voor.

Power Saving Mode (PSM)
Net zoals de meeste microcontrollers hebben alle SARA modules een PSM waarin vrijwel alle functionaliteiten uitgezet worden om energie te besparen. Wanneer de SARA zich in PSM bevindt wordt er slechts 3μA getrokken. PSM kan worden geconfigureerd met het AT+NPSMR=1 commando. Dit zet PSM aan.

De module zal pas daadwerkelijk in PSM treden wanneer er een bericht succesvol verzonden is. Vervolgens start de T3324 timer. Zolang als deze timer loopt is de module nog in staat om berichten te ontvangen. Deze tijd wordt eDRX genoemd. Als de timer afloopt zal de module in PSM treden. De duur van deze eDRX tijd is in te stellen door de T3324 timer aan te passen.

In PSM is de module niet meer in staat om berichten te ontvangen. Doordat het netwerk op de hoogte wordt gesteld van het feit dat de module is PSM is zal dit bericht genegeerd worden.

Er zijn twee manieren om uit PSM te treden. De eerste is door een AT-command te sturen naar de module. Dit commando wordt vervolgens direct uitgevoerd. In PSM staat de module nog geregistreerd bij het netwerk, dit betekend dat er ook een AT+NSOSTF bericht gestuurd kan worden om data te versturen. Nadat dit bericht ontvangen is zal de module wederom de T3324 timer laten lopen en vervolgens weer in PSM treden.
De tweede manier is door het aflopen van de T3412 timer. Wanneer deze afloopt zal de module wakker worden en weer in staat zijn om berichten te ontvangen.

Timers T3324 en T3412
Beiden timers worden gestart nadat er een bericht succesvol verzonden is. De lengte van deze timers is in te stellen met het AT+CPSMS commando.

PSM aanzetten met T3412 op 01000011 en T3324 op 01000011.

Beiden timers zijn met 8 bits in te stellen. Bits 6, 7 en 8 geven een specifieke prescaler aan, met de overige 5 bits kan ingesteld worden welk veelvoud van deze prescaler ingesteld wordt.


Voorbeeld: “01000011” = 3 x 10h = 30 hours.


Voorbeeld: “01000011” = 3 x 0,1h = 18 minutes.

Thank you very much Bend. The first message it was very helpful. Really.
Something i want to point is that during the Active time period i just want to send messages from module to a Server.
I just point this cause you say in your first message “wait messages” . I dont wait for messages i just Send messages. I mean it doesnt matter if i send or receive …i can do both.

No problemo! You’re able to send messages all the time. Wether it’s in PSM or not. Sending an AT command will wake the module up and it will process the command immediately. If you don’t plan on receiving any messages I suggest reading up on Early release / release assistance. This will skip the waiting from messages form the server after you sent a message and will go directly into PSM. This saves quite some power as well.
Here’s a good article on it: https://forum.iot.t-mobile.nl/topic/278/how-much-battery-lifetime-can-we-expect-with-a-sara-n200-module-on-our-iot-network
All info can be found in the data sheets ofcourse.

Thank you very much Bend…I will read that article.