20  Cellular IoT Power Optimization

In 60 Seconds

Battery life in cellular IoT is dominated by idle power consumption, not transmission power. Power Save Mode (PSM) reduces sleep current from 15 mA to 5-10 uA by making the device unreachable during deep sleep, while Extended Discontinuous Reception (eDRX) provides a middle ground at 15 uA-1 mA with periodic wake windows. Correctly configuring T3412 (TAU) and T3324 (active) timers is the difference between 14-day and 10-year battery life.

Key Concepts
  • PSM T3412 Timer: The PSM Periodic TAU (Tracking Area Update) timer; configured via AT+CPSMS; range: 2 s to 413 days; defines how long the device stays in PSM before mandatory check-in
  • PSM T3324 Timer: The PSM Active Timer; duration the device stays reachable after completing data transmission before entering PSM; range: 2 s to 310 s
  • eDRX Cycle Length: Duration between paging check windows in eDRX mode; LTE-M: 5.12–40.96 s; NB-IoT: 20.48 s–2.9 hours; longer cycles = lower power, higher downlink latency
  • PTW (Paging Time Window): Duration of the active window within each eDRX cycle during which the device listens for paging messages; LTE-M: 2.56–40.96 s; configured alongside eDRX
  • Quiescent Current: Sleep current of the cellular module excluding MCU; NB-IoT: ~1.5 µA; LTE-M: ~3 µA; MCU deep sleep adds ~10–100 µA depending on platform
  • HARQ Retransmission: Automatic retransmission mechanism that increases energy consumption in poor coverage; reducing CE (Coverage Enhancement) repetitions minimizes energy waste in good-coverage areas
  • Inactivity Timer: Cellular module timeout after which it enters idle mode from active mode; configure to the minimum value consistent with application needs to minimize active-mode time
  • Radio Duty Cycle: Fraction of time the cellular radio is in active (transmit/receive) mode vs sleep mode; lowering duty cycle is the primary lever for extending battery life

20.1 Learning Objectives

By the end of this chapter, you should be able to:

  • Configure Power Save Mode (PSM) T3412/T3324 timers using AT command binary encoding
  • Select appropriate eDRX cycle lengths to balance power consumption and downlink latency
  • Analyze cellular signaling overhead and its impact on battery life
  • Optimize radio state machine behavior for minimum power consumption
  • Apply Time-Dependent Pricing strategies for cost optimization

Cellular radios are power-hungry, but special modes like PSM (Power Saving Mode) and eDRX (Extended Discontinuous Reception) let IoT devices sleep for hours or days between transmissions. This chapter covers techniques to stretch a single battery to last 10 years or more, making cellular IoT practical for remote, unattended sensors.

“Cellular radios love to eat battery power,” Bella the Battery began, “but PSM is my best friend! With Power Saving Mode, the radio turns completely off when there is nothing to send. I go from draining 15 milliamps down to just 5 microamps – that is three thousand times less power! It is like the difference between running a marathon and taking a nap.”

“PSM is controlled by two timers,” Max the Microcontroller explained. “T3412 says how long I can sleep before checking in with the network, and T3324 says how long I stay awake after sending data. For a sensor that reports once a day, I set T3412 to 24 hours and T3324 to just 30 seconds. Sleep almost all day, wake up briefly, send data, and go back to sleep!”

“eDRX is the middle ground,” Sammy the Sensor added. “With PSM, nobody can reach me while I am sleeping. But with eDRX, I set an alarm to wake up briefly every few minutes to check if anyone has a message for me. It uses more power than PSM but less than staying fully awake, and the network can still send me commands.”

“Here is a fun way to think about it,” Lila the LED suggested. “PSM is like putting your phone on airplane mode for a whole day – totally unreachable but amazing battery life. eDRX is like checking your phone every hour instead of every second – you might miss a message for a bit, but your battery lasts way longer. Choosing the right mode depends on whether anyone needs to reach your device!”

20.2 Prerequisites

Before diving into this chapter, you should be familiar with:

20.3 Power Consumption Fundamentals

Key Takeaway

In one sentence: Battery life in cellular IoT is dominated by idle power consumption, not transmission power, so PSM and eDRX enable 10+ year battery life by reducing sleep current from 15 mA to 5-10 µA.

Remember this: PSM = unreachable deep sleep (5 µA); eDRX = light sleep with periodic wake (15 µA to 1 mA).

⏱️ ~18 min | ⭐⭐⭐ Advanced | 📋 P09.C18.U04

Battery life is critical for cellular IoT. Power Save Mode (PSM) and extended Discontinuous Reception (eDRX) are key technologies that enable 10+ year battery life.

State diagram showing cellular IoT power modes and transitions. Device starts in Idle state (orange) consuming 15 mA while listening for pages. Transitions to Connected state (orange) at 10-20 mA when data needs transmission. Enters Active state (orange) at 200-300 mA for actual transmission lasting typically 10 seconds. From Idle or Connected, device can enable eDRX mode (teal) reducing current to 15 microamps, waking every 2.56 to 43 minutes to check for messages while remaining registered to network. Alternatively, device enters PSM deep sleep mode (navy) consuming only 5-10 microamps for 1 to 24+ hours between wake cycles, remaining registered but not listening for pages. PSM enables 10+ year battery life by eliminating idle power consumption that dominates power budget. eDRX provides balance between responsiveness and power savings. Diagram shows power consumption decreasing from Active (300 mA) to Idle (15 mA) to eDRX (15 µA) to PSM (5 µA), demonstrating 1500× to 60,000× power reduction.
Figure 20.1: Cellular IoT Power States: Idle, eDRX, and PSM Deep Sleep Modes

20.4 Power Save Mode (PSM)

PSM enables devices to enter deep sleep while remaining registered to the network, achieving battery life of 10+ years for IoT applications.

20.4.1 PSM Timer Configuration

Two timers control PSM behavior:

Timer Name Range Purpose
T3412 TAU (Tracking Area Update) 1 hour - 413 days How long device can sleep before re-registering
T3324 Active Timer 0 - 186 minutes How long device stays awake after transmission
Sequence diagram showing PSM timer operation between IoT device and cellular network. Device requests PSM with T3412=24 hours and T3324=30 seconds. Network acknowledges (may adjust values). After data transmission, device enters T3324 active period for 30 seconds, staying awake for potential downlink. When T3324 expires, device enters PSM deep sleep at 5 microamps with radio OFF and unreachable. Device remains in PSM up to 24 hours (T3412 period). Wake occurs on sensor trigger or T3412 expiry, triggering TAU (Tracking Area Update) if timer expired, or direct data transmission otherwise.
Figure 20.2: PSM Timer Operation: T3412 and T3324 Interaction

20.4.2 PSM Configuration AT Commands

# Enable PSM with specific timers
AT+CPSMS=1,"","","01000011","00000101"
           |         |        |
           |         |        +-- T3324 (Active Timer)
           |         +----------- T3412 (TAU Timer)
           +--------------------- Enable PSM

T3412 encoding (Extended T3412):
  Bits 5-7: Timer unit
    000 = 10 minutes
    001 = 1 hour
    010 = 10 hours
    011 = 2 seconds
    100 = 30 seconds
    101 = 1 minute
    110 = 320 hours
    111 = Deactivated

  Bits 0-4: Timer value (0-31)

Example: "01000011" = 001 (1 hour) + 00011 (3) = 3 hours

T3324 encoding:
  Bits 5-7: Timer unit
    000 = 2 seconds
    001 = 1 minute
    010 = 6 minutes

  Bits 0-4: Timer value (0-31)

Example: "00000101" = 000 (2 seconds) + 00101 (5) = 10 seconds
Pitfall: Enabling PSM Without Configuring T3324 Active Timer

The Mistake: Developers enable PSM with AT+CPSMS=1 but leave T3324 at the network default (often 0 or very short). The device enters PSM immediately after transmission, and firmware updates or configuration commands never arrive.

Why It Happens: T3324 (Active Timer) defines how long the device stays in RRC_IDLE state (listening for downlink) before entering PSM deep sleep. If T3324=0, the device goes directly from transmission to PSM with zero downlink window. The AT command format AT+CPSMS=1,"","","TAU","ACTIVE" requires explicit T3324 configuration.

The Fix: Always set T3324 to at least 10-60 seconds to allow downlink reception:

AT+CPSMS=1,"","","01000011","00000101"
                  ^^^^^^^^  ^^^^^^^^
                  T3412=3h  T3324=10s

T3324 encoding (rightmost 5 bits): 00001=2s, 00010=4s, 00101=10s, 01010=20s, 11111=62s. T3324 multiplier (bits 5-7): 000=2s units, 001=1min units. Example: 00000101 = 5 x 2s = 10 seconds active window. Power cost: 10s @ 10mA idle = 0.028 mAh per wake – negligible compared to attach cost (0.3 mAh) but enables reliable downlink.

20.5 Extended Discontinuous Reception (eDRX)

eDRX provides a middle ground between always-on connectivity and PSM deep sleep:

Mode Sleep Current Reachability Latency Best For
Always Connected 15 mA Instant 10-100 ms Real-time applications
eDRX 15 µA - 1 mA Periodic 2.56s - 43 min Moderate latency tolerance
PSM 5-10 µA On wake only Hours - days Delay-tolerant sensors

20.5.1 eDRX Configuration

Diagram showing eDRX (extended Discontinuous Reception) cycle operation. Sleep period (teal) with radio OFF lasting 2.56 seconds to 43 minutes, followed by Paging Time Window PTW (orange) with radio ON lasting 1.28 to 20.48 seconds. During PTW, device checks for downlink messages. If no downlink, returns to sleep. If downlink received, enters data transfer (navy) then returns to sleep. Cycle repeats continuously, providing balance between power savings and reachability.
Figure 20.3: eDRX Cycle: Sleep Period and Paging Time Window
Pitfall: Using LTE-M eDRX Values for NB-IoT (and Vice Versa)

The Mistake: Developers copy eDRX configuration from LTE-M documentation to NB-IoT devices (or vice versa), not realizing the eDRX cycle ranges differ significantly. Result: either the command fails silently, or the device uses an unexpected cycle length.

Why It Happens: AT+CEDRXS uses the same command format but different AcT-type values and different eDRX cycle encodings: - LTE-M (AcT-type 4): eDRX cycles from 5.12s to 2621.44s (43.7 minutes) - NB-IoT (AcT-type 5): eDRX cycles from 20.48s to 10485.76s (2.91 hours) The same 4-bit eDRX value means different cycle lengths depending on technology!

The Fix: Use correct AcT-type and verify cycle encoding:

LTE-M:   AT+CEDRXS=2,4,"0101"  → 81.92s (1.36 min)
NB-IoT:  AT+CEDRXS=2,5,"0101"  → 327.68s (5.46 min)

NB-IoT eDRX values: 0000=5.12s, 0001=10.24s, 0010=20.48s, 0011=40.96s, 0100=61.44s (1 min), 0101=81.92s, … 1111=10485.76s (2.91 hours). LTE-M values differ! Always verify with AT+CEDRXRDP to read the network-assigned eDRX parameters after configuration.

20.5.2 Quick Check: PSM vs eDRX

20.6 Radio State Machine Optimization

20.6.1 3G vs LTE Radio State Machines

Side-by-side comparison of 3G UMTS four-state radio state machine (Cell_DCH, Cell_FACH, PCH, Idle) versus LTE simplified two-state model (ECM_CONNECTED, ECM_IDLE). 3G requires multiple intermediate transitions with higher signaling overhead, while LTE transitions directly between active and idle states, reducing power consumption by 60 percent for IoT devices.

3G UMTS vs LTE Radio State Machines
Figure 20.4

3G UMTS Complexity:

  • Four states with gradual power reduction: Cell_DCH (continuous) → Cell_FACH (shared) → PCH (paging) → Idle
  • Multiple transitions = higher signaling overhead (each transition requires network messaging)
  • Longer state hold times: Device stays in high-power states longer due to intermediate FACH and PCH states
  • Signaling cost: Each state transition consumes network resources and battery

LTE Simplification:

  • Two states only: ECM_CONNECTED (active) → ECM_IDLE (sleep)
  • Direct transition: No intermediate states, faster power reduction
  • Lower signaling overhead: 60% fewer state transitions compared to 3G
  • Better for IoT: Simpler state machine means lower complexity and cost

Impact on IoT:

  • 3G IoT devices: Higher signaling overhead = 30-40% more expensive data plans
  • LTE-M/NB-IoT: Simplified state machine + PSM/eDRX = 10+ year battery life
  • Migration urgency: 2G/3G sunset forces move to LTE-based technologies

20.7 Signaling Optimization Strategies

Three-layer signaling optimization pyramid. Layer 1 Network Design at the base covers adaptive DRX cycles from 1.28 seconds to 10.24 seconds and RACH management. Layer 2 OS Design in the middle covers push notification batching and transmission alignment. Layer 3 Application Design at the top covers traffic pattern analysis and Application Resource Optimizer recommendations. Together these layers achieve 30 to 60 percent signaling reduction.

Signaling Optimization Strategies at Three Layers
Figure 20.5

20.7.1 Layer 1: Network Design - Adaptive DRX

Discontinuous Reception (DRX) cycles determine how often devices wake to check for paging messages. Adaptive DRX adjusts cycles based on traffic patterns:

  • Aggressive DRX (1.28s cycle): High-traffic devices, real-time applications, ↑ power but ↓ latency
  • Moderate DRX (2.56s cycle): Balanced for typical IoT (periodic sensor reports)
  • Conservative DRX (10.24s cycle): Low-traffic devices, delay-tolerant, ↓ power but ↑ latency

Signaling reduction: 30% fewer paging messages by matching DRX to actual device activity patterns

20.7.2 Layer 2: OS Design - Push Notification Management

Operating system controls app wake-ups and radio usage:

  • Batch notifications: Coalesce multiple app notifications into single wake-up event
  • Alignment: Schedule transmissions at DRX cycle boundaries to avoid extra wake-ups
  • Quotas: Limit background app network access to prevent signaling storms

Example: Android Doze mode, iOS Low Power Mode reduce signaling by 40-60% through aggressive batching

20.7.3 Layer 3: Application Design - Traffic Optimization

Application Resource Optimizer (ARO) analyzes cellular traffic patterns to identify inefficiencies:

Traffic Analysis:

  • Identifies “chattiness”: Apps sending data every 30s instead of batching hourly
  • Detects tail states: Radio stays active 5-10s after transmission, wasting power if next transmission arrives during tail
  • Recommends batching: Send 5 hourly transmissions as 1 batch every 5 hours (5x reduction)

Alignment Strategies:

  • Good: Transmit at 0, 15, 30, 45 minutes (aligned to typical 15-minute DRX cycles)
  • Bad: Transmit at 7, 22, 37, 52 minutes (misaligned, forces extra wake-ups)

20.7.4 RACH Overload Reduction

Random Access Channel (RACH) handles connection setup. Massive IoT deployments can overwhelm RACH capacity:

  • Strict Separation: Dedicate RACH resources exclusively for IoT (prevents smartphone signaling from blocking IoT access)
  • Soft Separation: Priority classes where IoT gets guaranteed minimum RACH resources
  • Hybrid Separation: Dynamic allocation adjusting IoT vs. smartphone RACH split based on real-time demand

Real-World Impact: Smart meter deployments with 100,000+ devices require RACH optimization to prevent “signaling storms” at peak hours (e.g., all meters reporting at midnight)

20.8 Time-Dependent Pricing (TDP)

Time-dependent pricing case study diagram with three research perspectives. Networking perspective shows 30 percent peak demand reduction through time-of-day pricing. Economic perspective reveals price elasticity findings with 2x price leading to 30 percent demand decrease and a Sales Day effect causing 130 percent usage surge. HCI perspective addresses developer tools that increase TDP effectiveness by 40 percent. Combined results show 30 percent CapEx reduction and 8 percent total data usage increase.

Time-Dependent Pricing Research Framework
Figure 20.6

20.8.1 Research Context

Time-Dependent Pricing (TDP) for cellular IoT explores how dynamic pricing can shape network demand, reduce costs, and optimize resource utilization.

20.8.2 Networking Perspective

How can pricing algorithms balance demand with network capacity?

Approach:

  • Implement time-of-day pricing: Peak hours (2x base rate), off-peak hours (0.5x base rate)
  • Monitor network utilization before and after TDP implementation
  • Measure peak demand reduction and capacity freed for latency-sensitive IoT

Results:

  • 30% peak reduction: Delay-tolerant IoT (smart meters, environmental sensors) shifted to off-peak hours
  • Capacity gains: Freed 30% of peak capacity for real-time IoT (autonomous vehicles, industrial control)
  • Network stability: Reduced congestion-related packet loss from 2% to 0.3%

20.8.3 Economic Perspective

What pricing structures maximize revenue while maintaining user adoption?

Price Elasticity Findings:

  • 2x price increase30% demand decrease (elastic demand for delay-tolerant IoT)
  • 0.5x price discount20% demand increase (moderate response, users have limited control over IoT device schedules)

Unexpected “Sales Day Effect”:

  • When carriers announced promotional pricing days (24-hour windows with 0.3x rate), usage surged 130%
  • Users scheduled firmware updates, bulk data uploads, and non-urgent transmissions for promotional windows
  • Lesson: Predictable pricing promotions can create new demand peaks

Revenue Impact:

  • TDP revenue initially flat (peak reduction offset by off-peak discount)
  • Long-term revenue +8% due to higher overall data consumption (users more willing to deploy IoT knowing costs are controllable)

20.8.4 Combined Results

Metric Before TDP After TDP (1 year) Change
Peak demand 100% baseline 70% baseline -30%
Off-peak demand 40% baseline 52% baseline +30%
Total data usage 100% baseline 108% baseline +8%
User satisfaction 3.2/5 3.8/5 +19%
Network CapEx $1M/year $700K/year -30%

20.8.5 Strategic Lessons for IoT

  1. TDP enables demand shaping: 30% peak reduction validates dynamic pricing as network management tool
  2. Promotion timing matters: “Sales day” surges show users will respond, but unpredictable spikes can negate benefits
  3. Developer tools essential: Auto-scheduling APIs increase TDP effectiveness by 40% (users lack time/expertise to manually optimize)
  4. Savings threshold: 10-20% cost reduction needed to drive behavior change
  5. Industrial IoT best fit: Automated systems can optimize transmission schedules without human intervention

Time-Dependent Pricing connects to broader IoT monetization strategies. For business model frameworks and pricing psychology, see:

TDP demonstrates that technical optimization (signaling reduction) directly impacts business economics (30% lower data costs). Understanding both layers enables effective IoT solution design.

20.9 Worked Example: Battery Life Calculation for NB-IoT Water Meter

Calculating realistic battery life requires accounting for every current-consuming state, not just peak transmit and deep sleep. The following example walks through a complete calculation for a production NB-IoT water meter reporting daily readings.

Device specifications:

  • Battery: 3.6 V lithium thionyl chloride (ER34615), 19,000 mAh capacity
  • Module: Quectel BC95-G (NB-IoT Cat-NB1)
  • Report frequency: 1 reading per day (midnight)
  • Payload: 48 bytes (meter reading + timestamp + battery voltage)
  • PSM enabled, T3412 = 24 hours, T3324 = 30 seconds

Current consumption by state (measured at 3.6 V):

State Current Duration per cycle Energy per cycle
PSM deep sleep 5 uA 23 hr 58 min (86,280 s) 0.431 mAh
Wake + RRC setup 80 mA 1.5 s 0.033 mAh
Transmit (23 dBm) 230 mA 0.8 s 0.051 mAh
Receive (Rx window) 48 mA 2.0 s 0.027 mAh
T3324 active timer 15 mA 30 s 0.125 mAh
RRC release + PSM entry 3 mA 2.0 s 0.002 mAh
Total per daily cycle 0.669 mAh

Annual consumption:

Daily energy: 0.669 mAh
Annual energy: 0.669 x 365 = 244.2 mAh
Self-discharge (3%/year for Li-SOCl2): 19,000 x 0.03 = 570 mAh/year

Year 1 total: 244.2 + 570 = 814.2 mAh
Usable capacity (80% of nominal, accounting for temperature and aging): 15,200 mAh

Projected battery life: 15,200 / 814.2 = 18.7 years

Why the real answer is lower (12–14 years):

The theoretical 18.7 years is optimistic. Three factors reduce it:

  1. Coverage-limited retransmissions: In basements or underground meter pits, the NB-IoT signal may require 2–3 HARQ retransmissions. Each retransmission adds 0.8 s at 230 mA. With an average of 1.5 retransmissions per report, the transmit energy doubles from 0.051 to 0.102 mAh per cycle.

  2. Network-imposed TAU: Even if T3412 is set to 24 hours, some operators force a TAU (Tracking Area Update) every 12 hours, adding a second wake cycle. This doubles the daily energy budget.

  3. Temperature derating: Water meters in cold climates (below -10 C) experience 20–40% capacity loss in Li-SOCl2 cells. The passivation layer that forms during long sleep also causes initial voltage sags on wake-up, potentially triggering brownout resets.

Adjusted realistic estimate:

Adjusted daily energy (retransmissions + forced TAU): 1.24 mAh
Annual energy: 1.24 x 365 = 452.6 mAh
Annual self-discharge: 570 mAh
Annual total: 1,022.6 mAh

Usable capacity (cold climate, -10 C): 12,160 mAh (64% of nominal)
Realistic battery life: 12,160 / 1,022.6 = 11.9 years

Key insight: The T3324 active timer (30 seconds at 15 mA = 0.125 mAh) consumes more energy than the actual data transmission (0.051 mAh). Reducing T3324 from 30 seconds to 10 seconds saves 0.083 mAh per cycle – a 12% battery life improvement at the cost of a narrower downlink window. For meters that never receive downlink commands, T3324 = 2 seconds is optimal.

Try It: NB-IoT Battery Life Explorer

Adjust the T3324 active timer and number of daily wake cycles to see how they affect battery life for the water meter scenario above.

The battery life calculation shows how T3324 timer optimization impacts longevity. In this scenario, the network forces a TAU every 6 hours, so the device wakes 4 times per day instead of once:

Baseline configuration (T3324 = 30 seconds, 4 wake cycles/day due to forced TAU): \[ E_{\text{daily}} = 4 \times (0.051 + 0.033 + 0.027 + 0.125 + 0.002) + 0.431 = 1.383 \text{ mAh/day} \]

Optimized configuration (T3324 = 10 seconds): \[ E_{\text{active}} = 10 \text{ s} \times 15 \text{ mA} / 3600 = 0.042 \text{ mAh (vs 0.125 mAh)} \] \[ E_{\text{daily, opt}} = 4 \times (0.051 + 0.033 + 0.027 + 0.042 + 0.002) + 0.431 = 1.051 \text{ mAh/day} \]

Battery life improvement: \[ \text{Gain} = \frac{1.383 - 1.051}{1.383} = 24\% \text{ battery life extension} \]

Using the adjusted usable capacity from the worked example (12,160 mAh for cold climate):

  • Baseline: \(12{,}160 / 1.383 = 8{,}793\) days (24.1 years)
  • Optimized: \(12{,}160 / 1.051 = 11{,}570\) days (31.7 years)

The 10-second T3324 optimization adds 7.6 years of battery life – significant for deployments targeting 15+ year operation.

20.10 Summary

  • Power-saving modes (PSM and eDRX) reduce sleep current from 15 mA to 5-15 µA, enabling decade-long battery life through deep sleep with periodic network registration
  • PSM provides deepest sleep (5 µA) with T3412 (TAU) timer controlling sleep duration and T3324 (Active) timer controlling downlink window
  • eDRX balances reachability and power with configurable cycles from 2.56 seconds to 43 minutes for LTE-M, or up to 2.91 hours for NB-IoT
  • Signaling optimization through adaptive DRX, notification batching, and RACH management reduces network overhead by 30-60%
  • Time-Dependent Pricing enables 30% peak demand reduction and 8% total cost savings through dynamic pricing strategies

20.11 Knowledge Check

20.12 Concept Relationships

PSM and eDRX power modes connect to broader cellular IoT architecture: the T3412 (TAU timer) and T3324 (Active timer) are negotiated between device and MME during the attach procedure covered in Cellular IoT Overview. Control Plane vs User Plane optimization from NB-IoT Architecture impacts power consumption - Control Plane saves energy by avoiding bearer establishment overhead. Signaling reduction strategies build on LTE DRX fundamentals but extend cycles from seconds to minutes/hours.

20.13 See Also

Common Pitfalls

Setting T3412 (TAU timer) to 24 hours maximizes battery life but means the device may not check in for 24 hours during error conditions, and any downlink command takes up to 24 hours to deliver. Map application requirements to timer settings: alert device (requires <1 min downlink latency) → T3324=60s, no long PSM; periodic reporting (latency tolerance = report interval) → T3412 = report interval, T3324 = 5s; monthly meter read → T3412 = 30 days, T3324 = 5s.

Calculating battery life from datasheet current values (PSM: 1.5 µA, TX: 200 mA) without measuring actual waveforms misses: startup oscillator current (2–5 mA for 5–50 ms), network registration current (10–50 mA for 2–30 s), IP data transmission bursts, and post-transmission dwell before PSM entry. Use a power analyzer (Nordic PPK2, Otii Arc) to capture the full current waveform from sleep → wakeup → registration → transmit → PSM, then calculate actual energy per cycle.

TCP keep-alive packets (sent every 60–120 s by default) prevent the device from entering PSM. A device configured with PSM T3412=1hour but TCP keep-alive=60s will never enter PSM, consuming 50–100 µA average instead of <5 µA. Disable TCP keep-alive for IoT applications, or set TCP keep-alive intervals to 2× the PSM cycle duration. Use application-level health checks on reconnection instead of TCP keep-alive.

Cellular modules have multiple power states beyond just PSM vs active: airplane mode (RF disabled), minimum functionality (AT+CFUN=0/1/4), and hardware sleep pins (PWRKEY, DTR). Not using hardware sleep pins means the MCU must keep the module powered even when not needed. For maximum power savings, use the module’s PWRKEY or SLEEP_IND pin to cut module power during long inter-transmission periods (>1 hour), accepting the 3–15 second power-up and re-registration penalty.

20.14 What’s Next

Next Chapter Description
Cellular IoT Deployment Planning Coverage analysis, carrier selection, and real-world deployment considerations
eSIM and Global Deployment Multi-carrier strategies for international IoT connectivity
LTE-M Interactive Lab Hands-on simulation with PSM and eDRX configuration exercises
NB-IoT Power and Channel Detailed NB-IoT power calculations and channel access mechanisms
NB-IoT PSM and eDRX Deep dive into NB-IoT-specific power saving mode implementations