Hallo, ich habe ein Kauftool, welches mit einen Pixelstripe mit einigen Pixeln (Typ WS2812 ODER SK6812 <- das weiß ich leider nicht genau) ausgibt. Nun möchte ich aber einige Pixel Doppeln und das mit WS2811 (der Grund hierfür ist, dass man mit den Chips hier Leistungsstärkere LEDs haben kann <- in meinem Fall 30W). Leider unterstützt das Tool die WS2811 LEDs nicht und da die Spezifikationen ähnlich sind, habe ich das Bereits getestet, bekomme aber nur "unschönes" Flimmern. Nun die Frage, ob man (hoffentlich nicht zu hohen Aufwand) einen Adapter bauen kann, der die Signale "übersetzt"... => wichtig hierbei ist, dass keine all zu hohe Latenz entsteht, da die alten LEDs bestehen bleiben sollen und es nicht gut ausschaut, wenn beim Farbwechsel die 20W immer "nachziehen" Hat jemand eine Idee für mich > ist die Fragestellung soweit klar?, gerne nachfragen wenn ich etwas nicht genau beschrieben habe... - Sven
Ich habe leider keine Idee für dich aber kannst du mir sagen welchen ws2812 kompatiblen Treiber es für High Power Leds gibt?
Beitrag #5279909 wurde von einem Moderator gelöscht.
nein, wenn ich dir das sagen könnte, würde ich Ihn nutzen... ich nutze auch nur die WS2811 <- aber die arbeiten nicht mit der Basis (Software) von WS2812 :/
:
Bearbeitet durch Moderator
ich sehe in der Ansteuerung keinen Unterschied wenn man also 100 normale ws2811 mit LEDs ansteuert dan einfach 100 ws2811 parallel ohne LEDs hängen und nur den WS2811 bestücken mit LED Treiber und hi power LEDs was flimmert denn? falscher Treiber? falsche Beschaltung? falsche Speisung? falsche Farben? es kann natürlich eine Interferenz geben wenn hi power LED Treiber und PWM aus dem ws2811 nicht zusammenpassen
Sven schrieb: > ich habe ein Kauftool, welches mit einen Pixelstripe mit einigen Pixeln > (Typ WS2812 ODER SK6812 <- das weiß ich leider nicht genau) ausgibt. Eigentlich sollte jede Software, die den WS2812 ansprechen kann, auf den WS2811 bedienen können. Wenn es sich aber um ein Tool für SK6812 handelt, werden ganz andere Timings verwendet und mich wundert es dann nicht, dass Dein Test mit den WS2811 gar nicht funktioniert. Jetzt mal Butter bei die Fische: Kann Dein "Kauftool" WS2812 bedienen oder nicht? Das muss doch in der Bedienungsanleitung stehen. Um festzustellen, dass Dein "Kauftool" tatsächlich keine WS2812 ansprechen kann, bedarf es nur des Kaufs eines kleinen Streifens für eine Handvoll Euro und eines Tests. Wenn sich dann rausstellt, dass Dein "Kauftool" keine WS2812 (und damit auch keine WS2811) ansprechen kann, ist es schlicht für Dein Vorhaben ungeeignet. Du bräuchtest dann auch einen "Adapter" von SK6812 nach WS2811, also was ganz anderes! Also: Systematisch WS2812 und SK6812 mit dem "Kauftool" zu testen ist hier erstes Gebot. Vorher kannst Du noch nichtmals die Anforderungen formulieren.
:
Bearbeitet durch Moderator
@Frank M. diese Aussage war für sehr Informativ und hilfreich. > hier mal (um eine bessere Meinung bilden zu können das Tool https://www.ambivision.tv/) Ja, ich habe beim Hersteller nachgefragt und er meinte wortwörtlich: > None of our kits supports WS2811. Our products support only WS2812 and SK6812. das heißt (nach deiner Aussage), der LED-Streifen den ich jetzt dran habe ist ein SK6812 !?!? aber woher weiß das Tool, dass ich einen WS2812 dran habe <- MUSS ich das zwingender weise vorgeben, oder kann er das auch "erkennen"? <- weil Settings gibt es nicht sooo viele. hier kann man das Tool mal sehen, mehr "Einstellungen" und schon garnicht "ich habe WS2812 oder SK6812" > https://www.youtube.com/watch?v=rHad7jyy6VY
https://cdn-shop.adafruit.com/datasheets/WS2811.pdf https://cdn-shop.adafruit.com/datasheets/WS2812.pdf https://cdn-shop.adafruit.com/datasheets/WS2812B.pdf Frank M. schrieb: > Eigentlich sollte jede Software, die den WS2812 ansprechen kann, auf den > WS2811 bedienen können. Wenn man die Timings in den DBs vergleicht, ist eher das Gegenteil zu erwarten. Insbesondere die T0-Zeiten weichen erheblich voneinander ab. Auch bei den anderen beiden weichen die Timings voneinander ab und eine Übereinstimmung ergibt sich nur, indem man mit den Toleranzen aufeinander zugeht. Es ist bekannt, daß man die T0-Zeit auch verlängern kann. Aber nicht beliebig. Denn dabei läuft man wiederum Gefahr, in den Bereich des Reset zu geraten. Daß aus 50µs ganz schnell nur 5µs werden können, hatten wir ja erst kürzlich. Was natürlich, nicht bei allen der Fall ist. Aber wie kann man das auch erwarten? Ich denke aber schon, daß man das irgendwie hinbekommen an. Allerdings nicht ohne die Möglichkeit, das Timing individuell anpassen zu können. Was bei einem Kauftool natürlich nicht der Fall ist.
Sven schrieb: > Ja, ich habe beim Hersteller nachgefragt und er meinte wortwörtlich: >> None of our kits supports WS2811. Our products support only WS2812 and >> SK6812. Aha. SK6812 benutzt aber ein erheblich abweichendes Timing gegenüber WS2812. Das kann nur über eine Einstellung gehen. > das heißt (nach deiner Aussage), der LED-Streifen den ich jetzt dran > habe ist ein SK6812 !?!? Glaube ich nicht. SK6812 sind ziemlich selten. Aber woher soll ich das wissen... > aber woher weiß das Tool, dass ich einen WS2812 dran habe <- MUSS ich > das zwingender weise vorgeben, oder kann er das auch "erkennen"? <- weil > Settings gibt es nicht sooo viele. Siehe oben. Es muss eine Einstellung geben, um WS2812 und SK6812 unterscheiden zu können. Oder der Hersteller liefert vielleicht zwei Produktvarianten mit unterschiedlicher Firmware. > hier kann man das Tool mal sehen, mehr "Einstellungen" und schon > garnicht "ich habe WS2812 oder SK6812" Thomas hat in seinem Beitrag oben die Datenblätter verlinkt. Schau mal rein :-)
Thomas E. schrieb: > Auch bei den anderen beiden weichen die Timings voneinander ab und eine > Übereinstimmung ergibt sich nur, indem man mit den Toleranzen > aufeinander zugeht. Du hast recht, ich hatte das verwechselt mit WS2812 vs. WS2812B. Hier findet man innerhalb der Toleranzen gemeinsame Werte, zu den WS2811 aber nicht mehr. Fassen wir mal die Daten zusammen:
1 | WS2811 WS2812 WS2812B |
2 | T0H 500ns 350ns 400ns |
3 | T1H 1200ns 700ns 800ns |
4 | T0L 2000ns 800ns 850ns |
5 | T1L 1300ns 600ns 450ns |
6 | RES >50µs >50µs >50µs |
Da alle Toleranzen mit 150ns angegeben sind, bekommt man mühelos Werte für die WS2812 und WS2812B, die für beide Varianten passen. Die Werte für T1H und T1L liegen bei den WS2811-LEDs aber viel zu weit weg. @TO: Du brauchst offenbar wirklich einen Adapter von WS2812 nach WS2811. Das Problem ist aber nicht nur die Timing-Umsetzung, sondern zusätzlich noch ein echtes Zeitproblem: Die Übertragung eines WS2811-Bits dauert in jedem Fall länger als die des WS2812-Bits. Der "Adapter" muss also nicht nur die Zeiten anpassen, sondern auch noch einen ziemlich großen Zwischenspeicher zum Buffern der Daten haben. Die Größe hängt dabei von der Anzahl der LEDs ab und von den Pausen, die Dir das "Kauftool" als Verschnaufpause lässt, um Deinen Zwischenpuffer auch irgendwann leerzubekommen. Wenn das "Kauftool" ohne jegliche Pause Daten raushämmert, wird Dein Adapter niemals fertig. Wenn Du Glück hast, kannst Du natürlich die RESET-Zeit dafür verwenden, wenn Du WS2811-Chips findest, die mit erheblich weniger als 50µs auskommen. Insgesamt ist das also ein gewagtes Unterfangen.
:
Bearbeitet durch Moderator
Hier die Tabelle - vervollständigt um SK6812:
1 | WS2811 WS2812 WS2812B SK6812 |
2 | T0H 500ns 350ns 400ns 300ns |
3 | T1H 1200ns 700ns 800ns 600ns |
4 | T0L 2000ns 800ns 850ns 900ns |
5 | T1L 1300ns 600ns 450ns 600ns |
6 | RES >50µs >50µs >50µs >80µs |
Die SK6812 liegen also doch noch im Toleranzrahmen, wenn man SK6812-RGB und nicht SK6812-RGBW (für welche die SK6812 eigentlich bekannt sind) benutzt. Mit einer Pause von 80µs zwischen den Frames passt das dann. @TO: Vermutlich verwendet Dein Kauftool eine Pause von mindestens 80µs, um kompatibel zu den SK6812 zu bleiben. Dann hast Du pro Frame für alle LEDs zusätzliche Luft von 80µs - 50µs = 30µs, um die überschüssigen Daten aufgrund der langsameren Übertragungsrate zu den WS2811 zwischenzuspeichern. Wieviele LEDs sollen denn in einer Kette zusammenhängen?
:
Bearbeitet durch Moderator
Frank M. schrieb: > Mit einer Pause von 80µs zwischen den Frames passt das dann. Meinen SK6812-RGBW reichen auch 40µs. Damit passt das dann wieder ins Schema der WS. Was alle nicht mögen, ist eine zu lange T0H-Zeit, die dann als T1H erkannt wird, obwohl die angegebene T1H noch gar nicht ereicht ist. Was den Schluss zulässt, daß alles, was länger als T0H ist, als T1H erkannt wird. Die T0L dagegen kann man auch verlängern. Aber, wie schon oben geschrieben, können das übereifrige WS2812B als Reset erkennen. Den meisten von denen reichen schon 5µs als Reset-Zeit aus. Wie auch schon gesagt, könnte man das alles heterogen hinbekommen. Nur dazu reicht es nicht, ein paar Parameter einstellen zu können, sondern dazu muß man im Quelltext des Steuercontrollers mit den NOPs spielen. Zur Ausgangsfrage: Sven schrieb: > Nun die Frage, ob man (hoffentlich nicht zu hohen Aufwand) einen Adapter > bauen kann, der die Signale "übersetzt"... Das ist um ein vielfaches Aufwendiger, siehe Franks Beitrag dazu, als einen kompletten Steuerungscontroller zu programmieren. Das setzt natürlich voraus und das soll jetzt nicht arrogant rüberkommen, daß man das auch kann. Noch etwas zur Verkabelung: Man darf sich nicht darauf verlassen, daß die Sechs-Quadrat-Masse der mehrfach eingespeisten Stromversorgung es schon richten wird. Es muß immer zur Datenleitung eine gleich lange Signalmasse mitgeführt werden. Das bewirkt zu 100% reproduzierbare Wunder. Insbesondere dann, wenn der Strang nicht durchgehend verlegt, sondern (mehrfach) unterbrochen wird.
:
Bearbeitet durch User
Dumm nur, wenn sich einige der LEDs nicht an ihr Datenblatt halten. Da sind teilweise Resetzeiten von 5 (FÜNF) Mikrosekunden einzuhalten!
@ Thomas Eckmann (Firma: Thomas Eckmann Informationst.) (thomase) >Noch etwas zur Verkabelung: Man darf sich nicht darauf verlassen, daß >die Sechs-Quadrat-Masse der mehrfach eingespeisten Stromversorgung es >schon richten wird. Es muß immer zur Datenleitung eine gleich lange >Signalmasse mitgeführt werden. Das bewirkt zu 100% reproduzierbare >Wunder. Beitrag "Re: Differnz-Signal für WS2812B"
Falk B. schrieb: > Dumm nur, wenn sich einige der LEDs nicht an ihr Datenblatt halten. Da > sind teilweise Resetzeiten von 5 (FÜNF) Mikrosekunden einzuhalten! Naja, das ist aber nur ein Problem, wenn Du T1H nicht einhalten kannst. Du darfst ruhig auch Reset-Zeiten von 300µs verwenden (was ich wegen WS2813 (nicht WS2812) auch mache. Aber ich habe hier etwas interessantes für den TO gefunden: WS2818 (ja, achtzehn!): https://www.tme.eu/en/details/ws2818-s/led-drivers/worldsemi/ws2818/ Das sind SO8-Chips. Datenblatt: https://www.tme.eu/en/Document/22185e725bbf20b943bde01e7736a97b/WS2818.pdf
1 | T0H 220ns~480ns |
2 | T1H 750ns~2us |
3 | T0L 750ns~2us |
4 | T1L 220ns~480ns |
Das sollte mit den WS2812 kompatibel sein. Aber jetzt kommt das Aber: RES > 300µs Wenn das "Kauftool" die Pause kürzer als 300µs hält, klappts damit leider auch nicht. Aber Probieren geht ja bekanntlich über Studieren ;-)
:
Bearbeitet durch Moderator
Meine Erfahrung ist, dass man mit den aktuellen Versionen von Adafruit-Library etc. problemlos WS2811, WS2812, WS2812b und SK6812 (3-Kanal) sowie SK6812 (4-Kanal) ansprechen kann, eine Software-Änderung ist nur für 3- vs. 4-Kanal notwendig. Bei den WS2811 muss man ggf. beachten, dass die auf 800kHz konfiguriert sind (die lassen sich per Pin auf 400kHz runterstellen...). Viele Grüße, Simon
also ziel ist es aus einer Kette von 100 LEDs 4 LEDs abzukoppeln und diese DEUTLICH zu verstärken... etwas so:
1 | - x - x - x - x - x - x - x - x - x - x - x - |
2 | | | |
3 | 30W 30W |
d.h. ich brauch bei der Abzweigung nur 1 LED welche man sich merken muss... Ich habe ein paar WS2812 da und werde diese heute Abend mal Testen, Aber wenn ich nicht "umschalten" kann, dann brauch ich auch die WS2811 garnicht versuchen... evtl. muss ich den Plan auch verwerfen, da mir die Elektronikerkenntnisse fehlen um hier einen Adapter zu bauen. Ich dachte mit Kondensatoren könnte man da was "hinpuffern" ... aber das Klingt eher nach Microcontroller...
Sven schrieb: > also ziel ist es aus einer Kette von 100 LEDs 4 LEDs abzukoppeln und > diese DEUTLICH zu verstärken... Ich würde diese 4 LEDs aber nicht abkoppeln, sondern eher einfach am Eingang "DI" von diesen 4 LEDs einen WS2812-Adapter-oder-was-weiß-ich (z.B. den oben genannten WS2818) parallel schalten. Du brauchst die Kette also nicht zu trennen. Sven schrieb: > Hier der High-Power Adapter Den hast Du also schon. Und da ist jetzt ein WS2811 drauf? Was passiert, wenn Du den jetzt an DI von einen der 100 anderen LEDs anschließt?
:
Bearbeitet durch Moderator
nun, genau das mach ich doch!? ich nehme die 20. WS12LED und zweige ab und schalte parallel meine WS11LED zu. aber wie oben beschrieben, flimmert diese nur wirr und zeigt nicht annähernd die gewünschte Farbe. Am Arduino mit AdaFruid Lib funkioniert die WS11LED wie gewünscht sehr hell und sehr sauber.
Sven schrieb: > aber wie oben beschrieben, flimmert diese nur wirr und zeigt nicht > annähernd die gewünschte Farbe. Okay. Dann könntest Du den WS2811-IC auf Deinem High-Power Board gegen einen WS2818-IC (s.o.) tauschen. Wenn Du Glück hast, macht Dein Kauftool zwischen den einzelnen Frames Pausen von >300µs und es läuft. Ansonsten muss ein Adapter her, der das Signal für eine LED (24 Bits) abzweigt und in das Timing einer WS2811 umwandelt und während der (langsameren) Ausgabe die weiter reinkommenden Bits zwischenpuffert. Kann man mit einem Mikrocontroller machen.
wenns jemanden interessiert wie es weiter geht...
> ich habe beim Hersteller lieb guck gemacht und jetzt bekomm ich eine
abgeänderte Version mit WS2811
-Sven
Und wenn Du Pech hast, kann diese Spezialversion nur noch WS2811 und Deine restlichen WS2812 funktionieren nicht mehr.
wieso Pech... das wird ne Festinstallation...
> WS2811 Lichterkette ran und meine Spots und fertig :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.