TonUINO auf dem Esp32 Nano

Hatte ich im Testbetrieb versucht. Das sieht dann so aus:

  • Die Umschaltung wird erst wirksam, nachdem die KCX-Baugruppe spannungslos war - also immer erst nach Neustart der Baugruppe.
  • Im Empfängerbetrieb ist der KCX an den Ausgängen dann so niederohmig, dass vom Decoder des DF-Players nichts mehr durchkommt.

Und, wie Thomas schon schrieb, musst Du den Abschalttimer noch zusätzlich stoppen.

Klappte leider nicht.

Vielleicht liegt es an der zu kleinen Steuerspannung an D5. Der normale Nano arbeitet ja mit 5V, der ESP32 Nano mit 3.3V. Bei mir funktioniert es trotzdem. Miss doch mal die Spannung auf der 5V Leitung auf der Platine, womit auch der NeoPixel Ring versorgt wird. Wenn die höher als 5V ist, reicht die Steuerspannung nicht mehr aus, da diese 70% betragen muss.
Vielleicht können die HW Experten hier auch eine einfache Schaltung vorschlagen, wie man die 3.3V auf 5V anheben kann.

Ich habe es einmal mit einem anderen Nano ESP32 versucht, mit dem geht es auch nicht. Die Spannung werde ich gleich mal messen.

Reicht es dann nicht, den Widerstand R12 (330 Ohm) in der Datenleitung zu verkleinern oder sogar durch einen 0 Ohm Widerstand zu ersetzen?

Ich habe die Spannung gemessen, am Neopixel-Ring liegen 5,18V an. Wenn ich im Betrieb die Datenleitung gegen GND messe, messe ich 0,0V.

Übrigens bekomme ich aus diesem Thread keine Benachrichtigungen bei einem neuen Beitrag obwohl ich den Status auf „Beobachten“ gesetzt habe. Im Spamorder ist auch nichts.

Die Verkleinerung, oder Überbrückung des Widerstands ist nur zu empfehlen, wenn nur noch ausschließlich der ESP32 verwendet wird. Beim Wechsel auf ein Board mit 5V Pegel könnte sonst der Neopixel Schaden nehmen.

Hast du auch mal einen anderen Neopixelring ausprobiert?

Die Datenleitung kannst du nur mit einem Oszilloskop auf Pegel prüfen. Ein Multimeter ist dafür zu träge. Eventuell auch einen Logik-Analyser. Aber wer hat den schon. Ich habe so ein kleines Digital Oszilloskop von Ali.. (ca. 30€,) Das reicht für die meisten Messungen voll aus.

Überbrückung des Widerstands brachte keine Veränderung und ja, ich habe es auch mit einem anderen Neopixel versucht.

Werde ich versuchen, ich habe auch so ein Teil. Logic-Analyzer habe ich übrigens auch.

Um den Pegel anzuheben reicht eine einfache Schaltung mit einem N-Fet und zwei 10kOhm Widerständen. Einfach mal Levelshifter mit Fet googeln. Da findet man auch die Schaltung.

Hab jetzt nicht die Möglichkeit den Schaltplan zu Posten.
Wer’s versteht.

Mosfet, Source an Signalleitung Niedriger Pegel
Gate an niedrige Betriebsspannung
Widerstand 10k von Source nach Gate.
Drain an Signalleitung HoherPegel.
Widerstand 10kOhm an Drain und Hohe Betriebsspannung.

Sollte mit dem Irlml 2502 funktionieren. Auf niedrige Ugsth achten. Unter 2V sollte sie sein.

Probiere ich morgen aus. Der Pegel ist nämlich wirklich unterirdisch. Ich habe mal ein Oszi (oben) und einen Logic-Analyzer (unten) dran gehängt und Videos gemacht. Beim Logic-Analyzer ist das Kanal 1 (ganz oben), die anderen 3 Kanäle hängen in der Luft.


Videos hoch laden geht nicht und die Screenshots waren zu groß. Ich habe sie kleiner gemacht und dabei ist was schief gegangen aber man kann es erkennen. Die Videos sind im laufenden Betrieb entstanden.

Das ist ja unterirdisch. Kontrolliere dochmal, ob D5 auf dem ESP Board richtig verlötet ist, oder vielleicht einen Kurzschluss hat.

Das sagte ich ja bereits, das wird auch mit Levelshifter nicht besser (habe ich gerade ausprobiert). Auf dem Board ist alles richtig verlötet und mit einem anderen Nano ESP32 funktioniert es ja auch nicht. Auf dem Trägerboard stimmt auch alles, ich maß gerade 328 Ohm zwischen dem Header für D5 und dem für DataOut. Da MUSS was mit der Software nicht stimmen, ich sehe aber nicht, was.

Wenn ich wieder zu Hause bin, werde ich das mal auf meinem Board checken. Dann sehen wir weiter.

Miss doch mal die Spannung an vbus am esp32 nano. (du hast doch die neue Trägerplatine für den esp?)

Ich lese schon eine ganze Weile aufmerksam und interessiert mit und wollte nun „auf die Schnelle“ auch einen Test an meinem Versuchsaufbau machen, sogar mein altes Oszi vom Dachboden holen.

Bei den Vorbereitungen sind allerdings einige Dinge aufgetreten, so dass ich noch nicht zum testen gekommen bin.

Gestartet bin ich mit der V 3.3.0 vom 26.05.25 und habe gleich ein ganzes Bündel von Compiler-Fehlermeldungen geerntet. Na gut, ich hatte leichtsinnigerweise der Arduino IDE erlaubt die Bibliotheken zu aktualisieren.
Also Roll-Back EXAKT auf die in der readme angegebenen Versionen.
Damit ist das Compilieren wieder problemlos möglich.

Meine Konfiguration in der constants.hpp (also fast „volle Lotte“):

  • TonUINO_Esp32 100 // Esp32 Nano
  • FIVEBUTTONS
  • DFMiniMp3_T_CHIP_GD3200B
  • QUIZ_GAME
  • MEMORY_GAME
  • BT_MODULE
  • MRFC522_RX_GAIN RxGain_33dB // default
  • MODIFICATION_CARD_JUKEBOX

Mit diesen Einstellungen läuft der TonUINO, wie erwartet (obwohl ich die Spiele und die Jukebox noch nicht getestet habe)..

Wenn ich nun allerdings die NEO-Pixels dazu nehme, geht mit der Box nix mehr.
Die Firmware compiliert ohne Meldungen, aber nach dem Start-Peep nimmt die Box keinerlei Bedienung (Button oder Webinterface) mehr an. Das Webinterface scheint sogar die Verbindung zum TonUINO zu verlieren.

Nach einem Neustart ist die Verbindung wieder hergestellt und ich kann via OTA eine andere Firmware flashen.
Dieses Verhalten tritt auch auf, wenn ausser der DF-Player Konfiguration keine weiteren Features aktiv sind.

Irritiert war ich, da im Log in diesem Zustand vermehrt „missingOnPlayFinished“ Meldungen auftauchen, die im Normalbetrieb so gut wie nicht vorkommen.
Bei Auflegen einer Party-Karte wird auch keine Queue erzeugt.

Aus Zeitgründen konnte ich den Test noch nicht mit einer anderen DF-Player Konfiguration machen.

PS.:
Da die JC_Button Bibliothek eine Warnung ausgibt, dass sie für AVR-Architektur gebaut ist, habe ich zumindest diese Bibliothek ohne erkennbare Fehlfunktionen auf die Version 2.1.5 (von vorgegeben 2.1.2) aktualisiert womit die Warnung nun nicht mehr angezeigt wird.

Liegt das Problem bei mir, bin ich da irgendwie auf dem falschen Weg?

Ja, ich habe die neue Trägerplatine und die Spannung an VBUS ist 5,16V.

Ja und Nein! Da scheint irgend etwas mit deinem Aufbau nicht zu stimmen. Bei mir ist sonst alles in Ordnung, nur die Neopixel geht nicht. Aber wenn sie angeschlossen ist, funktioniert alles andere. Wie ich schon schrieb, wenn ich statt des ESP32 den Every mit der Programmierung für den Every nehme, funktioniert die Neopixel an sonst derselben Hardware.

Die JC_Button gibt bei mir beim Kompilieren dieselbe Warnung aus, stört mich nicht weiter.

Der Aufbau kann es bei mir auch nicht sein, da sowohl Nano, Every und der ESP einwandfrei funktionieren. NEOs sind noch gar nicht angeschlossen. Es reicht, nur das define für die NEOs zu aktivieren und schon geht der Spuk los. Die NEOs mit Nano und Every in der 3.3.0 habe ich noch nicht getestet - in der 3.2.x kein Problem