Jinx! - LED Matrix Control ... und die nächste Matrix Software ...

    Mich hat heute ein Video aus Argentinien erreicht:


    pantallafacil.com.ar



    Er meinte noch er hat mit der 0.92a Probleme mit dem glediator Protokoll bei seiner 50x40 Matrix, bei der 0.92 würde es gehen. Ich hab das Glediator Protokoll selbst getestet mit der 0.92a (bei 32x16) und habe keine Probleme, auch nicht in der Simulation mit mehr Pixeln. Hat von euch mal jemand die serielle Ausgabe mit der 0.92a getestet ?
    Ich muss da aber nochmal nachfragen, bei 50x40 Pixel wären das rund 1.3MBit/s auf der seriellen wenn er nur einen Port hat, das sollte dann eigentlich auch mit der 0.92 nicht klappen. Da ich ja die Framerate nicht drossel sollte alls bis zur 0.92 da früher oder später einfrieren und die 0.92a sollte eigentlich mit frameskips weiterlaufen ...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Seddi“ ()

    Ja, hat er denn nur einen Port, oder mehrere...? - bzw., was hat er überhaupt dran....? (ATMega, Xmega, Arduino, Teensy, Pi, ...)

    ich hatte das z.B. so verstanden, dass beim Xmega mit nativem USB egal ist, was man da an Baud einstellt, das geht einfach direkt mit USB-Geschwindigkeit, also 1,3 MBit auch kein Problem, die eingestellte Baudrate ist dann nur ne Zahl, die nicht weiter interessiert - also nicht so wie beim FT232R, wo's ja tatsächlich noch ein Stück serielle Verbindung gibt (zwischen FT232 und µC), für das die Baudrate tatsächlich in der HW eingestellt wird...

    warum das aber dann bisher funktioniert hat, und jetzt nicht mehr, ist mir auch ein Rätsel... ?(
    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!
    Laut dem was er mir noch geschickt hat inzwischen hatte er wohl das dran:
    pantallafacil.com.ar/Interfaz%20USB%20UART.html


    Use a USB SERIES Microchip MCP2200 1Mbps to send data to my LED matrix.
    Each panel has 100 pixels (LP6803) and receiver UART-SPI number to assign to each panel and LED matrix construct differently 4:3 or 16:9.


    Hatte das hier mit einer seriellen Loop in der Simulation mal nachgestellt, wurde dann bei 1MBit auf 12,5 fps runtergedrosselt. Er will das die Tage mal mit mehreren Ports betreiben, hat wohl mehrere Matrizen und Steuerungen im Selbstbau und nutzt das glediator protokoll.
    Das ist übrigens seine Homepage: pantallafacil.com.ar

    Hat da auch ein paar nette Spielereien :)

    Dreas99 schrieb:

    Ich habe bei Reichelt gerade einen USB - SPI Chip für 70 Cent entdeckt:: MCP2210


    Mit diesen arbeitet ja der Argentinier: pantallafacil.com.ar/Interfaz%20USB%20UART.html, nur die SPI-Seite muss die Speed halt auch noch abkönnen. Man sollte m.E. einfach die Matrix in Panels aufteilen und kleinere Segmente pro Port antsteuern anstatt alles über einen Port, bei Jinx! kann ja auf mehrere Ports gepatcht werden. Zu schnelle Baudraten auf SPI Seite macht halt auch die Signalführung aufwändiger, sonst ist das Signal kaputt bis es beim ersten Pixel ankommt.
    Das mit der DMX-Steuerung ist echt super! - gestern auf ner Party ausprobiert, im E:Cue auf dem Actionpad (mit dem das komplette Licht gesteuert wird) einfach ein paar Buttons für die versch. Programme, ein Schieber für die Helligkeit, und ein Knopf für Strobo - damit kommt sogar der durchschnittlich eher weniger am Licht interessierte DJ zurecht :D - einfach ab&zu mal das Programm ändern.

    klar, mit dem Show-Modus wär's genauso easy, aber so steht da halt nur ein Rechner mit allem drauf, selbsterklärend...

    vielen Dank noch mal für dieses tolle Feature! :thumbsup:

    hier noch Videos (Matrix steht da leider nicht im Vordergrund, ist aber auch auf 50% gedimmt):





    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!
    Coole Videos :) Thx

    Genau so hab ich mir das vorgestellt mit der DMX Steuerung. Ich bin auch gern am basteln und hab viel um mich rum, aber wenn ich nen Job mache, dann will ich alles zentral steuern können und da ich das Lichtpult eh brauche soll das auch die Matrix mitsteuern. Und so nebenbei, es schmeichelt das Ego wenn die Software produktiv eingesetzt wird :D In diesem Sinne auch mal Danke für die Unterstützung.

    Ich hab dafür die Tage fleissig weiter programmiert, wir nähern uns der Version 1.0 ... in den nächsten Tagen gibts ein etwas grösseres Update, ich denke da wird das ein oder andere brauchbare auch für dich dabei sein ;)
    So, weiter gehts. Wie schon versprochen mal wieder ein etwas grösseres Update, ich versuch mich trotzdem kurz zu fassen ;)
    Die Version 0.95 (nein ihr habt nichts verpasst 0.93 und 0.94 hab ich gar nicht erst released) häng ich wie immer am ersten Post hier an.

    Bugfixes und Anpassungen:
    -nach dem Beenden des Showmode gab es manchmal Grafikfehler im Szenenfenster
    -für die Position des Szenenfensters werden nun beim Docking die richtigen Werte genommen und alle Windows Styles inkl. Aero berücksichtigt (Rahmenbreite)
    -Kleines Memleak beim Beenden behoben, ein Buffer wurde nicht richtig freigegeben
    -Pixelstep wird bei Dancing Lines und Spotlights (Simple Line) nicht mehr berücksichtigt, diese Effekte werden winkelbasiert berechnet und sind in der Geschwindigkeit nicht pixelbasiert
    -SineWave bei Scrolling Text ignorierte den Pixelstep, somit hatten wir bei Pixelstep=2 eine stehende Welle
    -Autocolor nun auch bei Strobe und Scrolling Text implementiert
    -Dock Menüeinträge (Szenenfenster,...) sind vom Setup ins View Menü umgezogen
    -kleine Fehlerbehebung beim Dateien laden, bessere .jnx Versionkontrolle für neue Dateiversionen
    -Masterstrobe Button muss nun nicht mehr gehalten werden, sondern rastet ein
    -Showmodebuttons sind nun ebenfalls einrastend, somit wird die aktuell gewählte Szene besser erkannt
    -Buttonabstände im Hauptfenster grafisch angepasst
    -komplette Überarbeitung aller Dialoge/Fenster (Matrixsetup, Output, Patch, Remote, Scene, Effectconfig, ...)
    -Artnetpoll für Output Devices implementiert, bei den Output Devices kann nun nach Artnet-Nodes gescannt werden
    -Remote Control config zeigt nun die steuerbaren Funktionen mit Kanälen an
    -Remote Control auf 4 Kanäle erweitert sowie kleine Änderungen bei der Aufteilung: Für Szenen und Chaser (gleich mehr dazu) wird die 0 nun ignoriert (Lichtpulte senden grundsätzlich erst mal eine 0). Sprich bei den Szenen wird nun eine empfangene 1 für die erste Szene genutzt (statt bisher 0), somit sind "nur" noch 255 Szenen anwählbar. Werden die Szenen auf 32 beschränkt, so gilt 1-7 = Szene 1, 8-15 = Szene 2, usw. hier wurde auch lediglich der Wert 0 ausgeklammert, gleiches gilt für Chaser.

    Und nun zu der grösseren Änderung:
    Nachdem ich einen einfachen automatischen Szenenwechsel zu langweilig fand, hab ich Jinx! kurzer Hand eine komplette Chaser-Engine spendiert. :D

    Das bedeutet, ihr könnt so viele Chaser (Programme) anlegen wie ihr wollt und innerhalb diesen so viele Schritte einbauen wir ihr wollt. Als Schritte stehen natürlich Szenen zur Verfügung, sowie die Automation des Masterstrobes und des Master-Crossfader. Jeder Schritt kann mit einer variablen Zeitdauer angegeben werden, bei Szenen wird zusätzlich auch noch für jede Szene das Scenefade eingestellt. Ein Chase kann als loop laufen oder aber als einmaligen Durchlauf und bleibt dann nach dem Ende auf der letzten Szene des Chase stehen.
    Hiermit ergeben sich viele Möglichkeiten und ihr könnt komplette Shows programmieren. Die Chaser werden natürlich mit abgespeichert und können im Chaserfenster verwaltet, gestartet (Doppelklick oder Play Button), gestoppt werden. Im Showmode werden nun zuerst die Chaserbuttons angelegt, anschliessend dann die Szenenbuttons. Ihr könnt also jederzeit einen Chaser oder wie gehabt eine Szene starten, sobald eine Szene gestartet wird, stoppt ein evtl. laufender Chaser automatisch. Wie schon erwähnt lassen sich die Chaser auch via Remote abrufen.
    Das ganze ist natürlich mit vielen Details behaftet, will euch damit aber nicht endlos langweilen ;) Aber ihr glaubt gar nicht wie viele Stunden man in Kleinigkeiten stecken kann: das die einzelnen Fenster bzw. Buttons und Fader sich gegenseitig updaten, beim Chaseredit eine Vorschau für jeden Step da ist auch wenn man wahllos einen Step auswählt (klingt trivial, aber um das aktuelle Bild zu erhalten müssen alle vorherigen Steps durchgegangen werden da sich die Schritte z.T. gegenseitig beeinflussen), das nach dem Beenden eines Chaser die vorherigen Werte (Scenefade, Strobe) wieder hergestellt werden, usw.

    Nun ja, egal ;) Ich hoffe ihr kommt mit dem Chaser nun auch erstmal ohne grosse Anleitung klar, aber ich denke es ist einigermaßen intuitiv geworden. Kurz noch was zu den Zeiten die ihr den einzelnen Schritten gebt. Dies sind die Zeiten wie lange die Szene bzw. der Schritt läuft, oder mit anderen Worten: Die Wartezeit bevor der nächste Schritt ausgeführt wird. Das bedeutet ihr könnt auch mit 0 Werten arbeiten und Szenen beim starten beeinflussen, z.B. ihr nehmt eine Szene und gebt ihr die Dauer 0s als nächsten Schritt legt ihr ein Masterstrobeevent (mit Strobe) an mit 10s, als drittes ein Masterstrobeevent (Strobe aus, sprich regler nach links) mit 0s und anschliessend wieder eine Szene. Dann habt ihr folgendes Bild: Szene einschalten -> 0 -> sofort Strobe einschalten -> 10s warten -> Strobe ausschalten -> 0 sofort nächste Szene anzeigen
    Ach ja, wenn Szenen einem Chaser zugeordnet sind lassen diese sich nicht mehr löschen, diese müssen erst aus dem Chaser entfernt werden oder eben der ganze Chaser gelöscht werden. Werden Szenen umsortiert, so wird dies in den entsprechenden Chasern automatisch angepasst, sprich er findet seine Szene egal wie gut ihr sie auch versteckt :P

    Ich habe die Chaserengine nun die leztzten 2 Tage intensiv überarbeitet und debugged, ich hoffe es sind keine grossen Bugs mehr drin. Ich hab im Demofile mal einen kleinen Chaser angehängt, probiert es einfach aus.

    Viel Spaß damit und Grüße
    Seddi

    //EDIT
    Da fällt mir ein, muss das eigentlich nicht chase heissen und in der Mehrzahl dann chases ? Lauflicht -> light chase -> Licht jagd, nicht Licht Jäger (light chaser)... somit dann also auch scene chase und scene chases ... bei uns in der schäbisch-deutsch-englischen Veranstaltungstechnik heisst das immer banal Chaser ... da soll man mal nicht durcheinanderkommen :) Ich glaub ich mach da mal ein Typo Update im Programm ...

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Seddi“ ()

    *Sabber*, was ne geile Scheiße! :thumbsup:

    (sorry für die Ausdrucksweise! 8o )

    ich hatte schon überlegt, nach nem automatischen Szenenwechsel zu fragen, weil das halt für Deko-Zwecke schon cool ist - aber so halt noch mal vieel besser!

    vielen Dank dafür! :thumbup:

    P.S.: Ich kenne das schon als "Chaser", aber das ist dann wohl umgangsprachlich, bzw. "German English"....? - Bzw. der "Chaser" ist der, der den Chase macht, also praktisch der Chaser die Funktion, und der Chase die konkrete Abfolge von Szenen....?

    K.A., aber weiß ja jeder, was gemeint ist... ;)
    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!
    Hallo,

    Ich besitze eine 8x8 Matrix mit WS2801 modulen. Diese steuerere ich über eine Arduino Uno Schnittstelle an.
    Leider bekomme ich kein Bild auf meine Matrix.Ich habe die Platine über USB COM 3 installiert. Die Baud. ist 115200. Welchen Device Typ muss ich auswählen? Ich habe schon Glediator und tpm2 ausprobiert (bei beiden auch die Channels auf 192 gestellt und dann passend gepatcht). Doch bei meiner Matrix tut sich nichts.
    Kann mir vll jemand helfen?

    Das Arduino Uno board ist auch richtig installiert, ich kann über die Arduino Software programme auf meine Matrix "abspielen", habe also Verbindung.

    Danke :)
    @MatrixMarc
    Was für eine Software hast du auf dem Uno ? Wie steuerst du die Matrix sonst an ? Das Protokoll hängt ja von der Software im Uno ab, bzw. wird von dieser bestimmt.

    @All
    Ich hänge gerade mal kurz die V0.95a im ersten Thread an, lediglich ein paar kleine fixes:
    -fix typo: chaser->chase, chasers->chases, Artnet->Art-Net, hyperbel->hyperbola
    -kleiner bugfix für gedockte scenen/chase fenster. Nach dem minimieren von Jinx wurden diese nicht immer korrekt positioniert
    -im chase fenster kann nun ein chase auch mit einem rechtsklick direkt editiert werden

    Dazu gibt es eine erste Version des user manuals: live-leds.de/jinx-usermanual-0.95a.pdf
    Vorwarnung: ist bisher nur runtergeschrieben und noch nicht gegengelesen oder auch nur annähernd korrigiert. Wer gut in Englisch ist darf hier aber gerne behilflich sein und mal durchkorrigieren.

    Und ich hab ein neues richtig geiles Video vom Argentinier:

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Seddi“ ()

    Was für eine Software hast du auf dem Uno ? Wie steuerst du die Matrix
    sonst an ? Das Protokoll hängt ja von der Software im Uno ab, bzw. wird
    von dieser bestimmt.
    Ich hab die Glediator software drauf. Hatte wohl die falschen Pins übernommen, jetzt habe ich ein Bild!! Doch es ist noch nicht das was auf dem PC angezeigt wird. Auf meiner Matrix sehe ich jetzt einfach nur ein Standbild, wo ca 15 WS2801 Module in verschiedenen Farben leuchten, die anderen sind aus.
    jemand ne Idee? :wacko:
    Hallo,

    hab Jinx version 0.95a und hab diesmal das Mapping "sauber" von oben nach unten gemacht...

    Die ganze Matrix soll auf zwei Universen verteilt mit Artnet gesendet werden... gestern hatte ich es hin bekommen, dass er eine eine Broadcast Adresse einen Teil der Matrix sendet... heute geht nix raus...

    Hab zum Test ne 4x4 Matrix gemacht = 48 Byte Daten... das sind 24 Byte/Channels pro Artnet...

    Jetzt ist beim Mapping bei 24 25 26 Kanal Schluss... danach werden die Zahlen resetet... dachte vielleicht muss man pro Artnet wieder bei 0 anfangen... funktioniert aber auch nicht... also irgendwie hab ichs noch nicht...
    Bin ich zu doof, oder funktioniert das mapping noch nicht...?

    Glediator macht leider auch nicht was es soll... lässt sich zwar wunderbar mappen, aber sendet immer volle 512 Kanäle... das auch net das was ich will...

    Grüße

    Basti

    P.S. Wo gibts das User Manual?
    Glediator macht leider auch nicht was es soll... lässt sich zwar wunderbar mappen, aber sendet immer volle 512 Kanäle... das auch net das was ich will...


    Das stimmt nicht ganz. Es werden nur soviel Kanäle gesendet wie unter "max. channel" angegeben. Genau dafür ist dieses Feld erschaffen worden :rolleyes:

    Laut DMX-Standard müssen im Übrigen immer alle 512 Kanäle gesendet werden, aber das war mir irgendwie zu wider und deshalb habe ich mich für das Feld "max. channel" entschieden.

    Beste Grüße,

    Pepe
    Hallo Pepe, dann probier ich das nochmal mit glediator aus...

    Les auch gerade die ArtNet Spec, weil ich an nem WLAN Node bastel... da steht nur, dass man am besten durch 2 teilbare Längen senden soll... was bei 3 Farben LEDs auch schwer werden kann :-/
    Aber sonst hab ich das hier zu ArtDMX Packeten gelesen: ArtNet Spec

    The first complete DMX frame received at each input port is placed in an ArtDmx packet as above and
    transmitted as an ArtDmx packet containing the relevant Universe parameter. Each subsequent DMX
    frame containing new data (different length or different contents) is also transmitted as an ArtDmx
    packet.


    Habs gerade noch mal mit Glediator gegen gecheckt... bei zwei Pixel zum Test auf zwei Universen verteilt... stört das letzte 0 Byte... das sicherlich bei dir drin ist um spec Konform zu bleiben... 8| :(

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Counterfeiter“ ()