Es ist alles eingerichtet und dein ESPuino läuft? Wunderbar! Hier ein paar Worte, damit du ihn besser verstehst. Hinweis: Die nachfolgende Beschreibung bezieht sich auf die Default-Einstellung, bei der drei Taster und ein Drehenoder verwendet werden. Verwendest du eine abweichende Konfiguration (z.B. mehr/weniger Taster, keinen Drehencoder, andere Aktionen), so passt die nachfolgende Anleitung für dich, mindestens teilweise, nicht.
-
Dass man den ESPuino über den Drehencoder lauter und leiser machen kann und dabei vom Neopixel die Lautstärke relativ signalisiert wird, hast du bestimmt schon gesehen. Hinweis: Solltest du der Meinung sein, dass die Drehrichtung nicht passt (lauter und leiser vertauscht), so kannst du dies einfach ändern: 📗 Drehrichtung des Drehencoders umkehren.
-
Ist dein ESPuino nach dem Einschalten bereit, so signalisiert er dies durch vier LEDs, die langsam zirkulieren. Welche Farbe diese LEDs haben hängt vom Betriebsmodus ab: 📗 Die Betriebsmodi des ESPuino.
-
Legst du eine RFID-Karte auf, die bereits einer Aktion zugewiesen ist, so zeigt dir ggf. der Neopixel durch schnelles Zirkulieren von LEDs, dass er beschäftigt ist. Er generiert nun, wenn es sich um eine Musikkarte handelt, eine Playlist. Hast du z.B. ein Verzeichnis mit 100 Titeln und willst diese abspielen, so wird nun eine Playlist mit 100 Titeln generiert. Kurz gesagt: Je länger diese Playlist ist, desto länger dauert es potentiell. Hinweis: Läuft bereits parallel Musik, so dauert die Generierung länger, da der ESP32 parallel noch mit Dekodieren von Audiodateien und SD-Handling beschäftigt ist. Kennt dein ESPuino die RFID-Karte nicht, so blinken kurz alle LEDs rot auf. Natürlich kann eine bereits angelernte Karte auch später umgelernt (überschrieben) werden. An dieser Stelle sei erwähnt, dass auf die Karte nie etwas geschrieben wird, da Zuordnungen immer nur im ESP32 gespeichert werden. Solltest du also einen RFID-Chip haben, der z.B. irgendwo als Zugangsberechtigung verwendet wird, so kannst du diesen gefahrlos auf deinen ESPuino legen und testen, ob er erkannt wird. Im schlimmsten Fall passt das Kartenformat nicht und ist daher nicht lesbar. Aber überschrieben wird auf der Karte nichts. Auch dann nicht, wenn du damit eine Aktion anlernst.
-
Die nachfolgenden Beschreibungen implizieren, dass das standardmäßige Buttonlayout verwendet wird (drei Tasten und Drehencoder - mit entsprechenden Default-Belegungen). Hast du das Ganze umkonfiguriert, so passen die Beschreibungen möglicherweise nicht für dich.
-
Drückt man die Tasten vor oder zurück für einen kurzen Moment, so springt man einen Titel vor oder einen Titel zurück. Zurück führt im Zweifelsfalle dazu, dass der Titel von neuem anfängt. Will man einen Titel zurück springen, so muss man kurz hintereinander zweimal drücken. Dass man einen Titel vor oder zurück springen kann macht es natürlich notwendig, dass man in einem Verzeichnis-Playmodus ist und es mehrere Titel gibt. Ist das nicht der Fall, so wird nichts passieren und der Neopixel wird dies mit einer Fehlermeldung (alle LEDs leuchten kurz rot) visualisieren. Beispielsweise auch dann, wenn bereits der letzte Titel gespielt wird und man zum nächsten oder letzten Titel springen will.
-
Drückt man die Tasten vor oder zurück lange, so springt man in einem Verzeichnismodus zum ersten bzw. letzten Titel. Man so also z.B. problemlos von Titel 2 zur Titel 100 springen. Hinweis: Befindet man sich in einem Verzeichnismodus, in dem Titel zufällig abgespielt werden, so landet man durch die Navigation immer wieder bei den gleichen Titeln. Das heißt: Die Playlist wird nur beim Erstellen (beim Auflegen der Karte) gewürfelt und ist dann statisch. Möchte man sie ändern, so muss die aktuelle Karte nochmal aufgelegt werden, weil dann die Playlist neu „gewürfelt“ wird.
-
Drückt man die Pause/Play-Taste, so wechselt man von Play>Pause oder Play>Pause. Übrigens: Im Modus Hörbuch wird bei dieser Aktion die aktuelle Position gespeichert. Dies gilt übrigens auch für die Tasten vor oder zurück. Aktiviert man in der settings.h zusätzlich
SAVE_PLAYPOS_BEFORE_SHUTDOWN
bzw.SAVE_PLAYPOS_WHEN_RFID_CHANGE
, so wird die zuletzt gespielte Position auch vor dem Ausschalten bzw. auch beim Auflegen einer neuen RFID-Karte gespeichert. -
Den ESPuino schaltet man ĂĽber einen kurzen Druck auf den Drehencoder an und ĂĽber einen langen Druck wieder aus. Beim Ausschalten baut sich in rot ein Ring auf; sobald alle LEDs rot leuchten kann man loslassen. DrĂĽckt man im einschalteten Zustand den Drehencoder nur kurz, so wird, sofern
MEASURE_BATTERY_VOLTAGE
einkompiliert wurde, die aktuelle Akkuspannung angezeigt. Hinweis: Über die WebGUI lassen sich hierbei Spannungsgrenzen festlegen. Also wenn man z.B. einen LiPo-Akku benutzt (Nutzer eines LiFePO4-Akkus lesen besser hier), dann macht es Sinn, dessen oberen Spannungslevel auf 4.2 V zu legen. Die untere Grenze würde ich bei etwa 3.4 V definieren. D.h. liegt die Spannung des Akkus z.B. bei 3.8 V, so leuchtet die Hälfte der LEDs. Bitte beachten, dass der analoge Messeingang des ESP32 nicht super genau ist und es zu leichten Abweichungen kommen kann. In den Settings-Dateien lässt sich zur Not ein Korrekturwert (Offset) einstellen, welches dann Sinn macht, wenn eine systematische Spannungsabweichung vorliegt, die man korrigieren möchte. Wichtig: Die Spannungsanzeige ist nur dann aussagekräftig, wenn dein ESPuino ausschließlich per Batterie versorgt wird. -
Fällt die Batteriespannung unter einen gewissen Level, der ebenfalls über die WebGUI einstellbar ist, so warnt der Neopixel in zyklischen Abständen. Hinweis: Ist die Spannung zu tief, kann es passieren, dass dein ESPuino plötzlich nicht mehr auf RFID-Karten reagiert oder von SD nicht mehr lesen kann. WICHTIG WICHTIG WICHTIG: Achte darauf, sofern du einen LiPo-Akku verwendest, einen solchen zu nehmen, der einen integrierte Tiefentladeschutz besitzt!!! Einen solchen NICHT zu haben kann böse enden.
-
Den Titelfortschritt visualisiert der Neopixel mit der relativen Anzahl der LEDs in einem Farbgradienten. D.h. ist ein Titel zur Hälfte gespielt, so leuchtet die Hälfte der LEDs. Hinweis: Über die
settings.h
muss die Anzahl der LEDs passend eingestellt werden. -
In einem Verzeichnismodus wird zusätzlich zwischen einzelnen Titeln auch noch ein Playlist-Fortschritt angezeigt (blaue LEDs, die sich dynamisch kurz nach dem Titelwechsel aufbauen und wieder einklappen). Leuchten also die Hälfte der LEDs zwischen zwei Titeln kurz blau, so wurde die Playlist zur Hälfte bereits gespielt.
-
Im Modus Webradio ist ein Titelfortschritt schlecht darstellbar. Daher werden immer zwei zirkulierende LEDs angezeigt, die ihre Farbe anhand eines Regenbogen-Gradienten mit jeder Bewegung ändern. A propos Webradio: Solltest du Probleme mit Aussetzern haben, macht es ggf. Sinn, auf ein ESP32-Develboard mit einem ESP32-WROVER zu wechseln, da dieser PSRAM besitzt, welcher als größerer Zwischenspeicher (Cache) benutzt wird. Die meisten ESP32-Develboards verwenden den ESP32-WROOM, der diesen PSRAM nicht besitzt. Solltest du dich für einen WROVER entscheiden so achte drauf, dass dieser mindestens 16 MB Flashspeicher besitzt (wie beispielsweise der Lolin D32 pro). Flashspeicher an dieser Stelle bitte nicht mit PSRAM verwechseln. In Sachen PSRAM sind 4 MB weit mehr als ausreichend.
-
Zum initialen Einrichten des ESPuino ist WLAN notwendig. Man benötigt es auch zur Steuerung via MQTT, wenn man neue RFID-Zuweisungen machen will, Webradio hören möchte oder auch dann, wenn man Dateien per Webtransfer oder FTP auf die SD-Karte bringen möchte. Abseits dessen kann WLAN jedoch auch deaktiviert werden, was sich der ESPuino im Übrigen auch über den nächsten Bootvorgang hinweg merkt. Läuft zum Zeitpunkt der Deaktivierung ein Webstream, so wird dieser beendet. Das Deaktivieren des WLANs muss man über das dynamische Button-Layout einer Taste oder einer Tastenkombination als Wert zuweisen via
settings.h
. Sämtliche CMD_-Werte, die in der values.h hinterlegt sind, kann man Tasten auch zuweisen. Bedenke, dass Kinder natürlich am ESPuino rumspielen und ggf. ständig „wild“ das WLAN an- und ausschalten können. Ggf. macht es mehr Sinn, hierfür eine Modifikationskarte zu verwenden. -
Lernst du ĂĽber die WebGUI neue RFID-Karten an, so wird diese Zuweisung im NVS des ESP32 gespeichert. Parallel dazu wird eine Datei
backup.txt
im Hauptverzeichnis auf der SD-Karte abgelegt, die all diese Zuweisungen enthält. Geht der ESP32 kaputt, so ist dies dein Backup! Ein weiterer Vorteil ist: Kommt in deinem Haushalt noch ein weiterer ESPuino hinzu, so kannst du über die WebGUI diese Datei dort importieren und musst nicht umständlich alle RFID-Karten auch dort wieder anlernen. Klar: Die Daten auf der SD-Karte müssen natürlich in beiden Geräten vorhanden sein. Weitere Infos gibt es hier: 📗 Die Backupfunktion des ESPuino. -
Im Akkubetrieb habe ich im „normalen Betrieb“ einen Strom von etwa 180 mA bis 200 mA gemessen. Ich persönlich setze aktuell LiPo-Akkus mit 2500 mAh ein. D.h. bis zu zehn Stunden sind damit drin. Mit einem LiFePO4-Akku habe ich auch mal eine Messreihe durchgeführt.
Noch Fragen? Gerne! Aber bitte auch einen Blick in die FAQ werfen. Und in die Dokumenation der Betriebsmodi.