The single most common question engineers ask before deploying a battery-powered remote sensor is simple: how long will it actually last? When you are mounting a device on a remote irrigation pump or a reservoir wall, the answer directly determines whether your project succeeds or requires a costly service visit every few months. For the NORVI EC-M12 — a field-ready NB-IoT / Cat-M1 data logger built around the STM32L072 MCU and the SIM7070 cellular modem — the answer can be over five years on two ER34615H Li/SOCl₂ cells (38,000 mAh total), but only if you configure power-saving modes correctly. This guide breaks down PSM, eDRX, and STM32 Stop mode so you can plan NB-IoT battery life with confidence before you deploy a single device.
Why NB-IoT Battery Life Depends on More Than Battery Capacity
A 38,000 mAh battery sounds enormous — and it is. However, a poorly configured NB-IoT modem can draw 200–300 mA during transmission and then idle at 5–15 mA when it should be drawing microamps. Over months, that idle current quietly drains a pack you expected to last years. The NORVI EC-M12 addresses this challenge at two independent layers:
- The cellular modem layer (PSM and eDRX)
- The MCU layer (STM32 Stop mode)
Together, they slash average current consumption to the single-digit µA range between reporting cycles.
Layer 1 – PSM (Power Saving Mode) on the SIM7070
PSM is defined in 3GPP Release 12 and is natively supported by the SIM7070 modem used in the EC-M12. When PSM is active, the modem deregisters from the network paging channel after a configurable TAU (Tracking Area Update) timer expires. During that period, the modem draws approximately 3–15 µA — essentially the same as being switched off — while retaining its IP context so it can re-attach without a full network registration each time.
PSM Timer Configuration
| Timer | Function | Recommended Range |
|---|---|---|
| T3412 (TAU) | Re-registration period | 1–4 hours (set to ≥ 2× your reporting interval) |
| T3324 (Active) | Downlink window | 2–20 seconds |
AT Command Example (SIM7070)
AT+CPSMS=1,,,"00100001","00000101"Layer 2 – eDRX (Extended Discontinuous Reception)
eDRX is the complementary standard to PSM, also from 3GPP. Where PSM makes the device completely unreachable, eDRX keeps it reachable at periodic paging windows rather than continuously. This matters when your server needs to push commands to the device — but only while the device is in its Active Time / eDRX window. Under the short-T3324 + PSM configuration recommended below, the device spends almost the entire interval in PSM and is unreachable except immediately after each uplink.
For NB-IoT, the eDRX cycle length can range from 20.48 seconds to 2621.44 seconds (about 43 minutes). During the sleep portion of each eDRX cycle, the modem draws roughly 1–3 µA, waking only at the Paging Hyperframe (PTW) to check for downlink traffic.
Recommended PSM + eDRX Layered Pattern
- Step 1: Device wakes, reads sensor(s), transmits uplink.
- Step 2: Stays in the T3324 Active Time to receive any pending downlink. During this window the modem uses (e)DRX paging — a longer eDRX cycle here trades battery life for downlink responsiveness.
- Step 3: When T3324 expires, the modem enters PSM (radio fully off, ~3–15 µA) for the remainder of the interval. It is unreachable during this period.
- Step 4: On the TAU boundary (T3412), or earlier if it has uplink data to send, the modem wakes and repeats.
Note: PSM and eDRX are negotiated with the network and operate in sequence, not simultaneously — eDRX governs reachability during the Active Time, PSM governs the deep sleep after it. Both must be supported and granted by your operator. Choose a longer T3324/eDRX if you need the device reachable for downlink commands; choose the short-T3324 + PSM pattern above for maximum battery life with minimal reachability.
Layer 3 – STM32L072 Stop Mode
The STM32L072 is an ultra-low-power ARM Cortex-M0+ specifically chosen for the EC-M12. When the firmware places the MCU into Stop mode, the core halts, most peripherals power down, and current draw drops to approximately 0.4–0.9 µA with the RTC still running. The inbuilt real-time clock wakes the MCU at the precise moment it needs to sample a sensor and trigger a modem transmission.
Stop mode integrates cleanly with the PSM/eDRX strategy: the MCU and modem enter low-power state simultaneously after each transmission, and the RTC interrupt is the single source of truth for the reporting schedule.
Reporting Interval vs. Estimated Battery Life
The table below uses realistic current budget figures for the EC-M12 operating on NB-IoT with PSM + Stop mode enabled. Assumptions: SIM7070 Tx burst ~200 mA for 3 seconds, sensor excitation ~15 mA for 1 second, STM32 active ~5 mA for 2 seconds, system sleep ~5 µA combined.
| Reporting Interval | Daily Transmissions | Avg. Current (µA) | Est. Battery Life |
|---|---|---|---|
| 5 minutes | 288 | ~2,220 µA | ~2.0 years |
| 15 minutes | 96 | ~744 µA | ~5.8 years |
| 30 minutes | 48 | ~375 µA | ~7.8 years* |
| 1 hour | 24 | ~190 µA | ~10+ years* |
| 6 hours | 4 | ~36 µA | ~10+ years* |
Worked Example: 15-Minute Reporting Interval
Let us walk through the energy budget in detail for 15-minute intervals — a common choice for water level monitoring and agricultural data logging.
Cycle duration: 900 seconds (15 minutes)
Active Phase Breakdown
| Phase | Current | Duration | Charge (µAh) |
|---|---|---|---|
| STM32 wakes and reads the sensor. | 5 mA | 2 s | 2.78 µAh |
| 12V sensor excitation (4–20 mA loop) | 15 mA | 1 s | 4.17 µAh |
| SIM7070 network attach + Tx | 200 mA | 3 s | 166.7 µAh |
| T3324 active window (listening) | 8 mA | 5 s | 11.1 µAh |
| Total active charge per cycle | 11 s | ~184.8 µAh |
Total charge per cycle: ~186 µAh
Daily consumption: 186 µAh × 96 cycles = 17,856 µAh ≈ 17.9 mAh/day
Battery life: 38,000 mAh ÷ 17.9 mAh/day ≈ 2,123 days ≈ 5.8 years
This calculation confirms the manufacturer’s published “5+ years service” claim and shows that a 15-minute interval keeps the EC-M12 comfortably within its designed lifespan. Furthermore, if your application only needs hourly readings, you can push that estimate beyond a decade — limited in practice only by the ~1–2% annual self-discharge rate of the Li/SOCl₂ chemistry.
Practical Tips to Protect Your Battery Budget
- Match the TAU timer to your reporting interval. Set T3412 to at least 2× your reporting cycle. Shorter settings force unnecessary re-registrations, each costing a full network attach current spike.
- Minimize sensor excitation time. The EC-M12 provides a switched 12V output for sensor power. Only enable it for the minimum time your 4–20 mA sensor needs to stabilize — typically 500 ms to 2 seconds.
- Use the microSD card strategically. The EC-M12 supports local logging to microSD (up to 256 GB). Log locally and transmit in batches during confirmed network windows to reduce failed transmission attempts.
- Account for temperature. Li/SOCl₂ cells perform well from −60°C to +85°C, but capacity at −20°C can drop by 10–15%. Apply a 15% safety margin for cold climates.
- Test with a current probe before field deployment. Tools like a Nordic PPK2 or µCurrent Gold in series with the battery let you validate actual sleep current in the lab — catching bugs like a UART left enabled in Stop mode, which alone can add 1–5 mA of parasitic draw.
- Handle the transmit pulse. The ER34615H is a bobbin-type Li/SOCl₂ cell optimized for low continuous drain; its pulse-current capability is limited. NB-IoT transmit bursts of 200–300 mA can cause voltage droop and passivation on a bare bobbin cell. For reliable operation, pair the cells with a hybrid-layer capacitor (HLC) or supercapacitor to source the pulse, or specify a spiral-wound cell (e.g. the ER34615M) where capacity allows
Choosing the Right EC-M12 Model for Your Application
The NORVI EC-M12 ships in five hardware variants. The power budget principles above apply to all of them, but the active current changes slightly with the I/O profile.
| Model | I/O Configuration | Best For |
|---|---|---|
| Model A | 2× 4–20 mA analog inputs | Pressure, water level |
| Model B | 1× RS-485 Modbus RTU | Multi-sensor industrial |
| Model C | 2× digital inputs | Pulse counting, events |
| Model D | Mixed analog + digital | Flexible deployment |
| Model E | Strain gauge, 5V/10V excitation | Load cells, weighing |
Summary
Achieving multi-year NB-IoT battery life on the EC-M12 is not a matter of luck — it results directly from combining three power-saving strategies: PSM on the SIM7070 modem, eDRX for selective downlink availability, and STM32L072 Stop mode between reporting events. At a 15-minute reporting interval, the worked example above shows a realistic lifespan of approximately 5.8 years on the 38,000 mAh battery pack — closely matching real-world deployments.
If you are planning a new deployment and want to verify the best reporting interval for your specific use case, the NORVI team is available for a free consultation to review your application requirements.