Hello everyone,
I’m working on a low-power IoT application using an STM32L0 series microcontroller (programmed via the Arduino IDE) along with the STM32 Low Power library.
I’m trying to achieve ultra-low current consumption during deep sleep mode. The STM32 side seems fine, but the problem is with the SIM7070 2G modem — it continues to draw around 30–40 mA even when the MCU is in deep sleep.
According to the SIM7070 datasheet, the module should enter sleep mode with a current consumption of around 1–2 mA when the following steps are applied:
Send the command:
AT+CSCLK=1
Then set the DTR pin HIGH and keep it HIGH for about 15–20 seconds.
I have implemented these steps in my firmware, but the modem still appears to remain in an active state (current draw doesn’t drop).
Here’s what I’ve confirmed so far:
The modem successfully responds to AT commands.
I send AT+CSCLK=1 and then set DTR HIGH before putting STM32 to sleep.
However, current consumption stays high (~30–40 mA), suggesting the modem never actually enters sleep.
Has anyone successfully implemented SIM7070 (2G mode) low-power sleep in a similar setup?
Are there additional commands, timing sequences, or hardware signals (like PWRKEY or RI) that need to be managed for proper sleep entry?
Any guidance, working examples, or power measurement tips would be greatly appreciated.
Thanks in advance for your help!