Update Füllstandsanzeige Zisterne v1024

Kurz vor Ende des alten Jahres nochmal ein Update für die Software zum Auslesen des Zisternenfüllstandes mittels ESP8266. Die Neuerungen in dieser Version sind folgende:

  • Eine weitere Zisternenbauform (liegender Zylinder)
  • Temperatur- und Luftfeuchterfassung mittels DHT22
  • Literanzahl, Temperatur und Luftfeuchte mit in die MQTT-Topics aufgenommen

Falls ein Temperatursensor angeschlossen und aktiviert ist, werden dessen Messwerte auf der Startseite angezeigt. Die Anzeige der Temperaturdaten wird alle 60 Sekunden abgefragt und zeigt daher im ersten Moment nach Neustart keine Werte an.

Aktuell kann als Temperatursensor ein DHT22 genutzt werden (weitere Sensoren sind in Arbeit). Aktiviert wird der Sensor in der Konfiguration.

Die neuen MQTT-Topics können ebenfalls in der Konfiguration hinterlegt werden.

Die neue Zisternenbauform ist auch in der Konfiguration zu finden. Die Berechnung funktioniert bei einer runden liegenden Zisterne. Eine ovale Form wird aktuell nicht unterstützt.

Hier gibt es die aktuelle Version zum Download:
http://www.bubux.de/heimautomatisierung/ota/zisterne_aktuell.bin

Für den genauen Aufbau (Anschluss Sensor, Anschluss Diplay etc.) bitte die vorherigen Artikel beachten.

Dann euch noch einen guten Rutsch ins neue Jahr!

Gruß

Chris

33 Gedanken zu „Update Füllstandsanzeige Zisterne v1024

  • 3. Januar 2021 um 14:33 Uhr
    Permalink

    Echt ein tolles Projekt!
    Hat jemand mal probiert einen wasserdichten Ultraschall Sensor zu verwenden? Zb Typ JSN SR04T?
    Mir ist leider durch rostiges Schwitzwasser vom Betondeckel das Gitter von Aktuellen Sensor korrodiert…

    Antwort
    • 3. Januar 2021 um 15:23 Uhr
      Permalink

      Hallo Malte, habe einen JSN SR04T am laufen. Funktioniert einwandfrei.

      Kommt bei euch eigentlich das OTA automatisch?

      Grüße Stefan

      Antwort
    • 3. Januar 2021 um 19:50 Uhr
      Permalink

      Hallo Malte, ja genau diesen Sensor habe ich aktuell im Einsatz. Funktioniert prima. Hat jmd. das OTA Update schon automatisch bekommen? Bei mir kommt es irgendwie nicht an. Grüße Stefan

      Antwort
      • 3. Januar 2021 um 22:07 Uhr
        Permalink

        Hallo Stefan,

        OTA mache ich aktuell noch nicht automatisiert. Schick mir Deine MAC wenn Du es haben willst.

        Gruß
        Chris

        Antwort
        • 3. Januar 2021 um 22:40 Uhr
          Permalink

          Dankeschön 40:F5:20:29:88:F6

          Antwort
          • 8. Januar 2021 um 17:15 Uhr
            Permalink

            Hi Stefan,

            beim aktuellen Update hab ich leider irgendwas verknödelt was beim OTA-Update die gespeicherten Daten (u.a. auch für´s WLAN) schreddert. D.h. nach dem OTA ist der Sensor nicht mehr erreichbar.
            Ich hatte in der Variablendeklaration für die im EEPROM zu speichernden Daten aufgeräumt. Anscheinend zu viel…
            Daher ist das mit dem OTA wahrscheinlich keine gute Idee. Sorry.

            Gruß
            Chris

  • 10. Januar 2021 um 12:35 Uhr
    Permalink

    Hallo Chris,
    vielen Dank erst mal für die neue Version. Ich möchte gern den DHT22 Temperatursensor mit integrieren. Ich bin mir aber unsicher wie dieser angeschlossen wird. An D6 ist bei mir das OLED-Display angeschlossen. Vielleicht kann sich ja mal einer die Mühe machen, und ein Anschluss-Schema mit Display und Temperaursensor usw. hier posten.
    Das wäre der Hammer.

    Grüße
    Matthias

    Antwort
    • 12. Januar 2021 um 17:57 Uhr
      Permalink

      Hallo Matthias,

      ups, da muss ich nochmal schauen ob ich den D6 evtl. doppelt genutzt habe. Anschlussschema erstelle ich dann auch ein neues inkl dem DHT.

      Gruß
      Chris

      Antwort
  • 12. Januar 2021 um 10:58 Uhr
    Permalink

    Funktioniert prima! Ich übergebe die Daten (Liter + Füllstand) per MQTT an meinen MagicMirror (https://magicmirror.builders), der hier in diesem Fall als Dashboard auf einem 32″ TV-Monitor betrieben wird. Die Werte der Zisternenmessung werden mit einem einfachen Vergleich farblich gestaltet, d.h. neigt sich der Füllstand dem Ende zu (zehn Prozent), dann wird der Wert in „rot“ gezeigt, über 75 Prozent z.B. „grün“.
    Ich verwende übrigens den JSN SR04T-Sensor, bislang ohne Auffälligkeiten. Demnächst möchte ich das auch für meinen Heizöltank realisieren. Danke für die tolle Umsetzung an Chris!

    VG Michael

    Antwort
    • 12. Januar 2021 um 17:54 Uhr
      Permalink

      Hallo Michael,

      vielen Dank für die Blumen!
      So einen MagicMirror wollte ich auch immer mal bauen da ich auch noch einen alten Monitor hier rum stehen habe.
      Wo hast Du den Spiegel her?

      Gruß
      Chris

      Antwort
      • 19. Januar 2021 um 13:23 Uhr
        Permalink

        Hallo Chris,

        einen „Spiegel“ im eigentlichen Sinn ist es nicht. Ich nutze die tolle MagicMirror-Software mittlerweile für fünf Dashboards. Das sind preisgünstig erstandene TV-Geräte zwischen 23″ und 55″ und dienen im engeren Sinn – gerade in meiner Firma – als digitale Übersicht von Aufgaben und Arbeitsplänen, die im ICS-Kalender (Google Calendar) stehen über Wettervorhersage bis zum Countdown auf wichtige Termine.

        Und im Konferenzraum steht der große Monitor – hier läuft im abwechselnden Rhythmus eine Bilderschau unserer Projekte und Statusinformationen des Fahrzeugparks, Anwesenheitsliste der Projektmitarbeiter (ausgelesen über MAC bzw. IP-Adresse der Einbuchung ins WLAN) etc..

        In meinem (Homeoffice)-Büro steht ein Display mit Anzeige zahlreicher Daten wie u.a. Zisternenfüllstand, (demnächst Heizölvorrat), Schaltzustand und aktueller Leistungsverbrauch von Shelly-Schaltern und Shelly-Plugs, Börsenkurse meiner Zertifikate usw. Eigentlich alles viel Spielerei, aber hält mich als „Opa“ im Kopf fit.

        Die ursprüngliche Idee des MagicMirrors beruht ja auf dem halbdurchsichtigen Spiegel („Spionenglas“) – das benötige ich für meine Anforderungen nicht – ist auch ein höherer finanzieller Aufwand. Im MM-Forum gibt es zahlreiche Hinweise für entsprechende Bezugsquellen. Angesteuert wird der MM übrigens über den Raspi, das funktioniert vom Raspi Zero bis zu zu den größeren Versionen.

        VG Michael

        Antwort
  • 12. Januar 2021 um 20:27 Uhr
    Permalink

    Hallo Chris,

    zunächst erst einmal vielen Dank für das tolle Projekt. Ich habe noch ein kleines Problem mit der Übergabe der Daten an die Datenbank. Diese ist auf meiner Homepage gehostet. Dort liegt auch das angepasste PHP Script. Wenn ich den Pfad so wie in der Konfiguration eingegeben angepasst im Browser aufrufe werden Daten in die Datenbank geschrieben. Deine Syntax habe ich nicht verändert:
    Konfig:
    Server: http://www.xyz.de
    Pfad: /umwelt/zisterne_neu.php?abstand=_abstand&fuellstand=_fuellstand
    Port: 80
    Wenn ich im Browser http://www.xyz.de/umwelt/zisterne_neu.php?abstand=80.00&fuellstand=300.00
    eingebe werden die Daten geschrieben.

    xyz.de ist natürlich nicht die richtige Hompage

    Hast du noch eine Idee?
    Danke.

    Grüße,
    Tino

    Antwort
    • 15. Januar 2021 um 17:05 Uhr
      Permalink

      Hallo Tino,

      siehst Du in den Logs vom Webserver was geposted wurde?
      Hinten wird immer noch ein „&vcc=x.xx“ drangehangen. Kann es damit zusammen hängen?

      Gruß
      Chris

      Antwort
  • 15. Januar 2021 um 18:28 Uhr
    Permalink

    Hallo Chris,

    die letzte Variable sieht wirklich komisch aus. Im Log steht:
    „GET /umwelt/zisterne_neu.php?fuellstand=72.67&abstand=173&vcc=_vcc&vcc=3.00 HTTP/1.1“ 301 307
    Ich gehe davon aus, dass das Script die Spannung nicht korrekt interpretieren kann.

    Grüße
    Tino

    Antwort
  • 18. Januar 2021 um 10:35 Uhr
    Permalink

    Hallo Leute
    Ich möchte das gerne für mein Tank 6000 Liter nachbauen.
    Ich kenn mich auch ein bischen mit Arduino und Raspberry aus.
    Mit welchen Program wird die Bin Datei übertragen Arduino sw ?

    gruß
    Thomas

    Antwort
  • 19. Januar 2021 um 13:31 Uhr
    Permalink

    Hallo in die Runde,

    bei Problemen, die Software von Chris auf einen ESP aufzuspielen, empfehle ich die Software NodeMCU Py Flasher von Marcel Stör (https://github.com/marcelstoer/nodemcu-pyflasher
    ). Erleichtert das Übertragen von *.bin-Dateien ungemein.

    VG Michael

    Antwort
  • 19. Januar 2021 um 20:08 Uhr
    Permalink

    Hallo Chris,
    Ich Lese schon eine längere zeit mit, und habe dein Projekt auch am laufen.
    Top Arbeit!! Respekt!!

    Hier noch meine MAC für auto OTA 😉
    MAC – EC:FA:BC:6E:F6:A1

    Mach weiter so!
    ps: cool wäre es wenn man die Stings abändern könnte!
    zb: Zisternenfüllstand : Öl Stand usw…

    Antwort
  • 31. Januar 2021 um 12:39 Uhr
    Permalink

    Hallo
    Habe jetzt auch die neuste Version auf meinen ESP8266 und kann nur sagen das mit Flashprogramm es wirklich sehr einfach geworden ist.Ich möchte gerne die Füllstandsanzeige gerne mit meinen Victron Energy Raspberry Venus OS (Solaranlage) anzeigen lassen ,so wie ich das verstanden versteht Venus OS nur ein bestimten Port für die Daten.Da stell ich mal die Frage geht das ?

    Antwort
  • 13. Februar 2021 um 14:08 Uhr
    Permalink

    Hallo Chris

    Das Projekt ist genau das was ich brauche. Ich brauche in FHEM den Wasserstand für die automatische Bewässerung. Ich hatte so meine Probleme, bis es lief. Da war das Problem mit dem NODEMCU Firmware Programmer. Den habe ich schon mehrmals für andere Projekte genutzt. Das Flaschen hat erst funktioniert, alle Kabel entfernt hatte. Dann kam das Problem mit dem Browser, bei dem das Speichern nicht sichtbar wahr.

    Jetzt läuft es.

    Ich wollte fragen, wie sieht es mit dem Pin 6 für den DHT22 aus? Der ist ja schon vom Display belegt. Kannst du da einen anderen nehmen?

    Mein Wassertank hat eine etwas Spezielle Form. Ich kann die Form mit deinen Berechnungen leider nicht richtig berechnen. Gäbe es eine Möglichkeit den Code zu bekommen damit ich die Menge da selber berechnen kann?

    Antwort
    • 15. Februar 2021 um 19:27 Uhr
      Permalink

      Hallo Philipp,

      die beiden Punkte („Speicher“-Button und Pin 6) stehen auf der Liste für das nächste Update. Ich kam nur leider noch nicht dazu.
      Welche ausgefallene Form hat denn Dein Wassertank?

      Gruß
      Chris

      Antwort
      • 15. Februar 2021 um 19:53 Uhr
        Permalink

        Super, Danke! Dann hat mich das nur ein bisschen irritiert. Vielleicht kann man das zukünftig ja marginal umbenennen. Oder auch die 5v Spannung des Sensors anzeigen. Dann hätte es mich nicht stutzig gemacht. Habt ihr einen Donate Button irgendwo um euch etwas Trinkgeld zukommen zu lassen ?:)

        Antwort
        • 15. Februar 2021 um 19:55 Uhr
          Permalink

          Sorry. Gehörte unter deine Antwort auf meine Frage.

          Antwort
      • 15. Februar 2021 um 22:22 Uhr
        Permalink

        Hallo Chris

        Ich habe einen Flachtank https://www.rewatec.de/produkte-neu/regenwassertank/erdtanks/f-line/f-line-3000-liter-2/

        Ich habe den Tank gefüllt und die Wassermenge berechnet. Beim Arduino habe ich es so gelöst:

        t10cm=61.1; // Liter pro cm (von 0 bis 10cm)
        t20cm=63.9; // Liter pro cm (von 10 bis 20cm)
        t30cm=66.0; // Liter pro cm (von 20 bis 30cm)
        t40cm=67.5; // Liter pro cm (von 30 bis 40cm)
        t50cm=67.7; // Liter pro cm (von 40 bis 50cm)
        t60cm=68.4; // Liter pro cm (von 50 bis 60cm)
        t70cm=63.7; // Liter pro cm (von 60 bis 70cm)
        t80cm=59.8; // Liter pro cm (von 70 bis 80cm)
        t90cm=39.7; // Liter pro cm (von 80 bis 84cm)

        Antwort
  • 14. Februar 2021 um 08:21 Uhr
    Permalink

    Hallo zusammen. Vielen Dank für die tolle Anleitung. Nach viel Hantier handwerklicher Art hab ich den Sensor in Betrieb. Nun noch eine Frage. Versorgt wird der Sensor ja mit 5v allerdings meldet mir deine Software eine Versorgungsspannung von 3v. Ist das problematisch für die Messung und könnte es daran liegen, dass der NodeMCU innen im Haus verbaut ist und via Kabel verbunden ist über zirka 5m? Danke für eure Hilfe 🙂

    Antwort
    • 15. Februar 2021 um 19:25 Uhr
      Permalink

      Hallo Gino,

      da ist alles in Ordnung. Der ESP selber läuft mit nur 3,3V. Damit man den NodeMCU einfach am USB mit 5V betreiben kann (oder 5V Versorgungspannung für den ein oder anderen Sensor direkt vorhanden ist), ist auf dem Platinchen ein Spannungsregler integriert. Die angezeigte Spannung ist somit nur die vom ESP selber und mit 3V völlig in Ordnung.

      Gruß
      Chris

      Antwort
      • 15. Februar 2021 um 19:59 Uhr
        Permalink

        So. Spenden-Button selber gefunden und gespendet. Danke !!

        Antwort
  • 18. Februar 2021 um 20:40 Uhr
    Permalink

    Hallo,
    ich bekomme einfach das Display nicht zum Laufen.
    Habe ein LCD 1602 nach dem Schema angeschlossen leider ohne Erfolg, hab das Display mit einem EasyESP getestet damit hat es funktioniert.
    Hat jemand einen Tipp für mich?
    Gruß
    Christian

    Antwort
  • 21. Februar 2021 um 15:17 Uhr
    Permalink

    Hallo,
    vielen Dank für das super Projekt!
    Kennt jemand das Phänomen dass der Füllstand schwankt, ab und zu springt der Wert um 10% – 20% hoch und dann wieder auf den richtigen Wert?

    Gruß
    Christian

    Antwort
    • 22. Februar 2021 um 18:19 Uhr
      Permalink

      Hallo Christian,

      das kommt evtl. wenn der Sensor nicht genau im rechten Winkel zur Wasseroberfläche steht oder durch Reflexionen in der Zisterne.

      Gruß
      Chris

      Antwort
    • 5. März 2021 um 11:10 Uhr
      Permalink

      Hallo, ich hatte da Phänomen bei einem schlechten USB Netzteil.

      Antwort
  • 23. Februar 2021 um 08:00 Uhr
    Permalink

    Hallo Chris,

    vielen Dank für das tolle Projekt. Ich frage mich, wofür die Option „Sensor VCC an D5 angeschlossen“ in der Config gedacht ist. Planst du, in einer zukünftigen Version den Ultraschallsensor zwischen den Messungen abzuschalten? Fände ich bei längeren Messintervallen eine gute Idee.

    Hast du schon mal daran gedacht, das Projekt mit Sourcecode auf Github o.ä. zu veröffentlichen?

    Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert