• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Cascading Six LM3914 Bar/Dot displays - a complete explanation

Not open for further replies.

Wannabe EE

New Member
I found numerous queries in the internet involving people trying to connect multiple LM3914s. Each time, I was optimistic that they would include the answers to my questions. They did not.

I posted my own query on this forum with similar results. However, I did get a valuable tool from Eric Gibbs, that was the first major piece of my answering my own questions. Eric's VB5 LM3914 simulation program was key to my deciphering the mysteries of the LM3914.

On another forum, I found a couple more keys, and now that I have unraveled the LM3914, I am posting a summary of the inner workings of the LM3914 - essentially answering MY questions for everyone else.

Step One
The first things you need are the Datasheet and Eric's program. They can be found here:

If you don't already have them, you will need to install the BV5 files that can be found here:
There are a few things I then discovered that helped me see the big picture....

There are a lot of things about the datasheet that were unclear to me, and some of that was because the datasheet showed so many variations in how to set up the reference voltages. Also, the interaction between the LED brightness and reference voltage adjustment confused me so that I assumed there were more interactions than there really are.

So the next piece of the puzzle that made a big difference for me, was discovering (on a different forum) that the reference voltage source (pins 7 and 8) is basically the same thing as an LM317 voltage regulator. As a matter of fact, they both use the same equations to determine their voltage.

The final key for me was understanding that the IC's internal voltage divider is a stack of resistors that is accessed between pin 4 and pin6 and is independent of the voltage reference source.

Step Two
Select the current for your LEDs and what your reference voltage (RHi and RefOut) will be.
Since I'm going to make around 24 different bargraph displays with something like 10 different input sources (temp. sensors, pressure transducers, analog position sensors, etc.), I plan to make a general circuit and condition the input with an op amp. This means I can pick whatever reference I want and adjust the range with the op amp.

Depending upon what you are measuring, you can determine your reference from the voltages required.

The LEDs I selected are pretty bright and will therefore need 6 ma to 7 ma current.

Step Three
Calculate resistor values for the LED current and reference voltage you need.
Start up the LM3914 simulator program (for this, you can use the single LM3914 version) and setup the supply voltage. Then play with the sliders for R1 and R2 to get the LED current and reference voltage you selected.

Keep in mind that the reference voltage regulator needs 1.5 volts headroom from the supply voltage.

If your reference voltage is to be the nominal 1.25 of the voltage reference source, the adj. pin (pin 8) can be connected to ground (zero ohms resistance).

You now know the resistor values to start with.

I used six cascaded LM3914s. The resistor values determined in the previous step are what are used on the last (most significant) IC, with some modification....

Step Four
Determine resistor values for Voltage Divider Stack.
I selected 3.48 volts as my reference voltage and 6.3 ma to drive the LEDs (as shown).

View attachment 62267

Here you see that R1 is 4.02 kilohms and R2 is 7.18 kilohms. Closer examination reveals that pin 7 is at a potential of 3.48 volts in relation to ground (that voltage drop will show across R1 and R2 combined). It is directly connected to pin 6 (RHi), the high end of the internal voltage divider. Since I have six LM3914s, I want to divide the 3.48 volts into six equal steps - one for each chip.

The total resistance of R1 and R2 is 11.2 kilohms. So six equal steps will be 11.2 divided by 6 or 1.87 Kilohms. And you'll have something like this.

View attachment 62268

But what about the connection to pin 8? The simulator tells us we need 4.02 Kilohms between pin 7 and pin 8. So we do this.

View attachment 62269

Now there is another thing to take into account. Inside each LM3914, there is a stack of resistors for it's own internal voltage divider. It turns out, these resistors are in parallel with the resistors we just assembled. Since parallel resistors change the overall resistance, we need to change the value of our resistors to make up for this.

There are six LM3914s (with their internal resistors) in parallel with our 11.2 kilohm stack. The nominal resistance of the LM3914's resistors is 10 kilohms. This is what we get.

View attachment 62271

We actually have 60 kilohms in parallel with 11.2 kilohms. This will only give us a total of 9.44 kilohms where we need 11.2 kilohms. So we need to recalculate what value will give us the right resistance. I am lazy, so I just used one of the online parallel resistance calculators for this. So we will need 13.77 kilohms total resistance in our voltage divider, to give us 11.2 kilohms when the parallel resistance is included. This is a 23% increase in the resistance.

So we multiply the resistor values by 1.23 and we get this.

View attachment 62273

Step Five
Determine resistor values for LED current of remaining ICs.
We now have the resistor values to set up the reference voltage to each LM3914, plus we have set the LED current for only the top IC. Now we need the set the current for the remaining five chips.

Open the LM3914 simulator again. Set the slider for R2 to zero ohms. Now adjust the slider for R1 to deliver the appropriate current to the LEDs.

View attachment 62274

For my application, R1 is 2.37 kilohms. The lower five ICs will need 2.37 kilohms between pin 7 and pin 8, and pin 8 will be grounded.

View attachment 62276

The datasheet gives the tolerance for the voltage reference source (between pin 7 and pin8) as anywhere from 1.2 volts to 1.34 volts.

This can have a significant effect on the results of the above calculations, since they are based on a nominal voltage of 1.25 volts.

I measured the voltage of my chip and made the appropriate adjustments in my circuit. This variation is part of the reason that trimmer pots are shown in the datasheet's schematics. You may rather add trimmer pots and go through a calibration process instead of recalculating everything after measuring the actual value.

Another issue could be the tolerance of the resistance of the internal voltage divider stack. The datasheet specifies from 8 kilohms to 17 kilohms. This is a huge potential variation!

Since I have seventy-five LM3914s to choose from, I measured the resistance and voltage to select six ICs that were a close match. You may not have this luxury, so trimmer pots may be the easiest solution....


If the voltage divider resistors inside the chip are matched, or their resistance is close enough to provide acceptable accuracy, the stack of external resistors are unnecessary. The only resistors needed are between pin 7 and pin 8, and pin 8 to ground on the top LM3914. These are to set the LED current and reference voltage for the circuit. Be sure to include the stack of internal resistors in parallel when calculating the values. If the IC's internal reference voltage source is not used, and an external reference is provided, the LED current for all six LM3914s can be set as shown in Step 5 above.

The purpose of the external resistors is to provide a method of correcting or adjusting the inequalities of the internal resistor stack from chip to chip. This can be done by including trimmer pots in the design, or by measuring each chip's resistance (between pin 4 and pin 6), and then calculating the appropriate value for the external resistance (of that chip) that normalizes the resistance difference.

When I originally wrote this guide, I had some tunnel vision (from part of the datasheet that explained this resistor stack), and didn't see (until Jeff illuminated it in post #4) that it was for normalizing the variation between ICs.

Since I have selected six LM3914s with resistance between 11.47k and 11.52k, the normalization is unnecessary. Thanks Jeff!
Last edited:


Active Member
Very nicely done. Did you use Raymond Haigh's article on using the LM3914-LM3916 from Everyday Practical Electronics (February 2001)?


Very nice! Have you considered cascading the internal resistor arrays directly? It essentially makes one big voltage divider, instead of several smaller ones. Recently, I have been working with some 20-step displays using 3914's and have found this works well in my application, which is dot mode.

Wannabe EE

New Member
Very nice! Have you considered cascading the internal resistor arrays directly?
Interesting... I'm not sure I understand... but I'm looking at it....

So are you suggesting that there is no need to connect external resistors to the nodes (pin 6 to pin 4) between LM3914s? From what I can tell, that should work. However, if the internal resistor stack is significantly different between chips, there would be no way to adjust this, and linearity would suffer. But since I am checking the resistance and selecting matching ICs, This should be fine.

Thanks for the tip! It saves some resistors an some layout time.;)
Last edited:


I use two drivers, so I have 20 steps. On the driver for the lower bank of ten LEDs, the RLO pin is connected to ground. The RHI pin of that chip is connected to the RLO pin of upper bank driver. The RHI pin of the upper bank driver is connected to the reference voltage. The resistor arrays are then in series and act as one big voltage divider. I don't use the internal reference pins (REFOUT) of either chip for the voltage reference in my application, I just use them to program the LED current.

Wannabe EE

New Member
Thanks Jeff, I think I get it. As I understand then, your reference voltage is the nominal 1.25 V. Also, since the datasheet says the resistance of the voltage divider stack can be anywhere between 8k and 17k it is possible that you could have a big difference between the top and bottom 10 divisions (affecting linearity). I have already selected six ICs that only vary between 11.47k and 11.52k (less than .5%), so what you suggest should work quite well for me!

Thanks! You've helped me understand this even better!
Last edited:


You're welcome.

I'm not using the 1.25v reference to feed the divider, I only have a resistor connected from it to ground to set the LED current. The "top" of my divider (RHI) is connected to a different, regulated voltage thru a pot for scaling adjustment.

Wannabe EE

New Member
The "top" of my divider (RHI) is connected to a different, regulated voltage thru a pot for scaling adjustment.
I'm considering doing this also.;)

P.S. I edited my first post to reflect the new perspective illuminated by your suggestions.:)
Last edited:
Not open for further replies.

Latest threads

EE World Online Articles