LEDs messing up when using more than 62

  • Hi guys,


    I've been running an ambilight system for 2 years, until it stopped working and now I'm struggeling to get it working again. :(


    My system:

    - Raspberry Pi 1 B with OSMC
    - Level converter from Lightberry (Arduino connected to the Raspbery Pi by USB cable)
    - WS2801 light strip with 114 LEDs in use
    - Grabber and stuff
    - Three Power supplies (level converter + light strip / Raspberry Pi / USB hub)


    After replacing the level converter by a new one, the system is basically working again but with some flaws (described below) that I dont get extinguished. :(
    This behavior can be observed when running the "rainbow swirl" effect from hyperion, so it's definitely not the grabbers fault.
    I've already replaced the Raspberry Pi 1 (with a Raspberry Pi 3), the level converter (with yet another one) and the USB hub, but the behavior didn't change.
    So I assume that the light strip might be damaged as well.


    Behavior:


    When using 62 LEDs at max:
    - The LEDs basically do what they are supposed to do.
    - Every now and then (not that often) all LEDs seem to be flashing in a bright color for one update cycle.


    When using more than 62 LEDs (lets say 62 + x):
    - The last x LEDs will get their color information irregularly
    - The beginning if the light strip will be flashing, because the color information of the last x LEDs will be shown there
    - Most of the time, the the very first x LEDs will receive that incorrect color information, but it can also be displaced (by up to ~20, what I observed)


    - Drastically reducing the update rate (to 2 fps) does't affect the problem (but the flashing will be slowed down with the update rate)
    - When removing the Raspberry Pi from the system, all LEDs hold their color perfectly fine


    Questions:


    Does anybody have an idea, what's going wrong?
    Is there a possible reason why LEDs with index >= 62 are having problems? (Is it because it's close to 64?).
    Do you see a chance of fixing this issue by cutting off the very first LED (since the problems start there)?
    The very first LED of the WS2801 strip differs from the rest in that there are two extra resistors in front of the chip. Can I cut off the first LED nontheless?


    Thanks in advance!

  • Hi,


    This is the config I've been using for two years:
    (The first LED was not to be used at all due to the positioning of the light strip, but sometimes would stay blue.)




    For testing, I've reduced the amount of active LEDs and removed the special behavior for the first LED:


  • Oh and it seems that the level converter (or should I say logic converter?) has its own startup sequence, that is played whenever the level converter gets connected to any USB port (e.g. Raspberry Pi, PC, power bar).
    This sequence turns all LEDs red, green and blue for about a second each.
    However at the moment the timing seems to be off and the LEDs often don't change their color at the same time. I don't recognise any special behavior around the 62 LED mark, but that is less recognisable the more LEDs are adressed (and the converter does light up the whole strip).
    So I feel like playing with the Hyperion config won't help me. :(

  • 1. Richtig, bei dem alten Arduino passiert nichts mehr, außer dass die erste LED random an geht. Seitdem ich den ersetzt habe, funkitioniert das System wieder, aber mit Fehler. Ich habe bereits zwei neue Arduinos getestet, beide mit identischem Verhalten.
    2. Aktuell sieht es für mich so aus, als würden die grüne und blaue Phase gut funktionieren. Die rote Phase, die als erstes kommt, kann aber entweder rot/grün oder rot/blau gestreift ausfallen. Oder die rote Phase entfällt und dafür kommen zwei andere Phasen, wobei die erste davon nur super kurz ist.


    PS: Das Verhalten mit den 62 LEDs ist bei einfarbigen Sequenzen schlecht zu beurteilen, weil grundsätzlich ja auch die hinteren LEDs angesteuert werden, aber nur etwa mit 50% Erfolg. D.h. die hinteren LEDs zeigen dann ein Frame später auch die richtige Farbe an.

    • Offizieller Beitrag

    ok gut dann weiter gehts:


    1. welche .ino hast du genutzt für die arduinos?
    2. bist du dir sicher das am rpi dein arduino als /dev/ttyACM0 erkannt wird?
    3. ist dir mal in den gedanken gekommen das vllt die 63. led defekt sein könnte und keine daten weiter gibt? ist davor eine lötstelle auf dem stripe?

  • Hi,


    1. Über den Arduino hab ich leider keine Informationen. Der kam direkt so von https://lightberry.eu
    2. Wenn der Arduino über USB angeschlossen ist, gibt es doch nur die Optionen /dev/ttyACM0 oder /dev/ttyUSB0? Die Farbdaten kommen ja grundsätzlich an. Bei USB0 bleiben die LEDs hingegen schwarz.
    3. Die Farben die ab der 63. LED fehlen, werden stattdessen am Anfang des Strips angezeigt (meistens direkt ab Position 0, aber ebenso auch weiter hinten). Also kann der Fehler nicht erst hinten liegen?


    4. Ich habe festgestellt, dass selbst beim Nutzen von nur 62 LEDs, alle LEDs geschätzt einmal pro Minute hell aufblitzen.


    PS: Vielen Dank fürs Helfen!

    • Offizieller Beitrag

    bei lightberry bin ich leider drausen, musst du die mal direkt kontaktieren du hast immerhin ca 24eur(!!) für nen arduino gezahlt...ich weiss echt nicht was in deren code bzw hardware ist...ob da vllt ein led limit im code ist ka...

  • Hi,
    Schade, aber trotzdem danke.
    Könnte ich testweise die erste LED von meinem WS2801 Band abschneiden? Auf der ersten LED liegen allerdings noch zwei Widerstände vor dem Chip, was bei den anderen LEDs nicht der Fall ist. Deshalb weiß ich da nicht so richtig, was ob das dann noch funktionieren würde / ob ich irgendwo Widerstände anlöten müsste...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!