Wie in Teil 1 Berichtet funktionierte meine Lösung ganz fein – dennoch ergaben sich beim Basteln des Produktionsversion des KleinDigs ein paar Probleme. Der DHT22 Sensor wollte nicht mehr so, wie ich will. Lange Zeit dachte ich an einen Fehler bei mir, denn die gelötete Kleinplatine sah schon etwas komplexer aus, als mein Aussensensor. Ich Teste dort, lötete hier um, nahm einen anderen DHT22 Sensor, einen anderen Wemos D1 Mini – bis ich davon Drei durch hatte und keine Verbesserung feststellte: Der Sensor funktionierte und versagte seinen Dienst, wie es ihm passte. Ich fand einfach keine Möglichkeit das sicher zu reproduzieren oder zu entfernen.
Das der Sensor nicht der Genauste war wusste ich, aber das tat nichts zur Sache. Ich lass im Netz auch über ähnliche Probleme und irgendwie nirgens eine feine Lösung. Naja, dachte ich – dann nehm ich doch mal nen neuen Sensor von Bosch, den ich immer vermieden hatte da der auch noch den Luftdruck messen kann – was ich ja gar nicht brauche. Der Kostet auch noch ganze 70 Cent mehr (2,80 zu 3,50 ungefähr) also würde es ja „eigentlich“ auch der DHT tun, – aber der will nun am Wemos einfach nicht.
Und der Tuts. Der BME280 von Bosch misst was das Zeug haelt und doch ist die Freude nur von kurzer Dauer – denn auch da erscheinen auch nach vielem Umlöten, Hardwaretesten und mich selbst mit meinen Lötkenntnissen immer wieder in Frage stellen, einfach nicht alle Werte auf meinem MQTT Broker.
Bis ich darauf komme mal im Log zu gucken ob die Daten auch tatsächlich nicht vom Sensor gemessen werden können (wovon ich die Ganze Zeit ausging als Werte fehlten) dauerte es etwas. Und faszinierend – alle Werte wurden einwandfrei gemessen. An meinen miesen Lötfertigkeiten liegt es also nicht und irgendwie waren die letzten zwei Stunden Verwirrung ganz umsonst. Es muss was am Sourcecode sein. Komischweise hatte ich bis auf die Änderung des Sensors und eben das Hinzufügen eines weiteren Messwertes (Luftdruck) nichts gemacht.
Ich lass die betreffenden Stellen mehrfach, grübelte und Verzeweifelte fast. Irgendwann kam mir der Gedanke: Der sendet nur den den ersten Wert von der Reihe die ich ausgeben will – hmmmmm …. ob da ein Timingproblem besteht und der sich bei den darauffolgenden Ausgaben verschluckt? – Probieren wir mal einen delay dazwischen. Heureka! Es geht. Faszinierend wie dieses Thema bei den KleinDingern immer näher rückt. Andauernd ist da etwas mit – man merkt, man ist etwas Hardwarenaher unterwegs ;)
Seis drum: Bis mir jemand Anderes einen besseren Lösungsvorschlag macht bleiben die delay(100) im Code und ich erfreu mich daran, das es läuft.
Der erste Proktuktionstest wurde bestanden: Die Froo fand die erste „Waschmaschine ist fertig!“ Nachricht auf ihrem Handy. Fein.
Weiter gehts mit den Gefriertruhen im Abstellraum. Da hatten wir schon mal einen ungeplanten Ausfall. Brachte uns damals zwar ein Schlemmerwochenende, weil die guten RInderstücke alle weg mussten, dennoch wüsste ich zukünftig gern früher Bescheid, wenn so etwas passiert. Dann lassen sich besser Gäste einladen – ist für jeden genug drin ;)
Es kommen also in beide Gefriertruhen Thermometer. Hab ich wieder was zu mokeln. Ihr werdet es sicherlich lesen …