Post by uniquepete on Oct 8, 2019 5:50:16 GMT -8
I have just had the opportunity to pull out an INA3221 breakout board that I've had for a while to do some [more or less] real time voltage/current measurements on a solar panel/LiPo/Heltec ESP32 LoRa module configuration, basically to work out what size solar panel/battery I might need to run a project. The power sources are connected through an Elecrow Mini Solar/LiPo Charger board, and the INA3221 board, all configured as delivered (i.e. I haven't fiddled with any shunt resistors). The readings from the INA3221 board are being recorded by a separate ESP8266 module with an independent power source.
At the moment, I'm having a little trouble understanding what I'm seeing. It's night time, so the solar panel is doing nothing (voltage and current both showing 0) and the Heltec module is running entirely from the battery (through the Charger and INA3221 boards), transmitting LoRa packets every 10 seconds and going into deep sleep in between. I am aware of at least some of the issues associated with putting this module into deep sleep, so it's not the absolute current draw that's of interest here.
The battery voltage is currently sitting at ~3.8V and the the output voltage at ~4.9V, but with the 'deep sleep' output current at ~5mA the battery current is showing ~25mA. When packets are being transmitted, the output current rises to ~180mA while the battery current rises to over ~310mA (voltages vary slightly under load, but not significantly). Because I'm only making measurements every second, I'm not getting a precise picture of the current draw every time the module transmits a packet (i.e. measurements are a bit hit and miss with regard to measuring the actual maximum current draw), but this is not really a problem for what I'm doing at the moment. At the moment, I'm primarily interested in why the battery current is so much higher than what I believe that I'm observiong as the actual output current, particularly when the Heltec module is 'active'.
I could understand if the Charger and INA3221 boards were drawing some steady current, and from the above observations I'd have to conclude that this was something like 20mA (Is that reasonable?). But, based on the information provided above, is it possible to account for the additional 130mA from the battery when the Heltec module is 'active'? I wouldn't have expected the INA3221 board to be interfering, but could the Charger board be doing something strange (or maybe even expected) when the battery is under load?
Update: This morning, with the sun shining on the solar panel (6V, 2W—panel voltage measured at ~4.8V while the processor is sleeping, but ~2V when it wakes up to send a packet), the current readings are:
Deep Sleep:
Output: ~5mA
Panel: ~140mA
Battery: ~-120mA (charging, as expected)
Transmitting:
Output: ~180mA
Panel: ~145mA
Battery: ~430mA
With a smaller solar panel (5.5V, 1W—similar voltage readings to the larger panel) the current readings are:
Deep Sleep:
Output: ~5mA
Panel: ~90mA
Battery: ~-70mA (charging)
Transmitting:
Output: ~180mA
Panel: ~98mA
Battery: ~485mA
And just so that the pattern is quite clear, with a smaller panel again (5V, 0.6W):
Deep Sleep:
Output: ~5mA
Panel: ~48mA
Battery: ~-28mA (charging)
Transmitting:
Output: ~180mA
Panel: ~50mA
Battery: ~530mA
The battery is obviously charging most of the time, but why is the current draw on the battery significantly higher than the output, and why is it so much higher *with* an active solar panel? It's pretty obvious why a smaller panel would charge more slowly, but why would it result in the increase in battery current that I'm seeing?
I can see that the sum of the battery and panel currents under load (when the processor is transmitting a packet) is consistently about 580mA (presumably this is not just a coincidence), but why is this so much higher than when the solar panel is inactive (just 310mA)? If this is normal behaviour, which is documented somewhere, I'd be perfectly happy for someone to just point me in the right direction and tell me to go do my homework.
At the moment, I'm having a little trouble understanding what I'm seeing. It's night time, so the solar panel is doing nothing (voltage and current both showing 0) and the Heltec module is running entirely from the battery (through the Charger and INA3221 boards), transmitting LoRa packets every 10 seconds and going into deep sleep in between. I am aware of at least some of the issues associated with putting this module into deep sleep, so it's not the absolute current draw that's of interest here.
The battery voltage is currently sitting at ~3.8V and the the output voltage at ~4.9V, but with the 'deep sleep' output current at ~5mA the battery current is showing ~25mA. When packets are being transmitted, the output current rises to ~180mA while the battery current rises to over ~310mA (voltages vary slightly under load, but not significantly). Because I'm only making measurements every second, I'm not getting a precise picture of the current draw every time the module transmits a packet (i.e. measurements are a bit hit and miss with regard to measuring the actual maximum current draw), but this is not really a problem for what I'm doing at the moment. At the moment, I'm primarily interested in why the battery current is so much higher than what I believe that I'm observiong as the actual output current, particularly when the Heltec module is 'active'.
I could understand if the Charger and INA3221 boards were drawing some steady current, and from the above observations I'd have to conclude that this was something like 20mA (Is that reasonable?). But, based on the information provided above, is it possible to account for the additional 130mA from the battery when the Heltec module is 'active'? I wouldn't have expected the INA3221 board to be interfering, but could the Charger board be doing something strange (or maybe even expected) when the battery is under load?
Update: This morning, with the sun shining on the solar panel (6V, 2W—panel voltage measured at ~4.8V while the processor is sleeping, but ~2V when it wakes up to send a packet), the current readings are:
Deep Sleep:
Output: ~5mA
Panel: ~140mA
Battery: ~-120mA (charging, as expected)
Transmitting:
Output: ~180mA
Panel: ~145mA
Battery: ~430mA
With a smaller solar panel (5.5V, 1W—similar voltage readings to the larger panel) the current readings are:
Deep Sleep:
Output: ~5mA
Panel: ~90mA
Battery: ~-70mA (charging)
Transmitting:
Output: ~180mA
Panel: ~98mA
Battery: ~485mA
And just so that the pattern is quite clear, with a smaller panel again (5V, 0.6W):
Deep Sleep:
Output: ~5mA
Panel: ~48mA
Battery: ~-28mA (charging)
Transmitting:
Output: ~180mA
Panel: ~50mA
Battery: ~530mA
The battery is obviously charging most of the time, but why is the current draw on the battery significantly higher than the output, and why is it so much higher *with* an active solar panel? It's pretty obvious why a smaller panel would charge more slowly, but why would it result in the increase in battery current that I'm seeing?
I can see that the sum of the battery and panel currents under load (when the processor is transmitting a packet) is consistently about 580mA (presumably this is not just a coincidence), but why is this so much higher than when the solar panel is inactive (just 310mA)? If this is normal behaviour, which is documented somewhere, I'd be perfectly happy for someone to just point me in the right direction and tell me to go do my homework.