I have a battery going to my esp32 xaio module. I have the xaio module when it sleeps it is currently using 47 micro amps measured from a multimeter. I want to monitor this value and the voltage from the battery over 10 days and print the values to an SD card. What module can I use? I dont think the INA219 can go this low. Any guidance will help. This is one I have looked at:
- I believe the INA219 uses a 0.1 ohm shunt, you could raise this to 1 or more ohms.
Do I have to desolder the on board shunt? Or what would be the best course of action?
-
Yes, the existing 0.1 ohm would need to be removed and a similar foot print 1Ω or 10Ω soldered in its place.
Use 1% or better if you want accuracy. -
Remember, if you used 10Ω if the normal current went to 10mA, there is a 0.1v drop across the shunt . . .
1% tolerance you mean right?
- Yes, if accuracy is needed.
Great thank you! I expect 50 micro amps the whole day for 23 hours and 59 minutes a day. For only a minute a day it will go to 100mA. Will 1 ohm still be good?
If you want to measure current in the micro-amp range then you need to choose a low-input bias current amplifier such as the INA190. THIS IS A ANALOG OUTPUT CURRENT-SENSE AMPLIFIER.
According to the INA190 datasheet (page 21), the maximum R_sense should be:
In the same page you can see the definition of each parameter, but quickly:
-
I_max is the maximum current you want to measure
-
GAIN is the GAIN of the current-sense amplifier (you have 5 different options)
-
Vsp is the positive output swing, e.g., if you amplifier is fed with 5V, the Vsp is: Vsp = 5V - 20mV = 4.98V

-
V_ref is the externally applied voltage on the REF pin, you can tie this pin to GND, so V_ref = 0V
On the other hand, the minimum value of your sense resistor must be:
Where
- I_min is the minimum current you want to measure
- Vsn is the negative output swing of the device, i.e., Vsn = Vgnd + 0.05mV = 0V + 0.05mV = 0.05mV

This can be rearranged as
The output voltage is given by
![]()
If you want to know the value of the current, then you can easily solve for I:
For example, if you want to measure a minimum current of 1uA and a maximum current of 100 uA, and you use a current-sense amplifier with a GAIN = 25 V/V, then the current resistor must be:
We can use a 1.5 kOhm resistor.
We can choose a precision 0.1% tolerance shunt resistor to limit gain error at higher currents.
This is a simulation result using the INA190 with a maximum current of 100uA and a shunt resistor of 1.5k
You get a 47uA sleep current, including the SD card ?
Which XIAO module are you using ?
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.







