Glediator - Freeware LED Matrix Steuerung - Software

  • Immer wieder schicken mir Leute nette Videos von Glediator im Einsatz. Da war schon einiges dabei, von Küchenbeleuchtung in Matrixform über 'ne ganze Tanzfläche als Matrix bis hin zum Glediator-gesteuerten Weihnachtsbaum.


    Dieses Video hier sticht aber doch ein bisschen heraus und deshalb möchte ich es euch nicht vorenthalten:


    http://www.dailymotion.com/vid…13-show-lumineux_creation


    Beste Grüße,


    Pepe

  • pepe


    Problem gelöst. Die Berechnung funktioniert jetzt einwandfrei und ich bin glücklich.


    Großes Lob, Dank und Respekt für deine Arbeit und Mühen. Ich würde mich mal als fortgeschrittenen Programmierer in Sachen php bezeichnen,
    daher kann ich mir in etwa vorstellen, was bei Glediator an Quellcode im Hintergrund steht. Genauso die tolle und motivierende Arbeit einen
    verflixten Bug zu finden.


    Da kann sich als Resultat für den User z.B. nur eine korrekt berechnete Zahl in einem Fenster ergeben und die Arbeit, dass diese eine Zahl stimmt
    kann ruck-zuck in mehreren Stunden enden. Nur ein Beispiel...


    Dann warte ich mal geduldig auf die Umsetzerboards, ein weiteres Meisterstück deutschen Erfindergeistes ;)

  • Schönen Guten Nabend an die Glediator Gemeinde


    habe ein kleines Problem habe mir ne Matrix aufgebaut mit 1032 Pixeln 12mm RGB Ws2801.
    habe mir den Arduino Mega Sketch von der Solderlab Seite besorgt.
    Problem war das ich den ArduinoMega R3 von Conrad habe bei dem mann laut Solderlab die AutoReset Brücke rauslöten/kratzen soll.
    Sketch ist drauf Pixel Anzahl wurde eingetragen.
    Merkwürdig ist in dem Sketch steht ausdokumentiert das die pins 6 und 7 sein sollen darunter steht jedoch


    define SDO_Pin 3
    define CLK_Pin 4


    habe nun beide Varianten getestet ohne Funktion
    Der Mega empfängt auf jeden Fall Daten von Glediator die RX/TX LED leuchtet.


    Da ich nun die AutoReset Brücke geöffnet hab bekomm ich keinen Sketch mehr rauf.
    Soweit ich weiss muss man nun vorher den Reset Button kurz von Hand drücken jedoch funktioniert das nicht.

  • Hallo,


    Du darfst natürlich die Zeilen nicht so aus dem Kontext reißen! :P


    Code
    //Serial Data Output (Arduino-Mega Pin 6)
    #define SDO_Port          PORTH
    #define SDO_DDR         DDRH
    #define SDO_Pin           3
    
    
    //Serial Data Clock (Arduino-Mega Pin 7)
    #define CLK_Port          PORTH
    #define CLK_DDR           DDRH
    #define CLK_Pin           4


    So sieht es aus: Pin 3 (=Bit 3) des PORTS H sind am Mega mit einem Ausgang verbunden den die Erdinder von Arduino eben "Digital 6" nennen. Analog das ganze zu H4 = Digital 7


    http://forum.arduino.cc/index.php/topic,45329.0.html


    1032 Pixel scheint mir sehr sehr grenzwertig !! Kannst es erst mal mit weniger probieren und dann langsam steigern!?


    Flashen kannst Du noch! Einfach auf Upload klicken, warten bis die Statusleiste der Arduino IDE von "Compiling" auf "Upload" wechselt und ERST JETZT KURZ den Resettaster drücken.


    LG,


    Pepe

  • Danke für die Antwort werde morgen gleich nochmal testen.
    Wegen Der Pixel Anzahl stand auf der Solderlab Seite ich zitiere


    "You can choose any number of pixels now. Ok, that's not the complete truth, in particular the max. number of pixels is limited by the RAM size of your ATMega. This is 2kB (approx.. 600 Pixel) for Arduino UNO and 8kB (approx. 2400 Pixel) for Arduino Mega."


    Hatte zu Testzwecken einen Freeduino aus dem Franzis Lernpaket angeschlossen da war bei 270 Pixeln schluss.
    Hab Langsam die Befürchtung das Pixel 271 defekt ist.
    Gibt es Erfahrungen wie sich sowas äußert??

  • Hey nochmal,


    nun das ist wieder etwas aus dem Zusammenhang genommen. Das was da steht ist die max. Anzahl an Pixeln die so ein Chip aufgrund seines limitierten RAM Speichers handeln KÖNNTE.


    In der Praxis gibt es jedoch in Summe drei limitierend Faktoren:


    1.) Die Daten müssen vom PC zum Arduino. Das passiert seriell mit max. 1 Mbaud --> Bei 25FPS geht sich das mit 1000 Pixel gerade noch so aus (da ist aber noch kein Stück overhead eingerechnet).
    2.) Die Daten müssen vom Arduino zwischen gespeichert werden im RAM --> Darauf war die Aussage mit den 2400 Pixeln bezogen --> Das passt bei Dir ja soweit.
    3.) Die Daten müssen vom Arduino weggeschaufelt werden --> Hier sehe ich das größte Problem. Das Ganze wird nämlich aktuell mit Bitbang gemacht und der nutzt zudem noch die vergleichsweise langsamen Arduino Makros (digitalWrite()). Hier wird man sicher nicht auf 1000 Pixel kommen. Konnte es aber nie Testen weil nicht so viel Pixel hier vorhanden. Aber wenn ich mal sage man könnte die Daten per HW-SPI rausschieben und die auf 1MBit stellen, dann wären die 1000 Pixel wohl gerade so machbar (auch wieder ohne overhead). Zudem könnte ich mir aber vorstellen das Empfang mit 1MBaud und Senden mit 1Mbit gleichzeitig auch kritisch werden kann, selbst wenn man sie komplett interrupt gesteuert macht. Denn irgendwann müssen ja all die Intterrupts auch abgearbeitet werden.


    In Summe sehe ich da für Dein Vorhaben in dieser Form wenig Erfolgschancen! Das Beste für Dich wäre wenn Du Deine Matrix in zwei (oder mehr) Teilmatrizen splittest und das Ganze dann via Ethernet fütterst.


    Was mir grad noch einfällt, der Nutzer "counterfeiter" hier im Forum hat mal ein kleines Board gemacht mit einem XMega das Daten per USB empfängt und dann per DMA an WS2801 Pixel ausgibt. Das sollte mit 1000 Pixel ganz gut laufen. Kannst ihn ja mal fragen ob er noch eine Platine über hat!


    LG,


    Pepe

  • pepe hab keine mehr da... aber man munkelt es kommt bald ein neues SeduV3 raus... da sollen wohl bis zu 4.000 WS2801 Pixel auf einen Schlag mit 25 FPS angesteuert werden können :rolleyes:


    Stefan_Z Die Matrix hat ja einen Kampfpreis... könnte mich auch dafür interessieren... Leider geht dein Link nicht... ich vermute du meinst diese hier -> http://www.adafruit.com/products/420


    Grüße


    Basti

  • Ich hab's mal weiter geschoben, siehe dazu hier...


    Wenn's dann mal fertig ist, gerne nen Vorstellungsthread in "LED Schaltungen, ..." aufmachen, dann hat man gleich die Infos im ersten Post, ohne die Fragen davor :)

    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!

  • Nochmals vielen Dank für die Hilfreichen Hinweise.


    Matrix ist jetzt fertig und von den 1008 Leds sind nur 2 Defekt. ( hatte Hopsing wohl nen schlechten Tag)
    Zur Ansteuerung kann ich nur sagen Glediator läuft mit Arduino Mega besser als erwartet und sieht auch flüssig aus.


    Video folgt die nächsten Tage.


    Eine Frage hab ich aber noch, der FPS Wert in Glediator bezieht sich wahrscheinlich nur auf die Berechnung der Pixel oder??
    Da ich immer bei 10-15 FPS rumdümpel.

  • Klingt nach einer zu niedrigen Baudrate. Bei 1008 RGB Pixel brauchst du 1008*3 Farben * 25 Frames/s * 8 Bit = 604800 bits/sekunde. Dabei ist noch kein Protokolloverhead und keine Reserve dabei. Solltest also so Richtung 1Mbit gehen von der Baud. Bei 500k klappt das nicht mit 25 Frames/Sekunde.

  • Hi,


    I have an arduino mega 2560 that I would like to use with the new WS2811 sketch. In Glediator, I have set the protocol to glediator_protocol and see com4 for my arduino. I have set baud to 1000000. I click open port and see RX flashing on my board. My problem is what to do next. i have a scene in the playlist and click on play. But I see nothing. I have even removed all of my LED strips and simply put an LED on the port to see if any data is going out.. nothing. I am on digital port 31 which is port C 6 PC6 and have set up correctly in the sketch.


    # Define DATA_PORT PORTC
    # define DATA_DDR DDRC
    # define DATA_PIN 6
    # define NUMBER_OF_PIXELS 144


    Any help would be appreciated.


    Is there a FastSPI version of the ws2811 sketch?

  • Hallo Zusammen, ich habe ein ähnliches Problem wie in dem Post davor beschrieben,
    nur das bei mir die TXRX Leds nicht aufleuchten.



    Ich verwende:
    64 ws2801 Pixel
    Matrix: 8x8 - Funktion überprüft mit FastSPI Programm
    Arduino Mega 2560 - Reset EN habe ich aufgetrennt
    Mac OSX 10.9


    Matrix wird extern versorgt,
    GND ist mit Arduino ebenfalls verbunden.
    CLK ist an Arduino PIN 7
    Data ist an Arduino PIN 6 (beides wie in der WS2801 Firmware).


    librxtxSerial.jnilib für RXTX 64 Bit Habe ich mir von dieser Seite besorgt:
    http://blog.iharder.net/2009/0…jnilib-on-intel-mac-os-x/


    RXTXcomm.jar für RXTX habe ich von dieser Seite:
    http://jlog.org/rxtx-mac.html


    Glediator wird gestartet.
    Zunächst wird im Programm die Matrix Size auf 8x8 eingestellt.


    anschließend werden im Menu Output Options nachfolgende Einstellungen vorgenommen.
    Wird nun auf serial Port Open geklickt - erscheint wie auf dem Bild zu sehen eine Fehlermeldung:


    "Could not set interface Parameters"


    Die RX / TX LEDS meines Arduinos leuchten nicht.
    Meine Matrix ebenfalls nicht.
    Die Verschiedenen Output-Möglichkeiten habe ich auch probiert.


    [Blockierte Grafik: http://s1.directupload.net/images/140203/m9kggsyp.jpg]


    Hab das gleiche Problem auch, wenn ich die WS2812 Firmware und meine kleine 8x3 Adafruid ws2811 Matrix verwende.
    Fehlermeldung ist da die Selbe.
    Ich bekomme irgendwie kein Signal von Glediator in mein Arduino Board rein.




    Diverse Versionen der TX/RX in den Extensions Ordner meiner Java Distribution zu packen hilft da auch nicht weiter.


    Ich wäre für jede Hilfe sehr dankbar!

  • @gpoduska
    I am sure you have a problem with the MEGA's Auto-Reset function. Just disable it and you'll be fine. How to disable? --> Google will let you know. :)


    @jeanpaulraphi
    Du nutzt 'nen MAC? Unter Mac OS unterstützt die RXTX nur Baudraten bis 230kbaud, da kann ich leider nix dran ändern ;(


    LG,


    Pepe

  • OK. Vielen Dank schon mal für diesen Tip.


    Die RX LED blinkt jetzt auf meinem Arduino, wenn ich die baudrate auf 230k setze.
    an Pin 6 und 7 kommt jedoch nichts an.
    Muss ich in der Firmware die Baudrate ebenso auf 230k festlegen?


    es gibt da eine Zeile im Code wo steht:


    UBRR0L = 1; //Baud Rate 1 MBit


    wenn ich 1 durch 0.023 ersetze, checkt der dann das nur 230k reinkommen?


    ALso ich habe das überprüft, es kommt aus meinem mega Board nix raus.


    sowohl bei ws2801 wie auch bei 2811 nicht.


  • UBRR0L = 1; //Baud Rate 1 MBit
    wenn ich 1 durch 0.023 ersetze, checkt der dann das nur 230k reinkommen?


    Hab zwar von der Sache keine Ahnung, aber wenn, dann müsstest du 1 durch 0.23 nicht 0.023 ersetzen. Gruß,J