PWM cable lenght

I'm using PT4115 drivers for the LEDs in my shower wall and dim them with PWM: http://www.micro-bridge.com/data/CRpowtech/PT4115E.pdf

The thing is the location for the Arduino for accessing him easy. From the driver to the LED i guess its best to make the distance as short as possible because the driver goes up to 1MHz (datasheet).

Is it a problem to make the PWM cable from the Arduino to the drivers ~3 meters (10ft) long? The PWM pin will be split into 3...

Then i have 18 3.2V/20mA LEDs i also need to PWM. 4 connected directly to the Arduino and 14 connected to a PCA9685. Here i need 4-5 meters (13-16ft) and CAT cable would be best - problem?

I'm going to guess that you'll be fine.. The 1MHz switching frequency is filtered through an inductor anyway, and the PWM from the Arduino isn't running anywhere near that fast.

MrGlasspoole: because the driver goes up to 1MHz (datasheet).

The key here is "up to."

That's the speed the chip supports. The actual frequency is whatever you drive it with. If you're using then Arduino's default PWM, its in the range of 400-600Hz.

Put a freewheel diode close to the driver chip. (Not close to the LED load.) This will help avoid the problems of inductive voltage spikes in the long cables.

Diode D in the aplication circuit shown on the first page of the datasheet.

[quote author=James C4S date=1450747606 link=msg=2530977]The actual frequency is whatever you drive it with.[/quote]Thats something i could not figure out from the datasheet. That means if i use 200Hz PWM on the DIM pin the output is the same?

But the sheet says you can use up to 20KHz and output max is 1MHz...

MorganS: Put a freewheel diode close to the driver chip.

The diode is there. This are kit's for self soldering: http://led-stuebchen.de/index.php?page=product&info=7

So you guys think it is save to use 3 meters (10ft) from driver to LED without killing my neighbours radio or my phone?

What about the other thing: 4-5 meters (13-16ft) from Arduino (PWM) through CAT to the 20mA LEDs?

MrGlasspoole: Thats something i could not figure out from the datasheet. That means if i use 200Hz PWM on the DIM pin the output is the same?

But the sheet says you can use up to 20KHz and output max is 1MHz...

Oh, I misread it.

So the buck converter is running at 1MHz. However, the LEDs are still switched ON and OFF by the DIM pin, which has a max PWM frequency of 50KHz. So you're still going to see mostly the PWM frequency across your wires.

I have made custom boards with a PCA9685 and 16x PT4115E LED drivers.
The boards run on 24volt and can drive upto 16 downlights each. Most LED downlights are 12watts@~19volt.
There is ~7.5meters of Cat-6 between the Arduino and two of these boards (I2C protocol and supply).
And the “PT4115E to LED” wiring varies between 3 and 10meters.
I hear nothing on FM radio, and very little on AM radio.
Leo…

7.5 meters I2C - do you use the P82B96?

And little is not nothing :)

Yes, ~7.5meters of Cat-6.
Just a Mega connected to two PCA9685 chips. Nothing else.
One wire pair for clock and ground, another pair for data and +5volt.
System runs 24/7 without any problems.

Little as in a few birdies on AM radio when dimming, but nothing when the lights are on full, because the LED drivers output almost pure DC without PWM.
I have used a 100n ceramic cap across the LED outputs on the board to try to limit radiation.
Leo…

Ok i did forget to ask about at how much Kbaud?

Standard 100k.

Thats cool.

Since you know the PCA9685 maybe you can answer this: http://forum.arduino.cc/index.php?topic=367229.0

The source/sink part?

Sourcing is when the PCA powers the LED (LED connected to ground). Sinking is when the PCA switches a powered LED to ground (LED connected to supply).

Arduino's 10-bit PWM sucks at dimming home lighting LEDs to a low level (course steps). But the 12-bit PCA9685 has smooth dimming to very low light levels. I use a library with 255 lineair brightness steps (12-bit CIE conversion) . https://github.com/brunnels/PCA9685 I think Adafruit also has a library. Leo..

Ok after clarifying that long cables from drivers to LEDs and also I2C can work out of spec... What about PWM from the Arduino directly to 20mA LEDs or the drivers?

If this also works I'm free with the Arduino placement and can layout everything in a way that i can save money on cables.

MrGlasspoole: Ok after clarifying that long cables from drivers to LEDs and also I2C can work out of spec...

What do you mean with out of spec.

From the datasheet: The PCA9685 is in the new Fast-mode Plus (Fm+) family. Fm+ devices offer higher frequency (up to 1 MHz) and more densely populated bus operation (up to 4000 pF).

Cat-6 is 53pf/meter. Leo..

I use these.

You can send a 5V signal 4000 FEET (3/4 MILE)

I think it's best if OP draws up a diagram, so it can be checked. Cat-6 (or Cat-5), cable resistance and capacitance have to be taken in account. e.g when a PWM pin will be driving LED, it's wise to have the current limiting resistor on the Arduino side. So the Arduino pin does not drive the cable capacitance.

If it was me I would use two PCA9685 boards where the lights are, and have 32channels available there. Could also be less wiring. Leo..

driver goes up to 1MHz (datasheet).

I don't see how this is relevant when driving leds. Standard video minimum is 26 frames per second. Recent technology has gone from 60hz to 240 hz, None of these require 1 Mhz for pwm. The human eye can only distinquish so much. What good does 1 Mhz do you ? Do you have a 1000 leds you need to pwm ?

1Mhz is the max I2C data transfer rate. That short data burst sets the 16 PWM registers.

PCA9685 has a default PWM frequency of 200hz. Perfect for 12-bit PWM.

Default I2C data rate is 100khz. At that rate, and with the right value pullup resistors, Fm+ bus (wire) capacitance can be 4000pF. AFAIK the original I2C standard was 3mA/400pF. Leo..

I’m not seeing how I2C got in the discussion. I looked at the datasheet and see the “DIM” input but didn’t see any reference to I2C nor any SDA & SCL pins on the driver. So why are you talking about I2C ?
What did I miss ?

FYI,
I know the PCA9685 is I2C but how does that help ? It doesn’t OUTPUT PWM. It PWMs the LED loads (16 of them). So if the reference to 1 Mhz is in reference to the PCA9685, and the OP is not driving 1000 leds with 63 PCA9685s, how would the 1 Mhz capability be in any way relevant to the OP’s application ?

With 63 PCA9685s, using the 1 Mhz frequency, that would allow over 15 khz /PER PCA9685.
PWMing LEDS with anything over 200 hz is pointless. The human eye will not distinguish the changes.