FlaschOmat
Die Schaltung
Reden wir kurz über die Schaltung. Es wird etwas technisch werden. Wer nicht so tief in die Einzelheiten einsteigen will, der kann die Ausführungen auch überspringen. Für alle anderen kommen ein paar Details.

FlaschOmat V3.1

Es wurde ja schon gesagt, dass das Herz des FlaschOmaten in einem ESP32-Modul schlägt. Das Modul wird als 38-polige PCB geliefert und ist im Grunde schon ein voll funktionsfähiger Mikrocontroller mit aller notwendigen Peripherie. Dank der integrierten 3,3-V-Spannungsversorgung reicht ihm der Strom aus der USB-Buchse. Um den Verbrauch so niedrig wie möglich zu halten, läuft der ESP in unserem Fall nur mit 80 MHz statt der maximal möglichen 240 MHz. Damit braucht die ganze Schaltung im aktiven Betrieb weniger als 30 mA. Einen dedizierten Sleep-Mode gibt es nicht, weil der FlaschOmat für den Client (also das Handy) dauernd erreichbar sein muss.
Wer schon mal mit einem ESP32 gearbeitet hat, kennt vermutlich die Zicken, die manche Module machen, wenn man in den Boot-Mode wechseln will (Stichwort RTS/DTR von der UART). Um das Modul sicher in den Bootmodus zu schicken, ist am Reset-Pin ein 10-µF-Kondensator vorgesehen. Dieser verlängert den Reset-Puls, der von der seriellen Schnittstelle ausgelöst wird.
Die Module, die auf der vorherigen Seite schon beschrieben wurden, können direkt mit den passenden Pins des ESP32-Moduls verbunden werden. Die SD-Karte wird per SPI-Bus mit 20 MHz Takt beschrieben und gelesen. Das BMP180-Modul und das ADS1015-Modul werden per I2C mit 100 kHz angesteuert. Die Module bringen die notwendigen Pull-up-Widerstände auf den kleinen Platinchen auch schon mit. Die auf dem ESP32-Dev-Modul integrierte blaue LED wird benutzt, um die verschiedenen Betriebszustände anzuzeigen.
Eigentlich bringt der ESP32 schon eingebaute AD-Wandler mit, die auch direkt an den Modul-Pins zugänglich sind. Leider sind diese aber sehr ungenau und zeigen eine auffällige Nichtlinearität. Gerade in den Bereichen am Ende der Gärung wären damit nur sehr ungenaue Druckwerte ermittelbar. Details zu diesem Problem könnt ihr
hier nachlesen.
Der Drucksensor wird an Stecker J1 angeschlossen. Es handelt sich um eine aktive Messbrücke, die eine dem Druck proportionale Spannung ausgibt. Wie alle anderen Module auch, funktioniert er mit 3,3 V Betriebsspannung. Wie es sich gehört, bekommt die 3,3-V-Versorgung noch einen Puffer-Kondensator, ebenfalls mit 10 µF. Viel mehr gibt es zur Schaltung auch gar nicht zu sagen. Für die Freaks habe ich den Schaltplan für das ESP32-Dev-Modul noch in den Download-Bereich gepackt.


Module vorbereiten
Im ersten Schritt müsst ihr die Module mit passenden Stiftleisten versehen. Meist ist es günstiger, eine lange Stiftleiste zu bestellen, als mehrere kurze. Der hier verwendete Typ kann von euch mit einem kleinen Seitenschneider selbst auf die passende Länge gekürzt werden.

Es gibt drei Punkte auf die ihr achten müsst:
  • Beim BMP180 müssen die kurzen Beinchen der Stiftleiste in die Platine.
  • Beim ADS1015 und dem SD-Karten-Modul müssen die langen Beinchen in die Platine.
  • Die Stiftleisten sollten möglichst gerade im Modul stecken. Das ist besonders für das SD-Karten-Modul wichtig! Am besten lötet ihr erst mal nur einen Stift fest und kontrolliert die Ausrichtung noch einmal. Wenn alles passt, folgen die restlichen Stifte.

BMP180 Modul

ADS1015 Modul
SD Karten Modul


HINWEIS: Wenn die Stiftleisten einmal verlötet sind, bekommt ihr sie ohne eine spezielle Heißluft-Lötstation nie mehr heraus. Falls ihr beim BMP und ADS1015 versehentlich die kurze Seite im Modul stecken habt, kann man diese am Ende trotzdem noch verbauen. Ihr müsst dann aber die zu langen Pins nach dem Einlöten auf der Hauptplatine abknipsen. Fehler beim SD-Karten-Modul führen hingegen zum Komplettausfall – in diesem Fall könnt ihr direkt neues Material bestellen.

Hauptplatine vorbereiten
Auf der Hauptplatine werden neben den Modulen noch zwei Kondensatoren, C1 und C2 (Elko 10 µF), und ein Widerstand, R2 (1 kΩ), verbaut.
Die Beinchen des Widerstands werden mit einer Zange oder Pinzette auf den richtigen Abstand umgebogen, in die vorgesehenen Löcher gesteckt und verlötet. Hierbei ist die Polung egal. Bei den Kondensatoren ist das jedoch anders:
Hier muss unbedingt auf die richtige Polung geachtet werden. Auf dem Bauteil ist der Minuspol mit einem weißen Aufdruck gekennzeichnet. Auf der Platine ist die korrekte Polung ebenfalls aufgedruckt.


Nach dem Verlöten solltet ihr bei allen Bauteilen die überstehenden Anschlüsse möglichst dicht an der Platine mit einem Seitenschneider abknipsen. Sie stehen sonst später im Weg, wenn das Kabel des Drucksensors angeschlossen wird.
Nun folgt die 3-polige, um 90° gewinkelte Stiftleiste für den Drucksensor. Diese wird von der Unterseite durch die Lötaugen gesteckt und verlötet.


Die Buchsenleisten für das ESP32-Modul sind übrigens jetzt noch nicht an der Reihe. Wir kümmern uns erst einmal um die Module.

Module einlöten
Weiter geht es mit dem Einlöten der Module in die Hauptplatine. Am besten beginnt ihr mit dem SD-Karten-Modul. Wie schon beim Vorbereiten des Moduls müsst ihr auch hier unbedingt darauf achten, dass es gerade und parallel zur Hauptplatine sitzt. Nur dann trifft die Karte später durch den Gehäuseschlitz genau in den Slot. Auch hier ist es sinnvoll, erst einmal nur einen Stift zu verlöten und die Ausrichtung zu prüfen. Erst wenn alles perfekt sitzt, folgen die restlichen Stifte.

Beim ADS1015 ist die Position auf der Platine nicht ganz so entscheidend. Wer ein Auge für Ästhetik hat, geht genauso vor wie oben beschrieben. Für die Funktion ist es jedoch egal, ob das Modul leicht gekippt oder perfekt gerade sitzt.



Kommen wir nun zum BMP180. Hier gibt es für die abgewinkelte Stiftleiste keine passenden Löcher in der Platine. Dafür befinden sich vier Lötstreifen am Rand auf der Unterseite der Hauptplatine. Auf diese Streifen werden die Stifte aufgelegt (!) und vorsichtig nacheinander verlötet. Das Ganze ist ein wenig kniffliger als bei den vorangegangenen Modulen. Damit am Ende alles gut ins Gehäuse passt, muss das BMP180-Modul gerade und mittig auf den vorgesehenen Löt-Pads sitzen. Wie gewohnt wird erst der erste Pin mit etwas Lötzinn angeheftet und danach die Lage kontrolliert. Bei Bedarf kann der Pin noch einmal erhitzt und nachjustiert werden. Wenn die Position stimmt, werden die restlichen Pins fixiert.


uch mag die abgesetzte Position und die Art des Einbaus vielleicht ein bisschen seltsam vorkommen. Tatsächlich war eines der Probleme bei den frühen Prototypen, dass die Eigenerwärmung des Moduls den Temperatursensor auf dem BMP180 beeinflusst hat. Um das zu verhindern, waren folgende Maßnahmen notwendig:
  • Eine Trennwand im Gehäuse zwischen BMP180 und Prozessor einzufügen.
  • Den Bereich um das BMP-Modul großzügig mit Luftschlitzen auszustatten.
  • Den Takt des Prozessors (und damit die Verlustleistung) auf 80 MHz zu reduzieren.

Daher resultiert die abgesetzte Position auf der Hauptplatine.


Buchsenleisten einlöten

Jetzt fehlen nur noch die beiden Buchsenleisten, in die das ESP32-Modul eingesteckt wird. Da es keine 19-polige Version zu kaufen gibt, müsst ihr diese selbst auf die passende Polzahl – 19 – kürzen. Wieder ist der Seitenschneider das Werkzeug der Wahl.
Achtet auch hier darauf, dass die Buchsenleisten rechtwinklig und gerade auf der Hauptplatine sitzen, sonst lässt sich am Ende das ESP32-Modul nur schwer einsetzen. Wer einen ESD-sicheren Arbeitsplatz hat, kann das Modul vor dem Löten in die Buchsenleisten stecken und so sicherstellen, dass am Ende alles perfekt passt.



Drucksensor anschließen
Der letzte Schritt ist das Kürzen und Anschließen des Drucksensors. Er wird mit einem ca. 30 cm langen Anschlusskabel mit drei offenen Litzen geliefert. Da es ein aktiver Sensor ist (also mit eingebauter Elektronik), benötigt er eine Betriebsspannung von 3,3 V.
Im Internet wird der Sensor oft mit 5 V Betriebsspannung beworben. Hier dürft ihr euch nicht verwirren lassen: Ja, man kann ihn mit 5,0 V betreiben, aber eben auch mit 3,3 V, wie in unserem Fall. Prinzipiell kann jeder die Zuleitung so weit kürzen, wie er mag – oder auch gar nicht. Da die Leitungen relativ dick sind und kaum nennenswerter Strom fließt, wird eine Verlängerung sehr wahrscheinlich auch funktionieren. Ausprobiert habe ich das allerdings noch nicht.


An die Litzen wird noch ein passendes Gegenstück zum 3-poligen Stecker J1 gelötet. Dazu knipst ihr euch ein passendes Stück vom Rest der oben verwendeten Buchsenleiste ab und lötet die Litzen entsprechend dem Bild oben an. An
Rot kommt 3,3V Betriebsspannung, an Schwarz kommt GND und auf der Grünen Litze liegt das Signal an.

Damit wäre der praktische Teil erledigt. Ich hoffe, jeder konnte der Anleitung folgen und hat sich nicht verlötet. Wenn alles glattgelaufen ist, dann ist jetzt der Zeitpunkt für den ersten „Smoke-Test“ gekommen.

Smoke-Test
Damit wäre der praktische Teil erledigt. Ich hoffe, dass die Lötarbeiten problemlos abgelaufen sind und jeder der Anleitung bis hierher folgen konnte. Das Kabel für den Drucksensor wird erst mal nicht angeschlossen, und das Gehäuse brauchen wir auch noch nicht.
Wenn alles glattgelaufen ist, dann ist jetzt der Zeitpunkt gekommen, euren Hyper-Super-Geilomatico-FlaschOmat das erste Mal an ein USB-Netzteil zu stecken. Wir riskieren nichts und gehen erst nach bestandener Vorprüfung damit an den PC.
Nun sollte … traraaaa … nichts passieren.
Wenn die rote LED (ziemlich hell) leuchtet, dann hast du vermutlich schon mal keine gröberen Fehler beim Aufbau gemacht. Der ESP32 wird nun mit Strom versorgt und ist betriebsbereit. Wer ein Multimeter hat, kann mal die 3,3-V-Betriebsspannung an Pin 1 des ESP32-Moduls messen. Ggf. könnt ihr mit dem Finger am Spannungsregler prüfen, ob dieser nicht heiß wird.

Mikro-SD Karte vorbereiten
Die SD-Karte ist das zentrale Speichermedium für den FlaschOmat. Damit der FlaschOmat später funktioniert, ist eine eingesteckte SD-Karte mit einer bestimmten Ordnerstruktur Pflicht. Ich habe ja schon erwähnt, dass die Bedienoberfläche, alle Einstellungen, Kalibrierwerte und natürlich die Messwerte darauf gespeichert werden.
Ihr könnt alle Karten ab 1 GB bis maximal 32 GB verwenden. Wichtig ist, dass ihr die Karte am PC mit FAT32 formatiert. Andere Dateisysteme werden vom FlaschOmat nicht erkannt. Gebt beim Formatieren auch einen Namen an (ich habe meine immer „BOOT“ genannt).
Im Download-Bereich gibt es einen Ordner /gui und einen Ordner /settings. Kopiert beide auf die SD-Karte – das war’s auch schon. Steckt die Karte nun mit der Beschriftung nach oben in den Slot.