Arduino Mega - WS2812 - Glediator

  • Hallo Leute,


    Ich habe folgende Situation: Ich möchte meinen WS2812 LED Stripe mit einem Arduio Mega steueren. Habe mir dazu passend auch die Software Glediator geladen und "installiert" (WS2812-Glediator-Interface, http://www.solderlab.de/index.…oads/category/4-glediator).


    Sobald ich aber den Seriellen Port Freigebe, leuchtet keine LED. Schließe ich den Sripe über einen Arduino UNO mit genau demselben Programm an, läuft es perfekt.


    Ich könnte mir vorstellen, dass es daran liegt:

    Code
    #define DATA_PORT          PORTD
    #define DATA_DDR           DDRD                  
    #define DATA_PIN           6                  
    #define NUMBER_OF_PIXELS   50


    woher weiß der Arduino Mega, welchen USART er nehmen soll (es gibt ja 4, im gegensatzt zum Arduinu UNO).


    Vielleicht liegt es auch daran, dass beim kompilieren folgende warnung auftritt:

    Code
    In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:30:0,
    
    
                     from sketch\WS2812_Glediator.ino.cpp:1:
    
    
    ...WS2812_Glediator\WS2812_Glediator.ino: In function 'void USART_RX_vect()':
    ...WS2812_Glediator.ino:105:5: warning: 'USART_RX_vect' appears to be a misspelled signal handler [enabled by default]


    der code wird trotzdem kompiliert und übertragen.


    Vielen Dank für jede Hilfe :)

  • Da im Header steht:
    "A small sketch for all kind of (8bit) Arduino boards to receive data from Glediator and push it to stripes / matrices of WS2811 / WS2812 pixels"."
    dachte ich mir, dass müsste wohl gehen.


    Oder benutzt irgendwert ein anderes Programm um die WS2812 Stripes anzusteueren?


    Dankeee :)

  • danke schonmal für die Antworten!


    Genau, ich habe im Header gelesen, dass max. 512 Pixel angesteuert werden können (anscheinend für das UNO und Mega gleich?).
    Ich wollte mir aber einen Tisch mit 768 Pixleln bauen.


    Vielleicht hat ja jemand den Glediator sketch des Arduino Mega schonmal für die WS2812 Pixel umgeschrieben.
    Ich habe im Arduino Forum https://forum.arduino.cc/index.php?topic=344136.0 einen ähnlichen Beitrag gefunden, bei dem anscheinend jemand eine Lösung gefunden hat. Ich hoffe er/sie wird mir diese verraten :)


    Oder gibt es sogar eine komplett andere GUI, wie die Glediator Software?


    Dankeee ^^

  • Zitat

    Oder gibt es sogar eine komplett andere GUI, wie die Glediator Software?


    Ja, nennt sich Jinx! und der Programmierer ist auch hier im Forum vertreten


    Zitat

    Ich wollte mir aber einen Tisch mit 768 Pixleln bauen.


    Da wirst du mit einem Arduino aber nicht weit kommen, es sei denn du nimmst WS2801 Pixel.

  • Ich habe gerade gesehen, dass es möglich ist bei Glediator mehrere Boards einzustellen.
    So könnte ich auch einfach 2 Arduino UNO nehmen, die jeweils für 384 Pixel "verantwortlich" sein. :)
    [Blockierte Grafik: https://www.dropbox.com/s/w4yjlzpx6zq77c9/Glediator.PNG?dl=0]
    Jetzt ist nur meine Frage:
    Wie kann die Glediator Software, mit dem zweiten Board kommunizieren? Es wird ja nicht auch noch an den PC über USB angeschlossen, oder?
    Oder müssen die beiden Boards untereinander kommunizieren?


    Vielen Dank für die Hilfe :)

  • Ich habe gerade gesehen, dass es möglich ist bei Glediator mehrere Boards einzustellen.
    So könnte ich auch einfach 2 Arduino UNO nehmen, die jeweils für 384 Pixel "verantwortlich" sein. :)


    Jetzt ist nur meine Frage:
    Wie kann die Glediator Software, mit dem zweiten Board kommunizieren? Es wird ja nicht auch noch an den PC über USB angeschlossen, oder?
    Oder müssen die beiden Boards untereinander kommunizieren?


    "Board" bezieht sich auf die von Solderlab selbst vertriebenen UI Boards : http://my.agile-hardware.de/en/umsetzerboard


    Die kann man dann auch daisychainen und deshalb gibt es natürlich die Einstellung wie groß die Matrix pro Board ist.


    Du arbeitest aber zwingend im Single Pixel Mode


    Da du nur einen COM Port für das Protokoll öffnen kannst, ist es meiner Meinung nach nicht möglich mehrere Arduinos oder sonstige "dumme" SPI Umsetzer gleichzeitig anzusprechen.

  • Witzig was es da inzwischen alles gibt... Vielleicht hätten wir das tpm2-Protokoll doch lizenzieren sollen... :D (Spaß)

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Moin,


    also ich denke der Arduino MEGA wird Probleme machen, weil Du wahrscheinlich nicht die Lötbrücke "RESET-EN" auf dem Arduino Board unterbrochen hast?
    Dann macht dein Arduino MEGA jedes mal einen Auto-Reset, wenn Glediator Daten schickt, so beginnt das Programm immer von neuem und die LEDs werden nie angesteuert.


    Der Sketch von solderlab.de läuft eigentlich auch mit dem MEGA. Falls Du einen anderen Code probieren willst, der alle neuen Arduino Modelle unterstützt:
    https://github.com/RanzQ/seria…ster/GlediatorFastled.ino aber die FastLED Library muss installiert sein.


    Der MEGA sollte deine 768 Pixel schaffen und ein MEGA kostet aus China ca. 9,00 EUR.


    Und sonst mal bei ebay nach Teensy Board suchen ;) Das schafft locker 1000-2000 Pixel, gibt verschiedene Versionen geht bei ca. 17,00 EUR los.
    Kann auch per Arduino IDE programmiert werden. Die aktuellste Version ist die 3.2 und hat am meisten Leistung.
    Aber der MEGA sollte ausreichen ;)


    Gruß Nils

  • @Unreal87: Dankeee! das war die Antwort die ich gesucht habe :)
    Ich werde den FastLED-Code heute abend mal austesten.


    Zum Arduino Mega und dem offiziellen Glediator code: Die Lötbrücke "RESET-EN" war bei mir von anfang an unterbrochen ?(


    Nochmals danke!!!

  • Zum Arduino Mega und dem offiziellen Glediator code: Die Lötbrücke "RESET-EN" war bei mir von anfang an unterbrochen ?(


    Nochmals danke!!!


    Hast Du ganz, ganz genau geguckt? Es sind zwei Lötpunkte aber die eigentlich Verbindung zwischen den beiden ist dünn wie ein Haar. Sieht man nur
    bei guter Beleuchtung ;) Und wenn die wirklich weg wäre, solltest du eigentlich kein Sketch mehr auf den Arduino MEGA spielen können ;)


    Wenn die weg ist musst Du entweder einen Schalter anlöten oder du drückst sofort wenn unten Upload in der Arduino IDE steht, kommt nach Kompilieren, den Reset-Taster auf dem Arduino. Mit etwas Übung klappt es bei mir jetzt jedes mal, musste auf meinen MEGA in letzter Zeit sehr, sehr oft Code laden ;)


    Das FastLED Library kannst Du dir bei Github laden, ist auf der offiziellen Seite verlinkt, dann läuft der Code.


    Falls Du Probleme mit dem Installieren des FastLED Libarys hast, dann schau hier mal rein ab ca. Minute 4:


    Externer Inhalt youtu.be
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    Viel Erfolg ;)

  • Ich habe nun mal versucht, die WS2812b Module, mit dem Arduino Mega, Glediator und dem FastLED-Code laufen zu lassen.


    Beim kompilieren gibt es keine Fehler und im Glediator-Programm kann ich auch den COM-Port öffnen. Doch leider leuchtet keine meiner LED's.
    Die LED's sind getestet und funktionsfähig.


    Das ist der FastLED Code, den ich eingebunden habe:


    Ist das Problem bei jemanden schonmal aufgetreten?