Is there a DIP available that accomplishes what this circuit seems to do?

What I am trying to do -- Use a low current PWM source from an Arduino to output a high current capacity PWM from a separate power supply.

Why I want to do this -- Current limitations on the Arduino PWM pins are too low to drive many potential applications I have. For example in the video below. Two simple CC RGB LEDs driven by 6 PWM pins with the initial RGB values transmitted via bluetooth to the Arduino. The red anode of each has the highest current draw of about 15mA. So two RGB LEDs in parallel is all I could safely power directly from the Arduino. In the video I am not adding the parallel RGB LEDs but just driving two single RGB LEDs.
Please forgive the time it took to set the exposure value to actually see the colors of the LEDs in the video.

Video 1

Basically I want in this instance to ramp up the scale from one RGB LED to ten RGB LEDs.

What I have tried so far -- I have created the following circuit. I don't know what it would be called though to be able to Google potential DIP solutions.

On the left side there is the secondary power connection +5V at the top and ground at the lower left.
Then the 4 pin connection at the bottom center is the input from the Arduino from left to right it is the red PWM, ground, green PWM and blue PWM.
Then at the top is a 4 pin output for 5 RGB LEDs with the pins from left to right being red PWM, ground, green PWM and blue PWM. The output is connected to a 5 parallel RGB LED testing strip.

Here is a schematic. Sorry its Fritzing, but it was the software I have.

Q1,Q3 and Q5 are NPN S8050 datasheet here.

Q2,Q4 and Q6 are PNP S8550 datasheet here.

Here is a picture of the circuit in the same orientation as the schematic.

If I am reading the datasheets correctly (which I very well might be failing at) I should be able to run 30+ RGB LEDs in parallel without burning up the transistors since they can source up to 700mA given that I am using resistors to limit the LEDs to around 15mA for the red and the other two colors are much lower.

To test I went from the breadboard at the input of one of the RGB LEDs with jumpers to my circuit. So the Arduino was driving both the original RGB LED and the 5 RGB LEDs on my parallel strip. I sent values of 255 255 255 255 255 255 so both RGB LEDs on the breadboard would be white and everything would be at maximum output.
Measured current from the pins of the Arduino to the circuit were less than 1mA (measured 964uA).
Measured current from the circuit pins to the parallel LEDs was 74.1mA for the red which was very close to the 15mA each LED I was attempting to get. The parallel blue was drawing 19mA which was also very close to anticipated value per blue anode.

Here is a video of the large 5 RGB LED strip following the fade of one of the single RGB LEDs on the breadboard.
Video 2.
It also sadly shows my blue values are still too bright compared to the red and green. I guess that is why prototypes are handy to build.

It seems to me there is probably some DIP-8 IC that accomplishes what my cobbled together circuit does. As obvious from my little circuit I tend to want to space discrete components far apart to avoid soldering together things that are not supposed to be soldered together.
It would be much easier to create my full scale project using 1 IC in a DIP rather than 6 transistors and 6 resistors. 8 points to solder vs 30 seems a much nicer option.

So is there such an IC that can source 700mA+ PWM from a low current PWM input?

There isn't a DIP part that I know of. There is this that comes close:

a2982 source-driver-8-channel-50v-500ma

Search for "RGB LED driver chip". As pwillard says, through-hole parts may be hard to come by.

I offer a board that has 32 high current sink drivers (low Rds n-channel MOSFETs). (designed for 1A, can likely do more)
Uno controls 4 shift registers that control the current sinks. I have a current source board also with low Rds P-channel MOSFETs, similarly controlled.
Either will support PWM to shift register OE/ pin, or there is a shift PWM library.
(Or you can leave off the shift registers and come up with your own PWM drive to the MOSFET gates.)
http://www.crossroadsfencing.com/BobuinoRev17/

Is there any particular reason you are using high side switching ?

Boardburner2:
Is there any particular reason you are using high side switching ?

If I understand your question (which I may not) it is the only way to do things in general that I have even a slight grasp of how they work.
In this example specifically I think I have to use high side switching because the RGB LEDs are common cathode(CC). So if I just PWM the low side all three colors would be equal. Unless I somehow switched between the three colors while sending different PWM to the low side per active high side. Which to me seems really complicated. It may not be, but seems that way to me.

But in general it just seems 'right' to do everything possible before a device (be it a LED or a DC motor or a SSR etc) on the input and then just have ground go to ground.
Take for example a standard 3mm red LED that I wanted to fade on and off. I would pick a PWM pin (say pin D3) on the arduino, attach the appropriate resistor to the pin, attach the anode of the LED to the resistor and then attach the cathode of the LED to ground. That way all my voltage and current is under control before it gets to the LED.
Now it would be possible for someone else to just drive pin D3 HIGH(so +5v), attach the LED anode, attach the resistor to the cathode and then attach something else between the resistor and ground like a transistor which is driven by a second PWM pin and get the LED to fade.
But that seems unnecessarily complicated to me, plus it is difficult to get my mind around the idea although the anode is connected directly to a pin with a +5v output the LED isn't really getting +5v due to the components between the cathode and ground.
It seems similar to using my bare left hand to pull a cooked casserole out of the oven but not being burned because of the oven mitt on my right hand. Now I know that is not a very good example and that is not how electricity really works, but that is just how my mind wants to look at things.

From the responses it would appear that a source driver IC is what I am looking for.
Maybe something like this or maybe this.
Lower current ability but plenty for this specific project. But they might be for the common anode type RGB LEDs or low-side switching I guess.

Frostline:
If I understand your question (which I may not) it is the only way to do things in general that I have even a slight grasp of how they work.
In this example specifically I think I have to use high side switching because the RGB LEDs are common cathode(CC). So if I just PWM the low side all three colors would be equal. Unless I somehow switched between the three colors while sending different PWM to the low side per active high side. Which to me seems really complicated. It may not be, but seems that way to me.

But in general it just seems 'right' to do everything possible before a device (be it a LED or a DC motor or a SSR etc) on the input and then just have ground go to ground.

High side switching is generally taken to mean positive side for DC.

And LIVE side for ac.

When switching on a circuit with a switch convention is normally to switch the + v side.

However to do this with transistors requires PNP which can require a level shift first.

By using Low side switching which is common your transistor count is halved.

By using open collector ics or transistors it is relatively easy to interface logic levels to any other voltage supply.
With SSR or Motor drivers this level shifting is built in normally.

Boardburner2:
By using Low side switching which is common your transistor count is halved.

Maybe it is, but did you notice that RGB LEDs come in common-cathode or common-anode varieties with the common connection made internally? He appears to have the former variety!

If both Arduino and lights were powered by a reliably regulated 5 V switchmode supply, you only need either NPN emitter followers or PNP top-side switches. In fact, if the NPN emitter followers are adequately heatsinked, their collectors can be supplied from an unregulated higher voltage supply.

Paul__B:
Maybe it is, but did you notice that RGB LEDs come in common-cathode or common-anode varieties with the common connection made internally? He appears to have the former variety!

Yes but i do not understand why.

Surely buying a common anode led would be easier than the extra 3 transistors.

Boardburner2:
Yes but i do not understand why.

Surely buying a common anode led would be easier than the extra 3 transistors.

I will attempt to explain why.

Imagine if you can a person with little to no electronic experience. IoT technology starts making the news, the subject looks interesting to this person. So after much research it seems a good starting point for the novice is the world of Arduino. A way to test the waters so to speak for relatively little expense compared to say a Raspberry Pi with little HDMI monitor etc. Plus none of that confusing Linux stuff. It can be programmed in C/C++ which on first glance looked quite similar to the C# that was being studied at the time.
So a starter kit is ordered with lots of new and interesting little bits and bobs, including a common cathode RGB LED.
Some more research and coding trial and many errors commences.
Eventually it is discovered to be rather simple, 3 pins that can output PWM, 3 resistors so the LED does not go poof and one connection to ground is all that is required. That plus a bit of code and the LED can now make nearly any color desired by simply changing the 3 PWM values.
Further study showed a single common anode RGB LED takes a good bit more kit to make work compared to the single common cathode one. Those odd transistor things that had not been studied yet.
So more of the simpler common cathode RGB LEDs were ordered, promptly tucked nicely into a little storage bin and forgotten about for several months.
Several months and projects later a use for the RGB LEDs is found, a simple project to show data passing from bluetooth, being parsed by the Arduino and then that data is used in a way more visually interesting than simply watching values change on the serial monitor.
The simple project was a success and a grander scale for long term display was desired.
Other previous projects had resulted in a wealth of both S8050 and S8550 transistors and a large supply of 2.2k resistors. So circuit bodging then did commence.
After spending the better part of a day fiddling with trying to solder squirmy little transistors and resistors that constantly wanted to jump off the perf board mid-solder a thought dawned about there possibly being an IC that could be held on with a bit of tape and easily soldered all at once.
And here we are.

As the external voltage supply does not exceed 5V then just miss out the NPN transistors. In fact miss out the external supply and just use the 5V output of the Arduino.

Paul__B:
If both Arduino and lights were powered by a reliably regulated 5 V switchmode supply, you only need either NPN emitter followers or PNP top-side switches. In fact, if the NPN emitter followers are adequately heatsinked, their collectors can be supplied from an unregulated higher voltage supply.

I am thinking there is very important information in the above quote. Sadly however it is one of the many times where my limited understanding of what more technically inclined people write here results in a failure to grasp what is being pointed out.
So I googled NPN emitter follower.
This lead me to a wiki page where about 99% of the information was well beyond my current comprehension level.
I did however glean a bit from it and this image looks promising.

It seems to be showing that it might be possible to just use the S8050 and completely eliminate the S8550. Though it was completely unclear to me how to determine the value of Re.

The transistor continuously monitors Vdiff and adjusts its emitter voltage almost equal (less VBEO) to the input voltage by passing the according collector current through the emitter resistor RE. As a result, the output voltage follows the input voltage variations from VBEO up to V+; hence the name, emitter follower.

Firstly it doesn't say what VBEO is. Is that the voltage drop across the transistor?

Secondly it seems to be indicating that Vin should be equal to V+. What happens if that is not the case?

The one fact I omitted in my OP was that the pro-mini I am using in this project is a 3.3V. Would that cause the emitter follower circuit to only output Vin-VBEO or 2.6V?

Grumpy_Mike:
As the external voltage supply does not exceed 5V then just miss out the NPN transistors. In fact miss out the external supply and just use the 5V output of the Arduino.

The Arduino in question does not have 5V out I don't think, though totally my fault for failing to mention it was a 3.3v pro-mini in the OP.
But say I switch it to a 5V nano, wouldn't the current be way beyond what the nano could safely output? Only one of the two RGB LED sections was built and it was only a half-sized prototype. So basically 1/4 the current needed for the final assembly of 2 strips of 10 RGB LEDs each. I am already at about 115mA or so not counting what the pro-mini itself draws and the HC-6.

Frostline:
Further study showed a single common anode RGB LED takes a good bit more kit to make work compared to the single common cathode one.

Complete and utter nonsense. :roll_eyes:

Grumpy_Mike:
As the external voltage supply does not exceed 5V then just miss out the NPN transistors. In fact miss out the external supply and just use the 5V output of the Arduino.

I realise it was a rather long dissertation but you may have missed the part where he proposes to

Frostline:
Basically I want in this instance to ramp up the scale from one RGB LED to ten RGB LEDs.

And then

Frostline:
If I am reading the datasheets correctly (which I very well might be failing at) I should be able to run 30+ RGB LEDs in parallel

Frostline:
I did however glean a bit from it and this image looks promising.

Very promising. That is indeed an emitter follower.

Frostline:
It seems to be showing that it might be possible to just use the S8050 and completely eliminate the S8550. Though it was completely unclear to me how to determine the value of Re.

You already have - it is the resistor or resistors in parallel that limit the current to the LEDs.

Frostline:
Firstly it doesn't say what VBEO is. Is that the voltage drop across the transistor?

Base-to-emitter voltage. But later on ...

Frostline:
Secondly it seems to be indicating that Vin should be equal to V+. What happens if that is not the case?

No, the emitter "follows" the base voltage less VBEO. The only requirement is that V+ is equal to or greater than Vin. What is useful is that V+ can be the full unregulated supply voltage for the whole assembly (within the ratings of the transistor) and the emitter voltage will be defined purely by Vin.

Frostline:
The one fact I omitted in my OP was that the pro-mini I am using in this project is a 3.3V. Would that cause the emitter follower circuit to only output Vin-VBEO or 2.6V?

Ah, so you already know what VBEO is - about 0.65 to 0.7 V.

Yes, of course you cannot use a 3.3 V Pro Mini for this. You cannot use 3.3 V to effectively power RGB LEDs in any case. You want a 5 V Pro Mini. You only use a Nano if you want to have USB functionality in the finished design, otherwise you program a Pro Mini with a USB-TTL adapter and disconnect that for the target application.

The Maxim MAX69** family probably has something useful for this application: Display Driver Electronics | Analog Devices

I've used the MAX6971 before - it's available as a DIP package. It is common-anode though. They seem to have a few common-cathode types in the family too. It's really great at driving a lot of LEDs with all the difficult current control done on board the MAX chip.

Frostline:
What I am trying to do -- Use a low current PWM source from an Arduino to output a high current capacity PWM from a separate power supply.

So is there such an IC that can source 700mA+ PWM from a low current PWM input?

How about a motor driver H-bridge shield? The H-Bridge, used to drive LED's, will give you 4 channels, and of course each channel is PWM controllable.

And, motor driver boards are made to handle high currents.

Grumpy_Mike:
As the external voltage supply does not exceed 5V then just miss out the NPN transistors. In fact miss out the external supply and just use the 5V output of the Arduino.

"Miss out"? What does that mean?

Krupski:
"Miss out"? What does that mean?

https://www.google.com/search?q=miss+out+british+meaning

to fail to include someone or something, usually by accident

: to leave out : omit

In this case, not by accident.

Frostline:
The Arduino in question does not have 5V out I don't think, though totally my fault for failing to mention it was a 3.3v pro-mini in the OP.

It was indeed your fault and you have wasted the time of a lot of people due to this. Most of the thread is useless without this fact.

The emitter follower can not work for you, because with only a 3V3 output the maximum voltage you can have across your LED / resistor is 3.3 - 0.7 = 2.6V. This is not enough to turn the green and blue LEDs on.

You can use the 2918 you cited above. Also there is the LMD18400 you could use.

Ah I see. Here in the USA we sometimes have British students and it's comical (to me) because, even though they speak English, their slang leaves be bewildered. It's strange to not understand speech in my native language!