I have this doubt whether to go with theoretical method or practical.

Lets say I'm using a 3.7V battery 350mAh to light up a LED which has forward voltage of 3.3V (which means LED lights up if 3.5V is provided) and forward current of 30mA.

So it lasts 350mAh/30mA = 5.83 hours.

The remaining 0.2 volts is reduced using a resistor. So resistor required for LED would be,

(Battery voltage - LED voltage)/(Battery current) = (3.5 - 3.3)/(30mA) = 6.66 ohms

My question is, even though after connecting the resistor to the LED, the intensity of the LED is more than expected. So a higher resistance is preferred here to reduce the intensity of the LED. Suppose say at 50ohm, I have matched my required intensity of light.

But if I put a 50 ohm resistance over there, voltage at the LED reduces to a value where it is less than the forward voltage (3.5v, that is required). So there is a chance LED doesnt light up.

Is this the case or is there any solution for this?

A brief explaination would be very useful, since these minute details are much important everywhere

  • \$\begingroup\$ One solution is to use a current source. \$\endgroup\$
    – user57037
    Commented Aug 26, 2020 at 9:19
  • 1
    \$\begingroup\$ We approximate that the voltage across the LED is always 3.3V no matter what the current is. The resistor can't drop more than 0.2V because the voltage has to add up. But the current will change. Note that the battery voltage changes depending on how charged it is. \$\endgroup\$ Commented Aug 26, 2020 at 9:50
  • 1
    \$\begingroup\$ (In reality, the voltage across the LED does change depending on the current, but it changes a lot less than the voltage across the resistor does) \$\endgroup\$ Commented Aug 26, 2020 at 9:50

4 Answers 4


Why do you think it needs 3.5V? The forward voltage is 3.3. If you use a 50ohm resistor, the current through the LED is (with full battery): (3.7-3.3)/50 = 8mA

That is all you need. The LED should light up fine with 8mA. That is the thing you need to be looking at, the current through the LED. LEDs don't follow Ohms Law so don't worry yourself with voltage drops etc, as a beginner (which it sounds like you are) just worry about forward voltage and current for now.

  • \$\begingroup\$ sorry, there was a wrong typo in the question, it needs 3.3V not 3.5V \$\endgroup\$ Commented Aug 26, 2020 at 9:48
  • \$\begingroup\$ Forward voltage of a LED is amount of voltage it requires to light up the LED. So, What does forward current exactly mean? Is it the amount of current that LED always takes or the maximum amount of current that a LED can take? \$\endgroup\$ Commented Aug 26, 2020 at 9:56
  • 1
    \$\begingroup\$ The datasheet should have absolute maximum ratings. You don't want to exceed that, and most datasheets list that maximum as the If (forward current) rating. Stay under that limit and you'll be fine, although too small a current and the LED won't light. Some datasheets will also show this in graph form \$\endgroup\$
    – MCG
    Commented Aug 26, 2020 at 9:59
  • \$\begingroup\$ Thanks for ur answer :) \$\endgroup\$ Commented Aug 26, 2020 at 10:03
  • \$\begingroup\$ @enoughisenough no problem. If you found it useful, remember to click the 'up' arrow and if it answered your question, press the 'tick' to accept the answer. Remember to 'upvote' all answers that you find useful \$\endgroup\$
    – MCG
    Commented Aug 26, 2020 at 10:32

We approximate that the voltage across the LED is always 3.3V no matter what the current is. If the LED is on, its voltage is 3.3V. End of story. *

The resistor voltage must be 0.2V because the voltage has to add up (Kirchhoff's Voltage Law). But the current will change depending on the resistance.

You also forgot that the battery voltage changes depending on how charged it is. When the battery voltage isn't much higher than the LED voltage, this causes a big change in the current. When the battery voltage is much higher than the LED voltage, the change is relatively small. This is because the resistor has to compensate for the voltage change - if the battery goes from 3.7V to 3.9V, the resistor has twice as much voltage across it, which means the current is twice as much.

* In reality, the voltage across the LED does change depending on the current, but it changes a lot less than the voltage across the resistor does. We pretend it's always the same, because it makes the math much easier, but we must remember this is approximate!

  • \$\begingroup\$ assume, when my Lipo battery is fully charged, then the battery voltage will be 4.2V and voltage of LED is 3.3(which is constant). At this point if LED is lightup, I have some intensity and adjusted the intensity to how much I want by putting resistance of x ohm. Second case, where my battery voltage is 3.7V (which is nominal of lipo battery) and my LED is 3.3 as always. In this case, when LED is lightup, intensity changes and after matching my required intensity, say that resistance is y ohm So which resistance should I consider?? since it depends on the battery voltage \$\endgroup\$ Commented Aug 26, 2020 at 10:12
  • \$\begingroup\$ So, at what voltage point of the battery, the resistor should be calculated? How to give a fixed resistor for change in the voltage battery? Because say, if I have given 50 ohm for my circuit and the battery has voltage of 4.2V, then current consumed is (4.2-3.3)/50 = 18mA (say here intensity is matched with how much I want) and if it drops to 3.7 then current is (3.7-3.3)/50 = 8mA. (Here the intensity decreases, it doesnt match with my required voltage) There is a change in current between these two conditions and hence change in intensity. So, how to fix a ohm value for my whole circuit? \$\endgroup\$ Commented Aug 26, 2020 at 10:35
  • \$\begingroup\$ @enoughisenough With this circuit, the LED will get dimmer as the battery discharges. Do you want it to start too bright and go down to the correct brightness when the battery is half empty (and turn off when it's 90% empty), or start at the correct brightness and get dimmer? Your choice. \$\endgroup\$ Commented Aug 26, 2020 at 11:14

There is no one correct resistor that will work for all supply voltages. This is especially true when your supply is a cell where the voltage drops as the cell discharges. A fully charged LiIon cell gives about 4.2V. By the time the cell is flat, it's as low as 3.0V.

To a rough approximation, LEDs have a constant voltage drop over a wide range of currents. An LED will light at currents considerably below their maximum. So an LED rated for 30mA will still glow at 3mA, and will even glow dimly at 0.3mA.

If we calculate the correct resistance for a 4.2V cell to deliver 30mA to a 3.3V LED, we get (4.2 - 3.3) / 0.03 = 30 ohms. But if the battery drops to 3.7V, the current now becomes (3.7 - 3.3) / 30 = 3.6mA. The LED will still glow, but will be a lot less bright.

If you take apart an LED torch, you will usually find a little circuit board inside, including a microchip and a number of other components. The only way you are going to get a constant LED brightness across a wide range of cell voltages is to use a boost/buck converter feeding a constant current power supply. That's a lot more than just a resistor. The design is a bit easier if your battery voltage is always lower than the LED voltage, or always higher. Most people will use the reference design in the microchip's data sheet.

  • \$\begingroup\$ I had same idea of using boost converter, so that output voltage will be constant, irrespective of input. In my project case, Im using 2 white LEDs of frwd voltage 3.6v and frwd current of 30mA. Im powering them up with 3.7V Lipo battery. One way to do is connecting the LEDs in parallel, but this drains battery fastly since connections are in parallel and also LED gets dimmer with decrease in voltage. Another is where I use a boost converter to boost voltage from 3.7V to 8V which is a constant voltage (so no dim) and connect them in series (remaining 0.8V will be balanced by the resistor) \$\endgroup\$ Commented Aug 26, 2020 at 13:34
  • \$\begingroup\$ Im planning to use MT3608 IC for boosting voltage and also looking into LEDs that have a frwd current of 30mA and frwd voltage of 3V(since 3.6v is more for an LED), After boosting voltage from 3.2 to 7V, current consumed by LED will be 56.75mA. Therefore battery life will be 350mAh/56.75mA = 6.16 hours (I considered 3.7V 350mAh Lipo battery). Without boosting, battery life will be 350mAh/60mA = 5.83hrs I feel Boosting case is better since it has more battery life and no dim in brightness. Is my idea good? Share ur opinion. \$\endgroup\$ Commented Aug 26, 2020 at 14:03
  • \$\begingroup\$ PS: In boosting circuit, LEDs are connected in series (so same current 56.75mA flows through both LEDs with 7V boost voltage) and in non boosting LEDs are connected in parallel (same voltage where as current is doubled so 60mA). \$\endgroup\$ Commented Aug 26, 2020 at 14:05
  • \$\begingroup\$ @enoughisenough "After boosting voltage from 3.2 to 7V, current consumed by LED will be 56.75mA" - beware, LEDs are not resistors, and Ohm's law does not apply to them. That's why you need a resistor (cheap and simple) or a constant current power supply (more complicated, but more efficient). \$\endgroup\$
    – Simon B
    Commented Aug 26, 2020 at 15:00
  • \$\begingroup\$ Yes...I got ur point "Ohms law doesnt apply to LEDs" My plan is I will boost the voltage from 3.7 to 7V using boosting circuit. So at my output of circuit, I have 7v. From this output, ill be connecting the 7v to LEDs by putting a potentiometer and calculate the resistance so that ill get the intensity of LED i need. This works right...?? Let me know \$\endgroup\$ Commented Aug 27, 2020 at 5:01

The 'forward voltage' given in an LED datasheet is a nominal value at a stated current (e.g., 20mA).

However, the LED current will vary widely with the applied voltage. Diodes (including LEDs) have an exponential voltage-to-current relationship, modeled in the Shockley Ideal Diode Equation as follows:

enter image description here

From this answer: Voltage across diode, Shockley equation

Notice the \$V_d\$ term in the exponent. That's your forward voltage. This means that as \$V_d\$ rises, you get a typical LED current-vs. voltage that is a very steep (exponential) curve with a 'knee' at the bottom, like this:

enter image description here

from this answer: Does LED brightness change with voltage?

In other words, little variations in \$V_d\$ result in big variations in \$I_d\$, and thus, brightness.

What this means to you trying to run a 3.3V LED from a Li-ion, is that your supply voltage is close to the LED forward voltage at your desired operating point. This makes your load resistor IR drop very small. Your setup will be exquisitely sensitive to variations in both the supply voltage and the LED's actual forward bias behavior, which itself varies with tolerances and temperature.

This link explains this resistor sensitivity in a graphical way: https://www.khanacademy.org/science/electrical-engineering/ee-semiconductor-devices/ee-diode/a/ee-diode-circuit-element

What do they they do in phones? They use a constant-current driver. This can be a buck-boost converter which regulates on current.


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.