How to safely increase the distance between ws2811 chips

arduinodistance

I'm designing a pick to light system based on ws2811 chips + leds and an mcu like arduino uno or mega.

The average distance between the independent light modules will be about 2m which is in the 10m range specified on the datasheet.

Any two point the distance more than 10m transmission signal without any increase circuit.
https://www.adafruit.com/datasheets/WS2811.pdf page 1.

The point is that between the mcu and the first light module will be a distance of about 25m.
This may also happen between the independent light modules.

I have 3 ideas about how to solve this problem.

  • put dummy ws2811 chips every 10m.
  • use opamps as buffers or increasing the voltage to the maximum input voltage.
  • use diferential amplifiers like those used on the dmx512 protocol.

Could somone point me to the right direction?
What's the right way to increase the distance between the ws2811 chips?

Notes:

  • I don't care about refresh rate as it could be as low as 2fps.
  • There will be extra power suplies on every say 5 modules more or less.
  • There will be about 12 output lines from the mcu.
  • There will be about 100 light modules.

Sorry for my english.

Best Answer

My guess is that limitation is due to a crappy output driver. So you could use a line driver to drive the wire to the first chip. Basically, all you need is an op amp with enough 'oomph' to drive the capacitance of the line. Alternatively, a differential driver is a good idea. I would suggest using an RS485 or RS422 to TTL translator chip. These are pretty easy to come by and will convert a single-ended signal into a differential signal with enough drive strength to drive quite a bit of cable. An RS422 chip might be ideal; it has an independent transmitter and receiver. You can put one of those on on each string of WS2811 to convert both the input and output signals for daisy-chaining.