Hydrom – die bessere iSpindel?
Professionelle Version des Open-Source-Projekts von einem deutschen Hersteller.
Vor gut vier Jahren gab es im brau!magazin eine Artikelserie über die iSpindel. Das war ein Dichtemessgerät, dass während der Gärung direkt aus dem Gärbottich Temperatur- und Dichtewerte an einen Server funkt. Damals war das Stand Technik und ermöglichte erstmals, immer online über den Zustand der Gärung informiert zu sein – und das ohne ständiges Öffnen des Gärbehälters und manuelle Messungen und Aufzeichnungen.
Das Software-Projekt wird zwar noch immer weiterentwickelt (aktuelle Version ist 7.2.1 vom Juli 2022), aber die Bausätze sind nicht mehr erhältlich, so dass man bei der Beschaffung der Teile auf sich gestellt ist. Eine Stückliste der elektronischen Komponenten für einen großen Versender hilft zwar, aber beim 3D-Druck des Schlittens zur Aufnahme der Platine und Batterie sind viele Nutzer ebenso überfordert wie beim Löten der SMD-Bauteile.
Bisher gab es zwei Anbieter kommerzieller Lösungen: Tilt, das „Original” (und Patentinhaber) aus den USA, und Floaty aus Frankreich. Erstere liegt mit 135 Dollar plus Steuern und Versand schon in einem schmerzlichen Preisbereich und ist nur über Bluetooth erreichbar. Floaty wird zwar zu einem ähnlichen Preis wie das Hydrom angeboten, ist aber mit seinen Schnittstellen nicht so flexibel – dazu unten mehr.
Auspacken
Das Hydrom kommt in einer hübschen bedruckten Pappschachtel in der Größe einer Hustensaftflasche. Im Innern findet sich neben dem Gerät selbst ein sechssprachiges Faltblatt mit einer (sehr) kurzen Gebrauchsanweisung. Wer mehr Anleitung braucht, muss sich das ausführliche Handbuch von der Webseite des Herstellers laden (auch in Englisch verfügbar).
Im Gegensatz zur iSpindel, deren Gehäuse aus einem der bekannten kleinen 25 mm PETlinge besteht, beeindruckt das Hydrom mit einem vergleichsweise riesigen PETling-Durchmesser von 50 mm (an der breitesten Stelle). Auch das Gewicht von 190 g trägt ebenso wie der perfekte Aufbau auf einer passgenauen Spezialplatine zum professionellen Erscheinungsbild bei.
Auf der Leiterplatte erkennt man außer dem Akku einen ESP32-SoC als Herzstück des Geräts. Seine zum Verschluss hin gerichtete Antenne soll nach Angaben des Herstellers selbst durch Stahltanks funken können – wir werden das testen. Neben etwa zwei Dutzend weiteren SMD-Bauteilen sind auf der Platine im unteren Bereich sechs Eisengewichte verklebt, deren Masse zusammen mit dem Akku für die Neigung des Gehäuses im Gärbottich sorgt.
Zur Betriebsanzeige dienen 2 LED-Paare: das erste (1) zeigt den Betriebsmodus an, das zweite (2) den Ladestatus (rot=laden, grün=voll).
Am oberen, zum Verschluss hin gerichteten Ende der Platine befinden sich 3 Bedienelemente: ein Schiebeschalter zum Trennen des Hydroms von der Stromversorgung, eine USB-C-Buchse zum Laden des Akkus und ein Taster zum Reset des Geräts. Das alles ist sehr sauber auf einer speziell geformten Leiterplatte aufgebaut, die mit leichtem Druck so in den PETling geschoben wird, dass nichts klappert oder wackelt. Im Normalfall sollte man die Karte aber nur entnehmen müssen, wenn eines fernen Tages einmal der Akku gewechselt werden sollte.
Inbetriebnahme
Zunächst muss der Lithium-Akku des Hydroms (3,6 V, 3500 mAh) aufgeladen werden. Das dauert je nach Ladezustand an einem Ein-Ampere-Lader etwa 3–4 Stunden. Er wird nach Abschrauben des Deckels an die USB-C-Buchse am Kopfteil der ausgeschalteten Hydrom-Platine angeschlossen. Das Hydrom signalisiert das Ladeende durch Farbwechsel der zunächst roten Lade-LED auf grün.
Zum Einbuchen des Hydroms in das lokale WLAN schaltet man das Hydrom ein und verbindet sich dann per Handy mit dem neu aufgespannten WLAN „Hydrom_XXXX”. Das ist wie bei den meisten IoT-Geräten etwas fummelig, führt aber letztendlich dazu, dass man die Zugangsdaten seines WLANs eintragen und das Hydrom mit ihm verbinden kann. Es erhält per DHCP eine IP-Adresse vom lokalen Router. Auch eine Betriebsart als Accesspoint ist möglich, aber nur für den seltenen Fall gedacht, dass man Hydrom und Empfänger in einer Umgebung ohne WLAN-Zugang betreibt.
Nach der Verbindung landet man auf der Homepage des Hydrom und wird durch den Installationsassistenten geführt. Hier stellt man die Sprache, das Messintervall und den Dienst ein, der die Messdaten empfangen soll. Dafür nutze ich zunächst meinen MQTT-Server und den Dienstleister Ubidots. Das Kalibrieren habe ich übersprungen, hole das aber unten nach. Zum Testen stelle ich das Messintervall auf eine Minute. Für den späteren Betrieb sollte es dann wieder auf einen wesentlich höheren Wert gesetzt werden, um Strom und Speicherplatz zu sparen (Vorgabewert ist 15 Minuten).
Kalibrierung
Alle Hydrometer dieser Bauart haben das gleiche Funktionsprinzip: ein asymmetrisch angebrachtes Gewicht innerhalb des Auftriebskörpers sorgt dafür, dass sich das Hydrometer abhängig von der Dichte des umgebenden Mediums verschieden stark neigt. Die Neigung wird von einem Lagesensor erfasst und in eine Dichte umgerechnet, die dann in verschiedenen Einheiten dargestellt werden kann (°P, SG, Oechsle…).
Da die Gewichtsverteilung der einzelnen Exemplare nicht immer 100% gleich ist, muss mindestens ein bekannter Dichtewert bestimmt und mit der internen Umrechnungstabelle abgeglichen werden. Am einfachsten lässt sich das natürlich am Nullpunkt mit reinem Wasser erledigen.
Für die Kalibrierung wird zunächst wieder das Web-Interface des Hydrom aufgerufen. Da es sich aus Energiespargründen fast die komplette Zeit in Tiefschlaf befindet, muss es über den Taster geweckt werden. Dazu wird das Hydrom mit dem Schiebeschalter eingeschaltet und danach der Taster kurz gedrückt. Die grüne LED blinkt kurz, dann leuchtet die rote LED etwa eine Sekunde auf. Sobald die grüne LED dauernd leuchtet, ist das Hydrom-Web-Interface über die IP-Adresse im WLAN erreichbar.
Die Kalibrierung wählt man im Pizza-Menü (links im Seitenkopf) aus. Ein Wassereimer mit klarem Wasser von möglichst 25°C dient als „Eichmaß”. Das Hydrom wird verschlossen, in den Wassereimer gelegt und gewartet, bis das Gerät ruhig schwimmt.
Dann wählt man bei Kalbrierung die „Klarwasser Messung” und drückt auf „start”. Nach einer Sekunde ist die Messung erledigt.
Die Hydrom-Startseite sollte jetzt einen Wert sehr nahe 0°P anzeigen. Weicht er noch ab, wiederholt man die Kalibrierung.
Um die Genauigkeit zu erhöhen, kann auch eine ausführliche siebenstufige Kalibrierung mit einer Referenzflüssigkeit und einem Referenzmessgerät durchgeführt werden – das wird ausführlich im online-Handbuch erklärt.
Dienst(e) einrichten
Als „Dienst” im Sinne von Hydrom versteht man einen Empfänger für die regelmäßig gesendeten Temperatur- und Dichte-Messwerte. Der „Dienst” wird die Werte in der Regel speichern und/oder weiterleiten und optional auch als Tabelle oder Grafik darstellen.
Das Hydrom kennt z.Zt folgende Dienste:
- Bluetooth
- Brewblox
- Brewfather
- CraftbeerPi
- Grainfather
- HTTP
- InfluxDB
- MQTT
- Prometheus
- TControl
- TCP
- Telegram
- Ubidots
- in Vorbereitung: Bierbot
Ubidots ist ein Internet-Service zum Speichern und Visualisieren von Daten in der Cloud – er ist schon von der iSpindel her bekannt. Dienste wie Brewblox, Brewfather, CraftbeerPi oder Grainfather docken an bestehende Brausteuerungen an und liefern die Hydrom-Daten als Bestandteil eines Brauprotokolls. InfluxDB, Prometheus und TControl sind Teil von Messdatensystemen, die sich lediglich um die Speicherung der Daten kümmern. Noch rudimentärer sind die Dienste TCP, HTTP und MQTT, die nur Netzwerkprotokolle zum Transport der Daten bereitstellen. Um Speicherung und Darstellung muss sich dann eine weitere nutzerdefinierte Applikation kümmern.
Es können auch mehrere Dienste gleichzeitig genutzt werden. Da bei mir bereits ein MQTT-Server für viele andere Daten des Smart Home läuft, wähle ich – neben dem Cloud-System von Ubidots – diesen als Dienst aus. Speicherung und Visualisierung der MQTT-Daten erfolgt dann über das ebenfalls schon vorhandene Node-RED und eine MariaDB-Datenbank. Die Einrichtung Ubidots und MQTT wird im Anhang im Einzelnen erklärt.
Zusätzlich zu den WLAN-basierten Diensten kann das Hydrom auch per iBeacon-Protokoll über Bluetooth abgelesen werden
Einsatz in der Praxis
Ein Bier stand bei mir nicht an, aber ein Quittenwein musste vergoren werden. Das Hydrom kam kurz vor Zugabe der Hefe in den Gärbottich, ein 60-Liter-PE-Hobbock. Die Daten wurden parallel an Ubidots und MQTT geliefert. Die Netz-Anmeldung aus dem WLAN-mäßig nur relativ schwach versorgten Keller klappte problemlos.
Hier der Verlauf, der bei Ubidots aufgezeichnet wurde:
Sehr schön zu sehen ist zu Beginn der langsame Angleich der Temperatur an die Kellerumgebung, die hier Mitte Dezember bei knapp 13°C lag. Danach wurde es wieder etwas wärmer. Der kleine Sprung in beiden Kurven nach einem Tag ist die Hefezugabe. Die beiden späteren Sprünge im Extrakt (am 23.12. und 1.1.) rühren von weiteren Zucker- bzw. Saftzugaben her. Dabei hat sich auch jeweils die Temperatur etwas erhöht.
Das Hydrom verrichtete seine Arbeit unauffällig, zuverlässig und problemlos. Die Daten wurden bei beiden Diensten unterbrechungsfrei angeliefert. Die Batterie verlor während des 3‑wöchigen Einsatzes etwa 15% an Ladung – die Kapazität dürfte also auch für extrem lange Gärungen oder mehrere Einsätze nacheinander ausreichen.
Und im Stahltank?
Einen Härtetest musste das Hydrom noch absolvieren: die Gärung in einem Edelstahltank. Dafür habe ich das Gerät in einen wassergefüllten 35-Liter-Tank von Polsinelli verfrachtet. Solange der Deckel offen war, lief die Funkverbindung problemlos. Wurde der Deckel – ein stabiles Teil aus 2mm Edelstahlblech – aufgelegt, brach die Verbindung aber ab. Alles andere hätte mich auch gewundert, denn ein bis auf kleine Spalten an den Dichtungen rundum geschlossener Stahlbehälter lässt keine Funkwellen durchdringen. Für die Gärung in einem rundum geschlossenen Stahltank ist das Hydrom also – wie alle nach diesem Prinzip arbeitenden Hydrometer – nicht geeignet.
Stahltanks mit größeren Kunststoffteilen sollen aber nach Nutzerberichten funktionieren, und auch ein Kunststoffdeckel ist kein Hindernis für die WLAN-Verbindung.
Wie genau ist das Hydrom?
Mit der einfachen Klarwasserkalibrierung erreicht das Hydrom laut Beschreibung eine Genauigkeit von 80%. Eine Abweichung um 20% klingt zwar zunächst nicht sehr genau, reicht aber völlig aus, um den Verlauf der Gärung zu beobachten und dessen Ende abzuschätzen. Mit der aufwändigeren Referenz-Kalibrierung lässt sich die Genauigkeit noch erhöhen.
Bei all dem sollte man aber nicht vergessen, dass die Messung prinzipbedingt nie so genau sein kann wie mit einem professionellen Messgerät wie einer geeichten Bierspindel oder einem Biegeschwinger-Hydrometer. Anhaftende Gasbläschen, Hopfen- oder Hefepartikel können den Absolutwert der Messung verfälschen, auch wenn das Hydrom genau kalibriert wurde.
Ein weiteres Problem ist die Temperaturkompensation der Messwerte. Bei jedem Dichte-Messgerät ist die Messung immer auf eine bestimmte Temperatur bezogen. Bewegt man sich außerhalb dieser Temperatur kann die Messung in gewissen Grenzen über Korrekturwerte berichtigt werden. Beim Hydrom ist die Beziehung zwischen Extraktgehalt, Temperatur und Neigungswinkel nicht linear und muss per Software und einem Korrekturfeld angepasst werden. Diese Arbeit scheint noch nicht ganz beendet zu sein.
Fazit
Das Hydrom ist ein robustes Messgerät für den Einsatz während der Gärung von Bier und Wein. Der Verlauf der Gärung kann gut abgeschätzt werden. Die Genauigkeit der Absolutwerte lässt sich durch Kalibrierung verbessern, muss aber prinzipbedingt immer hinterfragt werden. Der Besondere Vorteil gegenüber ähnlichen Geräten anderer Hersteller ist die große Vielfalt in der Auswahl der Aufzeichnungs-Dienste und die aktive Weiterentwicklung der Software.
Anhang
Einrichtung von Ubidots
Parallel zum MQTT lasse ich die Daten an den Cloud-Dienst Ubidots anliefern, wo man sich aus den Temperatur- und Dichtewerten direkt eine hübsche Grafik erzeugen lassen kann. Die Einrichtung eines Kontos ist für die private Nutzung kostenlos und sehr einfach über die Ubidots-Anmeldeseite erledigt.
Der kostenlosen Anmeldung fehlen einige Funktionen, die aber für unsere Anwendung nicht ins Gewicht fallen. Zum Problem werden könnte lediglich die Begrenzung der maximalen Anzahl von Werten, die man täglich anliefern darf, auf 4000. Bei 2 Messgrößen sind das pro Datenreihe also täglich 2000 Werte oder ein Messintervall von minimal knapp 2 Minuten. Das ist zwar praktisch durchaus ausreichend, denn wer braucht die Messwerte schon im Sub-Minutentakt, aber mit dem für den Test auf eine Minute gesetzten Intervall hatte ich das Limit schon überschritten.
Das weitere Vorgehen beschreibt die Hydrom-Anleitung: neues Device anlegen, Namen eintragen und den vergebenen Token kopieren. Dieser Token wird dann beim Hydrom in den Ubidots-Dienst eingetragen und dient der Identifizierung unseres Geräts, so dass später die Daten bei Ubidots in der richtigen Tabelle landen.
Bei den Dashboards kann man sich dann in wenigen Minuten ein Diagramm zusammenklicken, das den zeitlichen Verlauf von Temperatur- und Extraktgehalt darstellt:
Einrichtung von MQTT
Die Nutzung von MQTT setzt voraus, dass bereits ein MQTT-Message-Broker (im Hydrom einfach Server genannt) vorhanden ist und die Zugangsdaten bekannt sind. Server-Adresse, Port, Nutzername und Passwort werden in das Hydrom-Dienste-Formular bei MQTT eingetragen. Die Topic-Ebene ist der Basis-Name für die Variablen, die im MQTT-Baum eingetragen werden. Belässt man es hier bei „hydrom” und hat beim Gerätenamen den Standardwert „Hydrom001” auch nicht verändert, ist z.B. der Extrakgehalt dann später im MQTT unter dem Topic „hydrom/Hydrom001/gravity” zu finden.
Zum Lesen der angelieferten Daten kann man z.B. den MQTT-Explorer nutzen, was dann nach einigen empfangenen Werten so aussieht:
Um die Daten zu speichern muss ein weiterer Service, in meinem Falle Node-RED, die Daten beim MQTT-Broker abholen und in einer Datenbank speichern. Dazu dient dieser einfache Flow:
Links sind die MQTT-Eingänge für die Extrakt- und Temperaturdaten. Der Join-Knoten sorgt dafür, dass die Daten erst gespeichert werden, wenn beide Werte eingetroffen sind. Der Funktionsknoten „SQL” erzeugt aus den empfangenen Daten einen SQL-Befehl, um sie über den roten MySQL-Knoten in die Datenbank zu schreiben. Dort sieht es nach einigen Minuten in der Datenbank dann so aus:
Diesen Flow kann man jetzt noch um die Anzeige der aktuellen Daten, eines Gärdiagramms und der Akku-Ladung erweitern:
Die 3 MQTT-Eingänge im mittleren Teil liefern die Daten für Dichte, Temperatur und Akkuspannung vom MQTT-Broker an. Sie werden auf eine Stelle gerundet, bei der Akkuspannung in Prozentwerte umgerechnet und in Tacho-Anzeigen dargestellt. Damit auch beim Start des Flows schon Werte angezeigt werden, und nicht erst nach Eintreffen der Daten im MQTT (was maximal so lange dauert, wie das Intervall eingestellt ist), wird im oberen Zweig beim Start der letzte Datensatz aus der Datenbank gelesen, in einzelne Werte aufgeteilt und angezeigt.
Im Zweig unter den Anzeigen werden die aktuellen MQTT-Daten wieder in einen SQL-Befehl zusammengefasst und in die Datenbank geschrieben. Der vorletzte Zweig erzeugt das Gärdiagramm, indem gespeicherte Werte aus der Datenbank gelesen und in einem Liniendiagramm dargestellt werden. Die Werte sind stundenweise gemittelt. Das Auslesen passiert einmal beim Start des Flows und dann alle 60 Minuten oder beim Klicken des „Aktualisieren”-Knopfs.
Im letzten Zweig wird der Zeitraum für das Diagramm eingestellt. Beim Start des Flows sind das 14 Tage, was mit einem Eingabefeld geändert werden kann. Das Dashboard sieht am Ende so aus:
Den komplette Flow könnt ihr euch als Grundlage eigener Weiterentwicklungen gern hier herunterladen.
Das Testgerät wurde vom Hersteller kostenlos zur Verfügung gestellt.
Hersteller-Kontakt:
Bonorum UG
Hedwig-Müller-Str. 14
D‑27321 Thedinghausen
Web: hydrom.io
Mail: help@hydrom.io
Anleitungen:
- anleitung.hydrom.io (deutsch)
- instruction.hydrom.io (englisch)