Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Wasserzähler - Version 2 - all-in-device

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Wasserzähler - Version 2 - all-in-device

Wasserzähler - Version 2 - all-in-device

Scheduled Pinned Locked Moved Hardware
wasserzählerversion 2ai on the edgecnnwater meterwater gaugeesp32ov2640neuronale netzehausautomatisierung
3.4k Posts 238 Posters 2.0m Views 230 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    jomjol
    wrote on last edited by
    #1

    Hallo zusammen,

    ich möchte in diesem Thread den Wasserzähler in der Version 2 vorstellen und diskutieren. In Version 1 waren 2 Komponeten notwendig (Hardware mit Kameraaufnahme, Docker-Server zur Auswertung). Das Zusammenspiel und die Konfiguration waren nicht immer ganz einfach.

    Daher habe ich eine Nachfolgegeneration entwickelt, bei der alles in einem all-included Device umgesetzt ist und es noch um eine Web-basierte graphische Oberfläche zur einfachen Konfiguration ergänzt.

    Das Grundprinzip basiert unverändert auf einem ESP32-Modul mit Kamera, welches regelmäßig ein Bild aufnimmt und durch Bilderkennung (Neuronale Netze, CNN) auswertet und den Zählerstand digitalisiert zur Verfügung stellt:
    29bcd786-9496-4509-9d83-53d2aa12f075-grafik.png
    5c454ff1-52e5-4a6e-8161-374ed3add53a-grafik.png

    Hier ein Eindruck der graphischen Benutzeroberfläche:

    aad50478-622e-4df1-9224-6370205904f4-grafik.png

    Die Hardware ist wieder auf Thingiverse veröffentlicht, die Software könnt ihr als Firmware oder zum selber kompilieren auf GitHub finden. Dort gibt es auch ein Wiki mit Installations- und Konfigurationsanleitung.

    • Hardware: https://www.thingiverse.com/thing:4573481

    • Software/Wiki: https://github.com/jomjol/AI-on-the-edge-device/wiki

    Ich stehe hier gerne wieder für Feedback, Fragen oder einfach zur Hilfe zur Verfügung und freue mich, wenn dieser Thread genauso intensiv genutzt wird, wie bei der Version 1 (>1k Beiträge und >22k Aufrufe).

    Beste Grüße und viel Spass beim Nachbauen,

    Jomjol

    P.S.: die neue Software ist sehr flexibel aufgebaut und kann grundsätzlich auch Bildererkennung / Neuronale Netze für andere Zwecke eingesetzt werden. Wer eine gute Idee oder Anregung hat oder bei eine Modifikation Unterstützung braucht - bitte auch gerne einfach hier posten.

    Master67M A E T W 22 Replies Last reply
    15
    • J jomjol

      Hallo zusammen,

      ich möchte in diesem Thread den Wasserzähler in der Version 2 vorstellen und diskutieren. In Version 1 waren 2 Komponeten notwendig (Hardware mit Kameraaufnahme, Docker-Server zur Auswertung). Das Zusammenspiel und die Konfiguration waren nicht immer ganz einfach.

      Daher habe ich eine Nachfolgegeneration entwickelt, bei der alles in einem all-included Device umgesetzt ist und es noch um eine Web-basierte graphische Oberfläche zur einfachen Konfiguration ergänzt.

      Das Grundprinzip basiert unverändert auf einem ESP32-Modul mit Kamera, welches regelmäßig ein Bild aufnimmt und durch Bilderkennung (Neuronale Netze, CNN) auswertet und den Zählerstand digitalisiert zur Verfügung stellt:
      29bcd786-9496-4509-9d83-53d2aa12f075-grafik.png
      5c454ff1-52e5-4a6e-8161-374ed3add53a-grafik.png

      Hier ein Eindruck der graphischen Benutzeroberfläche:

      aad50478-622e-4df1-9224-6370205904f4-grafik.png

      Die Hardware ist wieder auf Thingiverse veröffentlicht, die Software könnt ihr als Firmware oder zum selber kompilieren auf GitHub finden. Dort gibt es auch ein Wiki mit Installations- und Konfigurationsanleitung.

      • Hardware: https://www.thingiverse.com/thing:4573481

      • Software/Wiki: https://github.com/jomjol/AI-on-the-edge-device/wiki

      Ich stehe hier gerne wieder für Feedback, Fragen oder einfach zur Hilfe zur Verfügung und freue mich, wenn dieser Thread genauso intensiv genutzt wird, wie bei der Version 1 (>1k Beiträge und >22k Aufrufe).

      Beste Grüße und viel Spass beim Nachbauen,

      Jomjol

      P.S.: die neue Software ist sehr flexibel aufgebaut und kann grundsätzlich auch Bildererkennung / Neuronale Netze für andere Zwecke eingesetzt werden. Wer eine gute Idee oder Anregung hat oder bei eine Modifikation Unterstützung braucht - bitte auch gerne einfach hier posten.

      Master67M Offline
      Master67M Offline
      Master67
      wrote on last edited by
      #2

      @jomjol ....... was für ein Zufall, ich habe mir Gestern diese Seite https://tutorials-raspberrypi.de/raspberry-pi-objekterkennung-mittels-tensorflow-und-kamera/ mal angeschaut weil ich noch zwei Raspberry Pis hierrum liegen habe, aber dein Projekt erscheint mir Sinnvoller als Äpfel und Birnen zu "Scannen" 😉

      Nun meine Frage, siehst du ein Problem das mit einem Pi und einer Webcam (Auflösung 720P) zu realisieren und läuft dort dann auch dein Docker Container?

      Gruß Master67

      J 1 Reply Last reply
      1
      • Master67M Master67

        @jomjol ....... was für ein Zufall, ich habe mir Gestern diese Seite https://tutorials-raspberrypi.de/raspberry-pi-objekterkennung-mittels-tensorflow-und-kamera/ mal angeschaut weil ich noch zwei Raspberry Pis hierrum liegen habe, aber dein Projekt erscheint mir Sinnvoller als Äpfel und Birnen zu "Scannen" 😉

        Nun meine Frage, siehst du ein Problem das mit einem Pi und einer Webcam (Auflösung 720P) zu realisieren und läuft dort dann auch dein Docker Container?

        J Offline
        J Offline
        jomjol
        wrote on last edited by
        #3

        @Master67 sagte in Wasserzähler - Version 2 - all-in-device:

        ine Frage, siehst du ein Problem das mit einem Pi und einer Webcam (Auflösung 720P) zu realisieren und läuft dort dann auch dein Dock

        Also das geht auch mit einem Raspberry PI. Der Docker-Container von Version 1 läuft dort - es gibt auf docker einen speziellen Container für den Raspberry. Dort ist nur noch keine direkte Ansteuerung für die Pi-Kamera drin. Das geht aber definitiv auch, weil ich es auch schonmal implementiert habe.

        Master67M 1 Reply Last reply
        0
        • J jomjol

          Hallo zusammen,

          ich möchte in diesem Thread den Wasserzähler in der Version 2 vorstellen und diskutieren. In Version 1 waren 2 Komponeten notwendig (Hardware mit Kameraaufnahme, Docker-Server zur Auswertung). Das Zusammenspiel und die Konfiguration waren nicht immer ganz einfach.

          Daher habe ich eine Nachfolgegeneration entwickelt, bei der alles in einem all-included Device umgesetzt ist und es noch um eine Web-basierte graphische Oberfläche zur einfachen Konfiguration ergänzt.

          Das Grundprinzip basiert unverändert auf einem ESP32-Modul mit Kamera, welches regelmäßig ein Bild aufnimmt und durch Bilderkennung (Neuronale Netze, CNN) auswertet und den Zählerstand digitalisiert zur Verfügung stellt:
          29bcd786-9496-4509-9d83-53d2aa12f075-grafik.png
          5c454ff1-52e5-4a6e-8161-374ed3add53a-grafik.png

          Hier ein Eindruck der graphischen Benutzeroberfläche:

          aad50478-622e-4df1-9224-6370205904f4-grafik.png

          Die Hardware ist wieder auf Thingiverse veröffentlicht, die Software könnt ihr als Firmware oder zum selber kompilieren auf GitHub finden. Dort gibt es auch ein Wiki mit Installations- und Konfigurationsanleitung.

          • Hardware: https://www.thingiverse.com/thing:4573481

          • Software/Wiki: https://github.com/jomjol/AI-on-the-edge-device/wiki

          Ich stehe hier gerne wieder für Feedback, Fragen oder einfach zur Hilfe zur Verfügung und freue mich, wenn dieser Thread genauso intensiv genutzt wird, wie bei der Version 1 (>1k Beiträge und >22k Aufrufe).

          Beste Grüße und viel Spass beim Nachbauen,

          Jomjol

          P.S.: die neue Software ist sehr flexibel aufgebaut und kann grundsätzlich auch Bildererkennung / Neuronale Netze für andere Zwecke eingesetzt werden. Wer eine gute Idee oder Anregung hat oder bei eine Modifikation Unterstützung braucht - bitte auch gerne einfach hier posten.

          A Offline
          A Offline
          aandekant
          wrote on last edited by
          #4

          Entschuldigen Sie mein schlechtes Deutsch. Ich komme aus Belgien.

          Ich habe einen alten Stromzähler mit einem zusätzlichen Glasfenster davor. (7-8cm vor dem Zähler) Ich habe die Standardmethode versucht, diesen Zähler mit einem optischen Sensor auf der rotierenden Scheibe abzulesen, aber mit der Doppelreflexion ist das sehr schwierig.

          Dann habe ich Ihre wunderbare Lösung gefunden. Ich konnte die Software (Docker-Version) vor einigen Wochen ausführen. Aber ich habe abgebrochen, als die Ausgabebilder sehr verzerrt waren. Wahrscheinlich stimmt etwas mit meine Ausrichtungsreferenzen nicht.

          IMG_20200731_211115.jpg (älteres Bild, es funktioniert besser, wenn die Kamera auf das erste Glas aufgesetzt wird)

          Bevor ich mehr Zeit darauf verwende: Halten Sie es für möglich, dass Ihre Lösung etwas von diesem Bild lesen könnte? Ein Problem, das ich sehe, ist, dass der Text weiß auf schwarz und nicht schwarz auf weiß ist?

          refAfbeelding202008161605.jpg

          Wenn ich die Kamera höher stelle, fällt die Reflexion der LED in die Ziffern. Bei dem rgb-Streifen hatte ich das Problem, dass die erste LED grün blieb. ähnlich wie bei https://arduino.stackexchange.com/questions/32017/esp8266-nodemcu-first-ws2812-led-lights-up-green. Das Bild war aber besser.

          J EisbaeeerE 2 Replies Last reply
          1
          • J jomjol

            @Master67 sagte in Wasserzähler - Version 2 - all-in-device:

            ine Frage, siehst du ein Problem das mit einem Pi und einer Webcam (Auflösung 720P) zu realisieren und läuft dort dann auch dein Dock

            Also das geht auch mit einem Raspberry PI. Der Docker-Container von Version 1 läuft dort - es gibt auf docker einen speziellen Container für den Raspberry. Dort ist nur noch keine direkte Ansteuerung für die Pi-Kamera drin. Das geht aber definitiv auch, weil ich es auch schonmal implementiert habe.

            Master67M Offline
            Master67M Offline
            Master67
            wrote on last edited by
            #5

            @jomjol sagte in Wasserzähler - Version 2 - all-in-device:

            @Master67 sagte in Wasserzähler - Version 2 - all-in-device:
            Also das geht auch mit einem Raspberry PI. Der Docker-Container von Version 1 läuft dort - es gibt auf docker einen speziellen Container für den Raspberry. Dort ist nur noch keine direkte Ansteuerung für die Pi-Kamera drin. Das geht aber definitiv auch, weil ich es auch schonmal implementiert habe.

            Danke dir, dann versuche ich mich mal an Version 1, weil ich nicht wüsste wie ich die (USB) Cam in den Docker Container implementieren kann.

            Gruß Master67

            1 Reply Last reply
            0
            • J jomjol

              Hallo zusammen,

              ich möchte in diesem Thread den Wasserzähler in der Version 2 vorstellen und diskutieren. In Version 1 waren 2 Komponeten notwendig (Hardware mit Kameraaufnahme, Docker-Server zur Auswertung). Das Zusammenspiel und die Konfiguration waren nicht immer ganz einfach.

              Daher habe ich eine Nachfolgegeneration entwickelt, bei der alles in einem all-included Device umgesetzt ist und es noch um eine Web-basierte graphische Oberfläche zur einfachen Konfiguration ergänzt.

              Das Grundprinzip basiert unverändert auf einem ESP32-Modul mit Kamera, welches regelmäßig ein Bild aufnimmt und durch Bilderkennung (Neuronale Netze, CNN) auswertet und den Zählerstand digitalisiert zur Verfügung stellt:
              29bcd786-9496-4509-9d83-53d2aa12f075-grafik.png
              5c454ff1-52e5-4a6e-8161-374ed3add53a-grafik.png

              Hier ein Eindruck der graphischen Benutzeroberfläche:

              aad50478-622e-4df1-9224-6370205904f4-grafik.png

              Die Hardware ist wieder auf Thingiverse veröffentlicht, die Software könnt ihr als Firmware oder zum selber kompilieren auf GitHub finden. Dort gibt es auch ein Wiki mit Installations- und Konfigurationsanleitung.

              • Hardware: https://www.thingiverse.com/thing:4573481

              • Software/Wiki: https://github.com/jomjol/AI-on-the-edge-device/wiki

              Ich stehe hier gerne wieder für Feedback, Fragen oder einfach zur Hilfe zur Verfügung und freue mich, wenn dieser Thread genauso intensiv genutzt wird, wie bei der Version 1 (>1k Beiträge und >22k Aufrufe).

              Beste Grüße und viel Spass beim Nachbauen,

              Jomjol

              P.S.: die neue Software ist sehr flexibel aufgebaut und kann grundsätzlich auch Bildererkennung / Neuronale Netze für andere Zwecke eingesetzt werden. Wer eine gute Idee oder Anregung hat oder bei eine Modifikation Unterstützung braucht - bitte auch gerne einfach hier posten.

              E Offline
              E Offline
              Eggs
              wrote on last edited by
              #6

              @jomjol

              Moin und danke für die Arbeit,

              aber irgendwie stelle ich mich wohl zu blöd an...

              Kann ich aus dem github-Ordner Code die firmware.bin mit ESP-Flasher auf das Modul schieben und danach das WLAN konfigurieren (ähnlich Tasmota bei Sonoffs) oder muss ich die Zugangsdaten vorher irgendwo hinterlegen? Habe auch versucht, die Software in Arduino zu öffnen, der will will aber eine *.ino...

              Im Voraus dankende Grüße für die Erleuchtung
              Dirk

              H J 2 Replies Last reply
              0
              • E Eggs

                @jomjol

                Moin und danke für die Arbeit,

                aber irgendwie stelle ich mich wohl zu blöd an...

                Kann ich aus dem github-Ordner Code die firmware.bin mit ESP-Flasher auf das Modul schieben und danach das WLAN konfigurieren (ähnlich Tasmota bei Sonoffs) oder muss ich die Zugangsdaten vorher irgendwo hinterlegen? Habe auch versucht, die Software in Arduino zu öffnen, der will will aber eine *.ino...

                Im Voraus dankende Grüße für die Erleuchtung
                Dirk

                H Offline
                H Offline
                hike
                wrote on last edited by
                #7

                @jomol
                Toll geschriebener Code. Es macht Spaß so was zu lesen und daran zu lernen.

                Frage: Das Entwicklungssystem ist PlatformIO ?

                Ich habe leider kaum Erfahrungen damit.
                Gibts eine Kurzanleitung zum Import dieses Projekts?
                Hike

                J 1 Reply Last reply
                0
                • E Eggs

                  @jomjol

                  Moin und danke für die Arbeit,

                  aber irgendwie stelle ich mich wohl zu blöd an...

                  Kann ich aus dem github-Ordner Code die firmware.bin mit ESP-Flasher auf das Modul schieben und danach das WLAN konfigurieren (ähnlich Tasmota bei Sonoffs) oder muss ich die Zugangsdaten vorher irgendwo hinterlegen? Habe auch versucht, die Software in Arduino zu öffnen, der will will aber eine *.ino...

                  Im Voraus dankende Grüße für die Erleuchtung
                  Dirk

                  J Offline
                  J Offline
                  jomjol
                  wrote on last edited by
                  #8

                  @Eggs sagte in Wasserzähler - Version 2 - all-in-device:

                  @jomjol

                  Moin und danke für die Arbeit,

                  aber irgendwie stelle ich mich wohl zu blöd an...

                  Kann ich aus dem github-Ordner Code die firmware.bin mit ESP-Flasher auf das Modul schieben und danach das WLAN konfigurieren (ähnlich Tasmota bei Sonoffs) oder muss ich die Zugangsdaten vorher irgendwo hinterlegen? Habe auch versucht, die Software in Arduino zu öffnen, der will will aber eine *.ino...

                  Im Voraus dankende Grüße für die Erleuchtung
                  Dirk

                  Hallo Dirk,
                  ganz so einfach wie bei Sonoffs ist es (noch) nicht, aber fast 😊 .

                  Die Firmware besteht aus drei Teilen (Bootloader, Partitioninfo und Firmware) und die müssen alle drei geflasht werden - das geht aber mit dem Tool von Espressif eigentlich reicht einfach - ist hier detailliert beschrieben: https://github.com/jomjol/AI-on-the-edge-device/wiki/Installation

                  Dort findest du auch den Link zum Flashtool und eine Anleitung zur Bedienung. Das Wlan wird über eine Dateil auf der SD-Karte konfiguriert. Dort gibt es die wlan.ini (im Root Verzeichniss) - dort einfach SSDI und Passwort eintragen. Ist auch im o.g. Link nochmal beschrieben.

                  Arduino geht nicht, da der Code in PlattformIO mit ESP-IDF erstellt ist und nicht die Arduino Bibliotheken verwendet.

                  Dann sollte es funtkionieren und du kannst die Konfiguration an deinen Wasserzähler vornehmen. Details findest du hier: https://github.com/jomjol/AI-on-the-edge-device/wiki/Configuration und hier https://github.com/jomjol/AI-on-the-edge-device/wiki/Graphical-configuration.

                  Viel Erfolg und gerne bei Fragen melden.

                  Beste Grüße,
                  jomjol

                  E 1 Reply Last reply
                  1
                  • H hike

                    @jomol
                    Toll geschriebener Code. Es macht Spaß so was zu lesen und daran zu lernen.

                    Frage: Das Entwicklungssystem ist PlatformIO ?

                    Ich habe leider kaum Erfahrungen damit.
                    Gibts eine Kurzanleitung zum Import dieses Projekts?
                    Hike

                    J Offline
                    J Offline
                    jomjol
                    wrote on last edited by
                    #9

                    @hike sagte in Wasserzähler - Version 2 - all-in-device:

                    @jomol
                    Toll geschriebener Code. Es macht Spaß so was zu lesen und daran zu lernen.

                    Frage: Das Entwicklungssystem ist PlatformIO ?

                    Ich habe leider kaum Erfahrungen damit.
                    Gibts eine Kurzanleitung zum Import dieses Projekts?
                    Hike

                    Hallo Hike,

                    erstmal danke für dein positive Feedback. Ja - der Code ist in PlattformIO geschrieben und kompiliert. Eine detailierte Anleitung habe ich nicht - ist mein ersten Projekt in PlattformIO.
                    Ich habe alles in Windows10 aufgesetzt (ja Asche auf mein Haupt 😁 :-)). Ich programmiere alles im Editor VSCode und habe über das Plugin "PlattformIO IDE" PlattformIO installiert. Dort musst du dann das "Espressif 32" Framework installierte. Letzteres ist etwas tricky in Windows gewesen.

                    Das ganze geht auch unter Linux - temporär hatte ich die Entwicklung auch auf einem virtualisierten Linux (ich verwende Ubuntu) am Laufen, dort geht die Installation etwas leichter. Wenn ich es nochmal installiere, dann mache ich da mal ein Tutorial draus.

                    Gruß,
                    jomjol

                    coyoteC H SegwayS 3 Replies Last reply
                    0
                    • J jomjol

                      @hike sagte in Wasserzähler - Version 2 - all-in-device:

                      @jomol
                      Toll geschriebener Code. Es macht Spaß so was zu lesen und daran zu lernen.

                      Frage: Das Entwicklungssystem ist PlatformIO ?

                      Ich habe leider kaum Erfahrungen damit.
                      Gibts eine Kurzanleitung zum Import dieses Projekts?
                      Hike

                      Hallo Hike,

                      erstmal danke für dein positive Feedback. Ja - der Code ist in PlattformIO geschrieben und kompiliert. Eine detailierte Anleitung habe ich nicht - ist mein ersten Projekt in PlattformIO.
                      Ich habe alles in Windows10 aufgesetzt (ja Asche auf mein Haupt 😁 :-)). Ich programmiere alles im Editor VSCode und habe über das Plugin "PlattformIO IDE" PlattformIO installiert. Dort musst du dann das "Espressif 32" Framework installierte. Letzteres ist etwas tricky in Windows gewesen.

                      Das ganze geht auch unter Linux - temporär hatte ich die Entwicklung auch auf einem virtualisierten Linux (ich verwende Ubuntu) am Laufen, dort geht die Installation etwas leichter. Wenn ich es nochmal installiere, dann mache ich da mal ein Tutorial draus.

                      Gruß,
                      jomjol

                      coyoteC Offline
                      coyoteC Offline
                      coyote
                      Most Active
                      wrote on last edited by
                      #10

                      Hey @jomjol vielen Dank für deine V2 Version.
                      Habe heute mal probiert es aufzusetzen, leider scheitere ich am Referenzbild🙄
                      Irgendwie bin ich gerade zu blöd dazu. Der ESP ist im WLAN und die HTML Seiten werden angezeigt.
                      Jetzt möchte ich eigentlich ein neues Referenzbild erstellen, geht aber nicht. Beim ersten Test Start wurde mal ein Bild gemacht von meinen Fingern, dass wird jetzt als Referenzbild angezeigt, möchte ich ein neues erstellen, wird immer wieder dieses Bild angezeigt.
                      Löschen unter File Server kann ich es auch nicht, weiß jetzt gerade die Fehlermeldung nicht aus dem Kopf, war aber was mit "Header too Long". Gibt ja auch schon ein Issue dafür und ja nutze Chrome.
                      Habe noch ein anderes Problem mit meinem zweiten ESP32 der die ganze Zeit mit der v1 lief, aber dazu später. Erst möchte ich die v2 jetzt mal am laufen haben😀

                      M 1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        michaeljoos
                        wrote on last edited by
                        #11

                        Hi jomjol

                        Habe unterdessen noch weitergetestet....irgendwie hat es mich jetzt so richtig gepackt 😁
                        --> Habe die 2 Issues auf Github eröffnet

                        Wegen der Error-Meldungen im Chrome-Browser: Mir hat schlussendlich geholfen, den Browser zurückszusetzen (Cache löschen, alle Cookies, löschen...). Wieso auch immer.
                        Nun...bevor ich das aber bemerkt habe, hatte ich bereits einige Stunden versucht (bin eben auch nicht wirklich ein Experte....) dem Problem in den HTML-Dateien auf die Spur zu kommen und dabei das Script "includeHTML();" verwendet um externe HTML-Daten einzubinden. Das hat im Chrome ebenfalls geholfen. Hab dann aber auch noch ein wenig am Layout rungewerkelt:

                        bc8d329b-c8ac-43a6-984f-4ea1a692a6f8-image.png

                        Ich stelle meine HTML-Dateien einfach mal hier rein, dann kann jeder selbst entscheiden 😎 Du kannst diese natürlich auch für das Projekt weiterverwenden wenn du willst.

                        html.zip

                        Noch eine letzte Frage: Das "DeleteAll"-Feature funktioniert tiptop, danke! Bei vielen Dateien dauert es aber ziemlich lange und man weiss nicht ob was geht oder der ESP32 abgeschmiert ist. Eine Progressbar wäre da super. Weiss aber nicht ob das machbar ist? Zudem wäre nach erfolgreichem löschen noch ein "Page Refresh" gut so wie beim löschen einer einzelnen Datei.

                        Gruss
                        Michael

                        coyoteC 1 Reply Last reply
                        0
                        • M michaeljoos

                          Hi jomjol

                          Habe unterdessen noch weitergetestet....irgendwie hat es mich jetzt so richtig gepackt 😁
                          --> Habe die 2 Issues auf Github eröffnet

                          Wegen der Error-Meldungen im Chrome-Browser: Mir hat schlussendlich geholfen, den Browser zurückszusetzen (Cache löschen, alle Cookies, löschen...). Wieso auch immer.
                          Nun...bevor ich das aber bemerkt habe, hatte ich bereits einige Stunden versucht (bin eben auch nicht wirklich ein Experte....) dem Problem in den HTML-Dateien auf die Spur zu kommen und dabei das Script "includeHTML();" verwendet um externe HTML-Daten einzubinden. Das hat im Chrome ebenfalls geholfen. Hab dann aber auch noch ein wenig am Layout rungewerkelt:

                          bc8d329b-c8ac-43a6-984f-4ea1a692a6f8-image.png

                          Ich stelle meine HTML-Dateien einfach mal hier rein, dann kann jeder selbst entscheiden 😎 Du kannst diese natürlich auch für das Projekt weiterverwenden wenn du willst.

                          html.zip

                          Noch eine letzte Frage: Das "DeleteAll"-Feature funktioniert tiptop, danke! Bei vielen Dateien dauert es aber ziemlich lange und man weiss nicht ob was geht oder der ESP32 abgeschmiert ist. Eine Progressbar wäre da super. Weiss aber nicht ob das machbar ist? Zudem wäre nach erfolgreichem löschen noch ein "Page Refresh" gut so wie beim löschen einer einzelnen Datei.

                          Gruss
                          Michael

                          coyoteC Offline
                          coyoteC Offline
                          coyote
                          Most Active
                          wrote on last edited by
                          #12

                          @michaeljoos sieht schick aus die Oberfläche👍
                          Hast du gerade ne Idee, da du ja schon am rumprobieren bist, warum ich kein Ref Bild erstellen kann?

                          J 1 Reply Last reply
                          0
                          • coyoteC coyote

                            Hey @jomjol vielen Dank für deine V2 Version.
                            Habe heute mal probiert es aufzusetzen, leider scheitere ich am Referenzbild🙄
                            Irgendwie bin ich gerade zu blöd dazu. Der ESP ist im WLAN und die HTML Seiten werden angezeigt.
                            Jetzt möchte ich eigentlich ein neues Referenzbild erstellen, geht aber nicht. Beim ersten Test Start wurde mal ein Bild gemacht von meinen Fingern, dass wird jetzt als Referenzbild angezeigt, möchte ich ein neues erstellen, wird immer wieder dieses Bild angezeigt.
                            Löschen unter File Server kann ich es auch nicht, weiß jetzt gerade die Fehlermeldung nicht aus dem Kopf, war aber was mit "Header too Long". Gibt ja auch schon ein Issue dafür und ja nutze Chrome.
                            Habe noch ein anderes Problem mit meinem zweiten ESP32 der die ganze Zeit mit der v1 lief, aber dazu später. Erst möchte ich die v2 jetzt mal am laufen haben😀

                            M Offline
                            M Offline
                            michaeljoos
                            wrote on last edited by
                            #13

                            @coyote Mmhh, bin mir auch nicht wirklich sicher. Aber versuch doch trotzdem mal mit Firefox die Datei reference.jpg im Fileserver zu löschen und dann das Referenz-Bild neu zu generieren. Im Firefox sollte das alles ohne Error-Meldungen funktionieren.

                            coyoteC 1 Reply Last reply
                            0
                            • M michaeljoos

                              @coyote Mmhh, bin mir auch nicht wirklich sicher. Aber versuch doch trotzdem mal mit Firefox die Datei reference.jpg im Fileserver zu löschen und dann das Referenz-Bild neu zu generieren. Im Firefox sollte das alles ohne Error-Meldungen funktionieren.

                              coyoteC Offline
                              coyoteC Offline
                              coyote
                              Most Active
                              wrote on last edited by coyote
                              #14

                              @jomjol bin einen kleinen Schritt weiter. Habe jetzt mit Firefox die raw.jpg gelöscht, dass war das Bild, dass immer angezeigt wurde. Wann wird dieses erstellt bzw. kann ich es neu erstellen?

                              Edit: Ok, jetzt hab ich den kompletten Inhalt von img_tmp gelöscht, dummerweise auch die "leer.txt", nach reboot geht dann nix mehr😁 Ich mach mal die SD Karte neu, dann geht's weiter

                              J 1 Reply Last reply
                              0
                              • J jomjol

                                @hike sagte in Wasserzähler - Version 2 - all-in-device:

                                @jomol
                                Toll geschriebener Code. Es macht Spaß so was zu lesen und daran zu lernen.

                                Frage: Das Entwicklungssystem ist PlatformIO ?

                                Ich habe leider kaum Erfahrungen damit.
                                Gibts eine Kurzanleitung zum Import dieses Projekts?
                                Hike

                                Hallo Hike,

                                erstmal danke für dein positive Feedback. Ja - der Code ist in PlattformIO geschrieben und kompiliert. Eine detailierte Anleitung habe ich nicht - ist mein ersten Projekt in PlattformIO.
                                Ich habe alles in Windows10 aufgesetzt (ja Asche auf mein Haupt 😁 :-)). Ich programmiere alles im Editor VSCode und habe über das Plugin "PlattformIO IDE" PlattformIO installiert. Dort musst du dann das "Espressif 32" Framework installierte. Letzteres ist etwas tricky in Windows gewesen.

                                Das ganze geht auch unter Linux - temporär hatte ich die Entwicklung auch auf einem virtualisierten Linux (ich verwende Ubuntu) am Laufen, dort geht die Installation etwas leichter. Wenn ich es nochmal installiere, dann mache ich da mal ein Tutorial draus.

                                Gruß,
                                jomjol

                                H Offline
                                H Offline
                                hike
                                wrote on last edited by
                                #15

                                @jomjol
                                danke für die Information. Ich habe mich mal dumm gestellt und versucht das Projekt in PlatformIO zu importieren.
                                Hat gegen alle Erwartungen auf Anhieb geklappt.

                                Kurze Beschreibung:

                                1. Download als zip AI-on-the-edge-device-master
                                  1.1 extrahieren mit 7-zip
                                  1.2 umbenennen AI-on-the-edge-device

                                1.2 in PlatformIO Projekt öffnen, geht leider nicht, es fehlt platformio.ini
                                1.2.1 in Code exitiert platformio.ini, man öffnet Code
                                1.2.2 voila, Projekt ist importiert

                                2.1 Ich hab mich mal dumm gestellt und "build" ausgelöst
                                2.2 Ein längerer Übersetzungslauf wird ausgeführt
                                Es gibt ein paar Warnungen
                                Ergebnis: Archiving .pio\build\esp32cam\lib89c\libjomjol_image_proc.a
                                Archiving .pio\build\esp32cam\libe37\libjomjol_fileserver_ota.a
                                Linking .pio\build\esp32cam\firmware.elf
                                Retrieving maximum program size .pio\build\esp32cam\firmware.elf
                                Building .pio\build\esp32cam\firmware.bin
                                Checking size .pio\build\esp32cam\firmware.elf
                                Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
                                RAM: [== ] 22.7% (used 74412 bytes from 327680 bytes)
                                Flash: [========= ] 85.9% (used 1671313 bytes from 1945600 bytes)
                                esptool.py v2.6
                                ================================== [SUCCESS] Took 212.56 seconds ==================================
                                2.3 serial Monitor über Symbol Stecker in Symbolleiste geöffnet
                                2.3.1 kontrolliere ob 115200 baud : Miniterm on COM6 115200,8,N,1 ---
                                2.3.2 Alte Software reboots , ok
                                3.0 upload:
                                3.1 Verbinde Masse mit GPIO0 (3.Pin von rechts auf 3,3V Seite
                                3.2 5V anlegen, ..waiting for download
                                3.3 upload über Symbol ->
                                3.3.1 erfolgreich geflashed
                                3.4 SD-Karte mit dem Inhalt aus sd-card gefüllt und
                                4.0 hurra, es läuft
                                4.1 IP aus dem Protokoll entnommen
                                4.2 kann auf die Web-OberFläche zugreifen.

                                Selten so viel Glück gehabt

                                J 1 Reply Last reply
                                0
                                • coyoteC coyote

                                  @jomjol bin einen kleinen Schritt weiter. Habe jetzt mit Firefox die raw.jpg gelöscht, dass war das Bild, dass immer angezeigt wurde. Wann wird dieses erstellt bzw. kann ich es neu erstellen?

                                  Edit: Ok, jetzt hab ich den kompletten Inhalt von img_tmp gelöscht, dummerweise auch die "leer.txt", nach reboot geht dann nix mehr😁 Ich mach mal die SD Karte neu, dann geht's weiter

                                  J Offline
                                  J Offline
                                  jomjol
                                  wrote on last edited by
                                  #16

                                  @coyote sagte in Wasserzähler - Version 2 - all-in-device:

                                  @jomjol bin einen kleinen Schritt weiter. Habe jetzt mit Firefox die raw.jpg gelöscht, dass war das Bild, dass immer angezeigt wurde. Wann wird dieses erstellt bzw. kann ich es neu erstellen?

                                  Edit: Ok, jetzt hab ich den kompletten Inhalt von img_tmp gelöscht, dummerweise auch die "leer.txt", nach reboot geht dann nix mehr😁 Ich mach mal die SD Karte neu, dann geht's weiter

                                  Das raw.jpg wird gemacht, sobald ein automatischer Durchlauf stattfindet --> Sollte noch einen Button zum manuellen Aufzeichnen von raw.jpg einfügen --> habe einen issue erstellt.

                                  1 Reply Last reply
                                  0
                                  • H hike

                                    @jomjol
                                    danke für die Information. Ich habe mich mal dumm gestellt und versucht das Projekt in PlatformIO zu importieren.
                                    Hat gegen alle Erwartungen auf Anhieb geklappt.

                                    Kurze Beschreibung:

                                    1. Download als zip AI-on-the-edge-device-master
                                      1.1 extrahieren mit 7-zip
                                      1.2 umbenennen AI-on-the-edge-device

                                    1.2 in PlatformIO Projekt öffnen, geht leider nicht, es fehlt platformio.ini
                                    1.2.1 in Code exitiert platformio.ini, man öffnet Code
                                    1.2.2 voila, Projekt ist importiert

                                    2.1 Ich hab mich mal dumm gestellt und "build" ausgelöst
                                    2.2 Ein längerer Übersetzungslauf wird ausgeführt
                                    Es gibt ein paar Warnungen
                                    Ergebnis: Archiving .pio\build\esp32cam\lib89c\libjomjol_image_proc.a
                                    Archiving .pio\build\esp32cam\libe37\libjomjol_fileserver_ota.a
                                    Linking .pio\build\esp32cam\firmware.elf
                                    Retrieving maximum program size .pio\build\esp32cam\firmware.elf
                                    Building .pio\build\esp32cam\firmware.bin
                                    Checking size .pio\build\esp32cam\firmware.elf
                                    Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
                                    RAM: [== ] 22.7% (used 74412 bytes from 327680 bytes)
                                    Flash: [========= ] 85.9% (used 1671313 bytes from 1945600 bytes)
                                    esptool.py v2.6
                                    ================================== [SUCCESS] Took 212.56 seconds ==================================
                                    2.3 serial Monitor über Symbol Stecker in Symbolleiste geöffnet
                                    2.3.1 kontrolliere ob 115200 baud : Miniterm on COM6 115200,8,N,1 ---
                                    2.3.2 Alte Software reboots , ok
                                    3.0 upload:
                                    3.1 Verbinde Masse mit GPIO0 (3.Pin von rechts auf 3,3V Seite
                                    3.2 5V anlegen, ..waiting for download
                                    3.3 upload über Symbol ->
                                    3.3.1 erfolgreich geflashed
                                    3.4 SD-Karte mit dem Inhalt aus sd-card gefüllt und
                                    4.0 hurra, es läuft
                                    4.1 IP aus dem Protokoll entnommen
                                    4.2 kann auf die Web-OberFläche zugreifen.

                                    Selten so viel Glück gehabt

                                    J Offline
                                    J Offline
                                    jomjol
                                    wrote on last edited by
                                    #17

                                    @hike Genial --> Kannst du das in eine Doku schreiben (Markup Language), dann werde ich es in das Wiki mit aufnehmen!

                                    Wäre super - danke im Voraus!

                                    J H 2 Replies Last reply
                                    0
                                    • J jomjol

                                      @hike Genial --> Kannst du das in eine Doku schreiben (Markup Language), dann werde ich es in das Wiki mit aufnehmen!

                                      Wäre super - danke im Voraus!

                                      J Offline
                                      J Offline
                                      jomjol
                                      wrote on last edited by
                                      #18

                                      @coyote, @hike, @michaeljoos, @watcherkb

                                      Es kommt gerade etwas Dynamik in die Entwicklung - gefällt mir! Vielen Dank an euch für das schnelle und ausgiebige Feedback. Damit es im Rollout nicht zuviele neue Versionen hagelt, habe ich soeben einen neuen Channel auf Github erstellt ("Rolling") das ist eine Kopie von v1.1.3 und jetzt mein Arbeitsverzeichnis für neue Versionen. Dort werde ich Korrekturen / Updates und Test erstellen und hochladen.

                                      https://github.com/jomjol/AI-on-the-edge-device/tree/rolling

                                      coyoteC 1 Reply Last reply
                                      0
                                      • A aandekant

                                        Entschuldigen Sie mein schlechtes Deutsch. Ich komme aus Belgien.

                                        Ich habe einen alten Stromzähler mit einem zusätzlichen Glasfenster davor. (7-8cm vor dem Zähler) Ich habe die Standardmethode versucht, diesen Zähler mit einem optischen Sensor auf der rotierenden Scheibe abzulesen, aber mit der Doppelreflexion ist das sehr schwierig.

                                        Dann habe ich Ihre wunderbare Lösung gefunden. Ich konnte die Software (Docker-Version) vor einigen Wochen ausführen. Aber ich habe abgebrochen, als die Ausgabebilder sehr verzerrt waren. Wahrscheinlich stimmt etwas mit meine Ausrichtungsreferenzen nicht.

                                        IMG_20200731_211115.jpg (älteres Bild, es funktioniert besser, wenn die Kamera auf das erste Glas aufgesetzt wird)

                                        Bevor ich mehr Zeit darauf verwende: Halten Sie es für möglich, dass Ihre Lösung etwas von diesem Bild lesen könnte? Ein Problem, das ich sehe, ist, dass der Text weiß auf schwarz und nicht schwarz auf weiß ist?

                                        refAfbeelding202008161605.jpg

                                        Wenn ich die Kamera höher stelle, fällt die Reflexion der LED in die Ziffern. Bei dem rgb-Streifen hatte ich das Problem, dass die erste LED grün blieb. ähnlich wie bei https://arduino.stackexchange.com/questions/32017/esp8266-nodemcu-first-ws2812-led-lights-up-green. Das Bild war aber besser.

                                        J Offline
                                        J Offline
                                        jomjol
                                        wrote on last edited by
                                        #19

                                        @aandekant sagte in Wasserzähler - Version 2 - all-in-device:

                                        Entschuldigen Sie mein schlechtes Deutsch. Ich komme aus Belgien.

                                        We can discuss in Englisch - no problem

                                        Ich habe einen alten Stromzähler mit einem zusätzlichen Glasfenster davor. (7-8cm vor dem Zähler) Ich habe die Standardmethode versucht, diesen Zähler mit einem optischen Sensor auf der rotierenden Scheibe abzulesen, aber mit der Doppelreflexion ist das sehr schwierig.

                                        Dann habe ich Ihre wunderbare Lösung gefunden. Ich konnte die Software (Docker-Version) vor einigen Wochen ausführen. Aber ich habe abgebrochen, als die Ausgabebilder sehr verzerrt waren. Wahrscheinlich stimmt etwas mit meine Ausrichtungsreferenzen nicht.

                                        IMG_20200731_211115.jpg (älteres Bild, es funktioniert besser, wenn die Kamera auf das erste Glas aufgesetzt wird)

                                        Bevor ich mehr Zeit darauf verwende: Halten Sie es für möglich, dass Ihre Lösung etwas von diesem Bild lesen könnte? Ein Problem, das ich sehe, ist, dass der Text weiß auf schwarz und nicht schwarz auf weiß ist?

                                        This picture should be totally fine for the image recognition. The newest version of the neural network files have been also trained for white numbers on black background. Even if it does not work perfect on the first test - it is rather uncomplicated to incorporate your digits in the training as well, as soon, as you can send me 2-3 pictures of each digit (0..9)

                                        refAfbeelding202008161605.jpg

                                        Wenn ich die Kamera höher stelle, fällt die Reflexion der LED in die Ziffern. Bei dem rgb-Streifen hatte ich das Problem, dass die erste LED grün blieb. ähnlich wie bei https://arduino.stackexchange.com/questions/32017/esp8266-nodemcu-first-ws2812-led-lights-up-green. Das Bild war aber besser.

                                        So I would recommend to go on!

                                        A 1 Reply Last reply
                                        -1
                                        • J jomjol

                                          @coyote, @hike, @michaeljoos, @watcherkb

                                          Es kommt gerade etwas Dynamik in die Entwicklung - gefällt mir! Vielen Dank an euch für das schnelle und ausgiebige Feedback. Damit es im Rollout nicht zuviele neue Versionen hagelt, habe ich soeben einen neuen Channel auf Github erstellt ("Rolling") das ist eine Kopie von v1.1.3 und jetzt mein Arbeitsverzeichnis für neue Versionen. Dort werde ich Korrekturen / Updates und Test erstellen und hochladen.

                                          https://github.com/jomjol/AI-on-the-edge-device/tree/rolling

                                          coyoteC Offline
                                          coyoteC Offline
                                          coyote
                                          Most Active
                                          wrote on last edited by coyote
                                          #20

                                          @jomjol ich glaube ich habe noch etwas Probleme mit der WLAN Verbindung, dass muss ich noch beheben und genau da sind wir beim Punkt, vllt kannst du mir helfen.
                                          Ich hatte deine "alte" Version auf einem ESP32 mit eingelöteter Brücke um die externe Antenne zu nutzen, genau den wollte ich heute flashen mit der V2, aber da tut sich nix.
                                          Laut flashtool läd er alles hoch (vorher auch schon etliche Male gelöscht), stecke ich dann die SD Karte ein und gebe ihm Spannungsversorgung, tut sich nichts. Kein LED blinken und im WLAN sehe ich ihn auch nicht. Auf dem zweiten ESP32 keine Probleme, aber der nutzt nur die interne Antenne.
                                          Hast du vllt ne Idee?

                                          EDIT: Habe jetzt auch die SD Karte neu beschrieben auf dem zweiten ESP32, jetzt sehe ich wieder dein default RAW Bild, aber ich bekomme mein Wasserzähler Bild nicht hin

                                          J 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          500

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe