Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Wasserzähler - Version 2 - all-in-device

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jomjol @Hasont last edited by

      @hasont Hallo Horst,
      den Pfad bei dem MQTT kannst du nicht mehr konfigurieren. Ich musste es standartisieren, da du jetzt mehrere Zähler pro Bild definieren kannst und dementsprechend mehrere Ausgaben per MQTT notwendig sind.
      Die GPIOs kannst du weiterhin konfigurieren, du musst nur oben auf den Expertenmodus schalten, dann sollten eigentlich auch in der Version 9 alle Parameter wieder auftauchen.
      Beste Grüße,
      jomjol

      Hasont 1 Reply Last reply Reply Quote 0
      • Hasont
        Hasont @jomjol last edited by

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

        @hasont Hallo Horst,
        den Pfad bei dem MQTT kannst du nicht mehr konfigurieren. Ich musste es standartisieren, da du jetzt mehrere Zähler pro Bild definieren kannst und dementsprechend mehrere Ausgaben per MQTT notwendig sind.
        Die GPIOs kannst du weiterhin konfigurieren, du musst nur oben auf den Expertenmodus schalten, dann sollten eigentlich auch in der Version 9 alle Parameter wieder auftauchen.
        Beste Grüße,
        jomjol

        Danke für die schnelle Antwort, mal sehen ob ich bei SourceAnalytics ev. einen Tip bekomme um den Pfad zu ändern. In meinen Programmen kann ich das ja nachtragen. So wie ich das sehe würde SourceAnalytics aber komplett neu aufbauen was nicht so schön ist.
        LG Horst

        1 Reply Last reply Reply Quote 0
        • oberfragger
          oberfragger @Hasont last edited by oberfragger

          @hasont Hi,
          wie kann man das OTA-Update machen? Ich bin im Moment auf Version "master - v8.2.0 - 2021-08-24" und so richtig habe ich die Anleitung nicht verstanden.
          Kannst du 1-2 Sätze dazu vielleicht schreiben?

          Dank dir.

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

          @oberfragger 1000µF und ja zwischen GND und VCC

          In der Anleitung für externe LEDs hast du nun 470µF referenziert. Als Nachbauer und elektrik Noob wil ich die Dinger nun auf Ebay kaufen. Da muss ich noch ne Spannung auswählen. Bei 470µF kann ich 16v oder 25v wählen. Die ESPs laufen ja auf 5V...

          Also einfach 16V 470µF nehmen?

          Außerdem habe ich noch 390Ohm Widerstände rumfliegen. Reichen die auch oder sollten das 370Ohm sein.

          J Hasont S 3 Replies Last reply Reply Quote 0
          • J
            jomjol @oberfragger last edited by

            @oberfragger
            OTA: Ich habe eine kurze Anleitung ins Wiki gepackt: https://github.com/jomjol/AI-on-the-edge-device/wiki/Update

            Bauteile:

            • 16V 470µF funktionieren
            • 390 Ohm ? --> einfach probieren da kannst du nicht viel kaputt machen
              Bin aber auch kein Elektroniker.
            1 Reply Last reply Reply Quote 1
            • Hasont
              Hasont @oberfragger last edited by

              @oberfragger
              Hallo, du holst dir das Firmware Update.
              Interesant ist beim Update nur Firmware, HTML und SD Karte
              Du kannst das Update auch ohne neue Files auf der SD Karte machen aber da hab ich schon schlechte Erfahrungen gemacht.
              Im Browser deinen Zähler aufrufen
              1.) Unter System/ OTA Update auswählen und Firmware und HTML updaten.
              2.) Danach formatiere ich die SD und kopiere die neuen Daten.
              Die alten Daten kann man ja mal aufheben falls man zurück möchte.
              Wie gesagt muss die SD nicht zwingend neu beschrieben werden. Ist ja eh Schritt 2

              oberfragger 1 Reply Last reply Reply Quote 0
              • oberfragger
                oberfragger @Hasont last edited by oberfragger

                @hasont said in Wasserzähler - Version 2 - all-in-device:

                Hallo, du holst dir das Firmware Update.

                Ich Blindfisch... es gibt einen Unterordner "firmware"...🤦‍♂️
                Hat geklappt: master - v9.0.0 - 2021-10-23

                1 Reply Last reply Reply Quote 0
                • S
                  stan23 @oberfragger last edited by

                  @oberfragger said in Wasserzähler - Version 2 - all-in-device:

                  Außerdem habe ich noch 390Ohm Widerstände rumfliegen. Reichen die auch oder sollten das 370Ohm sein.

                  330 Ohm ist der nächste Wert den ich im "Lager" hatte.
                  Das funktioniert auch. Der Wert muss nicht genau passen.

                  1 Reply Last reply Reply Quote 0
                  • S
                    stan23 last edited by

                    Wer benutzt denn schon die WS2812B für den Zähler?

                    Bei mir crasht die Firmware relativ häufig, oft schon direkt beim ersten Einschalten der Beleuchtung für das erste Bild.
                    Laut dem Registerdump der da ausgegeben wird ist etwas in der SmartLeds.cpp bzw. deren Verwendung faul.

                    J 1 Reply Last reply Reply Quote 0
                    • Hasont
                      Hasont last edited by

                      @MichMein
                      Hallo, hattest du nicht auch SourceAnalytics?
                      Was hast du gemacht um beim Update SA weiter laufen zu lassen.
                      Es wurde ja der Datenpunkt (statt Gaszaehler/Zahlerstand jetzt Gaszaehler/main/value) geändert.
                      LG Horst

                      1 Reply Last reply Reply Quote 0
                      • J
                        jomjol @stan23 last edited by

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

                        Wer benutzt denn schon die WS2812B für den Zähler?

                        Bei mir crasht die Firmware relativ häufig, oft schon direkt beim ersten Einschalten der Beleuchtung für das erste Bild.
                        Laut dem Registerdump der da ausgegeben wird ist etwas in der SmartLeds.cpp bzw. deren Verwendung faul.

                        Hallo @stan23,
                        ich verwende folgende LEDs:
                        d2cd3122-c9d5-4a3d-b4a4-e15b0f51585c-grafik.png

                        mit folgenden Settings an 3 ESP32CAM ohne Probleme:

                        [GPIO]
                        ;IO0 = input disabled 10 false false 
                        ;IO1 = input disabled 10 false false 
                        ;IO3 = input disabled 10 false false 
                        ;IO4 = built-in-led disabled 10 false false 
                        IO12 = external-flash-ws281x disabled 10 false false 
                        ;IO13 = input-pullup disabled 10 false false 
                        LEDType = WS2812
                        LEDNumbers = 2
                        LEDColor = 50 50 50
                        
                        

                        Mir fällt gerade auf, dass ich sie als WS2812 ansteuere, obwohl es eigentlich WS2812B sind. Vielleicht liegt es daran.

                        Gruß,
                        jomjol

                        S 1 Reply Last reply Reply Quote 1
                        • S
                          stan23 @jomjol last edited by

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

                          Mir fällt gerade auf, dass ich sie als WS2812 ansteuere, obwohl es eigentlich WS2812B sind. Vielleicht liegt es daran.

                          Die gleichen habe ich auch, sie sind von meinem Wortuhr-Projekt übrig 🙂
                          Mit deinen Settings funktioniert es bei mir auch, egal ob WS2812 oder WS2812B.

                          Es liegt an der Zahl der LEDs: 2 Stück sind okay, 3 oder mehr nicht.

                          Das Problem ist in dieser Schleife:
                          https://github.com/jomjol/AI-on-the-edge-device/blob/master/code/components/jomjol_controlGPIO/SmartLeds.cpp#L41L42

                          Mir ist aber noch nicht klar was bei 3 LEDs anders ist, ob es einfach zu lange dauert oder etwas nicht korrekt initialisiert ist.

                          1 Reply Last reply Reply Quote 0
                          • E
                            elektrofreak last edited by

                            Hallo,

                            Ich hab das Projekt jetzt am Wochende für meine Wasseruhr umgesetzt klappt super.
                            Wollte das ganze auch für meinen Gaszähler anwenden, klappt leider nicht so gut das system hat probleme mit der 6, 8 und 9. Hab schon was gelessen das es wohl probleme mit Schwarzen Zählwerken gab, kann das daran liegen?

                            Und mit den "Value", "Previous Value" und "RAW Value" komme ich nicht zu recht der Raw Value sieht eigentlicht nicht schlecht aus auser das die zahlen nicht korrekt abgelessen werden aber wie sich die anderen Werte zusammenstzen verstehe ich nicht.

                            Hat jemand eine Tipp wie man das beheben kann?

                            Recognition.JPG Overview.JPG

                            Gruß

                            Sven

                            J 1 Reply Last reply Reply Quote 0
                            • S
                              stan23 last edited by stan23

                              Hmm, jetzt habe ich viel rumprobiert und habe auch 3 oder 4 LEDs funktional, aber nun kann ich das Problem mit dem ursprünglichen Code nicht mehr nachstellen.
                              Ich versuche nachher noch mal das Binary von Github.

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                jomjol @elektrofreak last edited by

                                @elektrofreak Hi Sven,
                                mir scheint es, dass dein ROIs noch nicht optimal sind. Sie scheinen ziemlich "lang" zu sein. Das innere Rechteck soll genau um die Ziffern liegen. Dazu kannst du auch das Aspektverhältnis ändern.

                                Hasont 1 Reply Last reply Reply Quote 0
                                • J
                                  jomjol @stan23 last edited by

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

                                  Hmm, jetzt habe ich viel rumprobiert und habe auch 3 oder 4 LEDs funktional, aber nun kann ich das Problem mit dem ursprünglichen Code nicht mehr nachstellen.
                                  Ich versuche nachher noch mal das Binary von Github.

                                  Kannst du einen Commit in Github mach? Dann sehe ich den Unterschied im Code und kann es anpassen.

                                  Ich bin aber unterwegs und kann die nächsten Tage nichts testen.

                                  S S 2 Replies Last reply Reply Quote 0
                                  • S
                                    stan23 @jomjol last edited by stan23

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

                                    Kannst du einen Commit in Github mach? Dann sehe ich den Unterschied im Code und kann es anpassen.

                                    Habe ich gemacht:
                                    https://github.com/jomjol/AI-on-the-edge-device/pull/384

                                    Mit dem Binary 9.0.0 crasht es zwar nicht jedes Mal bei der Benutzung des Blitzes, aber recht häufig.
                                    Ich bin mir jetzt relativ sicher dass es daran liegt dass eine lokale Instanz von SmartLeds erstellt wird, die am Ende der Funktion automatisch wieder gelöscht wird. Wenn dann etwas später im Interrupt die Funktion SmartLed::copyRmtHalfBlock() ausgeführt wird, ist der Speicher der Instanz evtl. schon wieder überschrieben und enthält nicht mehr die erwarteten Strukturen.

                                    Ich bin aber unterwegs und kann die nächsten Tage nichts testen.

                                    Kein Stress 🙂
                                    Ich lasse das mal für mich zum Test weiterlaufen.

                                    stan23 created this issue in jomjol/AI-on-the-edge-device

                                    closed improvements on the usage of SmartLed #384

                                    J 1 Reply Last reply Reply Quote 0
                                    • Hasont
                                      Hasont @jomjol last edited by Hasont

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

                                      @elektrofreak Hi Sven,
                                      mir scheint es, dass dein ROIs noch nicht optimal sind. Sie scheinen ziemlich "lang" zu sein. Das innere Rechteck soll genau um die Ziffern liegen. Dazu kannst du auch das Aspektverhältnis ändern.

                                      Hallo elektrofreak
                                      es scheint so als ob dein Zähler sehr ähnlich ist wie meiner.
                                      Die 6 und 9 war bei mir auch ein Problem und da hat mir jomjol eine dig0840s1q.tflite dazu erstellt. Seitdem keinerlei Probleme. Ich weiß leider nicht ob er alle Ziffern immer wieder in die Updates einfließen lässt.
                                      Ev. kann er ja was dazu sagen. Ich nehme bei allen Firmwareupdates die immer mit und mache in der Config.ini entsprechenden Verweis.
                                      dig0840s1q.tflite
                                      Zählerausschnitt.JPG

                                      LG
                                      Horst

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        jomjol @stan23 last edited by

                                        @stan23 Ja danke - das schaue ich mir dann bei nächster Gelegenheit hat. Ich hatte ursprünglich auch eine globale Definition der LED-Library. Das aber hat bei mir nicht funktioniert, da irgendwo (ich habe es nicht gefunden) die GPIOs wieder überschrieben wurden und bei mir die globare Funktion nicht funktioniert hat, weswegen ich es jetzt jedesmal neu initialisiere.

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          stan23 @jomjol last edited by stan23

                                          @jomjol Guter Punkt. Vielleicht müsste man immer vor dem Einschalten den GPIO prüfen und dann die alte Instanz löschen und eine neue erstellen.

                                          Hier ein Beispiel von einem Crash, weil Zugriff auf die Adresse 0x08 nicht klappt:
                                          EXCVADDR: 0x00000008 (LoadProhibited)

                                          I (17189) server_GPIO: GPIO init comleted, is enabled
                                          E (17189) MQTT_CLIENT: Publish message cannot be created
                                          Autoflow: start
                                          doflow - start 20211031-140344
                                          Flashdauer: 5000
                                          Use gpioHandler flashLigh
                                          Use gpioHandler flashLigh
                                          Guru Meditation Error: Core  0 panic'ed (LoadProhibited). Exception was unhandled.
                                          Core 0 register dump:
                                          PC      : 0x40088de6  PS      : 0x00060032  A0      : 0x40084704  A1      : 0x3ffb0820
                                          0x40088de6: spiflash_start at C:\Users\marco\.platformio\packages\framework-espidf@3.40100.200827\components\spi_flash/esp_flash_api.c:77 (discriminator 1)
                                          
                                          0x40084704: SmartLed::interruptHandler(void*) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/SmartLeds.cpp:12
                                          
                                          A2      : 0x3ffb7c4c  A3      : 0x00000001  A4      : 0x800e7536  A5      : 0x3fff9e10
                                          A6      : 0x00000000  A7      : 0x0000000e  A8      : 0x00000008  A9      : 0x3ffb7c4c
                                          A10     : 0x3ffc3b10  A11     : 0x3ffb7730  A12     : 0x800e74a2  A13     : 0x3fff9df0
                                          A14     : 0x00000000  A15     : 0x131e324d  SAR     : 0x00000008  EXCCAUSE: 0x0000001c  
                                          EXCVADDR: 0x00000008  LBEG    : 0x400029ac  LEND    : 0x400029cb  LCOUNT  : 0x00000000
                                          Core 0 was running in ISR context:
                                          EPC1    : 0x40088de6  EPC2    : 0x400ed864  EPC3    : 0x00000000  EPC4    : 0x00000000
                                          0x40088de6: spiflash_start at C:\Users\marco\.platformio\packages\framework-espidf@3.40100.200827\components\spi_flash/esp_flash_api.c:77 (discriminator 1)
                                          
                                          0x400ed864: GpioHandler::flashLightEnable(bool) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/server_GPIO.cpp:569
                                          
                                          
                                          ELF file SHA256: 8537ef6a6b98b598
                                          
                                          Backtrace: 0x40088de3:0x3ffb0820 0x40084701:0x3ffb0840 0x4008464a:0x3ffb0860 0x4008472a:0x3ffb0890 0x400841bd:0x3ffb08b0 0x400ed861:0x3fff9ef0 0x400eee29:0x3fff9f60 0x400ef1f1:0x3fff9f80 0x4018c4fb:0x3fff9ff0 0x4018c582:0x3fffa030 0x40189e77:0x3fffa0c0 0x400f10f1:0x3fffa170 0x400f137f:0x3fffa1c0
                                          0x40088de3: spiflash_start at C:\Users\marco\.platformio\packages\framework-espidf@3.40100.200827\components\spi_flash/esp_flash_api.c:85
                                          
                                          0x40084701: SmartLed::copyRmtHalfBlock() at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/SmartLeds.cpp:63
                                          
                                          0x4008464a: SmartLed::copyRmtHalfBlock() at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/SmartLeds.cpp:42
                                          
                                          0x4008472a: SmartLed::interruptHandler(void*) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/SmartLeds.cpp:18
                                          
                                          0x400841bd: _xt_medint2 at C:\Users\marco\.platformio\packages\framework-espidf@3.40100.200827\components\freertos/xtensa_vectors.S:1242
                                          
                                          0x400ed861: GpioHandler::flashLightEnable(bool) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlGPIO/server_GPIO.cpp:576
                                          
                                          0x400eee29: CCamera::LightOnOff(bool) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlcamera/ClassControllCamera.cpp:503
                                          
                                          0x400ef1f1: CCamera::CaptureToBasisImage(CImageBasis*, int) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_controlcamera/ClassControllCamera.cpp:300
                                          
                                          0x4018c4fb: ClassFlowMakeImage::takePictureWithFlash(int) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_flowcontroll/ClassFlowMakeImage.cpp:30
                                          
                                          0x4018c582: ClassFlowMakeImage::doFlow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_flowcontroll/ClassFlowMakeImage.cpp:165
                                          
                                          0x40189e77: ClassFlowControll::doFlow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_flowcontroll/ClassFlowControll.cpp:285 (discriminator 1)
                                          
                                          0x400f10f1: doflow() at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_tfliteclass/server_tflite.cpp:112 (discriminator 1)
                                          
                                          0x400f137f: task_autodoFlow(void*) at C:\Users\marco\Eigene_Projekte\Wasserzaehler\Github\AI-on-the-edge-device\code/components\jomjol_tfliteclass/server_tflite.cpp:637
                                          
                                          
                                          Rebooting...
                                          ets Jun  8 2016 00:22:57
                                          
                                          rst:0xc (SW_CPU_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
                                          

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            stan23 last edited by

                                            Auf jeden Fall bin ich total begeistert von der Ausleuchtung im Gegensatz zur eingebauten LED. Die Unterstützung für adressierbare LEDs ist zumindest für mich ein großer Gewinn!
                                            Um es einfach zu halten habe ich einen Streifen mit 15 LEDs innen in den Ring geklebt und betreibe sie mit 20/20/20:

                                            780128ea-bf04-4e38-8544-0508eb459edb-grafik.png

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            585
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            ai on the edge cnn esp32 hausautomatisierung neuronale netze ov2640 version 2 wasserzähler water gauge water meter
                                            235
                                            3381
                                            1545820
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo