I'm currently trying to characterize a solar cell i.e measure its open-circuit voltage and short-circuit current over time. I have an INA219 current sensor lying around I'd like to use. The former case (Open-Circuit voltage) is no problem. However, the INA219 datasheet states that the shunt resistor (I have a 0.1 Ohm shunt) should not have more than 320mV dropped across it. However, wiring the solar cell to the INA219 to measure the short circuit current would result in the full solar cell voltage (~4-6V) dropped across the resistor...Can anyone kindly tell me how to go about measuring the short-circuit current with the INA219?

Edit: I'm expecting a maximum current of around 260mA from the cell

  • \$\begingroup\$ "wiring the solar cell to the INA219 to measure the short circuit current would result in the full solar cell voltage" Have you verified this? \$\endgroup\$ Commented Oct 12, 2016 at 9:49
  • \$\begingroup\$ I = V/R. For 4V, 0.1 Ohm I = 4/0.1 = 40A. 6V = 60A. What is your target Imax? Apart from dissipation (P = I^2.R = 40A^2 x 0.1 Ohm = 160 W :-) ), you want Vshunt_max << Vmp. ie you want a MUCH lower Rshunt, as Tony says. (Your shunt is rate at Imax = V/R = 0.320/0.1 = 3.2A). || If shunt power dissipation is not an issue aim at Vshunt_max <= Vmp/10. I will be close enough to Isc at that voltage. Here that is say 0.4V and P = V x I = 0.4 x 40A = 16W at 40A and 36W at 60A = "rather a lot". Using Tony's ~= 1 milliOhm is in order. \$\endgroup\$
    – Russell McMahon
    Commented Oct 12, 2016 at 11:57
  • \$\begingroup\$ @IgnacioVazquez-Abrams Uhh, no I haven't... \$\endgroup\$ Commented Oct 12, 2016 at 22:24
  • \$\begingroup\$ @RussellMcMahon My target Imax is about 260mA.. \$\endgroup\$ Commented Oct 12, 2016 at 22:25
  • \$\begingroup\$ New data: I = 260 mA || You need to give a MUCH better solar cell description here. At maximum power (full sun, opimally loaded = "mp" = max power what is the Wattage Wmp, Voltage Vmp, Current Imp? And if known what is Vopen cct Voc and current short cct Isc. Supply such of these as you know and if unknown give an estimate. eg Voc and Isc are easily measured. || At 260 mA and 0.1 Ohm. Vshunt = I x R = 0.26A x 0.1V = 26 mV - so your claim of Vcell = 4 to 6V across resistor is "erroneous". That may be Voc but will drop as above under load. ALWAYS provide data sheet links if available (added). \$\endgroup\$
    – Russell McMahon
    Commented Oct 13, 2016 at 2:38

2 Answers 2



Using the 0.1 Ohm shunt with the INA219 set to 40 mV full scale will work well.


Several of your statements are based on an incorrect understanding of the INA219 specification.
INA219 datasheet here

Acceptable full scale drop across the shunt can be adjusted to one of 320 mV, 160 mV, 80 mV or 40 mV (datasheet page 5). This voltage occurs due to voltage drop across the shunt when current flows.
Vshunt = I shunt x R shunt.
If the panel output is shorted via the shunt then loaded panel voltage will drop to whatever voltage is required to support the maximum available curremt - in that case, short circuit current Isc.

From supplied information I'll assume.
Isc ~~ 250 mA.
Voc ~= 6V.
Vmp~= 4V. Rshunt_available = Rsa = 0.1 Ohm.

At 250 mA and 0.1 Ohms the shunt voltage = V = I x R = 0.25A x 0.1 Ohm = 25 mV.
So even the most sensitive setting on the INA219 will accommodate Imax.

The 25 mV shunt drop at 250 mA will be similar at Imp as Imp is typically 80%-90% of Isc. So Vshunt % of operating voltage ~= 25 mV/4V x 100 = 0.6% of Voperating - so will have minimal affect on system operation so OK.
eg if using the panel to operate a resistive load at Vmp = 4V say then as Power = V^2/R, the power delivered with and without shunt will be in the ratio ((3.975)/4)^2 or 98.75%. So about 1.25% (or less) of available power will be lost in the shunt.

Small solar panels that chrage a battery are usually used with a series Schottky diode. If Vdiode ~= 0.3V the power loss in the diode is far greater than that in the shunt, so shunt power is essentially irrelevant.


You can make your own current shunt. Typically current shunts are 50 ~ 100 mV to limit power dissipation.

If you are expecting 50A or 5V across 0.1 Ohm then let's make a shunt that is 50mV @50A = 5W.

Always choose the high current shunt max rating to be starting range of ~ 50~100mV depending on heat rise and space allowed. and % of voltage

**edit to reflect question late change

  • using formula for 100mV shunt can be 100mV/250mA= 400 mΩ 1/2W R . Then use gain x25 for 2.6V full scale @ 260mA.. yes you should have said that up front... then meets IC limits, or 50mV shunt uses 200 mΩ 1/4W with gainx50 **

R = 50 mV/50A = 1 mΩ Pd=50A * 50mV = 2500 mW

Look up AWG gauges suitable for 1 mΩ.

AWG16 = 4 mΩ/ft = 13 mΩ/m

  • We also would like to make it non-inductive as possible so a wire pair with opposing current is a good approach in close paired or twisted pair wires.

  • Thus to make 1 mΩ choose AWG16 pair about 2" (5cm) long and short the wires at one end and pass a known current using meter and measure voltage drop to calibrate your current shunt. Then strip and cut open end length until calibrated using 10A or so with a meter to check. ( twisted Magnet wire is best for low inductance but any wire is OK for DC.

  • \
  • . ===========| {Shorted wire pair shunt resistor}
  • . ===========| {"Kelvin method" means sense inside connections}
  • / warning: ascii art dwg.

Use calibrated DMM to calibrate shunt with known current.

For use after calibration, ensure twisted pair wiring with ferrite sleeve to reduce CM noise and orient sensor wires at right angles to high current wires.

  • \$\begingroup\$ No the problem is the shunt MUST be<=50mV, which I know from experience. datasheet confirms that \$\endgroup\$ Commented Oct 12, 2016 at 10:37
  • \$\begingroup\$ Using nichrome or constantan or similar as the shunt is a good idea as ohmic heating can cause significant errors. As the resistance wires have higher resistance/metre than ideal you can use multiple strands or use thicker gauges than needed just to get R down. Also fwiw, to get accuracy with high-I shunts you have to watch for arcane second order effects such as thermal emfs and use of 4 wire measurements are advised (ask me how I know :-) ). When using flat conductors of finite width current paths from contact point into and out of shunt also can matter. \$\endgroup\$
    – Russell McMahon
    Commented Oct 12, 2016 at 11:49
  • \$\begingroup\$ The 50mV standard drop by design minimizes self heating and 2nd order effects. To make smaller, lower drops are required. Kelvin approach is simply don't measure at wire junctions, measure inside connections to avoid current gradients from gauge changes \$\endgroup\$ Commented Oct 12, 2016 at 11:57
  • \$\begingroup\$ (1) your 4W diagram was staring me in the face and I missed it when quick commenting :-) (2) 50 mV at his may be 60 A if he means what he says give 3 Watts in shunt. Not vast but enough to be significant with Cu wire if used - depending on how wound, cooling etc. (I know you know all that). Nichrome works well and using parallel strands is no great problem if needed. Solderability is "somewhat poor". \$\endgroup\$
    – Russell McMahon
    Commented Oct 12, 2016 at 12:04
  • 1
    \$\begingroup\$ Copper has ~= 10 x the change in resistance per degree C change wrt NiCr. Changes as proportion of existing resistance here. Cu = 4.29 x 10-3, NiCr = 0.4 x 10-3, Constantan = 3 x 10-5 (!) Constantan has a lower resistance than NiCr for identical wires (ie lower Ohm-meter resistivity, which is an advantage here where low Ohms are desired. Still ~= 30 x the resistivity of Cu. \$\endgroup\$
    – Russell McMahon
    Commented Oct 12, 2016 at 17:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.