One of the most complicated and at the same time most fascinating challenges of my project was to reduce the current consumption of the single sensor module to a minimum, in order to reach and improve the energy autonomy of the module with supercapacitor loaded during the day. from solar panel.
It was a tough fight against every single mA !!!
Now I'll explain what I did.
Operating mode and Deep Sleep mode.
First of all, it must be explained that every single module works in 2 ways:
- The operating mode, in which the microcontroller reads the data coming from the sensor, receives the data packet from the previous module and transmits the data to the next module
- Deep sleep mode, in which the microcontroller goes into energy saving.
Action # 1: disable WIFI while reading the sensors
In operating mode, the Wemos mini card consumes about 70 mA with Wifi running and about 25 mA without Wifi enabled, so I decided to disable Wifi when reading the sensor with the instruction:
and to enable wifi after acquisition, through instruction:
Action # 2: reduction of operating mode time
The second action to reduce consumption was to reduce as much as possible the time it takes the microcontroller to perform each phase of the operating mode: I carried out many tests with the various sensors, to reduce these times, while still maintaining a margin of reliability. ..I have managed to reduce the awake status of the controller to about 1 second!
This result was possible thanks to the ESP-NOW protocol which becomes instantly operational and does not require long times to initialize: this is the main reason why I chose to communicate via ESP-NOW!
Action # 3: cut sensor and LED power supply
This action was perhaps the most decisive to achieve the desired result of reducing consumption.
During the Deep Sleep mode, while the controller was in power safe, the sensors connected to the module and the D1 led continued to draw current, in some cases even up to 10 mA! Unacceptable!
How can I solve this problem? Here's how I did it:
I decided to enable / disable the power supply to the sensors (sen_gnd) and to the LED, via an N-channel Mosfet (AO3400A), driven by a digital output of the microcontroller.
Before acquiring the sensor signal, I enable the power supply through the instruction:
After reading the sensor, I disable the power supply with the instruction:
The result was fantastic!
Action # 4: MAX8815 step-up converter
To power the Wemos mini and the sensors (5V), it was necessary to use a Step up converter to raise the voltage supplied by the supercapacitor (from 1.5V to 2.7V).
The first tests with low cost converters were disappointing, due to the performance.
I therefore decided to make a Step Up converter based on the MAX8815 chip (https://hackaday.io/project/183512-max8815-step-up-converter)
This chip has an efficiency of up to 97%, which is great for a project like mine.
Action # 5: no absorption of the charging circuit
Another action to reduce consumption was to prevent the passage of current in the charging circuit of the supercapacitor, by adding diode D2.
Action # 6: Wifi power setting of the Wemos Mini PRO
The Wifi circuit of the Wemos Mini PRO, at maximum power, consumed too much for my project (about 125 mA).
For this reason, I decided to reduce the power of the wifi, using the command:
I set the value to 10, which represents about half of the deliverable power (max 20.5).
The value chosen is a valid compromise that allowed me to reach a communication distance of 150 meters (so I can guarantee 100 meters) without consuming too much.
Discharge Endurance test without solar panel
After all these actions I carried out two endurance test of a module in normal operation, without solar panel, with a deep sleep of 30 seconds, to measure the duration of operation before discharging, obtaining the following results:
First test: Module powered by supercapacitor. Result: duration about 25 hours before turning off
Considering the very fast recharge times of the supercapacitor during the day, even in cloudy conditions, I can confirm that the supercapacitor can be used in many situations, with low consumption sensors and a favorable climate.
Second test: Module powered by 2 NiMh batteries. Result: duration about 19 days before turning off.
Nineteen days without the need to recharge, makes this option an excellent alternative in the most difficult situations or in case of future use of sensors that consume more.
The following video describes the tests carried out: