Damaged Pins on a PCA9685 Servo Driver Board

I am using these PCA9685 servo driver boards to drive LEDs on several model railroad signals. I have them hooked directly to the PWM pins and the grounds as shown below. I have the servo value set at 4096 for their max brightness.

I have lost two PWM pins on the board that seem to have failed. I swapped to other pins to keep the LEDs working for now.

My question is am I damaging or stressing something with his operation? Should I add a resistor? It was my understanding that this board limits the current to a safe level so no resistors are needed.




Can you measure the current being drawn by the LED ?

It is, of course, normal to use current limiting resistors with LEDs and the listing does say

All PWM output lines have a 220 ohm series resistor protection and can easily drive LED.

When an Op adds the phrase "... should I add a resistor?" they usually know the answer is "YES".

LED voltage drop is largely based on color:

To insure not overstressing the LED or CMOS, you should take the lower current of the two, the supply voltage, any internal uC CMOS, and use Ohm's Law to calculate an appropriate resistor value - color dependent!

I will do some experimenting. Thanks!

I will try and measure amperage tonight. I found this documentation, which is what led me to leave out the resistors.

"First wire a LED to the board as follows. Note you don't need to use a resistor to limit current through the LED as the PCA9685 will limit the current to around 10mA:"

If you're using genuine Adafruit PCA9685 boards then they already have 220 Ohm resistors in series with the PWM pins on the board. If you're using clone/knockoff versions then who knows.

How are you powering the PCA boards?


You can tell from the picture in the link you provided in the first post that the board you are using has resistors in series as well.

The chip itself has no such protection as you can tell from this extract from the data sheet.

Just using the Arduino.

What do yo mean when you say "Chip"? I am using figure #15 correct?

To help clarify the project, here is a picture of the signal structure I am attempting to animate. As well as a condensed wiring diagram. should I add a resistor in the terminal board to bridge the connection?

The last picture is a test board of the project to help weed out the bugs. The breadboard represents the signals that will be on the structure.

A PCA board has 3 different power connections, terminal block, Vcc and V+. "Just using the Arduino" doesn't exactly tell us much.


The integrated circuit called PCA9685. If you say you have a PCA9685, it is a chip with a data sheet. You look up the data sheet to see exactly how it works.

You did the right thing by posting a link to the board you have. This board you have contains the PCA9687 chip along with other added components. To understand how your board works you need to look at the schematic of the board along with the information of the chip’s data sheet.

While you did it right many beginners here say they have a certain chip but it turns out to be a board that contains the chip along with other components. This can lead to a lot of wasted time.

Using a solderless bread board in what looks like a permanent installation makes it certain to fail after a few months. Once you have established you circuit you need to solder it all up using strip board.
Edit :- thanks again Paul.

1 Like

Your phone has got you again! :rofl:

Thank you for the great information!

Just curious, what is your recommendation for a permanent attachment onto these servo driver boards? I tried some push on female screw terminals but they are too large to clear all the pins.

Ahh sorry about that. I am using the VCC & GND pins.

I would solder wires onto them. But you have now probably put header pins, or sockets inti those holes. So now I would use a double and single row of the inverse connector and solder on to that.