with rpi it works well, with orange pi flickers

  • Hello everybody,

    i have a problem with the hyperion configuration.

    I installed everything on a raspberry 3 b that a friend lent me, everything works fine using the ws2801 led and stk1160 as grabber.

    I had tried with a raspberry 1 b + (2014) but it can't acquire the video from the grabber, I don't know exactly why.

    I therefore thought of installing hyperion on OrangePi pc +. the problem is that by connecting the LEDs to pins 19 and 23, the LEDs flash and flicker continuously, whatever the image, even when I do BYTE RGB ORDER ASSISTANT. is there anything i miss when i connect with the gpio?

    these are the settings I have enabled on armbianEnv.txt to enable spi

    Code
    overlays = analog-codec cir i2c0 spi-spidev uart1 usbhost2 usbhost3 w1-gpio
    
    param_w1_pin = PA20
    
    param_w1_pin_int_pullup = 1
    
    param_uart1_rtscts = 1
    
    param_spidev_spi_bus = 0
  • Hi,

    a Raspberry Pi 1b is too slow for Hyperion. I would recommend minimum a Pi Zero, better 3A+.

    Don't really know the Orange Pi. Is the GPIO Layout the same like Raspberry?

    Grüße aus Österreich / Greetings from Austria !

    - Don't wanna miss it anymore !

  • Okay, for Ws2801 you need Pin 19 for Data and 23 for Clock. I think PC0 and PC2 are not SPI and that's the issue.

    Do you get generally colors that match the picture or just flicker?


    Edit: Overlooked...:whistling: Purple pins seem to be SPI after all.

    Grüße aus Österreich / Greetings from Austria !

    - Don't wanna miss it anymore !

    Einmal editiert, zuletzt von Mike72 ()

  • Maybe a good sign... Are you using one or two power supplies for the Pi and LEDs?

    If two, have you connected both GNDs together?

    Grüße aus Österreich / Greetings from Austria !

    - Don't wanna miss it anymore !

  • I have a 5v 10A power supply to power the leds and also the orangepi. from the power supply I connected two USB female, with one I connect the LEDs, with the other the orangepi.

    (gnd are not directly connected to each other, but use the same power supply)

  • Is your power supply adjustable? Some ps gives out 5.2Volt, but it's too much for the LEDs. Maybe you can measure it.

    From a length of 3 meters it is also better to feed 5V and GND at the beginning and end.

    Grüße aus Österreich / Greetings from Austria !

    - Don't wanna miss it anymore !

  • the voltage was definitely high, from 5.18v I set it to 5v. the leds have stopped flickering, but they are not working properly. when I go to #conf_leds led settings, I select ws2801, Baudrate 1000000, spidev0.0, if I do "invert signal" they become all white, otherwise only the first led lights up.

    • Offizieller Beitrag

    ws2801 dont need a inverted signal, this options is only if you having a levelshiffter which inverts

  • Baudrate 1000000, spidev0.0,

    try a higher baudrate, i am running on SPI 1700000 hertz ( 1000000 is default) on APA102 30l/mtr

    ws2801 dont need a inverted signal, this options is only if you having a levelshiffter which inverts


    actually i think its a handy trick to see if the ledstrip is working at all, like testing with the ledstrip hardware part ;)

  • try a higher baudrate, i am running on SPI 1700000 hertz ( 1000000 is default) on APA102 30l/mtr

    Ambientheater77: It seems you have plenty idea of the matter.:thumbup:

    I'm using the LEDs directly from the RPi GPIOs with a level shifter, without WLED.

    Do you know whats the ideal baudrate is for APA102, respective SK6812 RGBW? I don't find answers in datasheets, or I don't understand it...:D. I always changed so far for SK6812 the SPI buffer size in cmdline.txt to 1024000, readed in another forum. Sometimes it's works, sometimes not. Generally, what's the difference baudrate in Hyperion settings and the SPI buffer size?

    Grüße aus Österreich / Greetings from Austria !

    - Don't wanna miss it anymore !

  • Generally, what's the difference baudrate in Hyperion settings and the SPI buffer size?


    I thought about it before and i think its more the correlation between the two ; in cmdline.txt there you specify the buffer that is available for the SPI bus baudrate thus SPI interface.


    the SPI bus baudrate is hand in hand together with the buffer size written in cmdline.txt


    anyway you get my drift, SPI bus is in fact also lifting on your other bus connections so can not be to high. ( above 50 Mhz doesn't work)

    the bus itself is Serial Peripheral Interface that is a protocol which has a maximum count of data within each packet, with the baudrate setting you are determing how fast that data ( protocol) is going to be transferred over the bus to the receiver end.... the ledstrip in our case.



    so there is a limit on both of them, i hope this make a little scence

  • nothing to do, I changed the baudrate as you told me, but only the first LED remains on.

    I have deactivated the gradient and now the LEDs light up. they flicker a lot less than before, but still there seems to be a lot of mixed colors. for example when I do the red green test, red alternates with blue, same thing with green.

  • I meant Smoothing.

    did you correct at leddevice choose the BGR/RGB option?

    i think so, i put RGB but i also tried GRB. the LEDs flash and the colors also mingle at different baud rates. the same configuration with the raspberry 3 works perfectly. I tried some effects that are already installed, the only one you can see well is that of the police, where there are red and blue running

  • I managed to get everything working!

    I double checked the soldering, and I realized that the GND between the led power supply and the orange Pi was not well connected, but it was not enough. I removed the Smoothing and set Baudrate as 2400000.

    also to enable the SPI correctly I set this in /boot/armbianEnv.txt:

    Code
    overlays = analog-codec cir i2c0 spi-spidev uart1 usbhost2 usbhost3 w1-gpio
    param_w1_pin = PA20
    param_w1_pin_int_pullup = 1
    param_uart1_rtscts = 1
    param_spidev_spi_bus = 0

Jetzt mitmachen!

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