[Sammelthread] RGB Pixelcontroller und Controller-ICs Übersicht

  • Hi,
    kann man bei dem Onumen 2100 auch die Software umändern sodass man auf fertigen Pixelplatinen LED´s verbauen kann, die sich von der Pinbelegung unterscheiden (von den LED´s die dafür vorgesehen waren) ?


    Ääämm keine ahnung ob emand die Frage überhaubt verstanden hat ;)


    was ich meine: Kann man die Software so ändern dass der Onumen wenn er z.B. rot erkennt dann Blau ausgibt?


    Ich hoffe es wird so einigermaßen klar was ich meine.


    Gruß Alex

  • Welchen Chip will man aktuell nehmen, wenn man "nur" 8mal 8bit PWM braucht? Also keine interne KSQ, kein nix, weil soll noch 'ne Leistungsstufe hinter. Sollte im Idealfall dann auch Vcc ausgeben und nicht nach GND oder OpenCollector oder sonstwas. Datenanschluss sollte elektrisch ein Bus oder eine DaisyChain sein, beim Protokoll bin ich flexibel.


    Es geht dabei um ein Aufsteckmodul fürs SEDU-Board, was 8 Ausgänge zur Verfügung stellen soll.

  • Hab das zwar gerade nicht ganz im Kopf, aber ich denke, dass man den WS2801 auch ohne KSQ nutzen kann. Schau mal ins Datenblatt. Wie wäre es ansonsten mit einem der ICs aus der TLC-Serie wie dem TLC59116? Da sollte es auch einige ohne KSQ geben.


    Warum willst Du das eigentlich extern machen, wenn sowieso noch eine Leistungsstufe dahinter kommt? Kannst doch auch Software-PWM nehmen.

  • Geeignet wären da auf jeden Fall die F-Typen der üblichen TLC-Verdächtigen (i2C), also TLC59108F oder TLC59116F (die sind Open Drain). Alternativ gibt's noch den PCA9634 von NXP. Allerdings muss man beachten, dass die erwähnten Chips alle eine sehr hohe PWM-Frequenz von fast 100 kHz haben (kürzeste PWM-Pulsbreite nur 40 ns), was besondere Anforderungen an die externen Schaltstufen stellt.


    Ansosnsten kann man natürlich die Sache auch mit den Chips mit KSQ lösen, also praktisch auch alle chinesischen: WSxxxx, TMxxxx, LPDxxxx, MYxxxx (insbesondere MY9221).


    Gruss
    Neni

  • Hi jungs,
    ich habe nun ein paar TM1804 beimir hier zuhause (erstmal nur 20 , 200 weitere sind bereits beim Herrsteller für mich zurückgelegt aber angesichts der großen Auswahl habe ich angst die falschen zu wählen) , bin nun aber am Überlegen ob ich nicht doch für mein ''Großprojekt'' die Pixelmodule mit LPD6803 nehmen soll, was spricht denn für die LPD6803 oder anders : Sind die besser als die TM1804 ? Die TM1804 gefallen mir eigentlich ganz gut: Lt. Datenblatt 256 Dimmstufen , bis zu 24 V, während im DT des LPD6803 steht dass nur 32 Graylevel sind und bei COnstant current (nur) 30mA pro Kanal erreicht werden. Leider kann ich das Datenblatt des TM1804 nicht öffnen sonst würde ich selber die Unterschiede ausarbeiten.
    Vlt wäre es sinvoll bei der Auflistung noch die Angaben zum maximalen Strom anzugeben und die Dimmstufen.


    Mfg und vielen Dank für den schönen Thread hier 2bl.

  • Also hier mal meine Meinung zu den "grossen dreien" :)


    LPD6803: hat den Nachteil das er nur 5Bit pro Farbe kann, was beim Dimmen nicht allzu schön aussieht. Dafür bringt er eine Art Weissabgleich mit, der das rechnerisch irgendwie wieder kompensieren soll. Ich fand das "ruckeln" jedenfalls störend...


    TM1804: kann volle 8Bit und braucht nur eine Leitung. Prima Teil.


    WS2801: 8Bit und ganz besonders toll: integrierte KSQ! Sinkt die Versorgungsspannung also entlang des Strips oder was auch immer, ist das den LEDs bumsegal, solange noch spannungsmäßig "Luft nach oben" ist!


    Ich schau mal, das ich die Datenblätter oben aktualisiere, wegen dem maximalen Strom - den hab' ich auch nicht im Kopf grad...


    Viele Grüße und einen guten Start in die Woche!
    Andre

  • Habe in den letzten Tagen mal mit den WS2803 etwas rumgespielt. Die Ansteuerung arbeitet wie erwartet mit den Codebespielen zum WS2801 bestens. :)


    Allerdings ist mir ein Unterschied zum Verhalten des WS 2801 (Wissen aus Forum und Datenblatt, habe den Chip nicht) aufgefallen. Nach meinem Wissen schluckt der WS2801 die ersten 24 Bit welche er empfängt und reicht alle folgenden Daten an die folgenden ICs weiter.


    Zumindest in meinem Aufbau scheint sich der WS2803 wie ein klassisches Schieberegister zu verhalten. D.h. die Daten werden offensichtlich laufend weitergeschoben. Mit 2 hintereinandergeschalteten WS2803 werden die ersten 18 Bytes auf dem 2 IC in der Reihe ausgegeben und die zweiten 18 Bytes auf dem ersten IC. Dieses Verhalten wiederspricht aus meiner Optik auch der Beschreibung im Datenblatt im Abschnitt "2 Wire Control Mode".


    Hat schon jemand die gleichen Erfahrungen gemacht oder stehe ich mal wieder auf dem Schlauch :?:


    Gruss


    Tom



    Kleiner Nachtrag:
    Falls jemand etwas damit Anfangen kann, ist meine Eagle lib mit dem WS2801 (aus Turis lib kopiert) und nun zusätzlich dem WS2803 angehängt.

  • Wenn du dich auf die von Magiarstripes beziehst stimmt das so nicht. Ich hatte aus Interesse neulich mal bei denen angerufen, da mich die Stripes auch interessiert haben. Es sind wirklich keine Bauteile bis auf die Leds verbaut. Allerdings können die nur 5bit Graustufe, was für mich leider zu wenig ist.

    Falls es jemanden Interessiert die haben ne 2. Generation der LED's die haben jetzt 8 Bit.
    Nennen sich jetzt "MagiarLED flex III"
    Hab davon die 22x22 Pixel Screens im einsatz, einfach super die Teile.

  • Hat jemand schon was mit den WS2811 gemacht ?

    Datenblatt von der Herstellerseite


    Derzeit scheinen etliche Herrsteller von fertigen Stripes/Pixel darauf umzustellen was ja auch nicht verwundert da er ja weniger externe Bauteile braucht:
    - Ausgang bis 12 Volt sprich keine Transistoren wenn man 3 LED's pro Pixel haben will.
    - weniger sonstiges Hühnerfutter
    - und vorallen nur noch 3 Wire spricht es gibt keine Clock-Leitung mehr


    Speziell der letzte Punkt ist natürlich einerseitz sehr nice kann aber evtl. dann empfindlicher bei den Timing werden.


    Deswwegen die frage ob mit den teil schon wer erfahrung hat ?


    mfg
    Falo

  • Ich habe sowohl ein paar Pixel damit zum Test da, als auch die ICs. Sie sind im Endeffekt Pin-kompatibel mit dem TM1803. Auch die Ansteuerung ist fast identisch, allerdings ist das Timing etwas kritischer. Deshalb hat es auch auf Anhieb nicht mit dem SEDU funktioniert. Aber prinzipiell sind die genauso ansteuerbar.

  • Was meinst Du mit "auf Anhieb"...? Hast Du die selben Pixel benutzt, die Du mir auch geschickt hast...?


    meine haben sofort mit dem SEDU-Ambilight funktioniert, bei den Standalone-Programmen einwandfrei, beim Datenempfang gibt es jedoch ab&zu ein kurzes Flackern - das liegt daran, dass beim WS2811 das Timing wohl tatsächlich ein bisschen kritischer ist als beim TM1803...


    dsa funktioniert bei beiden ja so: eine "0" wird durch einen kurzen Puls übermittelt, eine "1" durch einen langen - im DB sind dann noch unterschiedliche Pausen angegeben, die nach dem Puls einzuhalten wären +/- 150 ns...


    und das stimmt zum Glück so nicht, sonst hätte man praktisch kaum ne Chance, die Dinger anzusteuern und nebenbei noch Daten zu empfangen...


    ich habe festgestellt, dass die Pause zwischen 2 Pulsen relativ egal ist - meine Ausgaberoutine funktioniert so: ich rotiere das auszugebende Byte durch's Carry, schaue, ob dieses gesetzt ist (1) oder nicht (0) - je nachdem lege ich dann den Ausgang auf high, warte 7 nops, wieder low (= kurzer Puls), oder lege ihn auf high, warte 14 nops, wieder low (= langer Puls).


    bei 20 MHz ist ein kurzer Puls also 0,35 µs, ein langer 0,7 µs - das funktioniert sowohl mit TM1803/1804 wie auch mit WS2811, obwohl die lt. DB leicht unterschiedliche Werte haben:

    Code
    Ausgabe   TM1803/4   WS2811
    0,35      0,34       0,25
    0,70      0,68       0,60


    die Pausen (jeweils umgekehrt, also nach nem kurzen high-Puls kommt low doppelt so lange, nach nem langen high-Puls low halb so lang lt. Datenblatt) sind bei mir aber immer gleich lang, ca. so wie ein kurzer Puls, ab&zu (wenn ein neues Byte geholt wird) länger - das macht aber nix...


    die Pause kann sogar deutlich länger sein, während des high-Pulses habe ich die Interrupts gesperrt (der muss ja stimmen), während der low-Zeit kann die Empfangs-ISR dazwischen hauen, und das macht sie auch, weil ja auch während der Datenausgabe schon wieder Bytes rein kommen. Ich kann die Interrupts nicht während der kompletten Ausgabe-Zeit sperren, sonst könnte ich da nix mehr empfangen.


    da (wenn die Empfangs-ISR dazwischen kommt) ist die Pause dann deutlich größer, das macht aber auch nix, so lange sie nicht in ne Region kommt, wo dann die Pause schon als Reset interpretiert wird... das ist hier aber nicht der Fall, Reset ist beim TM1803 12 µs und tritt nicht auf, beim WS2811 sind's 25 µs, also kann es da erst recht nix machen...


    also muss der WS2811 wohl generell ein bisschen heikler sein, was die Pause zwischen 2 Bits betrifft, ab&zu wird ihm die wohl doch zu lang, und dann flackert's (bei mir so alle 5-10 Sekunden mal)


    da muss ich noch schauen, wo ich da noch schrauben kann, evtl. die Empfangsroutine noch ein bisschen kürzer machen, oder evtl. liegt das Problem noch woanders, wird sich aber finden... ;)


    anonsten ist der Chip echt genial, schön klein, KSQ drin, 3 LEDs direkt an 12 Volt... schade, dass es den nicht vor 2 Jahren schon gab, da hätte ich meine Pixel-Platinen noch etwas kleiner machen können...


    dieses Prinzip der Datencodierung mit langen und kurzen Pulsen finde ich an sich schon genial, die Schaltung ist ja auch recht simpel, also für den Hersteller: Du legst das Signal einfach an den Eingang eines Schieberegisters, über ein Monoflop an den Takteingang - kommt die positive Flanke, wird das Monoflop getriggert für z.B. 0,4 µs - fällt es zurück, wird eins weiter geschoben.


    War es nun ein kurzer Puls (0,2 µs), dann ist der Eingang ja wieder low, also wird ne 0 rein geschoben - ist der Puls länger (0,6 µs), dann ist der Eingang ja immer noch high, also wird ne 1 rein geschoben - ein 2. Monoflop mit 12 µs dazu, das wird dauernd neu getriggert, erst wenn länger als 12 µs keine Daten mehr kommen, löst es den Reset aus.


    Nach dem Prinzip habe ich übrigens, schon bevor der WS2801 und TM1804 hier im Forum bekannt waren (keine Angeberei! - Neni kann's bestätigen, dem hatte ich das zur Ansicht geschickt...) ne kleine SW für nen Tiny25 programmiert, die eben genau das selbe machen sollte wie ein TM1803, Daten über eine Leitung per Eimerkette durchschieben und ne RGB-LED per PWM ansteuern. Das hat sich dann aber erledigt, weil eben 2 Monate später der WS2801 hier bekannt wurde, und der ist halt doch schneller und billiger als ein Tiny25 mit intern 8 MHz... ;)


    Nur, bei mir war das so, ein Reset wurde dadurch angezeigt, dass die Leitung längere Zeit auf *high* bleibt, nicht auf *low* - das finde ich besser, weil so hat man sogar zwischen den Bits beliebig lange Pausen - erst wenn man die Leitung für länger auf high lässt, wird der Reset ausgelöst und die Daten übernommen...


    das finde ich schade, dass die das bei TM1803/WS2811 etc. nicht auch so gemacht haben, das würde die Ansteuerung noch mal vereinfachen, weil dann kann auch ne beliebig lange ISR dazwischen kommen, ohne dass versehentlich ein Reset ausgelöst wird...

    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!

  • Genau das mit dem Flackern meinte ich, da die Kommunikation oder das Timing da nicht 100% zum TM180x passen. Ich denke, 2bl hat da schon ein wenig experimentiert und eine Lösung gefunden.


    Hat denn der TM180x auch eine KSQ drin? Das war mir beim WS2811 jetzt auch neu, hatte ich nicht so gesehen. Ich habe jetzt nochmal das chinesische Datenblatt übersetzt und da wird es zumindest gesagt. Der Aufbau mit nur einem Widerstand deutet ja auch darauf hin. Oder ist der Strom da fest eingestellt?

  • Beim WS2811 ist der LED-Strom fest auf 18,5 mA eingestellt - ich habe das englische Datenblatt da, leider zu groß als Anhang, auf der World-Semi-Seite i.M. nicht verfügbar zum runterladen, da kommt immer 404 ?( - ich schick's Dir mal per Mail


    beim TM1804 ist keine KSQ drin - von daher ist der WS2811 ja interessanter...


    André, Du liest doch mit, was gibt es für Erkenntnisse? - mangels Zeit und Bedarf habe ich mich noch nicht weiter mit den WS2811 beschäftigt...


    habe gerade den Thread noch mal überflogen, und festgestellt, dass ich das mit dem "High als Latch-Signal statt low wäre besser" ja vor nem Jahr schon mal geschrieben hatte :D - so vergeht die Zeit, man wird alt und labert immer das selbe... 8|

    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!

  • Ok, ich habe jetzt auch nochmal mit den WS2811 getestet. Das Ergebnis ist gleich wie bei Dir. Aller paar Sekunden flackern die LEDs kurz, kaum merklich, aber man nimmt es trotzdem wahr. Andre hatte doch den Quellcode der Ausgaberoutine schon angepasst. Hast Du den nicht auch bekommen?


    Das mit der fest eingestellten KSQ ist schon wirklich gut. Das ist ein echter Vorteil gegenüber dem TM18xx. Also in jeder Hinsicht ein interessanter Schaltkreis. Ja, schick mir mal bitte das Datenblatt.