1
\$\begingroup\$

I'm trying to add an additional 2 LED strips to my current setup of 4 identical ones. Each strip consists of 32 RGB LEDs with a WS2801 chip run by an arduino which connects to a PC. However I'm running into flickering issues when using the new strips.

The LEDs seem to light up as they should during the start sequence where the arduino itself sends out a couple of hard coded, single, colors for a few seconds. After the test sequence it will start listening to commands from the PC, which will here tell it to show purple and only purple.

Video of the issue- using 1 new strip (closest to camera) with one old working strip:

https://youtu.be/MfVgBuQBV-I

Video of what it should look like - using 2 old strips together:

https://youtu.be/9lQy1iouA_g

I have drawn a crude circuit diagram of my wiring here. I'm slightly unsure about the grounding of everything since the arduino sending the signals is powered by USB. But as said it seems to work fine for the old strips.

diagram

More details and what I've tried:

  • It's interesting to note that using a new strip together with an old one causes the old to misbehave as well.
  • It's also interesting that is shows a correct color (although blue) when i stop writing color values
  • No software or other hardware changes were made between the two videos
  • Below is a photo comparing the input connectors of a new (top) and old (bottom) strip. They are also ordered off the same amazon article and should be identical
  • Both new strips seem to behave the same
  • Data / Clock lines are correct, swapping them does nothing
  • Using slower clock speed from the arduino doesn't help (normally using 1 Mhz)
  • Powersupply (10 W) should be sufficient
  • I've measured the supply voltage to be 5.01 V using a multimeter
  • Lowering brightness (lowers power consumption) does nothing
  • Playing around with the connector ends seem to do nothing

photo

I would've though the new LED strips were broken if it wasn't for the first test sequence being correct. Any suggestions on troubleshooting would be appreciated.

\$\endgroup\$
  • 1
    \$\begingroup\$ Add a 1000 uf capacitor near the power input. And if that doesn't work, the strip is bad, request a replacement. \$\endgroup\$ – Passerby Sep 10 '16 at 13:54
  • \$\begingroup\$ To clarify, if identical setups do not work from an identical vendor, something is wrong. Your troubleshooting as posted seems to be as complete as it can be. Only thing left to check is maybe a different revision of the WS2801, can you read the letters on the IC? \$\endgroup\$ – Passerby Sep 10 '16 at 14:53
  • \$\begingroup\$ If the test sequence works but the PC sourced sequence does not, it sounds like you might have data with marginally incorrect timing and a new chip that is more sensitive to timing details or placed in a circuit that makes it so. This is where it would be very useful to use a scope to compare the signals, without that you will have to audit your code very carefully. And without that code, this question really has to be considered incomplete. \$\endgroup\$ – Chris Stratton Sep 18 '16 at 6:22
  • \$\begingroup\$ @ChewToy it may be beneficial to provide a specific question. You've defined your problem, it may be useful to people who are answering to have a specific question or questions in your post. \$\endgroup\$ – Voltage Spike Sep 19 '16 at 16:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.