Beiträge von katagia

    So eine Störung ist meist nicht nur eine Flanke, die kommt als Burst rein. Wenn der Pegel der Datenleitung im undefiniertem Bereich zwischen high und low liegt, kann theoretisch alles passieren.

    Das selbe gilt für jedes Signal, das nicht der Spezifikation entspricht.

    Ich vermute die LEDs haben eine State Machine oder andeten internen Zustand, der durcheinander kommt. Kann gut sein, dass deshalb dann alle LEDs leuchten.

    Mike72: Nur weil es bei dir funktioniert heißt es nicht, dass es bei jedem funktioniert.

    EMV wird oft als Gleichtaktstörung eingetrahlt. Wenn du einen Schirm um die Leitung packst, bekommt der die Störeintrahlung ab. Je nach Masseführung wackelt dann wieder das Eingangssignal, dass die LED sieht.


    Das ist genau das, was ich meinte. Wenn kein "high" Pegel vom Pi erzeugt wird, wird er 5V high Pegel auf 5V rein über den Pull-Up erzeugt.

    Wenn der tatsächlich 10k hat, sind beide Enden der Leitung recht hochohmig, man fängt sich sehr leicht Störungen ein.

    Ein richter Buffer ist niederimpedant, da kommt die Störung nicht weit.

    Ausserdem kann man bei einem Buffer an der Senke, also der LED, einen Kondensator anbringen. Der kopmensiert dann das, was noch übrig ist.


    Warum kein Kondensator an dem vorhandenem Levelshifter? Da der High-Pegel nur durch den Pull-Up erzeugt wird, ist das Signal, wie wladi schon schrieb, sehr langsam. Die Flanke ist rund und das Signal kommt nicht richtig hoch. Mit noch mehr Kapazität steigt der Pegel noch langsamer und es kommt gar nichts mehr durch.

    ist der Pi währenddessen eingeschaltet?

    Es gehen tatsächlich alle LEDs kurz an? Welche Farbe?

    Wie kange ist die Leitung?

    So etwas passiert ganz gerne, wenn die Datenleitung als Antenne wirkt.

    Der Levelshifter ist für I2C, das ist eigentlich falsch. Kann gehen, kann aber auch knapp sein, da die high Pegel nur passiv erzeugt werden.

    Ein Levelshifter für uart oder spi (push pull) wäre besser. Alternativ könnte man an deinem versuchen den Pullup Widerstand kleiner zu machen. Dafür müsstest du allerdings SMD löten können.

    Ich vermute, ohne den Levelshifter gehen die LEDs gar nicht?

    Oft geht 5V Logik weit genug runter, dass 3.3V Pegel reichen. Deine LEDs brauchen nach Datenblatt leider 3.4V. Könnte aber trotzdem gehen.


    Och betreibe meine ws2801 ganz ohne Pegelwabdler, hab aber nur 50cm Kabel. Offiziell brauchen die auch 4V.


    Nachtrag:

    Zu dem Wandler gibt es viele negative Kritiken, die den, wie du, eingesetzt haben. Dafür ist der halt nicht gedacht.

    Hi


    I use retropie: pi@retropie:~ $ cat /etc/debian_version

    10.11


    I had this problem with any animated gif, you can use a free one from wikipedia:

    https://upload.wikimedia.org/w…ing_earth_%28large%29.gif


    When you press the test button during effect creation it crashes:

    2021-10-23T12:31:33.019 hyperiond EFFECTFILES : <INFO> 0 effects loaded from directory /home/pi/.hyperion/custom-effects/

    2021-10-23T12:32:17.628 hyperiond EFFECTENGINE : <INFO> Run effect "test" on channel 1

    2021-10-23T12:32:17.628 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:181:runEffectScript() | Start the effect: name [test], smoothCfg [0]

    2021-10-23T12:32:17.628 hyperiond HYPERION : <DEBUG> PriorityMuxer.cpp:165:registerInput() | Register new input 'Web Configuration@2001:a62:1430:eb01:b881:7e24:574e:5d9b/EFFECT' with priority 1 as inactive


    Hyperion caught signal :SIGSEGV

    2021-10-23T12:32:17.706 hyperiond CORE : <ERROR> /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0xb53c8120]

    Segmentation fault


    It is possible to save the effect:

    pi@retropie:~/.hyperion/custom-effects $ cat test.json

    {

    "args": {

    "cropBottom": 0,

    "cropLeft": 0,

    "cropRight": 0,

    "cropTop": 0,

    "file": "Rotating_earth_(large).gif",

    "fps": 25,

    "grayscale": false,

    "imageSource": "file",

    "reverse": false

    },

    "name": "test",

    "script": ":/effects/gif.py"

    }


    The gif was uploaded too.


    When the effect is selected hyperion crashes again:

    2021-10-23T12:34:07.510 hyperiond EFFECTFILES : <INFO> Reload effect list

    2021-10-23T12:34:07.516 hyperiond EFFECTFILES : <INFO> 40 effects loaded from directory :/effects/

    2021-10-23T12:34:07.520 hyperiond EFFECTFILES : <INFO> 22 effect schemas loaded from directory :/effects/schema/

    2021-10-23T12:34:07.520 hyperiond EFFECTFILES : <INFO> 1 effects loaded from directory /home/pi/.hyperion/custom-effects/

    2021-10-23T12:35:08.832 hyperiond EFFECTENGINE : <INFO> Run effect "test" on channel 1

    2021-10-23T12:35:08.834 hyperiond EFFECTENGINE : <DEBUG> EffectEngine.cpp:181:runEffectScript() | Start the effect: name [test], smoothCfg [2]

    2021-10-23T12:35:08.834 hyperiond HYPERION : <DEBUG> PriorityMuxer.cpp:165:registerInput() | Register new input 'Web Configuration@2001:a62:1430:eb01:b881:7e24:574e:5d9b/EFFECT' with priority 1 as inactive


    Hyperion caught signal :SIGSEGV

    2021-10-23T12:35:08.919 hyperiond CORE : <ERROR> /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer+0) [0xb548a120]

    Segmentation fault


    Version is alpha11

    Thank you very much.

    I just came to the same result. I used powerpoint to create the gif. A little bit wired but it worked well :)

    my problem is that hyperion is crashing when I try to use it.

    I've installed alpha11 as mention in documentation.

    Some plugins cause it crash, e.g. matrix. The gif plugin crashes too.

    Unfortunately I don't have the log anymore.

    But it didn't much content anyway. It just mentioned a segfault with libc.


    alpha10 works.


    alpha9 seems to be able to download the gif and test the custom effect. In test mode the effect works. But as soon as the effect is safed and selected, the file is not found anymore:

    2021-10-19T15:47:26.691 hyperiond EFFECTENGINE : <ERROR> ###### PYTHON EXCEPTION ######

    2021-10-19T15:47:26.692 hyperiond EFFECTENGINE : <ERROR> ## In effect 'jennifer1'

    2021-10-19T15:47:26.693 hyperiond EFFECTENGINE : <ERROR> ## TypeError: File not found

    2021-10-19T15:47:26.757 hyperiond EFFECTENGINE : <ERROR> ## Traceback (most recent call last):

    2021-10-19T15:47:26.757 hyperiond EFFECTENGINE : <ERROR> ## File "<string>", line 12, in <module>

    2021-10-19T15:47:26.758 hyperiond EFFECTENGINE : <ERROR> ## TypeError: File not found

    2021-10-19T15:47:26.758 hyperiond EFFECTENGINE : <ERROR> ###### EXCEPTION END ######

    2021-10-19T15:47:26.781 hyperiond HYPERION : <DEBUG> PriorityMuxer.cpp:270:clearInput() | Removed source priority 1

    2021-10-19T15:47:26.781 hyperiond EFFECTENGINE : <INFO> effect finished

    The gif was updated into the effects folder.

    Which type of LEDs are you using?

    I have a smiliar issue when I plug in power.

    How does your setup looks like? I guess it's caused by unstable signals during power-up.
    Is the pi still powered, the interface enabled?

    Hello


    I used WS2801 stripes to build a 15x15 matrix.

    I want to create an amination for my girlfriend(s birthday).


    Hyperion is running fine a Raspberyy Pie 4.


    I'm more a technical guy so setting it up was easy but creating a nice animation is difficult for me :)

    I though about a big red heart and things like that.


    I found 2 approaches:


    1. Create a video which contains the anomation. I think that's a relative easy approach. But I'm unsure how it will look when it gets transformed to the 15x15 matrix.

    Will it still look nice?


    2. Create an effect. I think that's a more exact approach. I have microcontroller programming experience but very small experience with python or images processing.

    I read the effect documentation but I'm a little bit overwhelmed. Is there an easy way to convert a bitmap or gif file into the effect API?


    Do you have any other ideas how to do it in a nice and effective way?


    Thank you very much.