Remote monitoring projects rarely fail on the sensor side. They fail on power and connectivity. A tank level transmitter works fine, but the site has no mains supply, the solar panel gets covered in dust, and every battery swap means a long drive. If you have ever deployed a logger that promised a year of battery life and delivered four months, you know the problem well.
This post looks at how the NORVI EC-M12 battery-powered cellular IoT data logger approaches it and what design choices matter when you want a device to run for years without a site visit.
Where the Battery Actually Goes
Most sensors draw very little current. The real cost is the cellular modem. Older 2G and 3G modems pull hundreds of milliamps during a transmission burst, and even a large battery pack drains quickly if the device reports every hour. Low-power standards such as LTE-M and NB-IoT were created to fix this, because they deliver cellular reliability at a fraction of the energy cost.
The EC-M12 combines an ultra-low-power STM32L072 microcontroller with a SIM7070 modem that supports NB-IoT, LTE-M, and 2G fallback. The EC-M12 launch article puts the sleep current of the MCU at about 2 µA and the modem at about 5 µA with power-saving mode, so total sleep draw stays under 10 µA. Since the device spends nearly all its life asleep, that number decides the battery life.
Battery Chemistry Matters
The logger uses two non-rechargeable ER34615H lithium thionyl chloride cells rated at 19,000 mAh each, which gives 38,000 mAh in total. This chemistry has extremely low self-discharge, so it suits devices that may sit in the field for five years or more. Rechargeable cells lose charge on the shelf and need a charging source, which defeats the purpose in a remote location. The article on a long-life IoT logger with LTE-M and 4-20 mA inputs explains this trade-off in more detail.
A Sleep-First Firmware Pattern
The hardware only delivers multi-year life if the firmware respects it. The logger is designed around sleep and wake cycles instead of continuous operation. A sensible pattern is to sample often, store readings locally, and transmit in batches. Fewer radio sessions mean a smaller energy cost per reading. The pseudo-code below shows the idea.
loop:
wake from sleep (RTC alarm)
power sensor loop, wait for settling, read ADC
timestamp reading, append to buffer / microSD
if buffer_full or upload_due:
attach to network, publish batch over MQTT
detach, enter modem power saving mode
set next RTC alarm, enter deep sleep
Because the inbuilt real-time clock timestamps every reading, batching does not cost you data quality. The microSD slot, which supports cards up to 256 GB, also gives you local backup if a network session fails. You can program the device with the Arduino IDE, and NORVI publishes example sketches to get started.
Inputs and Configurations
The EC-M12 platform ships in five I/O configurations, so you can match the hardware to the job. Model A and its dual 4-20 mA input setup suit pressure and level transmitters, and the RS-485 interface lets you read Modbus devices such as flow meters. Digital input variants suit pulse counting and contact monitoring. An optional LoRaWAN variant covers long-range sites where cellular coverage is weak. Pick the model first, then design your firmware around it.
Getting Data Into Your Stack
Lock-in is a common concern with cloud-connected hardware. The EC-M12 firmware is built to connect to your own server or platform instead of a fixed ecosystem. The NB-IoT data logger page lists standard protocols such as MQTT, HTTP, and CoAP, and notes over-the-air updates, so you can change sampling intervals or thresholds without travelling to the site.
For a worked example, the low-power 4-20 mA sensor guide walks through a diesel fuel tank level sensor. The logger reads the analog signal with a high-resolution ADC, then sends fuel level, battery status, and fault information to a ThingsBoard dashboard over MQTT on a 4G network. It is a good template for your own first deployment.
Where It Fits Best
This kind of logger suits water levels in boreholes and tanks, irrigation monitoring, pressure and flow recording, and any asset that sits far from power. Since the enclosure is IP67 rated, it also handles rain and dust without extra protection. If your site does have mains power and Ethernet, a wired controller may be simpler, but for unattended field work a sleep-first cellular design is hard to beat.
Final Thoughts
Multi-year battery life comes from three decisions working together: a low-power MCU and modem, long-life battery chemistry, and firmware that transmits rarely. Get those right and the site visits mostly disappear. To review the models, specifications, and documentation, visit the EC-M12 product page on norvi.io. If you have deployed something similar, share your battery life numbers in the comments.
Top comments (0)