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

RPi3 + WS2812b funktioniert nicht

Discussion in 'German Talk' started by BlurayXL, 9 January 2019.

  1. BlurayXL

    BlurayXL New Member

    Messages:
    3
    Hardware:
    RPi3
    Hallo,

    ich bin neu hier im Forum und hoffe den Beitrag so gut wie möglich zu verfassen.

    Ich habe WS2812B mit 144leds/m an der rechten, linken und oberen Seite des TVs. Insgesamt sind das 310 LEDs. Jeder Strip ist einzeln ans Netzteil angeschlossen (1,5 mm^2 & 2,5 mm^2 Querschnitt). Die Datenleitung ist an den drei Stripes verlötet. Pfeilrichtung stimmt ebenfalls. Netzteil ist ein MeanWell 200W, 40A.
    Auf dem Rasperry Pi 3 läuft Libreelec. Der Arduino ist via USB mit dem Raspberry verbunden. Die Datenleitung führt auf den Arduino. RPi und Arduino sind ebenfalls an den GND angeschlossen. Am RPi hängt noch der Grabber (rechte USB Reihe, Arduino linke), der mit dem HDMI-CVBS Converter verbunden ist & an dem wiederum das HDMI Kabel des AV Receivers dranhängt.
    Die Hyperion config und den Sketch (als .txt) werde ich als Datei anhängen, da das einbinden eventuell zu lang wäre.

    So zum Problem:
    Die LEDs haben bis jetzt einmal (auch nur eine Hand voll) geleuchtet. Sonst sind sie immer aus oder es leuchtet mal eine irgendwo zwischendrin. Habe es auch schon direkt am RPi mit dem WS281x Treiber probiert, dann über einen Level Shifter (da WS2812b da 0,7*5V=3,5V benötigt, er aber nur 3,3V ausgibt), beides ohne Erfolgt. Des Weiteren wurde noch ein weiterer Sketch probiert, kein Erfolg
    In der Hyperion Config ist als Output "ttyACM0" angegeben, jedoch kann ich nicht sagen ob dies oder "ttyUSB0" der Arduino ist. Das sind die einzigen bei denen kein Fehler im Log kommt (das einzige was kommt ist "BORDER SWITCH REQUIRED").

    Da ich keine vollständige Lösung/Anleitung gefunden habe (bzw. eine die funktioniert) und jemand einen anderen Weg kennt das Ambilight zum laufen zu bekommen, wäre ich ihm auch sehr befunden wenn er dies berichten könnte.

    Anzumerken ist noch, dass mein anderes Ambilight Setup "WS2801 32leds/m, RPi3, Grabber, HDMI-CVBS Converter" erfolgreich funktioniert.


    Da ich echt nicht mehr weiter weiß, wäre ich dankbar über eure Hilfe!

    Mit freundlichen Grüßen
     

    Attached Files:

    Last edited: 9 January 2019
  2. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,273
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    https://github.com/hyperion-project...assets/firmware/arduino/adalight/adalight.ino

    benutz bitte mal das sketch hier... dort dann ws2812b einstellen und darauf achten das die baudrate die selbe ist wie auch in der hyperion config (falls nicht, mal eine langsamere baudrate testen)

    und ob es ttyACM0 oder ttyUSB0 ist einfach mal den arduino abstecken ein "ls /dev" und danach arduino einstecken und weider "ls /dev" dann vergleichen was hinzugekommen ist :)

    und ein "delayAfterConnect" : 0, auf "delayAfterConnect" : 10, umstellen bringt auch manchmal was
     
  3. BlurayXL

    BlurayXL New Member

    Messages:
    3
    Hardware:
    RPi3
    Vielen Dank für deine Antwort. Das Sketch war ja schon richtig eingestellt, bis auf die LEDs. Ich hatte das so drauf gespielt, die LED Anzahl hat nicht gestimmt, aber es ging trotzdem nicht.
    Baudrate ist die selbe, delayAfterConnect auf 10 & richtiges Gerät mittels ls /dev erkannt.
    HTML:
    "device" :
        {
            "name"       : "MyHyperionConfig",
            "type"       : "adalight",
            "output"     : "/dev/ttyUSB0",
            "rate"     : 115200,
            "delayAfterConnect"     : 10,
            "colorOrder" : "rgb"
        },
    Code:
    #include "FastLED.h"
    
    #define ANALOG_MODE_AVERAGE  0
    #define ANALOG_MODE_LAST_LED 1
    
    /**************************************
       S E T U P
    
       set following values to your needs
    **************************************/
    
    #define INITIAL_LED_TEST_ENABLED true
    #define INITIAL_LED_TEST_BRIGHTNESS 32  // 0..255
    #define INITIAL_LED_TEST_TIME_MS 500  // 10..
    
    // Number of leds in your strip. set to "1" and ANALOG_OUTPUT_ENABLED to "true" to activate analog only
    // As of 26/1/2017:
    // 582 leaves ZERO bytes free and this
    // 410 is ok
    // tested with 500 leds and is fine (despite the warning)
    #define MAX_LEDS 310
    
    // type of your led controller, possible values, see below
    #define LED_TYPE WS2812B
    
    // 3 wire (pwm): NEOPIXEL BTM1829 TM1812 TM1809 TM1804 TM1803 UCS1903 UCS1903B UCS1904 UCS2903 WS2812 WS2852
    //               S2812B SK6812 SK6822 APA106 PL9823 WS2811 WS2813 APA104 WS2811_40 GW6205 GW6205_40 LPD1886 LPD1886_8BIT
    // 4 wire (spi): LPD8806 WS2801 WS2803 SM16716 P9813 APA102 SK9822 DOTSTAR
    
    // For 3 wire led stripes line Neopixel/Ws2812, which have a data line, ground, and power, you just need to define DATA_PIN.
    // For led chipsets that are SPI based (four wires - data, clock, ground, and power), both defines DATA_PIN and CLOCK_PIN are needed
    
    // DATA_PIN, or DATA_PIN, CLOCK_PIN
    #define LED_PINS 6        // 3 wire leds
    //#define LED_PINS 6, 13  // 4 wire leds
    
    #define COLOR_ORDER GRB  // colororder of the stripe, set RGB in hyperion
    
    #define OFF_TIMEOUT 15000    // ms to switch off after no data was received, set 0 to deactivate
    
    // analog rgb uni color led stripe - using of hyperion smoothing is recommended
    // ATTENTION  this pin config is default for atmega328 based arduinos, others might work to
    //            if you have flickering analog leds this might be caused by unsynced pwm signals
    //            try other pins is more or less the only thing that helps
    #define ANALOG_OUTPUT_ENABLED false
    #define ANALOG_MODE           ANALOG_MODE_LAST_LED  // use ANALOG_MODE_AVERAGE or ANALOG_MODE_LAST_LED
    #define ANALOG_GROUND_PIN     8                     // additional ground pin to make wiring a bit easier
    #define ANALOG_RED_PIN        9
    #define ANALOG_GREEN_PIN      10
    #define ANALOG_BLUE_PIN       11
    
    // overall color adjustments
    #define ANALOG_BRIGHTNESS_RED   255              // maximum brightness for analog 0-255
    #define ANALOG_BRIGHTNESS_GREEN 255              // maximum brightness for analog 0-255
    #define ANALOG_BRIGHTNESS_BLUE  255              // maximum brightness for analog 0-255
    
    #define BRIGHTNESS 255                      // maximum brightness 0-255
    #define DITHER_MODE BINARY_DITHER           // BINARY_DITHER or DISABLE_DITHER
    #define COLOR_TEMPERATURE CRGB(255,255,255) // RGB value describing the color temperature
    #define COLOR_CORRECTION  TypicalLEDStrip   // predefined fastled color correction
    //#define COLOR_CORRECTION  CRGB(255,255,255) // or RGB value describing the color correction
    
    // Baudrate, higher rate allows faster refresh rate and more LEDs
    //#define serialRate 460800      // use 115200 for ftdi based boards
    #define serialRate 115200      // use 115200 for ftdi based boards
    //#define serialRate 500000         // use 115200 for ftdi based boards
    Vielleicht stimmt auch etwas mit den LEDS nicht, ich habe jetzt APA102 und werde es mit diesen probieren.
     
    Last edited: 9 January 2019
  4. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    1,273
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
    #define LED_TYPE WS2812B gibts nicht
    probier mal
    #define LED_TYPE WS2812
     
  5. BlurayXL

    BlurayXL New Member

    Messages:
    3
    Hardware:
    RPi3
    ich habe mir APA102 geholt und alles eingerichtet. Hat alles wunderbar funktioniert!

    Trotzdem Danke für deine Hilfe.