esp32 sleep mode with battery bank

My goal is to have a single sensor sample once an hour for as long as possible(I am aiming to 3 month or more).
I'm using M5stickC as uController and Lenovo 10,000mAh power bank.
When waking up I assume the power consumption is about 300mAh the most and happens for about 20s.
When sleeping I saw online that M5stickC sleep mode is about 2mA(maybe a little less) - which is a lot for me.
This specific power bank does not turn off when battery is full - which fits my situation(a lot of power banks turned off and were useless due to that).
This system holds about 2-3 weeks I guess that due to the fact that the power bank itself turns on leds almost all the time and wastes a lot of power for that.
I would like the system to be as much as plug and play as I can - the stick good for that because I use its grove port(for the single sensor) and has a type-C power entry which is very comfortable, so I prefer use something similar.
I looked up and saw some esp32 breakout board but couldn't find one that has a really good sleeping mode, and in addition most of the battery bank uses their leds and waste a lot of power to that.
Any ideas for a better combination to achieve a few month of energy without charging?

Any ideas for a better combination to achieve a few month of energy without charging?

I have a Arduino Pro Mini (modified) that sends a sensor (BME280) reading with LoRa every 15 minutes.

The 155maHr battery has so far lasted 8+ months, looks like it will last 2+ years.

Projected life for a set of AAs is 43 years.

1 Like

Thanks for the reply.
I would like to make as little changes as possible with my setup, and use as few as possible connections/shields.
If I will use AA batteries(let's say 4) will the life time of my project be significantly longer?
If so, assuming sleep time is still 2mA - will I be able to reach a few months?
I found this item:

Will this be able to connect to type C charger of the stick and work ok?

For long battery life projects is that you have to measure how much current all the bits take, then knowing the mA used and the mAhr capacity of the battery you can calculate battery life.

For the product you linked to, what is the power consumption when its 'on' but the connected device is drawing no current ? Did you buy one and measure it ?

ESP32s are not, on average, a good choice for long battery life projects, not only is the run current (when the processor is active) fairly high, its difficult to find assembled ESP32 modules with a low deep sleep current.

As for how long a battery lasts, if the average current used is 2mA and the battery has a know capacity of say 2800mAhr then battery life would be;

2800 / 2 = 1400 hours.

Ok, so I see that my problem can’t be solved with ESP32 according to what you say.
Is there an assembled module with WiFi that can be programmed easily in arduino IDE (preferably with Grove Port) and that have a sleep mode similar to what you did(<50uA)?
By the way I’m also using Arduino IoT that doesn’t seem to save power in sleep mode as well.