Elektronik_Header_3Lüftersteuerung mit ESP-01

 

Mini-Wecker

Im Zuge der Entwicklung des Holz-Weckers ist mir irgendwann die Idee durch den Kopf geschossen, so eine Wortuhr mĂŒsste doch auch noch wesentlich kleiner gebaut werden können. Und nachdem mit dem Holz-Wecker der Schritt weg von der Verwendung von LED-Stripes hin zur eigenen Platine mit aufgelöteten LED-Pixeln bereits getan war, habe ich mal geschaut, was so an kleineren, seriell ansteuerbaren RGB-LEDs auf dem Markt angeboten wird.

Relativ schnell fand ich Typen in der GrĂ¶ĂŸe 2427, also 2,4 x 2,7 mm groß, kurz darauf auch quadratische Versionen in 2020, also 2 x 2 mm groß.

Einige Überlegungen und Rechnungen spĂ€ter habe ich die Front der gewĂŒnschten Wortuhr mit 75 x 75 mm festgelegt und mit der Platzierung der LEDs in der GrĂ¶ĂŸe 2020 und sonstigen Bauelemente begonnen. Das Schaltbild konnte ich fast 1:1 vom Holz-Wecker ĂŒbernehmen, lediglich die dort gefundenen Auslassungen und Optimierungen wurden eingebaut.

Hier sind zu nennen der Treibertransistor fĂŒr den Piezo-Piepser, der ja mit 5 V betrieben wird und mit der vom ESP8266 gelieferten Spannung von 3,3 V nur viel zu leise vor sich hin piept, sowie eine Pegelwandlerstufe zwischen ESP und der ersten LED. Hier dasselbe Problem, der ESP liefert 3,3 V, die LEDs werden aber mit 5 V betrieben und erwarten fĂŒr eine sichere Ansteuerung TTL-Pegel.

Es soll aber nicht unerwÀhnt bleiben, dass die Ansteuerung der LEDs in allen meinen bisherigen Wort-Uhren ohne diese Pegelwandlerstufe vollkommen problemlos funktioniert. Siehe dazu auch hier.


FĂŒr die Erstellung des Layout fĂŒr die LEDs habe ich wieder ein Excel-Sheet erstellt, das mir die notwendigen Koordinaten auswirft.

Mini-Wecker LED Koordinaten

FĂŒr das Lichtgitter gibt es ebenfalls eine Tabelle.

Mini-Wecker Lichtgitter Koordinaten

Die Platine habe ich in EasyEDA erstellt und dann auf direktem Weg bei  JLCPCB bestellt. Auch diesmal ging das Ganze vollkommen problemfrei, qualitativ hochwertig und schnell ĂŒber die BĂŒhne, nach 2 Wochen lagen die Platinen im Briefkasten.

Der in den beiden Excel-Sheets Orange markierte Bereich kann ĂŒbrigens in ein weiteres Excel-Sheet kopiert werden, welches dann automatisch die notwendige Definition der Anordnung der LEDs fĂŒr “Layout.h” generiert.

Der aufmerksame Beobachter sieht, dass ich die Alarm LED “inline” zwischen LED 5 und 7 in der oberen Reihe angeordnet habe. Auf diese Weise vermeide ich unnötig lange Leitungen.


Damit die LEDs leichter aufgelötet werden können, habe ich sie um 45° gedreht platziert. Dadurch kommt man besser an die LötanschlĂŒsse heran, zusĂ€tzlich ergibt sich ein aufgerĂ€umteres Leiterbild, was aber ein eher psychologischer Aspekt ist, denn die Leiterbahnen sind unter der aufgebrachten Farbschicht kaum noch erkennbar.

Die Sensortasten sind alle an die obere Kante gewandert, die Bedienung von Up und Down auf der Seite hat sich als ungĂŒnstig erwiesen, der Wecker wird dabei nur in der Gegend herum geschoben. Da bei einem aktiven Weck-Ereignis (der Wecker piept) alle Tasten ein Abschalten des Wecksignals bewirken, ist das die naheliegendste Positionierung der Tasten . Es ist also nicht zu befĂŒrchten, dass man morgens, im Halbkoma auf der Suche nach der Taste zum Abschalten des Alarms, alle Einstellungen des Weckers ĂŒber den Haufen wirft.

Auf der Vorderseite ist ansonsten nur noch der LDR fĂŒr die automatische Helligkeitsanpassung platziert, die Sensoren werden nach hinten orientiert angelötet..

Mini-Wecker Platine - Front

Auf der RĂŒckseite der Platine ist schon mehr los. Im oberen Bereich sitzt der Wemos D1 mini als Hirn des Weckers. Links neben dem Wemos kann der Piezo-Piepser in SMD -AusfĂŒhrung eingebaut werden, der Einbauplatz fĂŒr dessen Schaltstufe ist ebenfalls zu sehen.

Rechts oben in der Ecke kann man den Einbauplatz des Pegelwandler-MOSFET fĂŒr die LEDs sehen, ansonsten ist noch der Anschluss rechts unten fĂŒr einen 2200 ”F Blockkondensator erwĂ€hnenswert. Der Kondensator ist ein Typ mit beiden AnschlĂŒssen auf einer Seite und wird liegend eingelötet und zusĂ€tzlich festgeklebt. Die Anschlussbeine mĂŒssen dafĂŒr passend abgeknickt werden.

Mini-Wecker Platine - Back

Hier noch eine GegenĂŒberstellung der beiden Wecker-Varianten.

Mini-Wecker und Holz-Wecker

Wer den Wecker nachbauen möchte, kann das Design im EasyEDA Format laden.


Der Einbau der LEDs war erwartungsgemĂ€ĂŸ kein Kinderspiel. Die LEDs haben keine Beinchen seitlich am GehĂ€use, wie das bei den 5050er und den 2427er Typen der Fall ist, die Anschlusspads sitzen komplett auf der Unterseite des GehĂ€uses.

GrĂ¶ĂŸenvergleich RGB-LEDs in 5050, 2427, 2020

Das, zusammen mit der Winzigkeit der LEDs, erhöht den Spaßfaktor beim Anlöten in keinster Weise. So hat sich dann auch ĂŒber die nĂ€chsten Tage der eine oder andere Lötfehler eingeschlichen, und das, obwohl ich in weiser Voraussicht einen Taster in die Plusleitung vom Netzteil eingebaut habe, um direkt nach dem Einlöten einer jeden LED einen Funktionstest durchzufĂŒhren.

GeĂ€ußert hat sich der Fehler in einem sporadischen Farbwechsel im mittleren und unteren Bereich der Anzeige, nachdem die Anzeige lĂ€ngere Zeit gelaufen ist. Im Prinzip also ein WĂ€rmefehler, den ich durch Nachlöten der in Frage kommenden LEDs beheben konnte.

Nachtrag
Die fertig bestĂŒckte Platine lĂ€uft jetzt schon ein paar Wochen auf meinem Schreibtisch vor sich hin. Dabei passiert es immer wieder, dass die LEDs in der unteren HĂ€lfte des Display anfangen Farbspiele zu produzieren und/oder nicht mehr aktualisiert werden. Durch Nachlöten kann ich diese Effekte immer beheben, aber das ist kein Zustand.
Ich bin geneigt, diesen 2020er LEDs in Handlötung die FunktionsfÀhigkeit im Dauerbetrieb abzusprechen, vor einem Nachbau rate ich dringend ab.

Wer alternativ einen Reflow-Ofen zur VerfĂŒgung hat, kann hingegen wahrscheinlich gut damit leben, JLCPCB bietet, basierend auf meinem Datensatz, auch die Fertigung einer passenden Lötpastenschablone (Stencil) an.


Hier die fertig bestĂŒckte Platine des Mini-Weckers. Es ist 22 Minuten nach 4 Uhr.

Mini-Wecker fertig bestĂŒckt


Das Lichtgitter ist unspektakulÀr, mit 6 mm genauso dick wie das des Holz-Weckers, nur, geschuldet den kleineren Abmessungen, um Einiges filigraner.

Mini-Wecker Lichtgitter


FĂŒr die Front musste ich mir noch etwas einfallen lassen, denn die Buchstaben dĂŒrfen nur noch ca. 3,5 mm hoch sein, die StrichstĂ€rke fĂ€llt entsprechend gering aus.

Zum GlĂŒck hatte Andreas schon wieder eine gute Idee. Modulor bietet eine 3 mm dicke Acrylglas-Platte mit rĂŒckseitiger Verspiegelung an. Ein Test an einem freundlicher Weise von Modulor zur VerfĂŒgung gestellten Handmuster bewies, damit kann die Front in der notwendigen Auflösung gefrĂ€st werden, zudem ist die Spiegelschicht lichtdicht - Volltreffer.

Leider fĂ€llt das Licht der LEDs nicht ausschließlich geradeaus durch die Acryl-Schicht hindurch, sondern wird auch in die benachbarten LichtschĂ€chte des Lichtgitters gespiegelt, so dass nicht nur die beleuchteten Buchstaben, sondern auch deren Nachbarn deutlich erhellt werden.

Durch AbfrÀsen der nicht verspiegelten Seite der Acryl-Platte auf ca. 0,8 mm StÀrke konnte dieser Effekt soweit vermindert werden, dass die Streuung nicht mehr stört. Eine Spiegelung ist aufgrund der durch die FrÀserspuren nicht mehr glatten Oberseite der Platte ohnehin nicht mehr zu erwarten.

Die hier abgebildete Front ist das Handmuster

Acryl-Front Handmuster

Acryl-Front Handmuster

Im linken Teil der Front sieht man das ebenfalls in dieses Handmuster gefrĂ€ste, um 90° gedrehte Buchstabenbild fĂŒr den Holz-Wecker.

Unten sind die erwĂ€hnten Probleme mit der kalten Lötstelle zu sehen. Hier sieht man noch ein leichtes Übersprechen zwischen beleuchteten und benachbarten, dunklen Buchstaben.

Acryl-Front Handmuster

Liegt das vorgesehene Modulor MicroWood in Ahorn ĂŒber der dĂŒnn gefrĂ€sten Acryl-Platte, ist vom Übersprechen auf benachbarte Buchstaben nichts mehr zu sehen.

Acry-Front mit MicroWood Ahorn

Der Hof um die Buchstaben und deren UnschÀrfe liegt teilweise an der gewölbten Form des MicroWood, ich habe das auf die Schnelle nicht glatt aufgelegt bekommen, sorry ;-)


Die fast endgĂŒltige Front, noch ohne dĂŒnn gefrĂ€st zu sein.

komplette Front

“Fast” bedeutet konkret, die Buchstaben sind zu dick gefrĂ€st, das Bild der Glocke gefĂ€llt mir nicht, das Fenster fĂŒr den LDR ist zweimal vorhanden (ja, ich habe vergessen, dass die Front gespiegelt auf der FrĂ€se bearbeitet wird ;)

Ich spare mir deshalb die Bearbeitung der Oberseite um die Scheibe dĂŒnner zu bekommen, sie wird ohnehin nicht zum Einsatz kommen.


Ok, einen kleinen Wecker kann wahrscheinlich jeder, auch wenn’s schwer fĂ€llt...

Also habe ich mir noch etwas Besonderes in den Kopf gesetzt. Der Weck-Sound wird beim Mini-Wecker nicht mehr mit einem Piezo-Piepser erzeugt, sondern alternativ wird eine MP3-Datei abgespielt. Hierzu verwende ich einen IÂČS-VerstĂ€rker MAX98357, dessen Ansteuerung durch den ESP8266 ĂŒber die von Earle F. Philhower, III zur VerfĂŒgung gestellte Library ohne große Probleme umgesetzt werden kann.

Der dort beschriebene Ansatz fĂŒr ein Minimal-Interface zwischen ESP8266 und Schallwandler, die Umwandlung der MP3-Datei direkt ĂŒber einen Software DeltaSigma -Wandler im ESP und die VerstĂ€rkung dieses Signals ĂŒber einen einzelnen FET oder Transistor, hat zwar prinzipiell funktioniert, der Hörgenuss bleibt dabei aber irgendwie auf der Strecke und der Gewinn gegenĂŒber dem Piezo-Schallwandler ist nur marginal. Konkret ist beim Abspielen der MP3 Datei permanent ein sehr störendes Rauschen und Knistern zu hören. Das lassen wir also.

Das oben erwĂ€hnte “ohne große Probleme” bezieht sich ĂŒbrigens nur auf den prinzipiellen Vorgang der Umwandlung von MP3 in Schall mittels eines ESP8266, das hat Earle ja in seinen Beispielen bereits fertig ausprogrammiert zur VerfĂŒgung gestellt.

Beim Einbau der Ansteuerung des IÂČS-VerstĂ€rkers in den QlockWiFive Code haben sich dann aber doch ein paar Probleme ergeben, auf die ich hier nĂ€her eingehen will.

Explizit geht es um Speicher, genauer um genĂŒgend freien Speicher im RAM. Im Uhren-Code werden die HTML-Seiten der GUI (Graphical User Interface, die BedienoberflĂ€che im WEB-Browser) dynamisch aufgebaut und belegen dadurch große Bereiche des RAM/Heap, wovon insgesamt ca. 80 kB im ESP zur VerfĂŒgung stehen.

Die MP3-Wandlung benötigt ihrerseits Einiges an Speicher, verteilt auf eine Reihe von Puffern, die reihum gefĂŒllt und geleert werden.

Das Problem hierbei ist, die Texte fĂŒr die HTML-Seiten werden gleich beim Programmstart im RAM angelegt und verbleiben dort, auch wenn die GUI gar nicht aufgerufen wird. In Folge kann der Programmteil des MP3-Decoders seine Puffer nicht allokieren, es wird keine Musik ausgegeben.

Das Problem der Blockierung von RAM fĂŒr statische Texte ist ein Bekanntes, die Erfinder von Arduino haben also bereits Abhilfe in Form des F(..) Makros geschaffen. Mit Hilfe dieser Konstruktion bekommt der Compiler gesagt, dass der betroffene Text nicht im RAM, sondern ausschließlich im Flash abgelegt und zur Laufzeit auch von dort geholt werden soll.

Hier zur Verdeutlichung der Code fĂŒr die ĂŒbersichtliche WEB-Seite “Error 404 - File not found”. Anstelle der gewohnten Definition

    // Page 404.
    void handleNotFound()
    {
     esp8266WebServer.send(404, "text/plain", "404 - File Not Found.");
    }

verwenden wir jetzt

    // Page 404.
    void handleNotFound()
    {
     esp8266WebServer.send(404, F("text/plain"), F("404 - File Not Found."));
    }

und schaufeln dadurch 30 Byte Zeichen plus 2 Byte Zeichenketten-Abschluss im RAM frei.

Im Code finden sich zudem Konstruktionen, bei denen der Text dynamisch zusammengesetzt wird. Im nachfolgenden Beispiel wird der Seitentitel erstellt.

    String message = F("<!doctype html>");
    message += F("<html>");
    message += F("<head>");
    message += F("<title>") + String(PRODUCT_NAME) + F(" Settings</title>");
    message += ....

In der 4. Zeile wird der Titel aus dem statischen Text “<title>”, dem in ein String-Objekt gewandelten PRODUCT_NAME und dem Abschluss " Settings</title>" zusammengesetzt.

Der +-Operator fĂŒr die Concatenation (Aneinanderreihung, Verkettung) eines String-Objekts mit einem nachfolgenden char-Array , das per PROGMEM Anweisung aus dem Flash zu holen ist, ist definiert, der letzte Teil der Zeile funktioniert also problemlos.

Der +-Operator fĂŒr die Concatenation eines im PROGMEM liegenden char-Array mit einem nachfolgenden String-Objekt hingegen ist nicht definiert, der Compiler meldet hier Fehler und bricht ab.

Das Problem lÀsst sich aber mittels Casting umgehen:

    String message = F("<!doctype html>");
    message += F("<html>");
    message += F("<head>");
    message += (const char*)F("<title>") + String(PRODUCT_NAME) + F(" Settings</title>");
    message += ....

Nachdem alle HTML-Texte dergestalt ĂŒberarbeitet wurden, funktioniert sowohl das Compilieren als auch der Betrieb der Uhr, allerdings wird die MP3-Datei trotzdem nicht ausgegeben.

Weitere Nachforschungen ergeben, dass der Transfer der HTML-Texte ins Flash lĂ€ngst nicht genug dynamischen Speicher freischaufelt. Die unzĂ€hligen Debug-Ausgaben in Klartext, teilweise gedoppelt durch zusĂ€tzliche Ausgaben an den Syslog-Server, mĂŒssen sich ebenfalls die Ablage im Flash gefallen lassen, was aber immer noch nicht ausreicht. Zwar spielt inzwischen die Musik beim Wecken, aber nach wenigen Sekunden ist wieder Schluss. Exception wegen Speicherengpass.

Letzte Abhilfe fand ich dann, indem ich die Ansammlung von verschiedenen Layouts drastisch auf das eine Layout reduziert habe, das im gegebenen Fall Verwendung findet. Das ist insofern kein Problem, da der Typ der Uhr ohnehin in der Configuration.h mit einem Define festgelegt wird. Das Define verwende ich in Layout.h zur Selektion des - in einzelnen FĂ€llen der beiden - möglichen Layouts. Diese Maßnahme schafft dann, zusammen mit den Text-Überarbeitungen, den notwendigen Platz im RAM fĂŒr die Puffer der Audio Bibliothek.

HĂ€tte diese Idee nicht gefruchtet, wĂ€re noch die Weichei-Lösung in Frage gekommen, bei der sowohl Speicherung der MP3-Dateien als auch deren Dekodierung und VerstĂ€rkung in einem eigenen MP3-Modul mit SD-Karten-Slot erfolgt wĂ€re. Die Steuerung solcher Module erfolgt ĂŒber eine serielle Schnittstelle, was problemlos in den Uhren-Code einzubauen gewesen wĂ€re.

Der Charme der von mir gewĂ€hlten Lösung ist, dass mit dem Wemos D1 mini pro sowohl der notwendigen Speicher fĂŒr die MP3-Datei als auch die Rechenleistung fĂŒr die MP3 -Dekodierung im ESP8266 zur VerfĂŒgung stehen. Lediglich der VerstĂ€rker muss zusĂ€tzlich vorgesehen werden. Der Wemos D1 sollte unbedingt die “pro” Version sein, diese hat 16 MByte Flash und stellt somit ca. 14 MByte Speicher fĂŒr die MP3-Datei zur VerfĂŒgung.

Hinweis
Die Audio Bibliothek von Earle stellt beide Stereo-KanĂ€le zur VerfĂŒgung, verwendet man also einen Stereo tauglichen IÂČS VerstĂ€rker, kann man sich auch in Stereo wecken lassen. Genauso ist es möglich, zwei der oben bezeichneten IÂČS-VerstĂ€rkermodule zu verwenden, denn die kann man von Mono-Wiedergabe auf Linken/Rechten Kanal jumpern.


Als weiteres Goodie habe ich mir in den Kopf gesetzt, den Wecker ĂŒber einen Qi-Ladeadapter mit Strom zu versorgen. Diese Qi-Charger dienen dem kabellosen Laden von Handys. Vereinfacht ausgedrĂŒckt wird das Handy einfach auf den Adapter aufgelegt und eine im Handy eingebaute Spule empfĂ€ngt den Strom, eine mehr oder minder komplizierte Schaltung bereitet ihn auf und der Handyakku wird drahtlos geladen.

Der mir zusagende Qi-Ladeadapter kommt recht edel daher. Er misst 9 x 9 cm im Quadrat, ist ca. 5 mm dick, die Oberseite besteht aus dunklem Glas.

Qi Ladeadapter

Qi Ladeadapter

Der passende - getrennt gekaufte - Qi-EmpfÀnger, hier angeschlossen an eine fertig aufgebaute Holz-Wecker Platine.

Qi-EmpfÀnger

Qi-EmpfÀnger

Derselbe Adapter, diesmal bereits ohne UmhĂŒllung, an das Testboard angesteckt.

Testaufbau Wort-Uhr Testboard mit Qi-Charger

Man sieht sehr schön die erwÀhnte Spule und die zugehörige Elektronik.

Das Testboard wird ĂŒber den Qi Ladeadapter drahtlos mit Strom versorgt. Der Qi-EmpfĂ€nger liegt im gefrĂ€sten MDF-Rahmen fĂŒr den Holz-Wecker um zu testen, ob der durch das 3 mm dicke HolzgehĂ€use vergrĂ¶ĂŸerte Luftspalt den Betrieb einschrĂ€nkt. Tut er nicht.

Auch in einem 5 mm dicken PLA-GehÀuse aus dem 3D-Drucker ist der Betrieb, hier testweise mit einer Mini-Wecker-Platine, noch gegeben, hier muss der Qi-EmpfÀnger aber schon ziemlich genau in der Mitte des Ladeadapters positioniert werden, beim 3 mm HolzgehÀuse ist noch ein gewisser Spielraum vorhanden.

Mini-Wecker mit Qi-Versorgung


Der magnetische Mini-Schallwandler im Piezo-Piepser-Design, den ich fĂŒr die Tests mit MP3-Ausgabe verwendet habe:

Magnetischer Schallwandler

Magnetischer Schallwandler

Den Wandler habe ich mit einem Streifen Tesa zugeklebt um die schrillen Töne im Hochtonbereich, die er naturgemĂ€ĂŸ sehr gut wiedergeben kann, zu dĂ€mpfen. BĂ€sse erzeugt er dadurch immer noch nicht, aber das Klangbild ist ausgewogener. Und er ist leiser. Das ist zwar alles kein Killkriterium, denn dieser Schallwandler wird im Wecker ohnehin nicht zum Einsatz kommen, aber bei der Programmentwicklung und beim Debuggen muss immer wieder der Weck-Sound angespielt werden, was auf Dauer dann doch nervt. Anfangs habe ich einen kleinen Mini-Lautsprecher aus einem Transistorradio verwendet, aber der kommt dann schon recht laut daher, auch wenn er in einer Schachtel eingesperrt ist.

Der IÂČS-VerstĂ€rker kann zwar per Beschaltung fest auf eine geringere VerstĂ€rkung eingestellt werden, aber selbst die leiseste Stufe ist noch immer recht laut.

IÂČS VerstĂ€rker

Der in den Unterlagen erwĂ€hnte Weg, die LautstĂ€rke zu verringern indem die Versorgungsspannung auf 3,3 V gesetzt wird, empfehle ich nicht, dann treten nĂ€mlich Verzerrungen auf, die bei Versorgung mit 5 V nicht vorhanden sind. Grund dafĂŒr könnte natĂŒrlich sein, dass die 3,3 V des Wemos D1 mini nicht stabil genug sind und die Spannung somit zusammenbricht.

NĂ€her untersucht habe ich das nicht, in der endgĂŒltigen Version der Wecker-Firmware ist die LautstĂ€rke softwaremĂ€ĂŸig ĂŒber die Plus/Minus Tasten einstellbar.


Den aus einem PrototypgehÀuse aus dem 3D-Drucker, der nicht fertig gefrÀsten Spiegel-Acryl-Front, dem Qi-Adapter und dem oben vorgestellten Schallwandler liebevoll mit Tesa zusammengeklebten Mini-Wecker habe ich in einem kleinen Video verewigt.

Mini-Wecker Alarm-Video auf Vimeo          (Click auf das Bild fĂŒhrt zu Vimeo)

Der fĂŒr die Tests stark gekĂŒrzte MP3-Sound startet etwa bei Minute 1:01, den langen Vorlauf bitte ich zu entschuldigen.


Verschiedene GehÀusevarianten aus dem 3D-Drucker

Ich habe ein GehĂ€use mit 3 mm dickem Boden entworfen, dessen Konstruktion ich im RSDOC- und STL-Format fĂŒr DesignSpark mechanical und Cura offenlege.

Mini-Wecker GehÀuse

Die Wecker-Platine liegt links und rechts auf dem innen sichtbaren Rand auf, dessen Abstand zur Vorderkante des GehĂ€uses so gewĂ€hlt wurde, dass das Paket aus Platine, Lichtgitter und Frontscheibe diesen Abstand exakt ausfĂŒllt.


Wir erinnern uns, der Wecker soll uns mit Musik wecken. Was liegt also nĂ€her, als dem GehĂ€use noch ein Loch fĂŒr den Schall zu spendieren? Genau, ein Loch fĂŒr den Schall und eine Bassreflexrohr fĂŒr die “Tiefen” :)

GehÀuse Mono mit Bassreflexrohr

Gemeinhin rechnet man fĂŒr den Querschnitt des Bassreflexrohrs ca. 20% der MembranflĂ€che des Lautsprechers um StrömungsgerĂ€usche zu vermeiden. Ok, das wird bei dem Verwendung findenden Lautsprecher kaum zu erwarten sein, aber allgemeine Regeln soll man ja beachten. Im gegebenen Fall verwende ich ein 32 mm-Chassis mit 28er Membran, so dass sich ein Rohrdurchmesser von 12,5 mm ergibt. Die LĂ€nge habe ich so gewĂ€hlt, dass noch ein ausreichender Abstand zur Leiterplatte bleibt, die akustischen Belange habe ich mal außen vor gelassen. FĂŒr grĂ¶ĂŸere Wege (lĂ€ngeres Rohr) ist innerhalb des kleinen GehĂ€uses ohnehin kein Platz.

Auch dieses GehĂ€use mit Lautsprecher stelle ich im STL- und RSDOC-Format zur VerfĂŒgung.

FĂŒr die Mono-Variante des Mini-Weckers habe ich noch einen etwas grĂ¶ĂŸeren Lautsprecher mit 40 mm Chassisdurchmesser gekauft, der natĂŒrlich nicht in das oben vorgestellte GehĂ€use passt.

GehĂ€use fĂŒr 40 mm Lautsprecher

Obige Kalkulationen bezĂŒglich Innendurchmesser des Bassreflexrohrs habe ich hier ebenfalls angewandt und mit 37 mm Membrandurchmesser 16,5 mm lichte Weite fĂŒr das Rohr erhalten.

Die Konstruktionsunterlagen dieses GehÀuses findet ihr hier.


Da die Audio-Library von Earle ein Stereo-Signal zur VerfĂŒgung stellt, biete ich auch noch eine Stereo-Version des GehĂ€uses an.

GehÀuse Stereo mit Bassreflexrohr

Man erkennt das etwas grĂ¶ĂŸere Bassreflexrohr. Hier habe ich unter denselben Voraussetzungen mit doppelter FlĂ€che der Membranen gerechnet, mithin hat das Rohr einen Innendurchmesser von 17,4 mm.

Bei beiden Rohren habe ich die Kanten verrundet, die Lautsprechergitter sind liebevoll von Hand entworfen und diagonal angeordnet, so dass der Druck ohne Support erfolgen kann.

Die Lautsprecheröffnungen musste ich recht weit nach hinten platzieren, damit die Lautsprecherchassis und -Magnete nicht mit den auf der Leiterplatte aufgesteckten Bauteilen interferieren. Der Abstand vom Boden ergibt sich durch das Bassreflexrohr.

Auch hier die Designfiles fĂŒr die Stereo-Variante.


Um Stereo ausgeben zu können, mĂŒssen zwei der oben vorgestellten IÂČS-VerstĂ€rker an den ESP8266 angeschlossen werden, wobei beide Schaltungen das identische Signal bekommen, aber jeder VerstĂ€rker per Konfigurationswiderstand an Anschluss SD_MODE auf die Ausgabe des entsprechenden Kanals eingestellt werden muss.

Im Auslieferungszustand ist der Widerstand mit 1 MΩ (Kennzeichnung 105) der sogenannte PullUp RLARGE, dimensioniert fĂŒr 5 V Betrieb, und legt somit fest, dass der VerstĂ€rker das kombinierte Signal fĂŒr Links und Rechts ausgibt.

MAX98357A

Der linke Kanal wird ausgewĂ€hlt, wenn SD_MODE direkt oder ĂŒber einen sehr kleinen Widerstand, z.B. 1..2 kΩ, auf High-Potential gelegt wird. Wird SD_MODE ĂŒber einen Widerstand RSMALL, fĂŒr 5 V Betrieb sind das 370 kΩ, auf High gelegt, wird der rechte Kanal ausgegeben.

    Kanal Rechts: R = 370 kΩ
    Kanal Links:    R = 2 kΩ

SD_MODE sollte nicht direkt auf High Potential gelegt werden, denn ĂŒber den Eingang SD (dritter Anschluss von Rechts im Bild oben) kann der Chip durch LOW Potential vom Microcontroller in den Shutdown Modus geschaltet werden. WĂ€re der PullUp in diesem Fall 0 Ω, wĂŒrde der Ausgang des ”C versuchen, die Versorgungsspannung auf Null zu ziehen. Nicht empfehlenswert.

Die Berechnungsgrundlagen und Dimensionierungsbeispiele findet der geneigte Leser im Datenblatt des MAX98357A.


Um den Wecker in Stereo erklingen zu lassen, ist das erste Design der Mini-Wecker Platine denkbar ungeeignet, man mĂŒsste den zweiten IÂČS-VerstĂ€rker fliegend verdrahten.

Abhilfe schafft hier die Verwendung der Stereo-Version des Mini-Weckers :-)

Ich habe mir nicht nehmen lassen, das Design nochmal zu ĂŒberarbeiten und in diesem Zuge den zweiten VerstĂ€rker vorzusehen. Hauptgrund fĂŒr die nĂ€chste Version war aber zum einen die Verwendung der etwas grĂ¶ĂŸeren 2427er LEDs. Ich hoffe, die lassen sich besser als die 2020er löten und halten lĂ€nger auf der Platine ohne kalte Lötstellen. Der zweite, ebenfalls nicht unerhebliche Grund war, dass sich der Micro-USB-Stecker nicht mehr auf dem Wemos D1 stecken lĂ€sst, wenn der IÂČS-VerstĂ€rker montiert ist, nicht eben hilfreich, wenn Änderungen an der Firmware vorgenommen und getestet werden sollen, die im Zusammenhang mit MP3 stehen.

Die Front ist nicht aufregend, lediglich die etwas grĂ¶ĂŸeren Pads fĂŒr die LEDs sind gegenĂŒber der Version V1 geĂ€ndert.

Mini-Wecker V2 Stereo

 

Auf der RĂŒckseite der schon gewohnte Wemos D1 und diesmal zwei der IÂČS-VerstĂ€rker Max98357. Damit der Zugang zum USB-Anschluss des Wemos nicht versperrt werden kann, ist zusĂ€tzlich der Anschluss fĂŒr die Spannungsversorgung nach links gewandert.

Mini-Wecker V2 Stereo

Die Verteilung der lediglich 55 statt deren 115 100 nF Kondensatoren fĂŒr die LEDs sowie die Ausstattung der Schaltung mit dem 2200 ”F Block-Elko hat sich bei Version 1 als ok erwiesen. Der Betrieb des Weckers auf dem Qi-Ladeadapter ist einwandfrei, auch die Wiedergabe der Musik macht keine Probleme, obwohl dann ja der Stromverbrauch naturgemĂ€ĂŸ höher ist. Gemessen habe ich den Strom nicht.

Nette Anekdote am Rande - zumindest im Nachhinein ;-)
Man sollte es eigentlich erwarten, aber ich habe ĂŒberhaupt nicht dran gedacht... Bei den Tests habe ich den Lautsprecher, diesmal einen echten Mini-Lautsprecher mit Magnet, Korb und Membran mit Gummisicke, einfach unten ins GehĂ€use gelegt, eine Befestigung gab es nicht dafĂŒr. Plötzlich fing der Wecker an, Zicken zu machen, die LEDs flackerten, Ă€nderten unmotiviert die Farbe und solche Sachen.

Es hat ein bisschen gedauert, bis ich drauf kam, dass der Lautsprechermagnet die EnergieĂŒbertragung durch die Luftspulen nachhaltig stört. Jetzt sitzen die Lautsprecher in anstĂ€ndiger Entfernung zum Qi-Adapter und die Probleme sind verschwunden :-)

ErwĂ€hnung sollte finden, dass der Wecker insgesamt im Betrieb recht warm wird. Das erste Lichtgitter hat sich deshalb schon etwas geworfen. Zum einen erwĂ€rmen sich die LEDs nicht unerheblich, der Wemos trĂ€gt ebenfalls dazu bei und letztlich erzeugt auch der Qi-Adapter bei dem recht hohen Stromverbrauch des Weckers etwas AbwĂ€rme. Auch der QI -Sender wird warm. TagsĂŒber ist es stĂ€rker zu merken, da dann die LEDs heller leuchten.


Die Platine ist bestĂŒckt und funktioniert wie erwartet, die Weckmelodie ertönt in Stereo und der Klang ist erstaunlich gut fĂŒr die kleinen Lautsprecher.

Mini-Wecker V2 Stereo - bestĂŒckte Platine

Rechts oben im nĂ€chsten Bild sieht man die mit einem Draht ĂŒberbrĂŒckte Pegelwandlerstufe zwischen dem Ausgang des ESP8266 und der ersten LED - Grund fĂŒr einigen Verdruss, wie ich vorgreifend erwĂ€hnen möchte :-)

Mini-Wecker V2 Stereo - bestĂŒckte Platine

Beim Zusammenbau muss darauf geachtet werden, dass die Lautsprecher komplett in die vorgesehenen Vertiefungen eingedrĂŒckt werden, ggf. muss der Ausschnitt im GehĂ€use mit einem passenden Werkzeug nachgearbeitet werden, bis die Chassis satt im Loch sitzen. Außerdem ist wichtig, dass nach vorne, Richtung Platine, ein Ausschnitt im Lautsprecherkorb zu liegen kommt, sonst passen die beiden IÂČS VerstĂ€rker nicht berĂŒhrungslos an den Chassis vorbei.

Sitz der Lautsprecher

Insgesamt ist das GehÀuse etwas knapp entworfen, man könnte zur Vereinfachung noch den einen oder anderen Millimeter gewinnen, aber es funktioniert auch so.

Damit es ĂŒberhaupt passt, mĂŒssen die SchraubklemmanschlĂŒsse der VerstĂ€rkerplatinen fĂŒr die Lautsprecher auf der Unterseite der Platinen eingesetzt werden.

Beim Anschließen der Lautsprecher an die VerstĂ€rker unbedingt auf die PolaritĂ€t der Lautsprecher achten, sonst löschen sich die tiefen Töne, die auch bei Stereo von beiden Lautsprechern wiedergegeben werden, durch gegenlĂ€ufigen Hub der Membranen aus und der Klang ist miserabel.

Der Qi-EmpfÀnger wird mit doppelseitigem Teppichklebeband auf den Boden des GehÀuses geklebt.

Qi-EmpfÀnger


Nachtrag zum Pegelwandler fĂŒr die erste LED

Nachdem ich auch bei diesem Board mit den 2427er LEDs mehrfach Probleme mit Farbspielen auf dem Display hatte und nach einigen DurchgÀngen ziemlich sicher war, alle kalten Lötstellen behoben zu haben, das Gezappel mit den Farben aber dennoch auftrat, habe ich als letzte Option doch noch die Pegelwandlerstufe zwischen ESP8266 und der ersten LED eingebaut. Und siehe da, die Probleme sind verschwunden.

Ich revidiere also meine mehrfach geĂ€ußerte Meinung, der Pegelwandler sein unnötig, zumindest fĂŒr die 2427er LEDs in diesem Design, reumĂŒtig aber ohne Scham :-)

Tipp
Wenn der Verdacht besteht, dass der Signalpegel an der ersten LED bei Verwendung eines ESP8266 als Hirn zu gering sein könnte, einfach in den Optionen der Uhr den Modus auf Mood mit schnellster Änderung (9) einstellen. Dann wird das Display quasi permanent mit neuen Daten beschickt und Pegelprobleme zeigen sich nicht nur sporadisch bei jeder neuen Minute, sondern nahezu ununterbrochen.

 


Besucherzaehler

Besucher seit
25.11.2000

>