1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

SOLVED Static flickering WS2801

Discussion in 'Hardware Support' started by Mads Emil, 18 October 2017.

  1. Mads Emil

    Mads Emil New Member

    Messages:
    5
    Hardware:
    RPi3
    Hi,

    I have for a long time been trying to get Hyperion working satisfactory, but have not succeeded. No matter what I do, my LEDs are flickering. The symptom is random, I cannot always tell precisely ‘when’ or ‘where’. The most of the LEDs repoduce the right color. So a green image is primarily green, but almost certain with flickering. I have best luck with 'moving' colors . The issue looks like this:


    I stated of following this guide: http://awesomepi.com/part-2-let-there-be-light-installing-ambilight-software-hyperion-in-openelec/. Yesterday I made a clean install, following the tutorial on this site gaining a better result.

    Hardware:
    Raspberry Pi 3 model B (Overclocked arm 1 Ghz)
    WS2801 ca 3.5 meter 104 soldered LEDs (8.6 W/m)
    Power supply 5V 10A

    Software:
    Openelec 8.0.4 (Kodi 17)
    Code:
    SSH Traffic:
    ssh connected
    ssh out:     cat /storage/logfiles/hyperion.log
    ssh in:     Hyperion Ambilight Deamon (777)
    ssh in:         Version   : V1.03.3 (brindosch-2fbbcff/2f01dfa-1495880388
    ssh in:         Build Time: Jun  3 2017 02:06:37
    ssh in:     INFO: Selected configuration file: /storage/.config/hyperion.config.json
    ssh in:     HYPERION INFO: ColorTransform 'default' => [0; 103]
    ssh in:     HYPERION INFO: ColorCorrection 'default' => [0; 103]
    ssh in:     HYPERION INFO: ColorAdjustment 'default' => [0; 103]
    ssh in:     LEDDEVICE INFO: configuration:
    ssh in:     {
    ssh in:         "colorOrder" : "rbg",
    ssh in:         "name" : "MyHyperionConfig",
    ssh in:         "output" : "/dev/spidev0.0",
    ssh in:         "rate" : 1000000,
    ssh in:         "type" : "ws2801"
    ssh in:     }
    ssh in:     HYPERION INFO: Not creating any smoothing
    ssh in:     EFFECTENGINE INFO: 27 effects loaded from directory /storage/hyperion/effects
    ssh in:     EFFECTENGINE INFO: Initializing Python interpreter
    ssh in:     INFO: Hyperion started and initialised
    ssh in:     INFO: Boot sequence 'Rainbow swirl fast' EFFECTENGINE INFO: run effect Rainbow swirl fast on channel 0
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     started
    ssh in:     INFO: Json server created and started on port 19444
    ssh in:     INFO: Proto server created and started on port 19445
    ssh in:     DISPMANXGRABBER INFO: Display opened with resolution: 1920x1080
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     INFO: Frame grabber created and started
    ssh in:     BORDER SWITCH REQUIRED!!
    ssh in:     CURRENT BORDER TYPE: unknown=0 hor.size=0 vert.size=0
    ssh in:     EFFECTENGINE INFO: effect finished
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    ssh in:     JSONSERVER INFO: New connection
    ssh in:     BLACKBORDER INFO: threshold set to 0 (0)
    ssh in:     BLACKBORDER INFO: mode:default
    ssh in:     JSONSERVER INFO: Connection closed
    Testing:
    I have been testing the hardware with a WS2801 controller:


    Using the controller everything is working perfectly.

    Any help is appreciated. I’m exhausted from ideas.
     
    Last edited: 18 October 2017
  2. eltanque

    eltanque New Member

    Messages:
    13
    Hardware:
    RPi2
    For your hardware connections.... have you connected your led strip ground to the pi?
     
  3. penfold42

    penfold42 Moderator Developer

    Messages:
    742
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    Do you have a level shifter ?
     
  4. Mads Emil

    Mads Emil New Member

    Messages:
    5
    Hardware:
    RPi3
    @eltanque This is how I have connected everything. Ground between mi RPi, power supply and both ends of the LED

    IMG_0745.jpg
    IMG_0751.jpg
    IMG_0752.jpg

    @penfold42 I don't know what that is, so my guess is no. You think that could solve the problem?
     
  5. penfold42

    penfold42 Moderator Developer

    Messages:
    742
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    Very possibly. The leds are specified to use signalling voltages of >3.6 to signify a '1'.

    The Pi gpio outputs only go to 3.3v

    A common cheap chip to use is a 74hct125
     
  6. Mads Emil

    Mads Emil New Member

    Messages:
    5
    Hardware:
    RPi3
    That sounds just the thing I need. Explains the flickering, why the controller works. Guess the problem is length and numbers og LEDs on the strip, where the voltage goes under the threshold completely. This hypothesis is also build on the fact that I had a much shorter working (at least with no flickering) when I was trouble shooting.

    I can easily get my hands on a SN74HC125NE4, but since I have never use one before I am not quite sure on the circuit, in terms of a circuit diagram.
     
  7. penfold42

    penfold42 Moderator Developer

    Messages:
    742
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    It must be HCT not HC

    The wiring has been covered a few times in other threads on the forums
     
  8. Mads Emil

    Mads Emil New Member

    Messages:
    5
    Hardware:
    RPi3
    Oh, didn't actually se the 'T', but as far as I can see from the data sheet the 74HCT125 and 74HC125 are quite similar. And I do have access to a 74HC125N.

    And you are quite right, the level shift with the 74HCT125N, have indeed been covered before.
    axcfb6.png
    This circuit is taken from @Biggles thread.

    To the best of my understanding this circuit looks very great.
    However, I don't feel safe connecting the LED power supply and Raspberry PI, therefor I cut that connection, or am I making a mistake in this?
    My wires to the RPi are only 1.5m, so I guess the 470Ω resistors are unnecessary?
    And finally isn't a 1mF capacitor quit big if its just a 'decoupling capacitor', and if so wouldn't it be better to have it as close to IC or LED's as possible?
     
  9. penfold42

    penfold42 Moderator Developer

    Messages:
    742
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    I agree on cutting one of the power lines.

    I would probably cut the power between the level shifter and the strip and then power the level shifter from the Pi.

    If you want to use HC rather than HCT power it via a diode to drop its supply from 5v to about 4.3v
     
  10. Mads Emil

    Mads Emil New Member

    Messages:
    5
    Hardware:
    RPi3
    Allright, I did make the level shifter with the 74HTC125. I did not include the resistors or capacitors. Anyway this is the result:
     
  11. Akriss

    Akriss Active Member

    Messages:
    355
    Hardware:
    RPi1/Zero, RPi2, RPi3, 32/64bit, +Arduino, +nodeMCU/ESP8266
    Hi,
    It might be high frequency interference.
    A Ferrite bead on the clk/data wire and/or the led's power may help.
    There usually inexpensive as well, so no big loss to try if all else has failed.

    https://en.wikipedia.org/wiki/Ferrite_bead

    Hope it helps.