3x3 RGB DMX Matrix (Softwareupdate: 12bit BCM - Seite 3)

  • Nach dem Vorbild des 30 Kanal Dimmers aus dem Thread Auftragsarbeit: 512 Kanal Dimmer habe ich einen 27 Kanal DMX Dimmer entwickelt und das Bord direkt für eine 3x3 RGB Matix ausgelegt. Und bevor ist jetzt grobe Patzer in das Ding mit einbaue wollte ich euch da mal drüber schauen lassen. Mit Verbesserungsvorschlägen natürlich immer mal ran!




    Ich bin mir noch nicht so ganz sicher, ob an den Dipsswitch noch pull-downs müssen, oder ob das PISO-Register das für mich erledigt. Der Abstand zwischen den LEDs beträgt 4cm, die ganze Platine ist 10x10.

  • Schöne Platine! - mit vielen, vielen von den Dingern könnte man dann direkt ne Videowand aufbauen.. ;)


    lass' den DIP doch gegen GND schalten, das SR hat Pullups am Eingang... sonst wäre mir jetzt nix aufgefallen...


    willst Du da jetzt die SW selbst machen, oder soll ich die vom 24-Kanal-Dimmer umschreiben, so wie in dem anderenThread angeboten...?

    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!

  • Der Abstand zwischen den LEDs beträgt 4cm, die ganze Platine ist 10x10.

    ;)


    Hab die Pläne oben noch mal editiert. Die Dips gehen jetzt gegen GND, Dip 9 hat ein Pullup bekommen. Zum durchschleifen ist ein 2. Stromanschluss dazugekommen.


    Zitat von yzarow

    da dein dmx out und in auf der oberfläche liegt, solltest du bedenken dass das ggf schatten werfen könnte...also genug abstand zur scheibe einplanen

    Ich sehe für DMX, Strom, und den ISP abgewinkelte Stecker/Buchsen vor, die kommen auf die Rückseite, also weg vom Kupfer. Alles andere sollte flach genug sein (ist ja dann nur noch smd) und keine Schatten mehr werfen.


    Die Vorwiederstände für die LEDs und den Abstand zur Frontplatte werde ich austüfteln, wenn die ersten Samsungs hier eintrudeln. Ich will von vorne herein ein möglichst neutrales weiß bei "full on" erreichen.


    Zitat von Pesi

    willst Du da jetzt die SW selbst machen, oder soll ich die vom 24-Kanal-Dimmer umschreiben, so wie in dem anderenThread angeboten...?

    Ich bitte sehnlichst darum, das du mir die Software schreibst! Ich habe zwar schon häufiger mit den Megas gearbeitet und auch programmiert aber ich kann mir vorstellen, das ich schon an der dmx Auswertung kläglich versagen würde :(



    Edith fragt gerade, ob es möglich wäre, ein einfaches Programm in die Software zu integrieren, so das die LEDs bei Abwesenheit eines DMX-Signals dieses abspielen? Dann bräuchte man nicht immer den PC an schmeißen ;)

  • Edith fragt gerade, ob es möglich wäre, ein einfaches Programm in die Software zu integrieren, so das die LEDs bei Abwesenheit eines DMX-Signals dieses abspielen? Dann bräuchte man nicht immer den PC an schmeißen ;)

    das fände ich auch sehr sehr interessant für den 30 kanal reciever. muss ja nix großartiges sein.
    ich fände schon einfach einen random wert für jeden kanal top. müsste das nicht relativ leicht zu programmieren sein ??
    kenne mich in der dmx routine garnicht aus. insofern sorry falls es nicht so ist. :)


    ein random farbwechsel wäre natürlich die krönung ;)

  • Dein 4x4 Projekt habe ich auch mit Spannung verfolgt! Und deine Lösung mit den PWM treiber ist auch sehr elegant. Jedoch musste hier erstmal was einfacheres her ;) Und das DMX protokoll bietet sich hier vor allem wegen der einfachen Handhabbarkeit auf Senderseite, wofür es ja unzählige Lösungen gibt, an.


    Ich hoffe ich komme bald dazu einen Prototypen aufzubauen ...

  • McGyver: Kein Problem mit der SW, ich brauche halt dann ne genaue Liste, was wo hängt, also einfach, welcher DMX-Kanal, an welchem *µC-Pin* rauskommen soll - SR kann ich mir selbst rausklamüsern, aber ich habe keine Lust, die ganzen LED-Leiterbahnen in dem Plan zu verfolgen... ;)


    das ist dann kein großer Aufwand, ich muss ja nur die SW, die ich mal für 2bl gemacht habe, auf 27 Kanäle und die geänderte Pinbelegung anpassen - Standalone wird schon schwieriger, da habe ich noch nix für 27 Kanäle fertig... das kann ich mal anpacken wenn ich Zeit und Lust habe, aber momentan erst mal 1.000 andere Sachen wichtiger.... was relativ schnell gehen würde: dass die ganze Matrix irgendne Farbe bekommt wenn das DMX-Signal fehlt, so wie ne Videowand oft blau wird wenn das Videosignal fehlt....


    "Farbdurcheinander" wäre evtl. auch möglich - einfach ne Schleife, die den DMX-Puffer mit ihrem Zählerwert auffüllt, oder sowas in der Art... ist halt die Frage, wie das dann aussieht.. :D - Rainbow-Fader (ganze Matrix in einer Farbe) sollte auch noch drin sein...

    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!

  • Kein Problem mit der SW, ich brauche halt dann ne genaue Liste, was wo hängt, also einfach, welcher DMX-Kanal, an welchem *µC-Pin* rauskommen soll

    Dann gibts die doch hier direkt mal:
    DMX - µC-Pin
    1 - B3
    2 - B2
    3 - B1
    4 - B0
    5 - A0
    6 - A1
    7 - A2
    8 - A3
    9 - A4
    10 - D6
    11 - D5
    12 - D4
    13 - D3
    14 - D2
    15 - D1
    16 - A5
    17 - A6
    18 - A7
    19 - C1
    20 - C0
    21 - D7
    22 - C4
    23 - C3
    24 - C2
    25 - C7
    26 - C6
    27 - C5


    Ganz schön durcheinander, ich hoffe ich habe mich nicht verguckt :S 8|


    Das Schieberegister hängt an B7-CLK, B6-SH/LD, B5-QH, dip9 des mäseklaviers an B4, DMXin an D0


    Ich hoffe das hilft schon mal weiter.


    Wäre super, wenn du irgendetwas einfaches im "kein Signal Fall" implementierst, dann schau ich mal, ob ich noch was reinbasteln kann, bissel asm kann ich ja auch ;)
    Aber das ist ja auch erstmal nicht so wichtig!

  • So, ich hab noch mal bissel am Board rumgeschraubt, da wurden noch ein paar kleinigkeiten bereinigt. Bei gelegenheit werde ich mal n Prototyp ätzen und bestücken.


    Ein Problem habe ich allerdings noch: ich würde ganz gerne die LEDs mittels der Vorwiederstände auf ein ordentliches weiß einstellen. Jedoch bin ich mich noch nicht ganz sicher wegen der drop-Spannung der ULN. Gibts da irgendwelche Erfahrungen? Den LEDs wollte ich am ende nicht mehr als 20-25mA zumuten. Versorg werden soll das ganze mit 5V SNT.

  • Erfahrung zur Drop-Spannung..? - die ist sehr gering... ausprobieren musst Du das ja sowieso, welche Widerstände Du nimmt, es gibt ja unterschiedliche Ansichten über ein "ordentliches Weiß", da kann man jetzt nicht pauschal irgendwelche Werte empfehlen...


    Die SW mach' ich dann, wenn die HW fertig 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!

  • So, die Hardware ist fertig. Das Register habe ich jetzt nicht mehr ausführlich getestet, da vertraue ich mal auf meine lötkünste.


    Und falls es wer nachbauen solle, hier noch mal 2 kleinigkeiten, die mir aufgefallen sind:
    - Damit Port C ordentlich läuft gehört das JTAG des Mega 16 ausgeschaltet. Das passende Fuse heißt JTAGEN. (Scheint wohl ein heufig auftretendes Problem zu sein ;) )
    - Die ISP-Schnittstelle scheint nur richtig zu laufen, wenn am dipswitch alles auf ON steht, also alle eingänge des Registers gegen Masse gezogen sind. Sieht wohl so aus, das das Register da bei der Kommunikation munter mitkomuniziert :pinch:


    N kleines Bildchen reiche ich nach, wenn ich ne ordentliche Kamera inne Hand bekomme!


    Gruß
    Gyver


    Edit: Wäre es von dem Timing des Mega bei der PWM möglich, eine 10- oder gar 16-bit PWM mit ner dimmerkurve zu implementieren? gerade im unteren bereich sieht man ja bei einer linearen pwm noch geflacker.

  • OK, SW kommt dann nächste Woche, momentan gar keine Zeit...


    10 oder 16 Bit *PWM* geht da nicht, da wird die Frequenz zu niedrig - was gehen würde, wäre ne 12 Bit *BCM*, habe ich schon mal für meinen 3-Kanal-Receiver angefangen, liegt aber momentan auf Eis...


    Einzelne Dimmerkurven wäre hier eher kontraproduktiv, weil sich dann beim Dimmen die Farben verschieben - da wäre es besser, das Teil per HSV anzusteuern, und die Dimmerkurve dann nur auf die Helligkeit anzuwenden... ist halt die Frage, ob das noch zeitlich hinhaut, 9 HSV-Werte mit Dimmerkurve in RGB umzurechnen...


    Das dauert dann aber, das mache ich irgendwann mal, muss erst mal gucken, ob ich im e:cue überhaupt per HSV ansteuern kann...


    könntest Du das Layout als PDF reinstellen, dass man sich da auch ne Platine machen kann zu dem Ding..?

    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!

  • Mir fallen spontan an dem Layout ein paar Makel auf. Funktionieren wirds sicher auch so, aber ich möchte trotzdem drauf hinweisen:


    • Beim ATmega16 an Pin 5 fehlt der 100nF Kerko
    • Beim ATmega16 an Pin 17 fehlt der 100nF Kerko
    • Beim ATmega16 teilen sich Pin 27 und 29 einen Kerko, die sollten jeweils einen eigene haben
    • Beim ATmega16 an Pin 38 fehlt der 100nF Kerko bzw. die Supplyleitung ist von Pin 29 durchgezogen. Somit sogar 3 Supply-Pins an C9
    • Die Versorgungsleitung sollte erst den Kerko, dann den Supply-Pin berühren, dies ist an C4 und C8 nicht der Fall
    • Die Vcc-Drahtbrücke unterm Quarz ist nicht nur ungünstig sondern auch unnötig. Du kannst Vcc an IC7 abgreifen und unter LED5 durchführen.
    • Die Drahtbrücke unter C5 zum Bustreiber hin ist unnötig. Die Leiterbahn lässt sich unter IC3 und LED4 herführen.
    • An J2 sollte die Vcc-Leiterbahn erst C11 und C12 berühren, bevor sie ringsrum als Versorgung dient.

    Also die Kritik nicht falsch verstehen, aber grad "Kerko für jeden Supply-Pin" ist eine Sache die bei etwas unsauberere Versorgung sehr viel Ärger spart.
    Ansonsten ein schönes Layout finde ich. Wofür ist der 2. Versorgungsanschluss? Zum Durchschleifen?

  • Danke für die Liste, leider etwas spät, jetzt ist die Platine geätzt, n zweiten Proto werde ich aber wohl nicht aufbauen. Mal sehen, ich versuch noch mal was zu ändern. Das wird dann schon klappen :D

    Zitat
    • Beim ATmega16 an Pin 5 fehlt der 100nF Kerko
    • Beim ATmega16 an Pin 17 fehlt der 100nF Kerko
    • Beim ATmega16 teilen sich Pin 27 und 29 einen Kerko, die sollten jeweils einen eigene haben
    • Beim ATmega16 an Pin 38 fehlt der 100nF Kerko bzw. die Supplyleitung ist von Pin 29 durchgezogen. Somit sogar 3 Supply-Pins an C9

    Das ding hat jeweis 4 so ungünstig liegende Sypply Pins, da war ich froh, das da überhaupt einer hin passt. War aber auch der Meinug das da ein Kerko reicht. Hmm, mal sehen, vielleicht spendier ich ihm noch ein paar.


    Zitat
    • Die Vcc-Drahtbrücke unterm Quarz ist nicht nur ungünstig sondern auch unnötig. Du kannst Vcc an IC7 abgreifen und unter LED5 durchführen.
    • Die Drahtbrücke unter C5 zum Bustreiber hin ist unnötig. Die Leiterbahn lässt sich unter IC3 und LED4 herführen.

    Geht beides nicht, dann reißt mir GND oben links beziehungsweise um den Quarz ab.


    Ich glaube, wenn ich alles korrigiere komm ich um ein 2-seitiges Layout nicht mehr drum rum, naja, 20 von den platienen ätzen hab ich eh keine lust drauf :D


    2. Versorgungspinn ist zum Durchschleifen. Wie viel da geht muss ich noch mal nachmessen, das Panel wird aber locker 500mA ziehen, wenn alle LEDs weiß sind.


    Das mit der Dimmerkurve war nur sonne Idee, daran soll es nicht scheitern.


    Im Moment ist die Zeit auch bei mir etwas knapp, wenn ich soweit bin versuch ich mal die angesprochenen Punkte umzusetzen.

  • Das ding hat jeweis 4 so ungünstig liegende Sypply Pins

    Stimmt, ich hab bisher erst einmal die SMD-Variante vom mega16 verbaut, da hats mich auch genervt.

    Geht beides nicht, dann reißt mir GND oben links beziehungsweise um den Quarz ab.

    Ah ok, das hatte ich nicht überprüft. Dann lieber eine schöne durchgehende Massefläche und ein oder zwei Brücken mehr.

    Ich glaube, wenn ich alles korrigiere komm ich um ein 2-seitiges Layout nicht mehr drum rum

    Nach einigem hin und her geroute habe ich dann damals auch auf zwei Layer gesetzt. Ist beim routen einfach stressfreier und nachdem die Platine auf der CNC eines Bekannten gefräst wurde, wars auch kostentechnisch egal. Die Kerkos von der Rückseite direkt unter den µC zu packen ist eine ganz angenehme Sache. Hier sind übrigens nur drei, da ich vergessen hatte AVcc zu beschalten bzw. damals mir nicht darüber im Klaren war, dass man das tun sollte ;)


  • Ich muss noch mal hin und her rechnen. Vom Fertigen lassen halten mich bis jetzt noch die Kosten ab. Auch wenn die Chinesen mit 4-5 € pro platiene echt günstig sind isses mir am ende dann doch zu teuer. Ach ja, die armen studenten :S


    Ich werd noch mal bissel im design pfuschen, der Wannenstecker fürs ISP ist mir auch noch zu hoch, da muss noch ne alternative her. Vielleicht reicht da ja ne gewinkelte Pfosten- oder Buchsenleiste. Dann müsste ich mir aber schon wieder n Adapter für mein Programmer basteln :thumbdown:

  • Sop, hier noch mal schnell 2 Bilder.


    So sieht ne nicht sauber gelötete Platiene aus :|
    Platinenmaterial mit Fotolack war alle, da wird dann zum Toner gegriffen ;)


    Und einmal ein kleines Testprogramm: Oben Grundfarben, darunter Mischfarben, unten 3 Weißtöne. links unten ist full-on. Trifft die Realität ganz gut, ist allerdings durch n normales Blatt Papier fotografiert.