Hallo Forum, ich habe ein custom-board mit einem ESP32, der unter anderem WS2812b LEDs ansteuert. Da der ESP ja mit 3,3 V arbeitet, hatte ich eine Pegelwandler-Schaltung mit eingefügt. Schaltplan ist angefügt. Das seltsame ist jetzt, dass sobald ich die 5V anschließe, funktionieren die Neopixels nicht. Wenn ich aber meinen programmer anschließe (3,3 V) ohne die 5 V funktoniert es aufeinmal. Hab ich beim Pegelwandler etwas falsch gemacht, oder stimmt etwas anderes nicht? vielen Dank! mfg
Der Pegelwandler ist für die (fast) 1 MHz viel zu hochohmig. Versuche mal, R19 auf 1kΩ zu verringern und R13 auf 33 Ohm. Wenn das dann immer noch nicht klappt, wird dir ein Oszilloskop zeigen, woran es hapert. Bessere Vorschläge: http://stefanfrings.de/ws2812/index.html
:
Bearbeitet durch User
Nuri O. schrieb: > ich habe ein custom-board mit einem ESP32, der unter anderem WS2812b > LEDs ansteuert. Da der ESP ja mit 3,3 V arbeitet, hatte ich eine > Pegelwandler-Schaltung mit eingefügt. Die WS2812b ab V5 arbeiten ab 2.7V Ansteuerpegel. Welche Version benutzt du?
Steve van de Grens schrieb: > Versuche mal, R19 auf 1kΩ zu verringern und R13 auf 33 Ohm. Ganz funktioniert es leider noch nicht aber jetzt leuchten, zwar nicht wie sie sollten, immerhin die ersten 3 LEDs, was sie vorher nicht getan haben. villeicht noch weiter verringern ? Roland E. schrieb: > Notfalls auf einen TXS0102 setzen. Der ist schnell genug. Layout anderungen gehen leider nicht mehr. Den gibts auch als Modul. Würde ich zu not auch nehmen, wenns gar nicht geht mit meiner Schaltung. Rainer W. schrieb: > Die WS2812b ab V5 arbeiten ab 2.7V Ansteuerpegel. > Welche Version benutzt du? Die hatte ich auch gesehen. Welche Version ich genau habe, weiß ich nicht, aber die Streifen die ich hier habe sind alle schon einige Jahre alt, also hab ich die V5 wohl eher nicht. Würde auch ungerne neue kaufen, da ich hier noch etliche Meter habe.
Nuri O. schrieb: > villeicht noch weiter verringern ? Das Problem ist, dass deine Schaltung für I²C gedacht ist, nicht für das hier verwendete Protokoll. Eigentlich müsste sie sowohl beim HIGH Pegel als auch beim LOW Pegel den gleichen Ausgangswiderstand von ca 100 Ohm (entsprechenden deinen Leitungen) haben, aber das ist bei dieser Schaltung leider nicht einmal ansatzweise umsetzbar. Kann sein, dass du mit 470 Ohm Erfolg hast. Kann aber auch sein, dass der nur bis zur nächsten Mondphase anhält, weil das immer noch sehr weit vom Soll entfernt ist. Und 100 Ohm als Pull-Up kannst du vergessen, denn durch diesen würden 50 mA fließen, das schafft der ESP nicht.
:
Bearbeitet durch User
Nuri O. schrieb: > Das seltsame ist jetzt, dass sobald ich die 5V anschließe, funktionieren > die Neopixels nicht. In so einem Fall nimmt man ein Oszi und misst am Eingang(!) des nachgeschlteten Empfängers einfach mal, wie die Pegel und Flanken aussehen. Und dann findet man schnell heraus, dass dieser passive Pegelwandler eben nur die H-L-Flanke gut hinbekommt und die L-H-Flanke viel zu langsam ansteigt und deshalb das Tastverhältnis nicht mehr stimmt. Für schnelle Signale nimmt man dann einfach richtige aktive Pegelwandler und setzt eine passende Serienterminierung direkt an den Ausgang. Dann bekommt der nachgeschaltete Eingang die richtigen Pegel mit knackigen Flanken.
Nuri O. schrieb: > Layout anderungen gehen leider nicht mehr. Wenn eine nicht funktionierende Ansteuerung für die WS2812b eine Option ist und du den Chip nicht von Hand verdrahtet auf die Platine bauen willst, kannst du das Layout natürlich so lassen. Roland E. schrieb: > Notfalls auf einen TXS0102 setzen. Der ist schnell genug. Wozu ein bidirektionaler Wandler an dieser Stelle nötig sein soll, ist allerdings nicht klar. Ein Single Gate HCT-Gatter sollte für die WS2812b völlig reichen, z.B. ein 74HCT1G125GW oder, wenn man das Signal am µC invertiert ausgibt, ein 74HCT1G04GW.
Rainer W. schrieb: > Ein Single Gate HCT-Gatter sollte für die WS2812b > völlig reichen, z.B. ein 74HCT1G125GW Oder ein 74LV1T34, oder ein 74LVC1G17, oder sogar ein MCP14E10, ... LG, Sebastian
Steve van de Grens schrieb: > Kann sein, dass du mit 470 Ohm Erfolg hast. Das hat funktioniert! Lothar M. schrieb: > die L-H-Flanke viel zu > langsam ansteigt nur für mein Verständnis, woran liegt das? an dem hohen Pullup-Widerstand? Rainer W. schrieb: > z.B. ein 74HCT1G125GW Die hab ich jetzt nur als IC gefunden. Wenn bräuchte ich ein Modul, was ich dann nachträglich einbauen kann. dann brauch ich zur nächsten Mondphase wohl den TXS0102
Nuri O. schrieb: > an dem hohen Pullup-Widerstand? Ja, zusammen mit den parasitären Kapazitätenvon Eingang, Leitung, usw... (kleiner Einwurf in Klammern: es ist dann ein "hoher Widerstand", wenn er z.B. ganz oben im Regal liegt. Hier kommt das Problem aber eher davon, dass es ein hochohmiger Widerstand ist. Selbiges gilt z.B. auch für "kleine Widerstände", die eigentlich nur "niederohmig" sind) > dann brauch ich zur nächsten Mondphase wohl den TXS0102 Wenn du dir das Datenblatt des ICs mal näher anschaust: der ist im Prinzip genau so passiv (mit Pullup) aufgebaut wie deine obige langsame Schaltung. Nur hat er einen "One Shot Accelerator" hinzugebastelt bekommen, der die Flanken steiler macht. >> z.B. ein 74HCT1G125GW > Die hab ich jetzt nur als IC gefunden. Wenn bräuchte ich ein Modul Probier doch mal den Einstieg in die Elektronik, statt nur aus irgendwelchen Modulen irgendwas zusammenzufrickeln: kauf dir einfach ein Stück Lochrasterplatine und mach dir selber so ein Modul. Siehe z.B. im Artikel Pegelwandler Die eigentlich relevante Passage darin lautet: "3,3 V auf echte 5 V (CMOS) geht am einfachsten mit einem Baustein der HCT-Familie (NICHT HC!). Diese haben TTL-kompatible Eingänge und echte CMOS-Ausgänge". Also nimm irgendeinen 74HCTxxx Buffer, den du zu deinem Modul verarbeiten kannst: https://www.mouser.de/c/semiconductors/logic-ics/buffers-line-drivers/?logic%20family=74HCT Kleiner Tipp für selbstgebaute "Module": immer einen 100nF Kondensator direkt zwischen Vcc und GND an die ICs löten.
:
Bearbeitet durch Moderator
Lothar M. schrieb: >> dann brauch ich zur nächsten Mondphase wohl den TXS0102 > Wenn du dir das Datenblatt des ICs mal näher anschaust: der ist im > Prinzip genau so passiv (mit Pullup) aufgebaut wie deine obige langsame > Schaltung. Nur hat er einen "One Shot Accelerator" hinzugebastelt > bekommen, der die Flanken steiler macht. Ich verbaue TXS0108E, weil es ihn beim Ali auf lochrasterfreundlichem Platinchen billig gab. Ist natürlich doof, wenn man nur zwei Leitungen braucht. Der hat Push-Pull Ausgänge und ich bin erstaunt, dass TI das bei den kleineren 0104 / 0102 nicht auch gemacht hat.
Nuri O. schrieb: > Die hab ich jetzt nur als IC gefunden. Wenn bräuchte ich ein Modul Entsprechende "SMD Adapterplatinen" sind handelsüblich. Aber mal ehrlich: Du wirst es doch wohl schaffen, 4 Drähte direkt an das IC anzulöten, oder? Dann passt es auch irgendwie als Rettung auf deine Platine.
:
Bearbeitet durch User
Manfred P. schrieb: > Ich verbaue TXS0108E ... Der hat Push-Pull Ausgänge Auch der ist in der Struktur gleich wie die kleineren Varianten. Die PushPull Mosfets werden nur kurz für knackige Flanken eingeschaltet. Den Rest muss der Pullup machen.
:
Bearbeitet durch Moderator
Schnelle Pegelwandlung wurde ja schon gesagt, diverse Levelshifter wurden auch genannt. Einen WS2812 Pixel als "Pegelwandler für Arme", indem du dem einen Pixel eine normale Si-Diode in die +5V Leitung baust. Der sieht dann nur 4,3V und ist mit dem 3,3V Pegel zufrieden und kann seinerseits dann 4,3V liefern, mit dem der 5V Stripe dann wieder glücklich ist. Oder du missbrauchst RS485 Transciver als Levelshifter und nutzt den differentiellen Bus als willkommenes Goodi, weil Stripe und Ansteuerung zig Meter auseinander sein dürfen. Am ESP einen xx3485 und am Stripe eine 5V Version. Du mußt bei den Transcivern nur aufpassen, es gibt vereinzelt auch schnarchlangsame Varianten. Die mit 2,5 MHz langen völlig.
Ich nutze immer diese Schaltung am ESP. Funktioniert wunderbar. Die Widerstände kann man auch beide mit 4K7 ersetzen, als NPN verwende ich meistens nen BC337 und fertig. Bisher habe ich damit noch jeden WS2812-kompatiblen Strip angesteuert bekommen - und zwar ohne Aussetzer.
John D. schrieb: > Ich nutze immer diese Schaltung am ESP. Funktioniert wunderbar. Glaube ich dir, hat bei mir auch an funktioniert. Doch sie wurde hier im Forum kritisiert. Die berechtigte Kritik wurde mit Oszilloskop-Bildern untermauert.
:
Bearbeitet durch User
Beitrag #7559481 wurde vom Autor gelöscht.
Steve van de Grens schrieb: > Die berechtigte Kritik wurde mit Oszilloskop-Bildern untermauert. Link? Bei der Schaltung tut es nicht jeder Kleinleistungs-NPN.
:
Bearbeitet durch User
Rainer W. schrieb: >> Die berechtigte Kritik wurde mit Oszilloskop-Bildern untermauert. > Link? Beitrag "Re: WS2812B mit 3.3V ansteuern"
Rainer W. schrieb: > Bei der Schaltung tut es nicht jeder Kleinleistungs-NPN. Doch, weil das eine Basisschaltung ist, wenn die Basis direkt an den 3V3. Da ist jeder übliche Kleinsignaltransistor schnell. Dass die steigende Flanke dann wieder nur vom Pullup und den Leitungskapazitäten definiert wird, dürfte klar sein. Steve van de Grens schrieb: > Die berechtigte Kritik wurde mit Oszilloskop-Bildern untermauert. Die Schaltung dort ist eine andere. Das mit den zusätzlichen Bauteilen um und an der Basis ist eben keine Basisschaltung.
Lothar M. schrieb: > Doch, weil das eine Basisschaltung ist, wenn die Basis direkt an den > 3V3. Da ist jeder übliche Kleinsignaltransistor schnell. Hätte ich auch so gedacht, aber zumindest LTSpice sagt etwas anderes. Vielleicht ist irgendetwas mit den mitgelieferten Modellen von BC337/546/547/817 und 2N2219A (mehr habe ich nicht probiert). Oder wo steckt der Fehler in der Simulation? Edit Zeitdiagramm mit 2N2219A hat andere Y-Skalierung, sorry
:
Bearbeitet durch User
Rainer W. schrieb: > Oder wo steckt der Fehler in der Simulation? Nein, ich stehe im Abseits und behaupte das Gegenteil: wegen des R1 ist das natürlich keine Basisschaltung. Und der Sperrverzug kommt von dem voll aufgesteuerten Transistor. Schnell wäre der Transistor nur, wenn er nicht als Schalter übersteuert würde. Also: ein Single-Gate-Treiber, dahinter eine Serienterminierung und fertig ist die Schnitte.
Steve van de Grens schrieb: > Beitrag "Re: WS2812B mit 3.3V ansteuern" Dann deckt sich die Simulation ja gut mit den Oszi-Messungen - kräftige Abschaltverzögerung, abhängig vom Transistortyp.
:
Bearbeitet durch User
Beitrag #7560537 wurde vom Autor gelöscht.
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.