FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: eki am 02 November 2020, 17:25:39

Titel: Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 02 November 2020, 17:25:39
Ich habe nach verschiedenen Ansätzen mit Impuls basiertem Auslesen meiner Wasseruhr jetzt eine Methode gefunden, die, zumindest bei mir, ganz gut funktioniert und möchte das hier mal vorstellen.

Im Gegensatz zu den Ansätzen, die über Lichtschranken oder Näherungsschaltern etc. versuchen Impulse zu zählen, wird hier eine Kamera verwendet (ESP32-CAM), deren Bild über ein auf die entsprechenden Anzeigeelemente trainiertes neuronales Netz den Wert des Zählers erfasst. Der Vorteil ist, dass der Sensor immer absolute Werte liefert und somit nicht wegdriften kann. Das funktioniert auch, wenn das System zwischendurch mal "Aussetzer" hat.

Der Ansatz basiert auf folgendem Projekt https://github.com/jomjol/AI-on-the-edge-device/wiki (https://github.com/jomjol/AI-on-the-edge-device/wiki)

Das Ganze ist relativ günstig machbar mit folgender Hardware:
- ESP32-CAM Modul (bei AliExpress für 2 Euro, wenn man es etwas schneller haben will, 5 - 10 Euro)
- FTDI Programmer (kann man sich auch leihen, kostet ca. 5 Euro)
- USB Breakout Board (2 Euro, man kann auch ein altes USB Kabel  nehmen, die 5V und GND Anschlüsse zugänglich machen und das direkt an das ESP Modul verbinden).
- USB Netzteil

Die Verbindung zu FHEM geht über den schon integrierten MQTT Client. Unten sind Bilder meiner (zugegeben recht hemdsärmeligen) Installation zu sehen.

Noch ein paar Tipps:
- Wenn man das Bild der Wasseruhr halbwegs füllend haben möchte, dann sollte man den Fokus der Kamera etwas verändern. Dazu muss man auf dem kleinen Kameramodul eventuell vorhandenen Siegellack entfernen und den gezackten Ring etwa 1/4 Umdrehung entgegen dem Uhrzeigersinn drehen.
- Die Tonne, auf der das Kameramodul angebracht ist, ist bei mir ca. 10 cm hoch und wurde aus einer Müslidose zugeschnitten (im Link oben sind aber auch professionellere Möglichkeiten gezeigt, wie man das Ganze per 3D Drucker mit einem Gehäuse versehen kann).
- Die Erkennungssoftware erzeugt absichtlich beim Nulldurchgang der Rollenzähler N (NaN) als Ergebnis für die einzelnen Digits. Um das in FHEM zu "korrigieren", habe ich entsprechende Korrekturen in meinem MQTT2 Device gemacht (user Readings, die das entsprechend abfangen). Siehe List unten.


Internals:
   CID        wasser
   DEF        wasser
   DEVICETOPIC MQTT2_wasser
   FUUID      5f9ead58-f33f-e3e4-2281-808fda8662129912
   IODev      MQTT2_SERVER
   LASTInputDev MQTT2_SERVER
   MQTT2_SERVER_MSGCNT 2382
   MQTT2_SERVER_TIME 2020-11-15 18:17:12
   MSGCNT     2382
   NAME       MQTT2_wasser
   NR         677
   STATE      <b>Zählerstand:</b> 352.9943 m<sup>3</sup><br><b>Verbrauch heute:</b> 186.30 Liter<br><b>Durchfluss:</b> 0.00 Liter/min
   TYPE       MQTT2_DEVICE
   READINGS:
     2020-11-15 18:17:12   dtime           291
     2020-11-15 18:17:12   flow            0
     2020-11-15 18:17:12   readout         352.9943
     2020-11-15 18:17:12   statFlowDay     Min: 0.0000000000000000 Avg: 0.5684304279088133 Max: 4.1095890410839298
     2020-11-14 23:59:59   statFlowDayLast Min: 0.0000000000000000 Avg: 0.2020594939095479 Max: 18.4931506849314999
     2020-11-15 18:17:12   statFlowHour    Min: 0.0000000000000000 Avg: 0.1531409785800242 Max: 0.5436241610761700
     2020-11-15 17:59:59   statFlowHourLast Min: 0.0000000000000000 Avg: 0.7177600293217195 Max: 4.1095890410839298
     2020-11-15 18:17:12   statFlowMonth   Min: 0.0000000000000000 Avg: 0.3232424416625271 Max: 240.0000000000000000 (since: 2020-11-05_16:14:32 )
     2020-11-15 18:17:12   statFlowYear    Min: 0.0000000000000000 Avg: 0.3232420963145669 Max: 240.0000000000000000 (since: 2020-11-05_16:14:32 )
     2020-11-15 18:17:12   statValue       Hour: 0.0027 Day: 0.1863 Month: 2.5249 Year: 2.5249 (since: 2020-11-06 )
     2020-11-03 20:58:26   statValueDay    Min: 349.6454 Avg: 349.7521 Max: 349.9343
     2020-11-02 23:59:58   statValueDayLast Min: 349.6413 Avg: 349.6445 Max: 349.6454
     2020-11-03 20:58:26   statValueHour   Min: 349.8718 Avg: 349.9236 Max: 349.9343
     2020-11-03 19:59:59   statValueHourLast Min: 349.8347 Avg: 349.8373 Max: 349.8718
     2020-11-15 17:59:59   statValueLast   Hour: 0.0166 Day: 0.2962 Month: - Year: -
     2020-11-03 20:58:26   statValueMonth  Min: 349.6349 Avg: 349.7416 Max: 349.9343 (since: 2020-11-02_21:49:01 )
     2020-11-03 20:58:26   statValueYear   Min: 349.6349 Avg: 349.7416 Max: 349.9343 (since: 2020-11-02_21:49:01 )
     2020-11-03 20:58:26   statVolume      Hour: -34.200000000011642 Day: -34.200000000011642 Month: -34.200000000011642 Year: -34.200000000011642 (since: 2020-11-03_19:59:59 )
     2020-11-15 18:17:12   statVolumeDay   Min: 0.0000000000000000 Avg: 0.3839366275272189 Max: 19.9999999999417994
     2020-11-14 23:59:59   statVolumeDayLast Min: 0.0000000000000000 Avg: 0.4234710648145521 Max: 30.0000000000000000
     2020-11-15 18:17:12   statVolumeHour  Min: 0.0000000000000000 Avg: 0.0000000000000000 Max: 0.0000000000000000
     2020-11-15 17:59:59   statVolumeHourLast Min: 0.0000000000000000 Avg: 1.9202777777795557 Max: 16.5000000000000000
     2020-11-03 19:59:59   statVolumeLast  Hour: - Day: - Month: - Year: -
     2020-11-15 18:17:12   statVolumeMonth Min: 0.0000000000000000 Avg: 0.5355140315624055 Max: 141.3999999999649901 (since: 2020-11-05_16:14:32 )
     2020-11-15 18:17:12   statVolumeYear  Min: 0.0000000000000000 Avg: 0.5355026699735286 Max: 141.3999999999649901 (since: 2020-11-05_16:14:32 )
     2020-11-15 18:17:12   value           352.9943
     2020-11-15 18:17:12   valueDay        186.3
     2020-11-15 18:17:12   valueHour       2.7
     2020-11-15 18:17:12   volume          0
   helper:
     _98_statistics homeStatistics
Attributes:
   IODev      MQTT2_SERVER
   alias      Haus_Wasserverbrauch
   event-on-change-reading .*(flow|volume|value|stat).*
   event-on-update-reading .*readout|statFlowHourLast.*
   group      Energie
   icon       sani_water_tap
   readingList wasser:watermeter/readout:.* readout
   room       Haus,MQTT2_DEVICE
   stateFormat {
  my @dayval = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Month: 0"));;
  sprintf("<b>Zählerstand:</b> %.4f m<sup>3</sup><br>".
          "<b>Verbrauch heute:</b> %0.2f Liter<br>".
          "<b>Durchfluss:</b> %0.2f Liter/min",
          ReadingsVal($name,"value",0),
          $dayval[3]*1000,
          ReadingsVal($name,"flow",0)
         );;
}
   userReadings flow:readout.* {
  my $td = ReadingsVal($name,"dtime",1);;
  my $oldval = ReadingsVal($name,"flow",0);;
  ($td lt 20) ? $oldval : ReadingsVal($name,"volume",0)/$td*60;;
},
valueHour:readout.* {
  my ($d,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
valueDay:readout.* {
  my ($d1,$d2,$d3,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
volume:readout.* difference {ReadingsVal($name,"value",0)*1000;;},
dtime:readout.* difference {time_str2num(ReadingsTimestamp($name,"value",0));;},
value:readout.* {
  my ($inint,$inrest) = split(/\./,ReadingsVal($name,"readout",0));;
  my ($valint,$valrest) = split(/\./,ReadingsVal($name,"value",0));;
  my $oldval = ($valint.".".$valrest);;
  $valint = $inint if ($inint !~ m/.*N.*/);;
  $valrest = $inrest if ($inrest !~ m/.*N.*/);;
  $valint++ if (($valrest-$inrest) > 8000);; # wahrscheinlich Nulldurchgang
  $valint = int($oldval) if (($valint - int($oldval)) > 1);; # wahrscheinlich Fehlerkennung
  my $result = ($valint.".".$valrest);;
  return ($result ge $oldval)?$result:$oldval;; # sichere monotones Steigen
}
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 03 November 2020, 22:29:29
Hi,
ich bin der Autor des "AI-on-the-edge" devices. Ich freue mich sehr, wenn es weitere Verbreitung findet.

Folgender Hinweis noch zu den "N": es gibt eine eingebaute Logik, die bei diesen undefinierten Zwischenwerten das "N" durch einen plausibiliserten Wert aus der vorher gültigen Auswertung ersetzt. Dieser Wert wird als "PreValue" auf die SD-Karte abgespeichert und übersteht daher auch einen Reboot. Gleichzeit ist auch eine Logik integriert, die auf Konsiszenzen prüft. Eigentlich bedarf es daher keines externen Scripts.
Stehe für Rückfragen und Details zur Konfiguration gerne zur Verfügung.
Beste Grüße,
  jomjol
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 03 November 2020, 23:45:26
Hallo jomjol, erst mal vielen Dank für das Projekt :), ich habe einiges mit Impuls basierten Ansätzen probiert, hat aber bei mir eher nicht geklappt und mit Deinem Ansatz lief das in ca. 2 Stunden.
Hier mal meine Konfiguration, wenn Du mir sagst, was ich da ändern soll damit die Ns verschwinden, freue ich mich.

[MakeImage]
;LogImageLocation = /log/source
WaitBeforeTakingPicture=5
ImageQuality = 5
ImageSize = VGA

[Alignment]
InitialRotate = -126
/config/ref0.jpg 82, 219
/config/ref1.jpg 414, 111
SearchFieldX = 20
SearchFieldY = 20


[Digits]
Model=/config/dig0650s3.tflite
LogImageLocation = /log/digit
ModelInputSize 20, 32
digit1, 185, 100, 30, 43
digit2, 230, 104, 29, 38
digit3, 271, 102, 30, 40
digit4, 317, 103, 28, 40
digit5, 360, 104, 29, 41

[Analog]
Model=/config/ana0630s2.tflite
LogImageLocation = /log/analog
ModelInputSize 32, 32
analog1, 392, 253, 93, 90
analog2, 332, 321, 92, 91
analog3, 242, 342, 92, 91
analog4, 134, 289, 93, 92

[PostProcessing]
DecimalShift = 0
PreValueUse = True
PreValueAgeStartup = 30
AllowNegativeRates = False
MaxRateValue = 0.1
ErrorMessage = True
CheckDigitIncreaseConsistency = False

[MQTT]
Uri = mqtt://192.168.178.90:1883
Topic = watermeter/readout
ClientID = wasser
;user = USERNAME
;password = PASSWORD

[AutoTimer]
AutoStart= True
Intervall = 4.85

[Debug]
Logfile = False

[Ende]
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 05 November 2020, 22:07:17
Die Konfiguration scheint mir auf den ersten Blick okay. Damit die "N" verschwinden muss der Wasserzähler entweder einmal alle Ziffer erkennen, oder zu setzt in der Oberfläche den korrekten Wert über den Menüpunkt: "Configuration" --> "Set PreValue".
Der Wert wir auf der SD-Karte gespeichert und überlebt i.d.R. auch den Neustart. Ich würde noch zusätzlich den Wert "PreValueAgeStartup" auf 720 setzen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 06 November 2020, 10:30:52
Danke, werde ich beim nächsten Nulldurchlauf mal probieren (ist ja nicht so oft, bis wir einen Kubikmeter verbraucht haben dauert es glücklicherweise ein paar Tage)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Gisbert am 07 November 2020, 19:09:10
Hallo eki,
hallo jomjol,

ihr habt ein sehr interessantes Projekt vorgestellt, was ich versuche bei mir umzusetzen.
Das ESP32 Board sieht so aus, als wenn es eine SD-Karte aufnehmen könnte. Das interessiert mich erstmal nicht, sondern im Gegenteil möchte ich gerne wissen, ob man einen Betrieb ohne SD-Karte (wenn denn die Annahme stimmt) laufen lassen kann.

Viele Grüße Gisbert
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 07 November 2020, 21:51:45
  Hallo Gisbert,
das ESP-Board ist ein ESP32-CAM mit integrierter OV2640 und SD-Karte.
Das Projekt läßt sich leider nicht ohne SD-Karte implementieren. Die verwendeten beiden neuronalen Netzen und auch die Bildverarbeitung (Alignment, Referenzstrukturen, ROI-Ausschneiden) erfordert so viel Speicherplatz, dass sich nicht alles im Hauptspeicher halten läßt, sondern als Datei auf der SD-Karte zwischengespeichert werden muss.

Gruß,
  jomjol
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 08 November 2020, 10:17:39
Hallo Jomjol,

ich habs bei mir mal aufgesetzt, weil ich immernoch für die Wasseruhr was sinnvolles suche ;) Die Installation war etwas nervig, das liegt aber eher an dem ESP32 Cam Modul und meinen verlegten FTDI :)
Nachdem aber alles gefunden und geflash war, sah ich auch auf der seriellen den Start. Er bleibt bei mir aber beim WLAN wohl hängen.
Ich habe nun meine beiden WLAN SSIDs probiert, bei beiden ist es gleich. WLAN Verbindung steht, aber er bekommt / oder fordert keine IP an, damit kann ich dann natürlich nicht zugreifen.
Hattest Du das schonmal ? Wenn nicht würde ich mal das Log noch aus der Seriellen rauskopieren,vielleicht siehtst Du da irgendwas hilfreiches ?

Danke
Ronny
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Gisbert am 08 November 2020, 12:35:28
  Hallo Gisbert,
das ESP-Board ist ein ESP32-CAM mit integrierter OV2640 und SD-Karte.

Gruß,
  jomjol

Hallo jomol,
bei den Angeboten bei Aliexpress, ist da üblicherweise eine SD-Karte dabei? Oder ist da üblicherweise nie eine SD-Karte dabei?
Wenn nicht, ist das die richtige Karte und Größe?
Zitat
Hier (https://www.az-delivery.de/products/esp32-cam-modul-esp32-wifi-bluetooth-modul-inklusive-kamera?variant=32376084201568#description) gefunden:
Unterstützt microSD TF-Karte mit einer maximalen Größe von 4 GB

Viele Grüße Gisbert
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 09 November 2020, 11:44:05
Hi Gisbert,

da ist doch nie eine dabe

Aktuell sehe ich gerade bei heise,das es eine neue Version mit  USB-C Anschluss wohl gibt. (von M5stack)
https://www.heise.de/news/ESP32CAM-mit-USB-C-Anschluss-4951429.html
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 13 November 2020, 22:28:13
Hallo Jomjol,

ich habs bei mir mal aufgesetzt, weil ich immernoch für die Wasseruhr was sinnvolles suche ;) Die Installation war etwas nervig, das liegt aber eher an dem ESP32 Cam Modul und meinen verlegten FTDI :)
Nachdem aber alles gefunden und geflash war, sah ich auch auf der seriellen den Start. Er bleibt bei mir aber beim WLAN wohl hängen.
Ich habe nun meine beiden WLAN SSIDs probiert, bei beiden ist es gleich. WLAN Verbindung steht, aber er bekommt / oder fordert keine IP an, damit kann ich dann natürlich nicht zugreifen.
Hattest Du das schonmal ? Wenn nicht würde ich mal das Log noch aus der Seriellen rauskopieren,vielleicht siehtst Du da irgendwas hilfreiches ?

Danke
Ronny

Hi Ronny,
das Problem kenne ich nicht, bitte mal das Log-File und das Log aus der Seriellen. Dann schau ich mir das gerne an.
Gruß,
  jomjol
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 14 November 2020, 15:38:35
Hallo
das nenne ich mal eine Lösung zum erfassen von ...zählern  8) 8) 8).
Habe es sofort nachgebaut als ich diesen Thread entdeckt habe.
ESP32CAM lief bei mir auf anhieb ohne Probleme.
Auch die Ns wurden erfolgreich durch plausible Werte ersetzt.

@eki
Habe versucht Dein MQTT2_Device zu benutzen,
komme aber mit den einstellungen für des Statistics-Modul nicht zurecht.
Wäre schön, wenn Du mir mal helfen könntest.
Auch habe ich keine Idee, wo das Reading "dtime" her kommt.
Ist das händisch gesetzt?

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 14 November 2020, 19:35:51
Hi Jomjol,

Du hattest ja mir schon auf meine PM geantwortet :)  Danke dafür.

Ich hatte die Woche wenig Zeit, von daher habe ich bisher noch nicht weiterschauen können. Und gerade wo ich hier tippe, habe ich das Gerät nochmal angeschlossen und es bekommt eine IP und die Webseite ist erreichbar. Hmm nun bin ich echt baff und etwas zerknirscht, weil ich Dir Umstände gemacht habe ^^

Auch nach einem PowerCycle klappt es weiterhin, tja, es läuft, kann ich auch weitermachen nun ;) Super :D

das Problem kenne ich nicht, bitte mal das Log-File und das Log aus der Seriellen. Dann schau ich mir das gerne an.

Das war die Serielle Ausgabe (auch in der PM schon gewesen). Ich würde ja auch gern mehr machen, wenn Du mir sagst, was noch machbar wäre,damit man sieht, wo es hängt ? :)

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:4
load:0x3fff0030,len:4
load:0x3fff0034,len:7140
load:0x40078000,len:13856
load:0x40080400,len:4052
entry 0x40080688
I (31) boot: ESP-IDF 3.40100.200827 2nd stage bootloader
I (31) boot: compile time 18:41:37
I (31) boot: chip revision: 1
I (35) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (42) boot.esp32: SPI Speed      : 20MHz
I (46) boot.esp32: SPI Mode       : DIO
I (51) boot.esp32: SPI Flash Size : 4MB
I (55) boot: Enabling RNG early entropy source...
I (61) boot: Partition Table:
I (64) boot: ## Label            Usage          Type ST Offset   Length
I (72) boot:  0 nvs              WiFi data        01 02 00009000 00004000
I (79) boot:  1 otadata          OTA data         01 00 0000d000 00002000
I (86) boot:  2 phy_init         RF data          01 01 0000f000 00001000
I (94) boot:  3 ota_0            OTA app          00 10 00010000 001db000
I (101) boot:  4 ota_1            OTA app          00 11 001f0000 001db000
I (109) boot: End of partition table
I (113) boot_comm: chip revision: 1, min. application chip revision: 0
I (120) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x4a908 (305416) map
I (298) esp_image: segment 1: paddr=0x0005a930 vaddr=0x3ffb0000 size=0x0490c ( 18700) load
I (309) esp_image: segment 2: paddr=0x0005f244 vaddr=0x40080000 size=0x00404 (  1028) load
I (310) esp_image: segment 3: paddr=0x0005f650 vaddr=0x40080404 size=0x009c8 (  2504) load
I (318) esp_image: segment 4: paddr=0x00060020 vaddr=0x400d0020 size=0x148c1c (1346588) map
I (1068) esp_image: segment 5: paddr=0x001a8c44 vaddr=0x40080dcc size=0x1ce64 (118372) load
I (1140) esp_image: segment 6: paddr=0x001c5ab0 vaddr=0x50000000 size=0x00004 (     4) load
I (1157) boot: Loaded app from partition at offset 0x10000
I (1157) boot: Disabling RNG early entropy source...
I (1158) psram: This chip is ESP32-D0WD
I (1164) spiram: Found 64MBit SPI RAM device
I (1167) spiram: SPI RAM mode: flash 40m sram 40m
I (1173) spiram: PSRAM initialized, cache is in low/high (2-core) mode.
I (1180) cpu_start: Pro cpu up.
I (1184) cpu_start: Application information:
I (1189) cpu_start: Project name:     esp32cam-server-only
I (1195) cpu_start: App version:      0.0.9.3
I (1200) cpu_start: Compile time:     Oct 14 2020 18:40:30
I (1206) cpu_start: ELF file SHA256:  61e286d166c84123...
I (1212) cpu_start: ESP-IDF:          3.40100.200827
I (1218) cpu_start: Starting app cpu, entry point is 0x40081a88
I (0) cpu_start: App cpu up.
I (2110) spiram: SPI SRAM memory test OK
I (2110) heap_init: Initializing. RAM available for dynamic allocation:
I (2111) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (2117) heap_init: At 3FFC1D68 len 0001E298 (120 KiB): DRAM
I (2123) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (2129) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (2136) heap_init: At 4009DC30 len 000023D0 (8 KiB): IRAM
I (2142) cpu_start: Pro cpu start user code
I (2147) spiram: Adding pool of 4096K of external SPI memory to heap allocator
CreateClassCamera
I (2173) spi_flash: detected chip: generic
I (2173) spi_flash: flash io: dio
I (2173) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (2181) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations
Do Reset Camera
I (2191) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (4241) connect_wlan_main: Initializing SD card
I (4241) gpio: GPIO[13]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
Name: GB1QT
Type: SDHC/SDXC
Speed: 20 MHz
Size: 30528MB
I (4291) server_ota: Start CheckOTAUpdateCheck ...
Start CheckOTAUpdateCheck ...
I (4301) server_ota: SHA-256 for the partition table: : 9d4a2809ae90fb20709a8ca3dd3ac3462e1e73286bcd31b689060c91de06fa3a
I (4361) server_ota: SHA-256 for bootloader: : 89132105f9eac6c57e8c6318ca5dcd592350d6a5c71941e340c90ffc41747c8c
I (5041) server_ota: SHA-256 for current firmware: : cbae74eb1fde135033f9411bbba15cb51cc9e8ae0372ddb24169fcc4578dc060
CheckOTAUpdate Partition: ESP_OK
To use WLan: xxx, xxx
To set Hostename: watermeter
I (5091) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
I (5091) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
I (5211) phy: phy_version: 4180, cb3948e, Sep 12 2019, 16:39:13, 0, 0
I (5221) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 15 November 2020, 10:09:57
Verstehe ich das jetzt richtig, dass diese Methode auch mit anderen Zählern funktionieren sollte, z.B. Ferraris E-Zähler und Gaszähler?
Hat das auch schon jemand ausprobiert?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rob am 15 November 2020, 13:02:01
So hab es ich auch verstanden und lese gespannt mit  ;D
Beim schnellen Überfliegen hab ich noch nicht erkannt, welche Schritte konkret nötig sind - liegt aber halt an mir. Muss erstmal bestellen und mich dann genauer reinlesen.

VG
rob
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 15 November 2020, 14:27:10
Hier ist alles beschrieben.:
https://github.com/jomjol/AI-on-the-edge-device/wiki (https://github.com/jomjol/AI-on-the-edge-device/wiki)

Ich habe auch die Sachen bestellt und bin mal echt gespannt.
Es ist schon erstaunlich, was man mit den ESP-Dinger mitlerweile anstellen kann.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 15 November 2020, 18:26:41

@eki
Habe versucht Dein MQTT2_Device zu benutzen,
komme aber mit den einstellungen für des Statistics-Modul nicht zurecht.
Wäre schön, wenn Du mir mal helfen könntest.
Auch habe ich keine Idee, wo das Reading "dtime" her kommt.
Ist das händisch gesetzt?

LG
p99p

Das Reading dtime ist ein userreading (habe gerade noch mal das Listing im ersten Beitrag aktualisiert, das hat da irgendwie gefehlt).
Für die Statistiken musst Du, falls Du das noch nicht für andere Dinge hast, ein “statistics” Device anlegen und in die Definition <devname>.* eintragen (<devname> natürlich entsprechend ersetzen). Zusätzlich noch “value” im Attribut deltaReadings und “value,flow,volume” beim Attribut minAvgMaxReadings setzen.

Falls Du schon ein statistics Device nutzt, musst Du eben die entsprechenden Dinge ergänzen.

Unten habe ich mal Plots angehängt, wie das dann bei inklusive der Statistik aussieht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wolle02 am 16 November 2020, 15:27:19

Aktuell sehe ich gerade bei heise,das es eine neue Version mit  USB-C Anschluss wohl gibt. (von M5stack)
https://www.heise.de/news/ESP32CAM-mit-USB-C-Anschluss-4951429.html

@jomjol und rcmcronny

Ist denn dieses Modul für das Projekt überhaupt nutzbar? Ich kann auf den Bilder von diesem Board keinen SD-Slot erkennen. Wenn ich jomjol richtig verstanden habe, ist eine SD-Karte aber zwingende Voraussetzung!?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 16 November 2020, 15:31:54
Stimmt, da ist kein SDCard Slot drauf wie es aussieht, dann geht es auch nicht mit dem Projekt logischerweise. Ich hatte mich drauf verlassen, das es "nur" ein USB-C zusätzlich hat :/

Ronny
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 17 November 2020, 17:43:15
@eki
Danke für die aktualisierung vom Listing und die Infos zu Statistics.
Leieder bekomme ich es damit auch nicht wirklich zum laufen.
Der auffälligste Fehler ist, dass im stateFomat bei Zählerstand 000. und nur die Nachkommastellen richtig angezeigt werden.

@jomjol
hab heute OTA-Update gemacht.
Hat einwandfrei funktioniert.

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 17 November 2020, 17:46:14
Schick mal ein „List“ Deines Devices.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 17 November 2020, 17:47:18
Schick mal ein „List“ Deines Devices und vom statistics Device.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 17 November 2020, 20:45:45
Hat ein Weilchen gedauert, hatte schon alles umgebaut auf WaterCalCulator.

Hier nun die 2 Listings.
Internals:
   CFGFN     
   CID        wasser
   DEF        wasser
   DEVICETOPIC MQTT2_wasser
   FUUID      5fb41ab4-f33f-f73e-3dff-eac4d4986615e0ed
   IODev      MyBroker
   LASTInputDev MyBroker
   MSGCNT     7
   MyBroker_MSGCNT 7
   MyBroker_TIME 2020-11-17 20:33:16
   NAME       MQTT2_wasser
   NR         372
   STATE      <b>Zählerstand:</b> 0.5850 m<sup>3</sup><br><b>Verbrauch heute:</b> 0.00 Liter<br><b>Durchfluss:</b> 0.00 Liter/min
   TYPE       MQTT2_DEVICE
   READINGS:
     2020-11-17 20:33:16   dtime           350
     2020-11-17 20:33:16   flow            0
     2020-11-17 20:33:16   readout         182.5850
     2020-11-17 20:33:16   statFlowDay     Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowHour    Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowMonth   Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowYear    Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueDay    Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueHour   Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueMonth  Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueYear   Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeDay   Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeHour  Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeMonth Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeYear  Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   value           0.5850
     2020-11-17 20:33:16   valueDay        0
     2020-11-17 20:33:16   valueHour       0
     2020-11-17 20:33:16   volume          2.10000000000002
   helper:
     _98_statistics Wasserstatistik
Attributes:
   IODev      MyBroker
   alias      Haus_Wasserverbrauch
   event-on-change-reading .*(flow|volume|value|stat).*
   event-on-update-reading .*readout|statFlowHourLast.*
   icon       sani_water_tap
   readingList wasser:watermeter/readout:.* readout
   room       MQTT2_DEVICE
   stateFormat {
  my @dayval = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Month: 0"));;
  sprintf("<b>Zählerstand:</b> %.4f m<sup>3</sup><br>".
          "<b>Verbrauch heute:</b> %0.2f Liter<br>".
          "<b>Durchfluss:</b> %0.2f Liter/min",
          ReadingsVal($name,"value",0),
          $dayval[3]*1000,
          ReadingsVal($name,"flow",0)
         );;
}
   userReadings flow:readout.* {
  my $td = ReadingsVal($name,"dtime",1);;
  my $oldval = ReadingsVal($name,"flow",0);;
  ($td lt 20) ? $oldval : ReadingsVal($name,"volume",0)/$td*60;;
},
valueHour:readout.* {
  my ($d,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
valueDay:readout.* {
  my ($d1,$d2,$d3,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
volume:readout.* difference {ReadingsVal($name,"value",0)*1000;;},
dtime:readout.* difference {time_str2num(ReadingsTimestamp($name,"value",0));;},
value:readout.* {
  my ($inint,$inrest) = split(/\./,ReadingsVal($name,"readout",0));;
  my ($valint,$valrest) = split(/\./,ReadingsVal($name,"value",0));;
  my $oldval = ($valint.".".$valrest);;
  $valint = $inint if ($inint !~ m/.*N.*/);;
  $valrest = $inrest if ($inrest !~ m/.*N.*/);;
  $valint++ if (($valrest-$inrest) > 8000);; # wahrscheinlich Nulldurchgang
  $valint = int($oldval) if (($valint - int($oldval)) gt 1);; # wahrscheinlich Fehlerkennung
  my $result = ($valint.".".$valrest);;
  return ($result ge $oldval)?$result:$oldval;; # sichere monotones Steigen
}

Internals:
   CFGFN     
   DEF        MQTT2_wasser
   DEV_REGEXP MQTT2_wasser
   FUUID      5fb422ca-f33f-f73e-767e-e2a7bf1f5c7101c4
   NAME       Wasserstatistik
   NOTIFYDEV  global,MQTT2_wasser
   NR         436
   NTFY_ORDER 10-Wasserstatistik
   PREFIX     stat
   STATE      Updated stats for: MQTT2_wasser
   TYPE       statistics
   READINGS:
     2020-11-17 20:27:26   monitoredDevicesMQTT2_DEVICE MQTT2_wasser
     2020-11-17 20:21:57   monitoredDevicesUnsupported MQTT2_wasser#MQTT2_DEVICE
     2020-11-17 20:21:57   nextPeriodChangeCalc 2020-11-17 20:59:55
     2020-11-17 20:41:31   state           Updated stats for: MQTT2_wasser
   fhem:
     modulVersion $Date: 2019-12-24 00:07:57 +0100 (Tue, 24 Dec 2019) $
     nextPeriodChangeTime 1605643195
Attributes:
   deltaReadings value
   minAvgMaxReadings value,flow,volume
   room       zz_Verbrauch

Danke schon mal für Deine Mühe.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 17 November 2020, 22:10:02
Kannst Du mal die folgende Zeile in den userreadings:

$valint = int($oldval) if (($valint - int($oldval)) gt 1);; # wahrscheinlich Fehlerkennung

durch

$valint = int($oldval) if (($valint - int($oldval)) > 1);; # wahrscheinlich Fehlerkennung
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 17 November 2020, 22:44:10
Hat leider nicht geholfen.
Die m³ fehlen immer noch.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Christoph Morrison am 18 November 2020, 00:23:51
  my @dayval = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Month: 0"));;
  sprintf("<b>Zählerstand:</b> %.4f m<sup>3</sup><br>".
          "<b>Verbrauch heute:</b> %0.2f Liter<br>".
          "<b>Durchfluss:</b> %0.2f Liter/min",
          ReadingsVal($name,"value",0),
          $dayval[3]*1000,
          ReadingsVal($name,"flow",0)
         );;
}

Schau dir mal das Attribut singularReadings im statistics-Modul an.

valueHour:readout.* {
  my ($d,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
valueDay:readout.* {
  my ($d1,$d2,$d3,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},

Dito.

Den Rest schaue ich mir mal an, wenn mein Device läuft.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 18 November 2020, 00:33:23
Hat leider nicht geholfen.
Die m³ fehlen immer noch.

Oh man, manchmal ist man echt blind. Das Problem ist schon die Zeile, die ich genannt habe. Das Problem ist, dass bei der Prüfung von einer Art eingeschwungenem Zustand ausgegangen wird (ich hatte den Fall, dass durch Falscherkennung ein Kubikmeter zu viel gemeldet wurde), da bei Dir aber der readout Wert und der value Wert sich um mehr als 1 unterscheiden, schlägt das immer zu.
Entweder du löscht diese Zeile ganz (mit den richtigen Einstellungen beim esp32-cam sollte dieser Fehler eigentlich laut jomjol nicht passieren) oder Du setzt einmal künstlich den value Wert mit set reading auf letzten readout Wert (in etwa so: "setreading MQTT2_wasser value 182.585" in der Fhem Kommandozeile eingeben).

Warum bei Dir das deltaReading nicht klappt, verstehe ich gerade auch nicht, da sollte dann ein Reading statValue mit einem Inhalt "Hour: xxx Day: xxx Month: xxx Year: xxx" entstehen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 18 November 2020, 00:34:59
Schau dir mal das Attribut singularReadings im statistics-Modul an.

Dito.

Den Rest schaue ich mir mal an, wenn mein Device läuft.

Bei mir hat singularReadings in Zusammenhang mit deltaReadings nicht funktioniert.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 14:24:22
Hi Ho! :-)

Kurze Frage, wo finde ich denn Infos zum MQTT client der integriert sein soll?
Ich habe heute nach https://github.com/jomjol/AI-on-the-edge-device/wiki/Installation die Installation vollzogen, finde aber die Optionen für MQTT nicht.
Bin ich nur blind?

Grüße
Frank
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 19 November 2020, 14:31:19
Kannst Du doch im Webfrontend einstellen beim Setup :) Ist im Standard auskommentiert (in der .ini Datei :)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 15:34:24
Danke! Ich hab nur in der GUI und im WIKI gesucht. :-)
jetzt ist alles klar.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 19:02:41
ich habs bei mir mal aufgesetzt, weil ich immernoch für die Wasseruhr was sinnvolles suche ;) Die Installation war etwas nervig, das liegt aber eher an dem ESP32 Cam Modul und meinen verlegten FTDI :)
Nachdem aber alles gefunden und geflash war, sah ich auch auf der seriellen den Start. Er bleibt bei mir aber beim WLAN wohl hängen.
Ich habe nun meine beiden WLAN SSIDs probiert, bei beiden ist es gleich. WLAN Verbindung steht, aber er bekommt / oder fordert keine IP an, damit kann ich dann natürlich nicht zugreifen.
Hattest Du das schonmal ? Wenn nicht würde ich mal das Log noch aus der Seriellen rauskopieren,vielleicht siehtst Du da irgendwas hilfreiches ?

Ich habe hier zuhause gerade das gleiche.
Im Büro zum testen ging das heute Mittag.

Hier zuhause ist es ein UniFi WLAN mit 3 APs.
im Büro haben wir einen LanCom AP.

Die LED blinkt immer 5x schnell, in der UniFi Console sehe ich dass er verbunden ist, sehe aber keinen Hostnamen und keine IP, klar, hat ja auch keine geholt.
Ich versuche es später mal an einem anderewn Standort wo nur ein AP empfangbar ist.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 19 November 2020, 19:38:13
Hi,

ich habe auch Unifi ..hmmm .. bei mir ging es nachdem ich die Beta Updates der Firmware eingespielt hatte [ich weiss nur nicht, ob es das wirklich war oder Zufall] (ich denke aber, ein Reboot war es so wirklich). Wenn Du kannst, versuche doch mal den AP der am nächsten steht und damit das potentielle Ziel ist, neu zu starten, ob es dann vielleicht besser geht ?

Jetzt geht es ja immer, so kann ich da nichtmehr nachtesten ^^

Ronny
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 19:45:41
Am AP liegt nicht, die IP wird von der Fritte verteilt.
Denke eher dass es bei dir dann die Beta Firmware gelöst hat.
Die werd ich dann auch mal versuchen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 19 November 2020, 19:48:59
Hi,

ja auch möglich.

Die IP kommt bei mir von einem Linux DHCP :)

VIel Erfolg !
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 20:28:41
Also falls die "rolling" die Beta ist, so hilft diese auch nicht.

Hier die Aausgabe der Seriellen:
ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:4
load:0x3fff0034,len:7140
load:0x40078000,len:13856
load:0x40080400,len:4052
entry 0x40080688
I (29) boot: ESP-IDF 3.40100.200827 2nd stage bootloader
I (29) boot: compile time 18:58:52
I (29) boot: chip revision: 1
I (33) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (40) boot.esp32: SPI Speed      : 40MHz
I (44) boot.esp32: SPI Mode       : DIO
I (49) boot.esp32: SPI Flash Size : 4MB
I (53) boot: Enabling RNG early entropy source...
I (59) boot: Partition Table:
I (62) boot: ## Label            Usage          Type ST Offset   Length
I (70) bN WiFi data        01 02 00009000 00004000
I (77) boot:  1 otadata          OTA data         01 00 0000d000 00002000
I (85) boot:  2 phy_init         RF data          01 01 0000f000 00001000
I (92) boot:  3 ota_0            OTA app          00 10 00010000 001db000
I (100) boot:  4 ota_1            OTA app          00 11 001f0000 001db000
I (107) boot: End of partition table
I (111) boot_comm: chip revision: 1, min. application chip revision: 0
I (119) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x4c7f8 (31                                                                                                                                                             3336) map
I (263) esp_image: segment 1: paddr=0x0005c820 vaddr=0x3ffb0000 size=0x037f8 ( 1                                                                                                                                                             4328) load
I (270) esp_image: segment 2: paddr=0x00060020 vaddr=0x400d0020 size=0x150884 (1                                                                                                                                                             378436) map
I (867) esp_image: segment 3: paddr=0x001b08ac vaddr=0x3ffb37f8 size=0x00abc (                                                                                                                                                               2748) load
I (868) esp_image: segment 4: paddr=0x001b1370 vaddr=0x40080000 size=0x00404 (                                                                                                                                                               1028) load
I (874) esp_image: segment 5: paddr=0x001b177c vaddr=0x40080404 size=0x1d82c (12                                                                                                                                                             0876) load
I (941) esp_image: segment 6: paddr=0x001cefb0 vaddr=0x50000000 size=0x00004 (                                                                                                                                                                  4) load
I (958) boot: Loaded app from partition at offset 0x10000
I (958) boot: Disabling RNG early entropy source...
I (959) psram: This chip is ESP32-D0WD
I (965) spiram: Found 64MBit SPI RAM device
I (968) spiram: SPI RAM mode: flash 40m sram 40m
I (973) spiram: PSRAM initialized, cache is in low/high (2-core) mode.
I (981) cpu_start: Pro cpu up.
I (984) cpu_start: Application information:
I (989) cpu_start: Project name:     esp32cam-server-only
I (995) cpu_start: App version:      0.0.9.3
I (1000) cpu_start: Compile time:     Nov 19 2020 18:58:02
I (1006) cpu_start: ELF file SHA256:  d084bfabfc62d479...
I (1012) cpu_start: ESP-IDF:          3.40100.200827
I (1018) cpu_start: Starting app cpu, entry point is 0x40081b48
I (0) cpu_start: App cpu up.
I (1910) spiram: SPI SRAM memory test OK
I (1911) heap_init: Initializing. RAM available for dynamic allocation:
I (1911) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (1917) heap_init: At 3FFC1B48 len 0001E4B8 (121 KiB): DRAM
I (1924) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (1930) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (1937) heap_init: At 4009DC30 len 000023D0 (8 KiB): IRAM
I (1943) cpu_start: Pro cpu start user code
I (1948) spiram: Adding pool of 4096K of external SPI memory to heap allocator
CreateClassCamera
I (1973) spi_flash: detected chip: generic
I (1974) spi_flash: flash io: dio
I (1974) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (1982) spiram: Reserving pool of 32K of internal memory for DMA/internal alloc                                                                                                                                                             ations
Do Reset Camera
I (1992) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulld                                                                                                                                                             own: 0| Intr:0
I (4042) connect_wlan_main: Initializing SD card
I (4052) gpio: GPIO[13]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulld                                                                                                                                                             own: 0| Intr:0
Name: APPSD
Type: SDHC/SDXC
Speed: 20 MHz
Size: 3840MB
I (4532) server_ota: Start CheckOTAUpdateCheck ...
Start CheckOTAUpdateCheck ...
I (4542) server_ota: SHA-256 for the partition table: : 9d4a2809ae90fb20709a8ca3                                                                                                                                                             dd3ac3462e1e73286bcd31b689060c91de06fa3a
I (4602) server_ota: SHA-256 for bootloader: : 1d3888b14b07b9211efd7a525a9d5d32d                                                                                                                                                             82005a0d8a152a7dbb9f7c0fccb4cee
I (5322) server_ota: SHA-256 for current firmware: : 216d40adbbda57b999e53757fc9                                                                                                                                                             49cb2c42ccac7d20b86e3e6dfd9eb495282fd
CheckOTAUpdate Partition: ESP_OK
To use WLan: W12_IoT, XXXXXXXX
To set Hostename: watermeter
I (5372) system_api: Base MAC address is not set, read default base MAC address                                                                                                                                                              from BLK0 of EFUSE
I (5372) system_api: Base MAC address is not set, read default base MAC address                                                                                                                                                              from BLK0 of EFUSE
I (5492) phy: phy_version: 4180, cb3948e, Sep 12 2019, 16:39:13, 0, 0
I (5492) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulld                                                                                                                                                             own: 0| Intr:0
I (11672) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pull                                                                                                                                                             down: 0| Intr:0
I (15402) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (22772) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (26822) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (32982) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (39272) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0


Config:
[MakeImage]
;LogImageLocation = /log/source
;LogfileRetentionInDays = 15
WaitBeforeTakingPicture=5
ImageQuality = 5
ImageSize = VGA

[Alignment]
InitalRotate=180
/config/ref0.jpg 119, 273
/config/ref1.jpg 456, 138
SearchFieldX = 20
SearchFieldY = 20


[Digits]
Model=/config/dig0650s3.tflite
LogImageLocation = /log/digit
LogfileRetentionInDays = 15
ModelInputSize 20, 32
digit1, 306, 120, 37, 67
digit2, 355, 120, 37, 67
digit3, 404, 120, 37, 67

[Analog]
Model=/config/ana0630s2.tflite
LogImageLocation = /log/analog
LogfileRetentionInDays = 15
ModelInputSize 32, 32
analog1, 444, 225, 92, 92
analog2, 391, 329, 92, 92
analog3, 294, 369, 92, 92
analog4, 168, 326, 92, 92

[PostProcessing]
DecimalShift = 0
PreValueUse = True
PreValueAgeStartup = 30
AllowNegativeRates = False
MaxRateValue = 0.1
ErrorMessage = True
CheckDigitIncreaseConsistency = False

;[MQTT]
;Uri = mqtt://IP-MQTT-SERVER:1883
;Topic = watermeter/readout
;ClientID = wasser
;user = USERNAME
;password = PASSWORD

[AutoTimer]
AutoStart= True
Intervall = 4.85

[Debug]
Logfile = True
; Number of days before a log file is deleted. 0 = disabled. 10 is default value (if not defined)
;LogfileRetentionInDays = 10

[Ende]


:-(
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 20:39:34
bei mir ging es nachdem ich die Beta Updates der Firmware eingespielt hatt
Hast Du die Dateien noch?
Die aktuelle Beta hilft bei mir nicht.
Würde mal deine versuchen. :-)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 19 November 2020, 22:03:13
Es geht seit  5.43.7 bei mir, aktuell hab ich die 5.43.10.
https://community.ui.com/releases/UAP-USW-Firmware-5-43-7-12444/1b660a84-f099-4ac8-9e51-0f4a113e7a7e

Weiß ja nicht, was Du als Binary brauchst :D

Ronny
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 19 November 2020, 22:26:23
 ;D ;D ;D
Dachte du meinst die Beta des Wasserzählers.
OK, an den APs hab ich noch nix gemacht.
Das schau ich mal.
Danke für die Info.

Der Link funktioniert am Handy grad nicht.
Muss mir das morgen am PC anschauen.
Nach allem was ich grad finden kann gibt es keine Beta für den nanoHD

OK, gefunden. Musste mich erst für die Beta freischalten. Die Handyansicht ist da etwas hinderlich. 😂
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 19 November 2020, 23:38:14
Hallo,

Eine ordentliche 5V-Versorgung habt ihr an dem ESP?

Ein USB zu TTL-Konverter als Stromversorgung kackt in 90 % aller Fälle, spätestens beim Versuch des ESP eine WLAN-Verbindung aufzubauen, ab.

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 20 November 2020, 06:48:57
Danke für den Tipp,
Aber das Thema haben wir hier im Forum so oft, daß hab ich aufm Schirm 😉
Hatte sogar extra mit nem Original Raspberry Netzteil getestet.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 20 November 2020, 21:59:13
So,
Die Beta Firmware der Unifi AccessPoints hat das Problem tatsächlich gelöst.
Jetzt geht es um die praktische Umsetzung.
Hab schon nen Plan, werde hier berichten wenn es steht. 👍🏻
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 24 November 2020, 11:27:54
Welche Größe für die SD-Karte ist den empfehlenswert?
Gibt es dazu schon Erfahrungswerte?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 24 November 2020, 12:48:14
Welche Größe für die SD-Karte ist den empfehlenswert?
Gibt es dazu schon Erfahrungswerte?
laut Doku soll es eine 4GB sein.
größere hab ich nicht getestet.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 24 November 2020, 13:03:52
Danke.
Trotz intensiven Lesens der Doku, habe ich dort keinerlei Angaben dazu gefunden  8)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 24 November 2020, 14:27:51
Danke.
Trotz intensiven Lesens der Doku, habe ich dort keinerlei Angaben dazu gefunden  8)
Ganz ehrlich, ich finde es auch gerade nicht mehr. ;o)
Hatte mich aber gefreut dass ich noch ne alte 4GB hatte als ich es gelesen hatte.

Edit:
muss mich korrigieren, es war hier im Thread:
https://forum.fhem.de/index.php/topic,115506.msg1099339.html#msg1099339
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 24 November 2020, 16:01:22
Moin
Wie genial ist das denn? Da suche ich schon Jahre nach etwas, und dann hier mal so nebenbei!
Gleich zwei bestellt, und dann morgen abend basteln!
Danke und Gruss
Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 24 November 2020, 16:06:59
Moin
Wie genial ist das denn? Da suche ich schon Jahre nach etwas, und dann hier mal so nebenbei!
Gleich zwei bestellt, und dann morgen abend basteln!
Danke und Gruss
Christoph
Moin Christoph,

kannst du auch drei machen :o Ich hätte für meinen Stromzähler gerne auch noch einen. Wasser und Gas habe ich schon Zähler mit Reed. Das Programmieren hört sich aber für mich kompliziert an.

Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 24 November 2020, 21:12:36
Sehr cooles Projekt, Hut ab!

Und Danke für's posten!

ESP32 läuft, fehlt nur noch die Müslidose und mein dusseliger Zenner-Zähler ist nach gefühlt 100 verschiedenen Versuchen endlich in FHEM... (Schade nur, dass der nächstes Jahr getauscht wird ;D ).
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 24 November 2020, 22:49:25
Ich mach die Tage mal noch Bilder, aber schon mal vorab...
Bei mir passt ein HT DN75 Rohr genau auf den Zähler.
Ein 10cm Stück gesichert von zwei Gummispannern und den ESP im gedruckten Gehäuse auf eine DN75 Kappe.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 06:56:10
... (Schade nur, dass der nächstes Jahr getauscht wird ;D ).
Moin
Das macht dann ja nichts. Einmal neues Photo aufnehmen, und weiter geht die wilde Fahrt!
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 06:57:31
Moin Christoph,

kannst du auch drei machen :o Ich hätte für meinen Stromzähler gerne auch noch einen. Wasser und Gas habe ich schon Zähler mit Reed. Das Programmieren hört sich aber für mich kompliziert an.

Gruss
  Enno
Moin Enno
Der Zweite war doch fuer Dich! Scherz beiseite. Mal sehen wie es geht, dann mache ich den einen fuer Dich fertig!
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 25 November 2020, 07:59:17
@jomjol:
Ich hätte da ein paar Fragen und Anregungen. Soll/kann ich die hier loswerden oder via github?

Moin
Das macht dann ja nichts. Einmal neues Photo aufnehmen, und weiter geht die wilde Fahrt!
Gruss Christoph
Soweit ist es klar. Setzt aber voraus, dass meine imaginäre Müslidose da auch wieder reibungslos draufpasst ;D ;D ;D .
Im Moment bin ich noch auf der Suche nach einem passenden Aufsatz für den aktuellen Zähler bzw. der Frage, ob ich den ESP nicht einfach mit einem (Kunststoff-) Winkel an die Wand dübeln soll. Kunststoff deswegen, weil es schon überraschend war, dass der ESP an der fraglichen Stelle überhaupt Empfang hat.

Btw.: Ich hatte den vor ganz langer Zeit mal erworben, nachdem mir das Vorgängerprojekt über den Weg gelaufen war. Aber das mit dem docker-Container war mir dann doch iVm. dem ganzen anderen Drumrum zu viel, das ernsthaft in Angriff zu nehmen. So ist es sehr viel eleganter, und der ESP darf tatsächlich das machen, für was er (lange) in der Schublade lag 8) .

Geflasht wurde er mit folgendem via Kommandozeile:
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0x1000 bootloader.bin 0x10000 firmware.bin 0x8000 partitions.bin
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rabehd am 25 November 2020, 18:13:26
Welche Erfahrungen gibt es bezüglich der Größe der SD-Karte?
Reichen 2 GB oder die hier erwähnten 4GB?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 25 November 2020, 19:08:13
Meins läuft mit 2GB tadellos.
4GB ist anscheinend das Limit für den ESP
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 20:00:39
Moin
Na ich bin mal wieder zu doof, oder habe Tomaten auf den Augen!
Wie komme ich denn auf den Zaehler? IP Adresse hat er, zumindest seheh ich Ihn, aber das Userinterface zeigt sich mir nicht!
Gibt es einen Port oder aehnliches?
Danke Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 20:16:04
Okay
Also wenn er denn wirklich im WLAN ist, dann geht es!
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Christoph Morrison am 25 November 2020, 20:34:02
Meins läuft mit 2GB tadellos.
4GB ist anscheinend das Limit für den ESP

Huh? Ich habe da ne 64GB-Karte reingemacht (hatte nix anderes). Funktionierte soweit, auch wenn die Einrichtung noch nicht komplett ist.

btw:
Ich hab mir ein Gehäuse (die Müslidose) und einen Halter für den ESP-CAM in Fusion360 konstruiert und gedrückt. Ich nutze eine externe Antenne.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 21:32:43
Moin nochmal
Naechstes Problem. Wie bekomme ich das Bild scharf?
Wenn ich es am Anfang richtig verstanden habe, dann muss ich einen Ring drehen!?
Ich scheine den nicht zu haben! Und egal wie weit ich von der Uhr entfernt bin, es ist immer unscharf!
Falls da wirklich Siegellack drueber ist, dann ist das extrem viel!
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 25 November 2020, 21:42:10
Hab mir diesen "Halter" https://www.thingiverse.com/thing:4573481 (https://www.thingiverse.com/thing:4573481) gedruckt.
Da ist auch ein Bild dabei wo der Ring und der Siegellack sitzen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 22:23:57
Hab mir diesen "Halter" https://www.thingiverse.com/thing:4573481 (https://www.thingiverse.com/thing:4573481) gedruckt.
Da ist auch ein Bild dabei wo der Ring und der Siegellack sitzen.
Hi
Danke, das war genau meine Vermutung! Nur ist das ja kein Lack, sondern Kleber! (glue)
Wie habt Ihr das abbekommen? Ich bin zu blind dafuer! Vielleicht brauche ich doch mal eine richtige Brille!
Danke und Gruss
Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 25 November 2020, 22:43:01
Hab für solche Sachen eine Lupe die man auf die Brille setzen kann.
Den Kleber/Lack hab ich mit der Spitze vom Teppichmesser abgekratzt.
Linse ging danach zwar immer noch schwer zu drehen, aber es war zu fokussieren.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 25 November 2020, 22:53:57
Ich hasse diese Chinesen!
Was soll so ein Bloedsinn? Da kannst Du jetzt tausend Artikel auf Amazon angucken! Die sehen alle ganz toll aus, und wenn Sie dann bei Dir sind, dann hast Du wieder den gleichen Mist wie vorher!
Und sehen tut man es erst, wenn man die Tuete offen hat!
Na mal sehen ob ich das irgendwie hinbekomme. Die Hoffnung ist nicht wirklich gross! Falls man den Kleber da runter bekommt, wie soll das dann funktionieren?
Ist da eine Art Gewinde drin?
Ansonsten bin ich ja echt begeistert!
Gruss Christoph

Edith:
Wenn Ihr sehen koenntet, mit welchem Werkzeug ich hier hantiere!?!
Aber irgendwann bewegt sich das Ding dann wirklich!
@Enno: das darfst du dann selbst machen, das ist einfach nur S......e!
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 26 November 2020, 07:42:15
@Enno: das darfst du dann selbst machen, das ist einfach nur S......e!
Das klingt nach Mechanik, das kann ich :D. Bin schon ganz zappellig....

Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 26 November 2020, 08:19:59
Das klingt nach Mechanik, das kann ich :D. Bin schon ganz zappellig....

:-) Sowas kenn ich.

Der größte "Programmieraufwand" ist aber das einrichten des Bildes und der Nummernbereiche.
Das aufspielen der Firmware auf den ESP und die SD Karte ist easy. Die ganze Konfig liegt auf der SD.

Zur Kamera, Ich hab mit einem Cutter Messer den Kleber soweit runtergekratzt wie es geht, dann konnte ich mit zwei Zangen die Linse einstellen.
Mit den Zangen hat es aber auch erstmal genirscht beim drehen.

Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 26 November 2020, 08:21:54
Habe meine älteste MicroSD ausgepackt (1GB), damit ging es auch...

Da mein imaginärer Drucker in China bleiben darf, gab's statt der Müslidose ein paar HT-Bauteile aus dem Baumarkt, die passten zufällig wie angegossen 8) . In dem Bogen liegt  ein 12V->5V Step-down, die 12V liegen eh' wg. MySensors-RS485 im Keller an.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 26 November 2020, 11:25:52
:-) Sowas kenn ich.

Der größte "Programmieraufwand" ist aber das einrichten des Bildes und der Nummernbereiche.
Das aufspielen der Firmware auf den ESP und die SD Karte ist easy. Die ganze Konfig liegt auf der SD.

Zur Kamera, Ich hab mit einem Cutter Messer den Kleber soweit runtergekratzt wie es geht, dann konnte ich mit zwei Zangen die Linse einstellen.
Mit den Zangen hat es aber auch erstmal genirscht beim drehen.
Ich glaube Enno hat keinen USB<->seriell Wandler!
Ist auch egal, das geht wirklich schnell!
Zwei Zangen habe ich auch genommen, aber da der Kleber gefuehlt ueberall war, war da mit Kratzen nicht viel. Habe dann mit sanfter roher Gewalt gedreht, und auf einmal hat es sich bewegt!
Bei meinen sind auch keine Einkerbungen oder aehnliches, und der Rand zum Anfassen ist auch nur ca. 1mm stark!
Inzwischen sieht fhem schon den Zaehlerstand. Aber dann war es mir heute zu frueh (0:02)
Mit dem Drucken wird es bei mir auch schwierig, da der Weihnachtsmann leider meinen Wunsch nicht beruecksichtigt hat! (evtl. ja dieses Mal!?)
Allerdings habe ich festgestellt, dass bei mir eine Konservendose 850ml recht gut auf den Plastikkragen passen sollte. Mal sehen, wann die naechste anfaellt. Ansonsten mal die HT-Variante antesten1
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 26 November 2020, 11:35:06
Ich glaube Enno hat keinen USB<->seriell Wandler!
...dann würde es aber langsam Zeit... :P

Zitat
Allerdings habe ich festgestellt, dass bei mir eine Konservendose 850ml recht gut auf den Plastikkragen passen sollte. Mal sehen, wann die naechste anfaellt. Ansonsten mal die HT-Variante antesten1
Gruss Christoph
Konservendose hatte ich auch erst angesehen, aber zum einen ist das Metall, was tendenziell nicht förderlich sein dürfte für die WLAN-Verbindung, zum anderen war das irgendwie wackelig.

Die HT-Rohr-Stücke passen wirklich wie angegossen: unten verklemmt das sauber im Kunststoffring des Zenner, und auch der ESP32 ist nur verklemmt, die Materialspannung reicht grade so, dass der halbwegs straff sitzt. Wenn ich sicher wüßte, dass die SD-Karte dauerhaft mitmacht, wäre noch etwas Heißkleber nach der Justage dazugekommen, aber auch so bin ich optimistisch, dass das dauerhaft an Ort und Stelle bleibt (bis der Monteur kommt).


Wegen der Lebensdauer der SD-Karte: weiß jemand, wie oft auf die Karte geschrieben wird? (ist ja interessant, dass auch 64GB gehen, aber wie lange es noch "so kleine Karten" gibt, ist keinem von uns bekannt...)

Und die Anschaltdauer der LED kommt mir auch lange vor. Hat da schon jemand dran rumgeschraubt oder kennt den Grund?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rabehd am 26 November 2020, 11:51:27
Ich will erstmal den Zähler in FHEM sehen und will deshalb es so wie hier beschrieben umsetzen. Es fehlt noch ein Teil.
Mir kam aber die Idee, ob es nicht sinnvoll wäre den ESP mit Temperatur- und Feuchtesensor zu erweitern? Da hätte man gleich ein paar Werte aus dem Keller. Geht das von Prinzip?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 26 November 2020, 12:25:29
Na ja, vermutlich ginge sowas schon, aber die Frage ist, ob sich sowas lohnt. Der ESP ist während der Verarbeitung des Bildes jeweils ziemlich lange beschäftigt - vermutlich kann man dann in der Zeit nichts messen (oder hat der ESP32 zwei Kerne?!?).

Tendenziell wäre (nach der Kalibrierung) auch eine Option interessant, das Teil ohne WLAN betreiben zu können (eigentlich wäre es mir persönlich recht, ich könnte den Wert einfach auf meinen MySensors-RS485-Bus schreiben, aber das ist purer C-Code und damit eher nicht kompatibel zu den Myensors-libs, ...), aber das ist alles ein gewisser (ziemlicher?) Aufwand.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 26 November 2020, 13:23:41
Und die Anschaltdauer der LED kommt mir auch lange vor. Hat da schon jemand dran rumgeschraubt oder kennt den Grund?
Moin
Ja das hat mich auch schon verwundert, und die finger habe ich mir daran gestern auch fast mehrfach verbrannt. Das Ding wird extrem hiess!
Anfangs habe ich den ESP immer in der Hand gehalten. Jetzt haengt der an einer astreinen Zollstock-Konstruktion!
Mist nur, dass kein Baumarkt auf meinem Heimweg liegt! Obwohl...
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 26 November 2020, 13:56:02
@Beta-User,
ist das DN50 wo der ESP32 drin klemmt?

Ich habe ein 10cm DN75 Rohr aufgesetzt und per Gummispanner befestigt.
habe am Zähler nur einen ca 5mm Rand , da kann ich nichts klemmen, deswegen die Gummis.
Den ESP habe ich im gedruckten Gehäuse vom Projekt noch ohne Deckel, deswegen das Tape zum fixieren.

Könnte mir aber das eingeklemmte auch ganz gut vorstellen, da ist man noch bisl flexibel in der Feinjustage.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 26 November 2020, 14:23:49
...du kannst Fragen stellen...

Das ist irgendein Adapter-/Reduzier-Stück, vermutlich auf DN50, an dem ich _nichts_ rumgeschnitzt habe, das ist also - bis auf das Etikett - im Originalzustand, Hersteller ist Marley. Müßte (ohne Gewähr!) in etwa das hier sein https://www.globus-baumarkt.de/marley-ht-anschlussstueck-dn-50, das meinige (Quelle: Bauspezi) hat jedenfalls "am Zähler" auch nur so einen kleinen Abschlusswulst, der denn "grade so" in den Kunststoffring am Zenner reinpasst. "grade so" meint: er ist etwas zu groß, so dass das Ding ganz leicht schräg ist, aber eben nicht rumrutscht, nur mit Kraftaufwand zu drehen ist und eben einfach für diesen Einsatzzweck völlig OK ist ::) .

Optisch deckt der kleinere Durchmesser oder der Wulst unten nichts relevantes ab, und der 87°-Winkel (man kann es auf dem Bild leider nur erahnen, dass es ein Winkelstück sein muss) stabilisiert dann die "Spannkonstruktion" noch ein wenig.

Bis alles justiert war, hat es dann aber schon ein paar Anläufe gebraucht, das wird vermutlich immer ein (kleines) Thema bleiben... Aber nichts im Vergleich zu meinen Justageversuchen mit einer Grün-LED, dem gepulsten Laser usw. usf...

Aber das mit dem Gummispanner sieht doch auch ok aus :) .
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 26 November 2020, 14:38:27
Bezüglich Justage, war aus meiner Sicht wichtig, dass es ein einigermaßen scharfes Bild ist (siehe Diskussion vorher bezüglich Anpassung des Fokus bei der ESP Kamera) und dass die wichtigen Teile zu sehen sind (also die digitalen Ziffern und die analogen Anzeigen). Zusätzlich sollte man darauf achten, dass der helle Fleck, den die LED auf der Scheibe der Wasseruhr erzeugt, nicht gerade mit den zuvor genannten wichtigen Teilen überlappt. Ansonsten ist es wichtig, dass das Ganze sich nach der Kalibrierung nicht von alleine verschiebt/verdreht. Ob das Rohr selbst verdreht ist oder etwas gekippt, ist aus meiner Sicht nicht so wichtig, das kann über die Kalibrierung ausgeglichen werden.
Die lange Dauer des LED Flashes hat Jomjol soweit ich mich erinnere deshalb eingestellt, damit sich die Kamera an die Lichtverhältnisse adaptieren kann.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 26 November 2020, 18:36:33
...du kannst Fragen stellen...
Aber das mit dem Gummispanner sieht doch auch ok aus :) .

Ja gell, im doofe Fragen stellen bin ich gut. 😂😂😂
Das mit den Spannern werd ich auch beibehalten.
Ich überlege aber den "Kopf" auf ein Reduzierstück umzubauen.
Die justierbarkeit hat denke ich klare Vorteile gegen den festen Kopf. 👍🏻😉

Edit:
Wenn man deine Bilder groß zoomt sieht man den Aufdruck. DN50 ist es.
Muss mal im Schuppen kramen. Denke so nen Übergang hab ich noch.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 28 November 2020, 11:58:38
Moin
So ich war gestern mal schnell im Baumarkt. Das Ding das Beta-User hat, habe ich jetzt auch.
Jetzt muss ich noch sehen wie ich da Strom hinbekomme. Gerade reaktiviere ich erstmal eine PowerBank von meinem Sohn, die vorsichtshalber komplett leer ist.
Dann ueberlege ich, ob ich eine Steckdose da hin baue, oder aus dem Kabel, welches zum Reedkontakt des Gaszaehlers geht einfach noch eine Ader nutze und einen Stepdown von 24V auf 5V da hin lege.
Beides hat seinen Charme!
Wie wichtig ist eigentlich das fixieren? Ist es nicht so, dass man durch die zwei Marken Referenzpunkte setzt, die die Software dann erkennt und korrigiert?!

Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rabehd am 28 November 2020, 15:28:01
Wie lange dauert eigentlich der Flash-Vorgang?
Ich versuche es mit dem "ESP32 DownloadTool" unter Windows.
Im Terminalfenster läuft was, aber eben auch schon seit 30 Minuten.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 28 November 2020, 15:40:26
Unter Linux dauerte das keine Minute, verwendete Baudrate siehe einen meiner Posts hier. Aber 30 Min? Da ist was faul, selbst wenn die auf "sehr niedrig" gestellt war...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 28 November 2020, 15:41:54
Ich glaube Enno hat keinen USB<->seriell Wandler!

Ihr habt mich bei meiner Ehre gepackt, ich habe natürlich einen USB<->seriell Wandler. Meinen Wasserstandssensor habe ich auch irgendwie auf den ESP bekommen. Aber verstanden hatte ich es nicht 8) Habt Ihr einen Tip für das flashen? Am besten mit Bildern wo die Kabel hin müssen und welche Knöpfe wann gedrückt werden. Ich habe mich gestern mal  mit dieser Seite https://www.fambach.net/esp32-cam-modul/ versucht, aber entweder passt die Verkabelung nicht, oder der Treiber oder, oder... Heute Abend werde ich es noch mal versuchen.



Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 28 November 2020, 16:17:27
Habt Ihr einen Tip für das flashen? Am besten mit Bildern wo die Kabel hin müssen und welche Knöpfe wann gedrückt werden. Ich habe mich gestern mal  mit dieser Seite https://www.fambach.net/esp32-cam-modul/ versucht, aber entweder passt die Verkabelung nicht, oder der Treiber oder, oder... Heute Abend werde ich es noch mal versuchen.
Hi Enno,

Das ist hier unter Installation detailliert beschrieben:
https://github.com/jomjol/AI-on-the-edge-device/wiki

Grüße
Frank
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rabehd am 28 November 2020, 16:22:48
Unter Linux dauerte das keine Minute, verwendete Baudrate siehe einen meiner Posts hier. Aber 30 Min? Da ist was faul, selbst wenn die auf "sehr niedrig" gestellt war...
Nach dem ich den ESP vom Board genommen habe und alles Freiluft verkabelt habe, ging es.
 :o
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 28 November 2020, 18:16:32
Moin

ich liebe es wenn ein Plan funktioniert. Richtig verkabelt, war es. Der Fehler war auf meinem Rechner. (Linux Arch) Normaler User hat keine Schreibrechte auf Serial port /dev/ttyUSB0 dann gab es bei Aufruf von esptool erase_flash den Fehler bash: esptool: Kommando nicht gefunden.. mit folgendem Befehl habe ich es dann geschafft: sudo /usr/bin/esptool.py write_flash 0x01000 bootloader.bin 0x08000 partitions.bin 0x10000 firmware.bin

ESP ist angemeldet, Cam liefert Bild. Jetzt kommt der mechanische Teil... dank Eurer Berichte hier wird auch das sicherlich klappen.

Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 28 November 2020, 18:43:47
Moin
So ich war gestern mal schnell im Baumarkt. Das Ding das Beta-User hat, habe ich jetzt auch.
Jetzt muss ich noch sehen wie ich da Strom hinbekomme. Gerade reaktiviere ich erstmal eine PowerBank von meinem Sohn, die vorsichtshalber komplett leer ist.
Dann ueberlege ich, ob ich eine Steckdose da hin baue, oder aus dem Kabel, welches zum Reedkontakt des Gaszaehlers geht einfach noch eine Ader nutze und einen Stepdown von 24V auf 5V da hin lege.
Beides hat seinen Charme!
Wie wichtig ist eigentlich das fixieren? Ist es nicht so, dass man durch die zwei Marken Referenzpunkte setzt, die die Software dann erkennt und korrigiert?!

Gruss Christoph

Fixierung muss so sein, dass die Referenzen in einem Suchfeld von +/- 20 Pixel in jede Richtung liegen muss. Bei mir funktioniert abnehmen und wieder aufsetzen ohne Probleme und ohne Teachen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 28 November 2020, 18:43:56
Moin
So ich war gestern mal schnell im Baumarkt. Das Ding das Beta-User hat, habe ich jetzt auch.
Jetzt muss ich noch sehen wie ich da Strom hinbekomme. Gerade reaktiviere ich erstmal eine PowerBank von meinem Sohn, die vorsichtshalber komplett leer ist.
Dann ueberlege ich, ob ich eine Steckdose da hin baue, oder aus dem Kabel, welches zum Reedkontakt des Gaszaehlers geht einfach noch eine Ader nutze und einen Stepdown von 24V auf 5V da hin lege.
Beides hat seinen Charme!
Wie wichtig ist eigentlich das fixieren? Ist es nicht so, dass man durch die zwei Marken Referenzpunkte setzt, die die Software dann erkennt und korrigiert?!

Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 29 November 2020, 11:57:53
@enno
Und gerade wollte ich Deinen fertig machen und morgen zur Post bringen.
Na dann beim naechsten Mal!
Viel Erfolg noch
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 29 November 2020, 12:04:01
@enno
Und gerade wollte ich Deinen fertig machen und morgen zur Post bringen.
Hallo Christoph,

danke dir, leg ihn mal nicht zu weit weg, ich habe einen hier mit dem ich am Wasserzähler teste. Wenn ich verstanden habe wie das funktioniert muss ich das ganze an meinen Stromzähler anpassen. Da werde ich mich bestimmt noch mal bei dir melden :)

Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 29 November 2020, 12:09:11
Wie sollte das eigentlich mit den "N" Werten funktionieren?
Dachte die Firmware korrigiert die selbst?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 29 November 2020, 12:38:16
Na ja, wenn presetValue gesetzt ist, klappt das, soweit erkennbar jedenfalls...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 29 November 2020, 13:50:18
Danke, dann warte ich mal den nächsten Wechsel ab.
Fr auf Sa Nacht hat er sich aufgehängt. Nach hartem Neustart stand er auf ,9 mit N vor dem Komma.
Gehe davon aus dass das nicht passiert wenn er sauber auf ,9 läuft.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Prof. Dr. Peter Henning am 30 November 2020, 05:35:32
Ich häng emich hier interessehalber mal rein.

LG

pah
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 30 November 2020, 08:22:02
Danke, dann warte ich mal den nächsten Wechsel ab.
Fr auf Sa Nacht hat er sich aufgehängt. Nach hartem Neustart stand er auf ,9 mit N vor dem Komma.
Gehe davon aus dass das nicht passiert wenn er sauber auf ,9 läuft.

Wenn die Postprozessing Einstellungen entsprechend gesetzt sind (das sind mehrere Einstellungen, Details siehe hier https://github.com/jomjol/AI-on-the-edge-device/wiki/Configuration-Parameter-Details (https://github.com/jomjol/AI-on-the-edge-device/wiki/Configuration-Parameter-Details)), dann werden eigentlich keine Ns mehr zurück geliefert (im HTML Interface sind die Ns noch bei den Rohwerten zu sehen, werden aber korrigiert). Eventuell musst Du den MaxAge Parameter etwas hochdrehen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 30 November 2020, 10:26:32
Ich hab den PreValue gesetzt.
Damit hat er es problemlos geschafft N durch den richtigen Wert zu ersetzen.
Im weiteren Verlauf sollte er das selbstständig können.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 30 November 2020, 10:33:28
Noch ein weiterer Punkt. Es gab Probleme im Zusammenhang mit dem Nulldurchgang, wenn vorher schon ein N an der letzten Nachkommastelle des Ganzzahlteils erkannt wurde. Das scheint inzwischen in einer Testversion auch gelöst zu sein (zumindest bei mir hat es geklappt). Siehe https://github.com/jomjol/AI-on-the-edge-device/issues/40 (https://github.com/jomjol/AI-on-the-edge-device/issues/40)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 30 November 2020, 11:55:47
Danke eki,

Ben mir hatte sich die GUI wieder aufgehangen, der Zähler selbst ging aber noch.
Ich hab jetzt auch mal die aktuelle Rolling drauf. mal sehen was passiert. :-)

/Frank
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Hauswart am 30 November 2020, 15:06:12
Hat jemand eine gute Bezugsquelle? (Lieferung von Europa aus)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 30 November 2020, 15:14:36
Hat jemand eine gute Bezugsquelle? (Lieferung von Europa aus)
mit externer Antenne:
https://www.amazon.de/dp/B07QS7VFMJ
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Hauswart am 30 November 2020, 18:19:35
mit externer Antenne:
https://www.amazon.de/dp/B07QS7VFMJ
Jetzt noch mit USB-Port wäre Luxus... :) Externe Wifi bräuchte ich nicht. Abstand zum AP keinen Meter.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 30 November 2020, 19:54:10
Aber du weißt schon wie man in A... Oder e... Sucht, oder?
Ohne Antenne auf A. Nen Zehner aus DE.

Mit USB Port gibt's den Esp32-Cam imho nicht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 30 November 2020, 20:45:15
Doch, den gibt es mit USB-C , aber dann fehlt die SDCard leider :/ Also nicht wirklich hier nutzbar.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 01 Dezember 2020, 17:57:07
Moin
Irgendwie habe ich noch ein Problem!
Bei mir fuellt sich "value" nicht mit dem richtigen Wert!
Ich haette ja erwartet, dass der dem "readout" entspricht, wie bei eki im ersten Post. Bei mir fehlt das kleine Bisschen vor dem Komma!
Und irgendwie macht die Statistik auch was sie will. Ich gestehe aber auch, dass ich da nicht ganz durchsehe!
Kann mich jemand an die Hand nehmen?
Gruss Christoph

Edith:
So jetzt habe ich noch mal versucht die Posts von pink99panther nachzuvollziehen. Er hatte ja das gleiche Problem, ich habe da nur drueber weggelesen.
Ich habe dann mal das reading von "value" angepasst. Jetzt warte ich mal. Grundsaetzlich kann ich aber pink.. verstehen, dass er zum watercalculator Modul gewechselt ist. Das laeuft bei mir parallel, und ist irgendwie einleuchtender fuer mich!
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 01 Dezember 2020, 20:46:13
Die ganzen Korrekturen sollten eigentlich mit der neuesten Version der Firmware gar nicht mehr nötig sein. Das mit den Statistiken kann ja nicht klappen, wenn schon value nicht richtig funktioniert ist aber zugegebenermaßen ein bisschen gewöhnungsbedürftig. Ihr könnt ja mal die Details der watercalculator Lösung posten, vielleicht steige ich dann auch noch um.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 02 Dezember 2020, 06:55:56
Moin
Das ist schnell erklaert.
define <name> WaterCalculator <namedesdevices:readout.*>Und dann geht das schon froehlich los. Man Kann sogar Kosten hinterlegen und die commandref ist auch recht umfangreich! https://commandref.fhem.de/#WaterCalculator
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 03 Dezember 2020, 19:50:43
Moin
Wow, das Ding haut sich ja mal genz schoen was rein! Habe mich eben gewundert, warum denn die Werte nicht aktualisiert wurden.
Powerbank alle! Und ja/nee, die hat 72Wh, die sollte schon was halten!
Dann muss ich am WE doch eine Entscheidung treffen!
Gruesse Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: WW am 06 Dezember 2020, 20:31:31
Jetzt noch mit USB-Port wäre Luxus... :) Externe Wifi bräuchte ich nicht. Abstand zum AP keinen Meter.

https://www.amazon.de/dp/B08P1NMPLL/ref=twister_B08GRZMVM4?_encoding=UTF8&psc=1
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Christoph Morrison am 06 Dezember 2020, 21:46:08
https://de.aliexpress.com/item/1005001722303127.html?spm=a2g0o.productlist.0.0.4d036ee50xNvkI&algo_pvid=1a0ddb55-510eb-4a3a-9a4c-2c364d7ad10b&algo_expid=1a0ddb55-50eb-4a3a-9a4c-2c364d7ad10b-10&btsid=2100bb4a16072875381167686e9625&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 07 Dezember 2020, 13:53:04
Ich bin begeistert!  :)
Was habe ich nicht alles probiert, um die Wasseruhr einzulesen...  :-\

Und jetzt, ohne dass ich die Kamera schon richtig ausgerichtet und fixiert habe und das Bild (noch) ziemlich unscharf ist, wird der Wert schon korrekt erkannt.

Die Anbindung an FHEM ist dann nur noch die Kür.  8)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 08 Dezember 2020, 09:26:58
Moin
Ja geniale Sache das!
Wieso ist Dein Bild so extrem hell? Ich habe ja dieses HT-Rohr im Einsatz, wo das Licht ja eingefangen ist, und das ist nicht mal halb so hell!

Noch eine Frage an die Allgemeinheit. Ich hatte letztens einen Uebergang einer Zahl, die ist natuerlich genau in der Mitte stehengeblieben.
Dann wurde ein N generiert, parallel dazu wurde vorne aus einer 6 eine 8 erkannt. Hatte das schon jemand? Waren dann mal eben 200m³ mehr.

Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 08 Dezember 2020, 13:12:16
Also bei mir sind diese Übergänge seit einiger Zeit (seit der Korrektur mit den Nulldurchgängen) sehr stabil und liefern eigentlich keine Ns mehr. Was hast Du denn in der config auf der ESP32-CAM Seite eingestellt.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 08 Dezember 2020, 14:38:14
Wieso ist Dein Bild so extrem hell? Ich habe ja dieses HT-Rohr im Einsatz, wo das Licht ja eingefangen ist, und das ist nicht mal halb so hell!

Findest Du, dass das extrem hell ist? Ich habe keine besonderen Einstellungen vorgenommen. Der eingaubte LED-Blitz ist bei Dir aber auch an?

Das HT-Rohr will ich vielleicht heute Abend montieren. Dann werde ich auch mal versuchen, mit dem Drehrad an der Linse das Bild schärfer zu bekommen. Ich hoffe, dass mir da nix kaputt geht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 08 Dezember 2020, 19:34:54
Also bei mir sind diese Übergänge seit einiger Zeit (seit der Korrektur mit den Nulldurchgängen) sehr stabil und liefern eigentlich keine Ns mehr. Was hast Du denn in der config auf der ESP32-CAM Seite eingestellt.
Ich habe da nichts veraendert!
Es war aber auch ganz bloede die 7 war gerade am rauswandern! Mehr problematisch war, dass vorne die andere Zahl auf einmal falsch erkannt wurde.
Aber ich meckere auf hohem Niveau, vorher hatte ich nichts, jetzt habe ich quasi alles!
Danke und Gruss
Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 09 Dezember 2020, 07:35:09
Meine Einstellungen sehen folgendermaßen aus (ich hatte vor allem den Parameter PreValueAgeStartup erhöht). Damit sollte eigentlich ein Sprung um mehrer hundert m3 (wegen MaxRateValue) nicht vorkommen.

[PostProcessing]
DecimalShift = 0
PreValueUse = True
PreValueAgeStartup = 750
AllowNegativeRates = False
MaxRateValue = 0.1
ErrorMessage = True
CheckDigitIncreaseConsistency = True
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Lucky2k12 am 09 Dezember 2020, 12:30:01
Super Sache, wollte ich natürlich gleich testen.
Ich habe 2 esp32-cam hier. Der linke läuft am 3d Drucker als Webcam, der rechte sollte auf den Zähler. Leider scheint das rechte Kameramodul kaputt zu sein. Beides sollten OV2640 Cams sein.
Oder kann es auch an der Programmierung liegen?

Edit: Kreuztausch hab ich natürlich probiert. Die rechte Cam geht auch nicht am linken Webcam Modul mit dem Standardscript aus der Arduino-IDE, aber die linke Cam läuft mit der Wasserzähler Firmware auf dem rechten Modul. Hat jemand ein Modul mit der Aufschrift AF2569 0927XA erfolgreich mit der firmware hier in Betrieb?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 10 Dezember 2020, 10:22:29
Hallo Zusammen,

hat hier zufällig jemand eine vernünftige Bezugsquelle für das CAM-Modul?
Bei meinem ist die Linse so fest verklebt, dass es unmöglich ist, den Fokus zu reduzieren.


Viele Grüße

Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: enno am 10 Dezember 2020, 13:42:35
Bei meinem ist die Linse so fest verklebt, dass es unmöglich ist, den Fokus zu reduzieren.

Moin,

vielleicht kann ja auch jemand mal Bilder posten, wo man die Schnitte setzen muss, um die Linse zu lösen. Ich habe mich auch noch nicht getraut, da ich bei meinen Teilen nicht erkennen kann ob von der Seite oder von vorne...

Gruss
  Enno
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 10 Dezember 2020, 14:05:09
Ich warte gerade auf neue ESP32 Module.
Wenn die da sind mach ich mal Detail-Bilder mit dem USB-Mikroskop.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 10 Dezember 2020, 16:13:20
Hallo Zusammen,

hat hier zufällig jemand eine vernünftige Bezugsquelle für das CAM-Modul?
Bei meinem ist die Linse so fest verklebt, dass es unmöglich ist, den Fokus zu reduzieren.


Viele Grüße

Christoph
Hallo Christoph
Willkommen im Club!
Ich habe es dann einfach aufgegeben. Das untere Gehaeuseteil mit einer Spitzzange festgehalten, und dann ganz mutig mit einer Kombizange oben zugegriffen.
Irgendwann habe ich dann gemerkt, dass der Kleber aufgegeben hat, und dann konnte ich weiterdrehen. Auf eine Quelle wuerde ich mich nicht verlassen, da der Chinese es da nicht so genau nimmt. Was Du heute bekommst, muss morgen nicht bei mir das Gleiche sein. Das Problem siehst Du schon, wenn ich in der Anleitung lese, da waere was gezacktes. Bei mir ist alles glatt, wenn man beim grossen A guckt, dann sieht das aber anders aus, oder ist gar nicht wirklich zu erkennen!
Ich hatte da mal eine ganz tolle Erfahrung mit ein paar NodeMCU von Ali. Da habe ich extra einen Lieferanten ausgesucht, der die richtigen im Bild hatte. Angekommen ist natuerlich was anderes.
Also mutig voran, irgendwann dreht sich die Linse und man glaubt gar nicht wie scharf das Bild dann wird!
Gruss und viel Erfolg
Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 10 Dezember 2020, 16:44:02
Den Ring zum Drehen bekomme ich gar nicht erst zu fassen. Der sitzt in einem anderen Ring; diesen Ring müsste ich vermutlich erst absäbeln.

Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 10 Dezember 2020, 17:38:32
Hier mal ein Versuch den Kleber zu zeigen.

Sorry habe nachtraeglich das Bild bearbeitet
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: frober am 10 Dezember 2020, 18:02:16
Ich habe noch 2 Bilder von der Seite, da wo es zerkratz aussieht war bei mir der Kleber.

Nachtrag:
Mit Lupe und Cuttermesser ging das recht gut, ich konnte das Gewinde gleich mit der Hand drehen.

Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 10 Dezember 2020, 19:28:30
@frober
Bei Dir ist ja dieses "gezackte" vorhanden. Da denke ich mir das es etwas leichter geht. Bei mir ist einfach eine glatte Oberflaeche mit drei Zentner Kleber fixiert.
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: frober am 10 Dezember 2020, 21:24:17
Gezackt oder glatt ist, glaube ich, nicht das Problem.
Zuviel Kleber erhöht das Risiko, dass dieser ins Gewinde zieht. Bei mir es nur ein Tropfen oberflächlich.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: SusisStrolch am 10 Dezember 2020, 21:59:42
Kann man das Bild auch auf X- oder Y-Achse spiegeln?
Ich überlege das Modul für meinen Stromzähler zu verwenden, habe aber keine 10cm Freiraum.
Dachte an einen Spiegel mit 45• Winkel vorm Zähler.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 11 Dezember 2020, 08:19:12
Spiegeln geht, beim Alignment des Referenzbildes gibt es eine Option "Mirror image", habe ich aber noch nicht ausprobiert.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 20 Dezember 2020, 19:19:44
Ich habe mich mal drüber gewagt und das nachgebaut ... war dank toller Dokus recht einfach. Das schwierigste war Befestigungen für Wasser- und Gaszähler zu bauen. Aber auch das ist mittlerweile erledigt. Die beiden cams verrichten seit zwei Tagen Probebetrieb, nach anfänglichen hoppala's läufts aber mittlerweile recht rund und zuverlässig.

Zum Thema spiegeln: ich habe das für den Gaszähler verwendet, da sitzt ein 45° Spiegel davor, die Kamera liest das Bild von oben - klappt wunderbar (siehe Bild).

Speziell beim Gaszähler hatte ich ein unerwartetes Problem: dort gibts ja keine analogen Rundskalen wie bei der Wasseruhr. Das setup weist sogar darauf hin, wenn man keine hat soll man alle ROI's dafür löschen. Das klappt jedoch nicht, weil der Assistent einen dann nicht weiter läßt. Hat das jemand vlt. schon gelöst und kann mir einen Hinweis geben? Im Moment arbeite ich mit einem workaround, funktioniert zwar, aber schön ists nicht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 21 Dezember 2020, 08:37:26
Kannst Du die Analog-ROIs nicht direkt in der Config löschen?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 21 Dezember 2020, 13:14:08
Kannst Du die Analog-ROIs nicht direkt in der Config löschen?
doch, aber dann läuft die Erkennung gar nicht los :(
Ich hab einige Varianten versucht ... die komplette analog section löschen, die section Überschrift lassen und nur die ROI Definitionen löschen, die Zählerdefinition rein/raus ... hat leider alles nicht geholfen
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 21 Dezember 2020, 14:47:25
Vielleicht hilf das ja: https://github.com/jomjol/AI-on-the-edge-device/issues/72 (https://github.com/jomjol/AI-on-the-edge-device/issues/72)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 21 Dezember 2020, 16:12:09
Vielleicht hilf das ja: https://github.com/jomjol/AI-on-the-edge-device/issues/72 (https://github.com/jomjol/AI-on-the-edge-device/issues/72)
danke für den link ... ganz versteh ich die Lösung allerdings nicht :'(
naja ich werd nochmal ein bischen experimentieren, vlt. klappts doch irgendwie. Für den Moment lebe ich ganz gut mit dem workaround
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: jomjol am 23 Dezember 2020, 08:09:42
  Hallo wetterhexe, hallo eki,

ich bin der Autor des Wasserzaehlers. Ich habe auch schon an anderer Stelle gelesen, dass es für Gaszähler eine einfache Möglichkeit zum Abschalten der analogen Zeiger geben sollte. Ich habe mir selbst mal einen Issue in GitHub erzeugt, damit das nicht verloren geht:
https://github.com/jomjol/AI-on-the-edge-device/issues/74

Momentan arbeite ich gerade an einem anderen Thema, daher komme ich nicht kurzfristig dazu.

Beste Grüße,
  jomjol
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: CQuadrat am 23 Dezember 2020, 13:46:13
Mal an die Hardware-Experten hier:

Gibt es etwas Vergleichbares auch mit LAN-Anschluss?
Oder lässt sich an den ESP auch irgendwie ein (kabelgebundener) LAN-Anschluss anbinden?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: McShire am 28 Dezember 2020, 23:16:48
Hi,
ich bin der Autor des "AI-on-the-edge" devices. Ich freue mich sehr, wenn es weitere Verbreitung findet.

Folgender Hinweis noch zu den "N": es gibt eine eingebaute Logik, die bei diesen undefinierten Zwischenwerten das "N" durch einen plausibiliserten Wert aus der vorher gültigen Auswertung ersetzt. Dieser Wert wird als "PreValue" auf die SD-Karte abgespeichert und übersteht daher auch einen Reboot. Gleichzeit ist auch eine Logik integriert, die auf Konsiszenzen prüft. Eigentlich bedarf es daher keines externen Scripts.
Stehe für Rückfragen und Details zur Konfiguration gerne zur Verfügung.
Beste Grüße,
  jomjol

Hallo jomjol,

ich habe mir das benötigte Material besorgt und möchte nun den Wasserzaehler gerne nachbauen.
Leider bin ich in der github Struktur unerfahren und auch in FHEM in dieser Tiefe nicht sehr bewandert,
habe aber schon einiges in FHEM auf dem Raspi3B gemacht (Selbstbau CULs für MAX!, Homematic, Signalduino, mit AsksinPP einiges
Rolladensteuerung, Entertain mi MR401, und ein paar andere). Und einiges auf dem ESP32 NodeMCU mit der ArduinoIDE auch programmiert.

Zur Software für den Wasserzähler brauche ich jedoch eine Menge Unterstützung, da ich vieles nicht weiß oder nicht verstehe.
Das fängt schon bei den Vorbereitungen an.
Woher bekomme ich das Image, dass ich auf die SD-Card übertragen muss, ich nehme an mit einem Windows Image Writer?
Woher bekomme ich den Code, den ich in den ESP32 flashen muss?
Kann ich das auch über die ArduinoIDE machen (PlatformIO habe ich nicht und kann ich auch nicht bedienen), Zur Not kann ich
Esspressif installieren und verwenden.
Gibt es eine Anleitung, die ich als Laie verstehe oder darf ich Dich mit den einzelne Fragen, so naiv diese auch klingen, jeweils um Rat fragen?

Viele Grüße
Werner
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: McShire am 29 Dezember 2020, 00:36:14
Hallo jomjol,
ich habe jetzt mal platformIO installiert.
Da muss ich noch viel üben, aber ich glaube damit könnte ich mich anfreunden. Ist doch viel professioneller als Arduino IDE und Espressive.
Viele Grüße
Werner
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 29 Dezember 2020, 07:58:33
Morgen Werner,
Auf der Wiki Seite im Github ist die Installation detailliert erklärt.
Inkl fertiger bin Dateien.
Grüße
Frank
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Accureve am 03 Januar 2021, 22:55:58
Hallo und danke auch an Jomjol!

ich nutze zum Auslesen ein HTTPMOD - hier die RAW-Definition:
defmod Wasserzaehler HTTPMOD http://x.x.x.x/setPreValue.html 180
attr Wasserzaehler userattr reading01Name reading01Regex
attr Wasserzaehler oldreadings Zaehlerwert
attr Wasserzaehler reading01Name Zaehlerwert
attr Wasserzaehler reading01Regex ([0-9\.]+)HTTP
attr Wasserzaehler stateFormat {sprintf("Zählerwert %.4f m³ / Diff %.1f l", ReadingsVal("Wasserzaehler","Zaehlerwert",0), (ReadingsVal("Wasserzaehler","Zaehlerwert",0) - ReadingsVal("Wasserzaehler","alterWert",0))*1000 )}
attr Wasserzaehler timeout 30
attr Wasserzaehler userReadings alterWert { OldReadingsVal("Wasserzaehler","Zaehlerwert",0) }

Ich habe bei meiner Linse keinen Kleber entfernt - mit einer Spitzzange habe ich die Linse mit anfänglichem größeren Widerstand um die empfohlene Vierteldrehung gegen den Uhrzeigersinn drehen können (https://www.amazon.de/gp/product/B081L95PQ6).

@CQuadrat: LAN-Anbindung sollte funktionieren - hier eine Idee: https://www.arduinoforum.de/arduino-Thread-ESP32-Ethernet?pid=55284#pid55284
@McShire: Am besten die Anleitung durcharbeiten - klappt ganz gut :-) https://github.com/jomjol/AI-on-the-edge-device/wiki
3 Anmerkungen zur Installation:

@Wetterhexe: Führe die Konfiguration durch - die überflüssigen ROIs kannst du nach der Initalkonfiguration löschen (Webseite -> "Configuration" -> "Regions of interest (ROI)" -> "Analog ROIs" -> "Delete ROI"). Alternativ auch über die config.ini (Webseite -> "Configuration" -> "Edit Configuration" -> "Expertenmodus" -> "Edit Config.ini direct")

Gruß
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 08 Januar 2021, 19:31:25
@Wetterhexe: Führe die Konfiguration durch - die überflüssigen ROIs kannst du nach der Initalkonfiguration löschen (Webseite -> "Configuration" -> "Regions of interest (ROI)" -> "Analog ROIs" -> "Delete ROI"). Alternativ auch über die config.ini (Webseite -> "Configuration" -> "Edit Configuration" -> "Expertenmodus" -> "Edit Config.ini direct")
ich hab schon geschrieben daß das nicht funktioniert (mit v5.0.0) ... hier: https://forum.fhem.de/index.php/topic,115506.msg1112802.html#msg1112802 (https://forum.fhem.de/index.php/topic,115506.msg1112802.html#msg1112802)

Seit kurzem gibts ja v6.0.0, die das angeblich kann ... werd ich mir mal ansehen
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Carsten am 10 Januar 2021, 21:40:33
Super Projekt!

Ich hab einen "nassen" Wasserzähler, wo also die Anzeige mit im Wasser ist. Ich erinnere mich dunkel, mal gelesen zu haben, dass man da die Klappe nicht auflassen darf wegen möglicher Algenbildung bei Lichteinfall. Kann es da Probleme geben, wenn der Mann zum Ablesen kommt? Das hiesige Wasserwerk traut dem Kunden das Ablesen nicht zu und schickt immer jemanden vorbei.

Die Klappe ist auch Schuld, dass der Adapter bei mir nicht passt. Muss ich mir noch anpassen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 10 Januar 2021, 21:59:29
Hallo,

ich habe auch so eine Wasseruhr. Ich giesse manchmal Wasser nach, weil die Wasseruhr beschlägt und dann nichts mehr abgelesen werden kann. Ich habe ein Winkel angebaut und den ESP32-Cam in ein Klarsichtgehäuse verpackt, nur die Linse schaut unten raus. Sieht nicht unbedient schön aus, macht aber was es soll und mal sehen wie lange. Ist ziehmlich feucht da unten. Paar Bilder als Anlage.

pejonp 

Nachtrag:

Kunststoffgehäuse für ESP32-CAM (mitteler Box): https://www.pollin.de/p/kunststoff-boxen-3er-set-verschiedene-groessen-511168
externe Antennenverlängerung: https://www.pollin.de/p/magnetfussantenne-2-4-ghz-3-m-sma-stecker-hoehe-220-mm-572222
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 17 Januar 2021, 16:44:33
Ich verstehe es nicht.
Benutze die Firmware 5.0.0
Mein Bild ist relativ scharf und ich habe alle Konfigurationsschritte mehrfach durch, aber es wird kein RAW-Wert erkannt.

Hier meine config.ini:
[MakeImage]
;LogImageLocation = /log/source
;LogfileRetentionInDays = 15
WaitBeforeTakingPicture = 5
ImageQuality = 5
ImageSize = VGA

[Alignment]
InitialRotate = 179
/config/ref0.jpg 197 193
/config/ref1.jpg 403 150
SearchFieldX = 20
SearchFieldY = 20


[Digits]
Model = /config/dig0720s1.tflite
;LogImageLocation = /log/digit
;LogfileRetentionInDays = 3
ModelInputSize = 20 32
digit1 208 151 17 30
digit2 230 151 17 30
digit3 252 151 17 30
digit4 274 151 17 30
digit5 296 151 17 30
digit6 320 151 17 30
digit7 342 151 17 30
digit8 368 151 17 30

[Analog]
Model = /config/ana0630s2.tflite
;LogImageLocation = /log/analog
;LogfileRetentionInDays = 3
ModelInputSize = 32 32
analog1 345 197 104 104

[PostProcessing]
DecimalShift = -3
PreValueUse = true
PreValueAgeStartup = 720
AllowNegativeRates = false
MaxRateValue = 0.1
ErrorMessage = true
CheckDigitIncreaseConsistency = false

[MQTT]
Uri = mqtt://192.168.0.2:1883
Topic = ESP32_001/zaehlerstand
TopicError = ESP32_001/error
;ClientID = wasser
;user = USERNAME
;password = PASSWORD

[AutoTimer]
AutoStart = true
Intervall = 4.85

[Debug]
Logfile = false
LogfileRetentionInDays = 3

[System]
TimeZone = CET-1CEST,M3.5.0,M10.5.0/3
;SetupMode = false

[Ende]

Irgendwie scheint es auch Probleme mit der Erkennung des Analog-Wertes zu geben.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 17 Januar 2021, 16:56:48
@Papaloewe

vielleicht weniger als Referenz nehmen z.B. nur P:1 und nicht das ganze. Kann vielleicht nicht ausgewertet werden.
Und bei ELSTER nur die 3 ersten Buchstaben, weil beim Rest ist eine Spiegelung von der LED drin. Vielleicht hilft es.

pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 17 Januar 2021, 19:34:19
@Papaloewe

ich würde versuchen, mit der Kamera näher ranzugehen. Die Ziffern im image sind sehr klein. Die Spiegelung hatte ich auch, das ist sehr störend, und hat bei manchen Konstellationen immer wieder zu Fehlerkennung geführt (6 vs. 0). Du kannst versuchen die Kamera leicht schräg aufzusetzen, hat bei mir jedenfalls geholfen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 19 Januar 2021, 20:09:40
Vielen Dank für eure Tipps, aber letztendlich lag es an der SD-Karte.
Jetzt habe ich mir eine neue 4GB Karte besorgt und es lief (fast) auf Anhieb.

Gruß
Thomas
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: doesel am 21 Januar 2021, 05:44:18
@pejonp:

Zitat
Hallo,

ich habe auch so eine Wasseruhr. Ich giesse manchmal Wasser nach, weil die Wasseruhr beschlägt und dann nichts mehr abgelesen werden kann.

Da meine "nasse" Wasseruhr leider auch beschlägt, hier die Frage: Wie kann man da Wasser nachfüllen?
Danke für die Info,
Doesel
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 21 Januar 2021, 10:03:39
@doesel

Hallo,
meine Wasseruhr hat einen kleinen Rand an dem auch der Deckel befesstigt ist. Da habe ich Wasser raufgegossen bis es rüberlief. Dann bleibt ein dünner Wasserfilm stehen und die Uhr beschlägt nicht mehr. Bis jetzt funktioniert es noch.

pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: doesel am 21 Januar 2021, 10:51:36
Danke für die schnelle Antwort. Werde ich gleich probieren. Bin gespannt.
Gruß Doesel
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 23 Januar 2021, 10:25:23
Hi,

Ich habe seit heute ganz frisch die erste ESP32-CAM mit der aktuellen SW-Version 2021-01-21 (mittels git clone gezogen). Ich habe alles konfiguriert. Nach dem Boot wird ein Foto geschossen. Beim nächsten Interval kommt das Device in eine Foto-Schleife (ca. 5 Sekunden-Takt, Licht an, aus) und ist per WLAN nicht mehr zu erreichen.

Hat einer von Euich denselben Effekt oder eine Idee was da passiert?

VG plin
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 23 Januar 2021, 10:48:06
Hallo plin

schau mal auf der seriellen Schnitstelle, was der ESP tut!
Könnte evtl. eine Bootschleife wegen Strommangel sein.

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 23 Januar 2021, 15:38:23
schau mal auf der seriellen Schnitstelle, was der ESP tut!
Könnte evtl. eine Bootschleife wegen Strommangel sein.
Bootschleife: ja
Strommangel: eher nicht

Im Logfile steht:

2021-01-23_15-00-08: Time zone set to CET-1CEST,M3.5.0,M10.5.0/3
2021-01-23_15-00-08: =============================================================================================
2021-01-23_15-00-08: =================================== Main Started ============================================
2021-01-23_15-00-08: =============================================================================================
2021-01-23_15-02-50: Time zone set to CET-1CEST,M3.5.0,M10.5.0/3
2021-01-23_15-02-50: =============================================================================================
2021-01-23_15-02-50: =================================== Main Started ============================================
2021-01-23_15-02-50: =============================================================================================
2021-01-23_15-04-30: Time zone set to CET-1CEST,M3.5.0,M10.5.0/3
2021-01-23_15-04-30: =============================================================================================
2021-01-23_15-04-30: =================================== Main Started ============================================
2021-01-23_15-04-30: =============================================================================================
2021-01-23_15-31-27: Time zone set to CET-1CEST,M3.5.0,M10.5.0/3
2021-01-23_15-31-27: =============================================================================================
2021-01-23_15-31-27: =================================== Main Started ============================================
2021-01-23_15-31-27: =============================================================================================

Und der serial Monitor gibt folgendes in einer Schleife aus:
rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:4
load:0x3fff0034,len:7140
load:0x40078000,len:13856
load:0x40080400,len:4052
entry 0x40080688
I (58) boot: ESP-IDF 3.40100.200827 2nd stage bootloader
I (58) boot: compile time 19:51:06
I (58) boot: chip revision: 1
I (62) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (69) boot.esp32: SPI Speed      : 40MHz
I (74) boot.esp32: SPI Mode       : DIO
I (78) boot.esp32: SPI Flash Size : 4MB
W (83) boot.esp32: PRO CPU has been reset by WDT.
W (88) boot.esp32: WDT reset info: PRO CPU PC=0x40084a88
W (94) boot.esp32: WDT reset info: APP CPU PC=0x4008e7db
I (100) boot: Enabling RNG early entropy source...
I (106) boot: Partition Table:
I (109) boot: ## Label            Usage          Type ST Offset   Length
I (117) boot:  0 nvs              WiFi data        01 02 00009000 00004000
I (124) boot:  1 otadata          OTA data         01 00 0000d000 00002000
I (132) boot:  2 phy_init         RF data          01 01 0000f000 00001000
I (139) boot:  3 ota_0            OTA app          00 10 00010000 001db000
I (147) boot:  4 ota_1            OTA app          00 11 001f0000 001db000
I (155) boot: End of partition table
I (159) boot_comm: chip revision: 1, min. application chip revision: 0
I (166) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x4c730 (313136) map
I (310) esp_image: segment 1: paddr=0x0005c758 vaddr=0x3ffb0000 size=0x038c0 ( 14528) load
I (318) esp_image: segment 2: paddr=0x00060020 vaddr=0x400d0020 size=0x15f514 (1438996) map
I (940) esp_image: segment 3: paddr=0x001bf53c vaddr=0x3ffb38c0 size=0x01860 (  6240) load
I (944) esp_image: segment 4: paddr=0x001c0da4 vaddr=0x40080000 size=0x00404 (  1028) load
I (948) esp_image: segment 5: paddr=0x001c11b0 vaddr=0x40080404 size=0x1ee54 (126548) load
I (1035) boot: Loaded app from partition at offset 0x10000
I (1036) boot: Disabling RNG early entropy source...
I (1036) psram: This chip is ESP32-D0WD
I (1042) spiram: Found 64MBit SPI RAM device
I (1045) spiram: SPI RAM mode: flash 40m sram 40m
I (1051) spiram: PSRAM initialized, cache is in low/high (2-core) mode.
I (1058) cpu_start: Pro cpu up.
I (1062) cpu_start: Application information:
I (1067) cpu_start: Project name:     esp32cam-server-only
I (1073) cpu_start: App version:      0.0.9.3
I (1078) cpu_start: Compile time:     Jan 20 2021 19:48:33
I (1084) cpu_start: ELF file SHA256:  b9ffc04c8ab59a15...
I (1090) cpu_start: ESP-IDF:          3.40100.200827
I (1096) cpu_start: Starting app cpu, entry point is 0x40081c30
I (0) cpu_start: App cpu up.
I (1988) spiram: SPI SRAM memory test OK
I (1988) heap_init: Initializing. RAM available for dynamic allocation:
I (1989) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (1995) heap_init: At 3FFC2AC8 len 0001D538 (117 KiB): DRAM
I (2001) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (2007) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (2014) heap_init: At 4009F258 len 00000DA8 (3 KiB): IRAM
I (2020) cpu_start: Pro cpu start user code
I (2025) spiram: Adding pool of 4096K of external SPI memory to heap allocator
I (2050) spi_flash: detected chip: generic
I (2051) spi_flash: flash io: dio
I (2051) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (2059) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations
Do Reset Camera
I (2069) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
Init Camera
I (4079) gpio: GPIO[5]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4079) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4079) gpio: GPIO[19]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4089) gpio: GPIO[21]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4099) gpio: GPIO[22]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4109) gpio: GPIO[23]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4119) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4129) gpio: GPIO[34]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4139) gpio: GPIO[35]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4149) gpio: GPIO[36]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4159) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (4169) sccb: pin_sda 26 pin_scl 27

I (4169) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (4319) camera: Detected OV2640 camera
I (4319) camera: Allocating 1 frame buffers (150 KB total)
I (4339) camera: Allocating 150 KB frame buffer in OnBoard RAM
I (4939) connect_wlan_main: Initializing SD card
E (4959) sdmmc_common: sdmmc_init_ocr: send_op_cond (1) returned 0x107
E (4959) connect_wlan_main: Failed to initialize the card (263). Make sure SD card lines have pull-up resistors in place.
I (4969) server_ota: Start CheckOTAUpdateCheck ...
Start CheckOTAUpdateCheck ...
I (4989) server_ota: SHA-256 for the partition table: : 9d4a2809ae90fb20709a8ca3dd3ac3462e1e73286bcd31b689060c91de06fa3a
I (5049) server_ota: SHA-256 for bootloader: : 15f52f58b38b015f8d77a7fd637080c32b397905d47e4ca1bf5bbf1c6abe34bf
I (5779) server_ota: SHA-256 for current firmware: : 9e85de4055be332de6ebd46bca00b10d3bbdb260efcb2c79c0f0bfc418eeb3da
CheckOTAUpdate Partition: ESP_OK
File is locked: /sdcard/wlan.ini - wait for 1
Logfile opened: 

Die beiden Zeilen mit Logfile opended und die nachfolgende enthalten kryptische Zeichen (siehe Screenshot). Danach geht's dann in die nächjste Runde mit
rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:4
load:0x3fff0034,len:7140
load:0x40078000,len:13856
load:0x40080400,len:4052
entry 0x40080688
...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 23 Januar 2021, 16:09:26
SD-Karte <= 4GB?
Hab mal irgendwo gelesen der kann nur bis 4GB.

Stromversorgung über Flashadapter reicht zum flashen,
aber nicht zum betreiben von Kamera und "Blitz".
Zusätzliche Versorgung über z.B. USB-Netzteil erforderlich.

Sollte das alles im grünen Bereich sein, hab ich im Moment auch keinen Plan,
woran es noch liegen könnte.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 23 Januar 2021, 16:46:09
SD-Karte <= 4GB?
Hab mal irgendwo gelesen der kann nur bis 4GB.
ja, 4 GB, VFAT32

Stromversorgung über Flashadapter reicht zum flashen,
aber nicht zum betreiben von Kamera und "Blitz".
Zusätzliche Versorgung über z.B. USB-Netzteil erforderlich.
Egal ob er am PC oder am 20W ANKER-USB-Netzteil hängt, er geht in die Schleife.

Sollte das alles im grünen Bereich sein, hab ich im Moment auch keinen Plan,
woran es noch liegen könnte.
Mal schauen wenn jomjol das liest. Habe vorsorglich auch ein Issue auf github aufgemacht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Niko1987 am 23 Januar 2021, 19:22:20
Hallo,

Ich hab leider das selbe Problem.
Geht bei mir auch in eine Bootschleife. Teilweise auch wenn ich manuell einen Reboot auslöse.

Gruß Flo
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 23 Januar 2021, 20:07:31
Hallo,

Ich habe meinen esp32-Cam über usb-Adapter mit 5v versorgt. Bei nur 3.3v startete mein esp32-Cam nicht durch. Ich habe glaube ich eine 8 oder 16 GB sd-Karte eingebaut.

Pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 23 Januar 2021, 20:26:45
Mal schauen wenn jomjol das liest. Habe vorsorglich auch ein Issue auf github aufgemacht.

Tipp von jomjol (der hatte das Problem auch mal): Die SD-Karte muss ggf. repariert werden, weil sie mal aus dem PC rausgezogen worden ist ohne sie vorher auszuwerfen. Das wlan.ini-File ist vermutlich beschädigt.

Ich habe alle Files gesichert, die Karte im Windows PC neu mit VFAT32 formatiert, Files alles wieder drauf kopiert und eine frische wlan.ini kopiert/angepasst. Nach dem ersten boot hatte ich noch Probleme, aktuell läuft's stabil.

Update:
- reboot führt zu einer boot-Schleife
- nach Strom aus/an läuft's

Jetzt müsste er nur noch den Zählerstand richtig erkennen ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 24 Januar 2021, 16:38:06
Also manchmal ist er schon etwas seltsam.
Wie kommt die AI denn hier auf 300?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: eki am 24 Januar 2021, 17:08:47
Schau mal in dias SetPreValue unter Configuration an, eventuell ist das irgendwie über 300 gerutscht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 24 Januar 2021, 18:16:07
Ja, so hatte ich es korrigiert.
Aber schon merkwürdig wie er da auf 300.x kommt.  🤔
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: UvG am 25 Januar 2021, 16:52:22
Hallo zusammen,
ich beschäftige mich auch seit ein paar Wochen mit dem Wasserzähler und der einbindung in FHEM.
Ich habe seit 2 Tagen ein Problem mit MQTT. Es kommen nur Error Meldungen und keine Zählerstäde mehr. Habe schon versuch die Firmeware und html über OTA neu einzuspielen hat aber nichts bebracht.
MQTT habe ich so configuriet:

[MQTT]
Uri = mqtt://192.168.188.39:1883
Topic = wasserzaehler/zaehlerstand
TopicError = wasserzaehler/error
ClientID = wasser
;user = USERNAME
;password = PASSWORD

Kennt einer so ein Problem?

Ulrich
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Beta-User am 25 Januar 2021, 17:46:09
ClientID habe ich auch noch auskommentiert.
Die ClientID ist aber mit einiger Sicherheit nicht für die geschilderten Probleme verantwortlich und (edit: löschen) kann ggf. dazu führen, dass manche Server die Verbindung gar nicht erst annehmen => Nicht nachahmen!
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 25 Januar 2021, 18:06:47
ok, danke für die Info.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 26 Januar 2021, 08:41:53
@UvG

Was wird dir in der weboberfläche angezeigt ?
 Wird da alles richtig erkannt ?
Bild oder Kamera neu ausgerichtet ?
Was wird unter recognition erkannt ?

Pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Stromzähler am 26 Januar 2021, 09:44:45
@UvG

Bei mir läuft MQTT mit fast identischen Parametern einwandfrei. Fehlerfreie Ablesungen (bisher zu 100%) habe ich allerdings erst, nachdem ich die "Optik" auf das Niveau wie in der Doku angehoben hatte. Also die Schärfe (Fokus) optimiert, die "Beleuchtung" gedimmt und damit auch die Reflexionen reduziert. Zu Letzterem hat besonders eine um 180° gedrehte Montage beigetragen, sodass die analogen ROIs blendfrei zu sehen sind.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: UvG am 26 Januar 2021, 13:12:09
Hallo zusammen,
habe eine Bildschirmkopie angefügt. So wie ich das sehe ist in der Weboberfläche alles ok.
Wie schon geschrieben ist mqtt bis vor 2 Tagen sauber gelaufen. Jetzt kommt nur die Topic erro und zaehlerstand fehlt immer.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: UvG am 26 Januar 2021, 13:15:48
Es gibt aber noch ein Problem mit dem 2 analogen Zähler von links. Den erkennt er nicht richtig vermutlich wegen dem silberen Metallring. Dies hatte bisher aber keinen Einfulß auf mqtt.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 26 Januar 2021, 13:19:08
Nach ein paar Stunden betrieb habe ich jetzt schon die zweite defekte SD-Karte. Hatte jemand ähnliche Probleme?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Stromzähler am 26 Januar 2021, 15:53:44
@ UvG

Da würde ich den Autor jomjol mal ansprechen, ob diese Zeigerart nicht generell ein Problem darstellt. Ich wüsste z.B. nicht, worauf die AI trainiert ist.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 26 Januar 2021, 22:10:53
Nach ein paar Stunden betrieb habe ich jetzt schon die zweite defekte SD-Karte. Hatte jemand ähnliche Probleme?
läuft bei mir mit zwei Zählern (Wasser, Gas)  24/7, seit drei Wochen durchgehend ohne Probleme  8)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 27 Januar 2021, 07:41:08
läuft bei mir mit zwei Zählern (Wasser, Gas)  24/7, seit drei Wochen durchgehend ohne Probleme  8)
So, die Nacht ist überstanden und das Modul durchgelaufen (allerdings mit neuer Hardware und neuer SD-Karte). Wer weiß was die Karte zerschossen hat.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 07:54:28
Frage an die Mitlesenden: hat schon jemand die neue Version 6.1.0 getestet? Ich versuche die seit Stunden zum laufen zu kriegen  :'( Die Erstkonfig funktioniert noch, nach dem finalen Speichern und reboot ist der Webserver nicht mehr in der Lage, vollständige Seiten zu übertragen. Im log findet sich immer wieder http 500 errors:

W (970901) httpd_txrx: httpd_sock_err: error in send : 104
E (970901) serverhelp: File sending failed!
W (970901) httpd_txrx: httpd_sock_err: error in send : 104
W (970901) httpd_txrx: httpd_resp_send_err: 500 Internal Server Error - Failed to send file
W (970911) httpd_txrx: httpd_resp_send_err: error calling setsockopt : 22
W (970921) httpd_txrx: httpd_sock_err: error in send : 128
W (970931) httpd_uri: httpd_uri: uri handler execution failed

W (1128801) httpd_txrx: httpd_sock_err: error in send : 11
E (1128801) serverhelp: File sending failed!
W (1158801) httpd_txrx: httpd_sock_err: error in send : 11
W (1158801) httpd_txrx: httpd_resp_send_err: 500 Internal Server Error - Failed to send file
W (1188801) httpd_txrx: httpd_sock_err: error in send : 11
W (1188801) httpd_uri: httpd_uri: uri handler execution failed


Habe schon andere Browser versucht, auch mal das Leseintervall auf 60 min gesetzt damit die CPU Zeit genug hat, leider hat nichts geholfen  :(
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Stromzähler am 27 Januar 2021, 09:36:06
Zitat
hat schon jemand die neue Version 6.1.0 getestet?

... lief auf Anhieb nach dem Upgrade und läuft bisher fehlerfrei. Habe allerdings nicht die OTA-Funktion genutzt sondern die Files (inkl. HTML-Ordner) "direkt" auf die SD-Karte kopiert und dann den Firmware-Update gestartet.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 11:25:24
danke für die Rückmeldung  :)
ich habe auch alles "from scratch" installiert ... ist ein Testsystem daher egal.

Jetzt hab ich in einem Anfall von Verzweiflung die partition size verkleinert, von 3.8G auf 1G ... und siehe da, läuft! Plötzlich ist der kleine so responsive, es ist ein Wunder  ;D
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Stromzähler am 27 Januar 2021, 12:38:05
Das ist ja wunderbar, bzw. -sam. Ich habe nämlich eine 16GB SD drin, weil ich nichts anderes da hatte. War bisher kein Problem. An der Partition sollte ich eigentlich nichts geändert haben ... seltsam. Muss ich beim nächsten Upgrade mal checken.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 13:18:47
ja mir kommt das auch seltsam vor, aber es ist total reproduzierbar. In meinen beiden produktiven cams läuft noch v5.0.0 mit einer 32G sdcard/partitionsize (auch weil ich gerade nichts anderes hatte). Dort ist das Verhalten im WebGUI zäh wie Leder, aber wenigstens kann ich noch konfigurieren falls notwendig (auch wenns manchmal 5 oder mehr Versuche braucht). Ich hatte die v.6.0.0 vor zwei Wochen am Testsystem, aber die gleichen Probleme wie jetzt mit v6.1.0 (timeouts, Webservercrashes etc), und habs dann gelassen.

Seit gestern sind neue 16G Karten da, die werd ich mal mit 1G partitions bestücken, die configs rüberziehen und die neue firmware flashen. Mal schauen wie's dann mit den produktiven läuft ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 27 Januar 2021, 14:26:35
In der Version 6.1.0 gibt es ein neues Feature:
Improved Alignment Algorithm (AlignmentAlgo = Default, Accurate , Fast)
Ich habe mal den Wert in der config.ini auf fast gesetzt und finde die Reaktionszeiten viel besser. ;-)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 16:02:08
Ich habe mal den Wert in der config.ini auf fast gesetzt ...
oh ja, sehr nett ... das drückt die Erkennungsdauer auf meinem testboard von 55 auf 37 Sekunden  8) Sehr vielversprechend! Wenn das mit den echten Zählern auch so gut läuft könnte man drüber nachdenken, den intervaltimer auf eine Minute zu setzen ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rakete123 am 27 Januar 2021, 19:21:33
Hat jemand Erfahrungen gesammelt mit Powerbank oder ähnlichem? Ich habe leider an der Stelle keinen Strom.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 19:52:47
ja mir kommt das auch seltsam vor, aber es ist total reproduzierbar.
leider zu früh gefreut ... nach ein paar powercycles plötzlich wieder das zögerliche bis unwillige Verhalten von vorher ... im log wieder httpd Fehler zu sehen. Offenbar hat es mit der partition size nichts zu tun  :(
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pc1246 am 27 Januar 2021, 20:36:36
Hat jemand Erfahrungen gesammelt mit Powerbank oder ähnlichem? Ich habe leider an der Stelle keinen Strom.
Moin
Ja, ich. Das kannst Du dann getrost vergessen! So ein riesen Monster mit 20Ah von Anker ist nach ca. 5 Tagen leergelutscht.
Ich hatte ja schon mal gefragt, ob man die Lampe etwas dunkler drehen kann.
Wenn mein bestelltest Filament da ist, dann konstruiere ich mir eine Halterung mit Gehaeuse und mache dann einen festen Anschluss dran.
Gruss Christoph
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rcmcronny am 27 Januar 2021, 20:49:03
leider zu früh gefreut ... nach ein paar powercycles plötzlich wieder das zögerliche bis unwillige Verhalten von vorher ... im log wieder httpd Fehler zu sehen. Offenbar hat es mit der partition size nichts zu tun  :(

Hi,

meine CAM ist auch unzuverlässig und ich weiss noch nicht warum. Habe nun auch mal die 6.1.0 draufgebügelt, aber manuell per ESP32 Download Tool, weil ich nichtmal das firmware.bin hochladen konnte.

SDCard habe ich nun auch statt der Samsung 32GB Evo eine 4GB genommen, brachte nix, nun mit Partition von 1GB. Bringt aber auch nix. Teilweise habe ich es schon geschafft, durch einen Klick im Webinterface das Dateisystem irreparabel zu schädigen ...  :o

Ich hab aktutell ein altes Samsung NT mit 10W (5V2A) dran, ich probiere gerade mal ne ANKER SuperHUb als Netzteil aus.
EDIT: ne das brachte auch nix
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 27 Januar 2021, 21:08:15
Hat jemand Erfahrungen gesammelt mit Powerbank oder ähnlichem? Ich habe leider an der Stelle keinen Strom.
ich hab mal auf die Schnelle den Strombedarf gemessen .... im Schnitt so ca. 80 mA. Wenn die Led brennt sinds 500 mA. Ein dickes Akkupack hat vlt. 10000 mAh, damit wären rechnerisch max. 5 Tage drin. Macht glaub ich in der Praxis wenig Spaß, alle paar Tage das Akkupack zu wechseln  :(
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 28 Januar 2021, 20:02:45
Aber irgendwas ist da mit der Partition Size der SD-Karte. Ich bin auf eine neue 16 GB-Karte ausgewichen (die war günstiger als die 4 GB), habe alles konfiguriert und dann rebootet. Das Ding kam nicht hoch, hat noch nicht einmal eine WLAN-Verbindung aufgebaut. Dann habe ich alle Files geischert, die Partition auf 1 GB reduziert, Files drauf kopiert und er startet wieder.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 28 Januar 2021, 21:18:30
Aber irgendwas ist da mit der Partition Size der SD-Karte
ja es sah anfangs so sehr danach aus. Erst konnte ich nicht glauben wie snappy das GUI plötzlich war, egal was und wie oft ich irgendwas anklickte, es ging einfach alles blitzartig. Dann habe ich das Teil wieder abgeschaltet und mich erstmal gefreut. Als ich es später wieder in Betrieb nahm, war alles wieder langsam und zäh wie zuvor :( Ich habe keine Idee was da los ist  ::)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 28 Januar 2021, 22:04:35
Ich hatte Probleme mit meiner ersten Installation auf einer 4 GB SD-Karte. Vermeintlich war das Filesystem verhunzt, Test-Tools sagen aber die Karte lebt.
Eine 8GB-Karte mit der ich anschließend gearbeitet habe ist jetzt Schrott.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: frober am 29 Januar 2021, 07:13:45
Ich gehe Mal davon aus, das ihr den ESP mit 5V versorgt!?

Der ESP hat Probleme mir der Spannungsversorgung, gerade mit WLan zieht es für Bruchteile eine Sekunde so viel Strom, dass dir Spannung zusammen brechen kann -> Neustart. Wenn das während eines Schreibvorgangs passiert...

Es wird empfohlen mit 5,4V (bzw. 6-7V) zu versorgen und einen Elko von mehreren 100uF  parallel zu hängen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 29 Januar 2021, 13:01:34
Ich gehe Mal davon aus, das ihr den ESP mit 5V versorgt!?
bei mir ist das jedenfalls so. Ich kenne das Problem der wackeligen Stromversorgungen. Ich verwende ein solides 5V 3A Netzteil das auch einen raspi mit hm Modul versorgt. Der ist auch etwas empfindlich wenn die Spannung einbricht ;)

Ich habe bei den espcams das erweiterte logging aufgedreht, dort sieht man eventuelle restarts. Es ist aber nichts auffällig. Bzw. restartet manchmal auch die AI den esp, wenn watchdogs ablaufen und die Erkennung nicht fertig wird. Normalerweise werkeln die eigentlich den ganzen Tag fröhlich rum und liefern alle drei Minuten brav die Zählerstände. Abweichungen würden mir sofort auffallen, ich überprüfe das readingsage und lasse mich per telegram benachrichtigen wenn der Zählerstand nicht rechtzeitig kommt (und krieg auch das Kamerabildchen geliefert wenn die Erkennung "N"s liefert)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 29 Januar 2021, 18:37:45
Hat schon jemand seinen Gaszähler konfiguriert (5 Vorkammestellen weiß/schwarz, 3 Nachkommastellen weiß/rot)? Mein ESP32 macht zum Verrecken kein Foto bei Create New Reference->Take Image. Ich habe mir schon von dem Wasserzähler-ESP32 die URL für Edit-Config abgeguckt und die Rotation geändert, trotzdem mag er nicht. Beim reboot schießt er brav  ein Foto...

Hat jemand gleichgartige Erfahrungen bzw. Tipps was ich ausschalten muss?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 29 Januar 2021, 20:33:46
meinst du so einen? Klappt wunderbar ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 29 Januar 2021, 21:38:14
meinst du so einen? Klappt wunderbar ...
Genau so einen. Ich habe das Filesystem der SD-Karte neu rüberkopiert. Jetzt bewegt sich wieder was. Aber nur seeeehhhr langsam. Zumindest habe ich schon ein neues Reference Image speichern können.

Kann es sein, dass die Fritzbox auf der Rückseite einen blinden WLAN-Spot hat? Oder der ESP32?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 29 Januar 2021, 22:18:43
naja der esp ist bezüglich WiFi kein Musterschüler. Ich mußte einen accesspoint übersiedeln damit ich einigermaßen stabilen Empfang hatte. Mit der Trägheit des Systems kämpfe ich selbst auch immer wieder, es braucht einige Geduld um die Ersteinrichtung hinzukriegen. Wenns mal läuft dann aber erstaunlich stabil und das WebIF läuft dann auch einigermaßen performant.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 29 Januar 2021, 22:28:15
Bei Aliexpress gab es Angebote mit einer Zusatzantenne. Vielleicht bestelle ich mir noch ein paar Dinge bevor das alles teurer wird.

Zumindest läuft es im Augenblick. Die Webseite ist lahm, aber per MQTT übermittelt er anscheinend Daten. Mal schau'n wie es morgen früh aussieht.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 29 Januar 2021, 22:29:44
Der esp32-Cam hängt zusammen mit einem Raspi 2 an diesem Netzteil: https://www.amazon.de/gp/product/B06XWQSJGW/ref=ppx_yo_dt_b_asin_title_o07_s00?ie=UTF8&psc=1
Ich hatte bis jetzt noch keine Ausfälle.
Nur die Erkennung ist etwas schwierig da die Wasseruhr beschlägt. Habe schon etwas Wasser aufs Glas gegossen, das hält dann eine Weile vor. Jetzt kommen aber schon wieder kleine Blasen.

Für die Verbesserung des Funks habe ich eine externe Antenne angebaut (https://www.pollin.de/p/magnetfussantenne-2-4-ghz-3-m-sma-stecker-hoehe-220-mm-572222) und auf dem Board muss dann eine Lötbrücke gesetzt und die anderen entfernt werden. Die Fritzbox 7590 steht eine Etage höher.

pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 29 Januar 2021, 22:45:10
Bei Aliexpress gab es Angebote mit einer Zusatzantenne.

Also diese externe Antenne bringt wirklich etwas.
Das kann ich bestätigen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 30 Januar 2021, 10:28:35
Moin,

hat mal jemand versucht bei einer bestehenden Konfiguration die Kamera um 90 Grad zu drehen und dann die ESP32-CAM neu zu konfigurieren?

Bei mir sah/sieht das aktuell so aus:
- Kamera gedreht, um alle Ziffern des Gaszählers drauf zu kriegen
- Edit-Config->Create New Referenz
- ein Foto geschossen, Aufnahme zu weit rechts
- Kamera nach links verschoben
- Edit-Config->Create New Referenz
- kann kein Foto mehr schießen
- reboot via Web ging noch
- nach reboot lässt er sich noch pingen, aber das Web-Interface ist down
- die ESP32-CAM scheint mit sich selbst beschäftigt zu sein

Habt Ihr ähnliche Erfahrungen gemacht?

Muss ich jetzt in den Keller gehen, alles demontieren, SD-Karte neu aufsetzen, alles montieren und neu konfigurieren?

VG plin

Habe den Gaszähler vom Strom genommen und wieder angeschlossen. Jetzt geht wieder was ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pejonp am 30 Januar 2021, 22:20:30
Hallo,

für meinen Gaszähler habe ich jetzt auch angefangen etwas zu basteln. Der erste Versuch war mit Spiegel. Bilder wahren nicht so gut.
Jetzt einfach von vorn, zur Zeit noch Versuchsaufbau. In die Tür wird ein Loch geschnitten, darauf kommt ein Kunststoffgehäuse. Platz ist vorhanden. Mit Spiegel währe vielleicht flacher gewesen, aber hat mich nicht so überzeugt.

SD-Karten in der Wasseruhr ist eine 32GB und beim Gaszähler eine 8GB. Normal am PC mit "SD Card Formatter" formatiert. Dann Inhalt vom Verzeichnis /sd-cart raufkopiert. Beim Gaszähler habe ich jetzt  "AI-on-the-edge-device-rolling/master - v6.1.0 - 2020-01-20/2021-01-23 22:04/HTML: 5.2.0"  drauf.

An dem Schaltnetzteil (Antwort #188) hängen jetzt 2x ESP32-CAM und ein RASPI-2. Zum Gaszähler ist die Zuleitung auch etwas lang (8m) und nur Klingeldraht und die Spannung geht von 5,1V auf 4,8 V runter, aber es geht. Mal schauen wie lange.

Die LED habe ich mit etwas Papier abgeklebt, da sonst zu starke Reflexionen sind.

Die beiden ESP32-CAM sind auch schon etwas älter (August 2019).

Ich habe mir 3 neue bestellt, mit denen hatte ich auch etwas Probleme. Erst nach dem zweiten oder dritten Versuch hatten sie den Sketch richtig geladen.

pejonp
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 01 Februar 2021, 16:15:56
meinst du so einen? Klappt wunderbar ...
Läuft der bei Dir durch? Hast Du irgendwelche Startprobleme gehabt? Hast Du die die Version 6.1.0 im Einsatz?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 01 Februar 2021, 19:32:36
Läuft der bei Dir durch? Hast Du irgendwelche Startprobleme gehabt? Hast Du die die Version 6.1.0 im Einsatz?
- was meinst du mit durchlaufen? 24/7 ja, seit Wochen ohne Ausfälle

- v6.1.0 läuft seit Samstag erfolgreich, vorher v5.0.0

- Startprobleme ja hatte ich. Betrifft aber nicht explizit den Gaszähler, sondern generell die Software. Die Ersteinrichtung ist Glückssache. Mal läufts beim ersten einschalten ohne Probleme, mal war ich schon vor dem aufgeben weil sich auch beim zwanzigsten Start bei irgendeinem der vielen Schritte der Webserver einfach nicht mehr gemeldet hat. Es scheint aber so zu sein, daß das Problem mit dem Webserver abnimmt, sobald die Ersteinrichtung durch ist und die Erkennung einigermaßen zuverlässig läuft.

Ich habe nebenbei ein Dauerping laufen lassen, sobald die Antwortzeit auf >100ms war habe ich die Hände von Keyboard und Maus genommen und gewartet bis es sich wieder einkriegt. Und auch immer brav gewartet bis der Browserkringel fertig mit kringeln war, alles seeeehr seeeehr langsam und bedächtig, und immer nur einen Schritt nach dem anderen. Durch den Dauerping bin ich auch draufgekommen daß meine WiFi Verbindung viel zu schlecht ist. Habe dann einen accesspoint in drei Meter Entfernung platziert, dann war das ok. Dann hat das auch irgendwann mit der Konfiguration funktioniert, aber auch da habe ich öfters per reset von vorne gestartet, weil sich minutenlang nix getan hat. Also, wie gesagt, Geduld, Geduld, und nochmals Geduld.

Eventuell hilft auch, während der Ersteinrichtung das log am USB mitzulesen, jedenfalls kriegt man dort mit ob die Kommunikation erfolgreich läuft. Auf die Idee bin ich aber erst beim upgrade auf 6.1 gekommen. Geholfen hat es insofern, weil ich sehen konnte was der httpd macht, und ob er noch Teile des html forms schickt oder Fehler wirft.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 05 Februar 2021, 12:23:46
- was meinst du mit durchlaufen? 24/7 ja, seit Wochen ohne Ausfälle
meiner mittlerweile auch - aber mit einem anderen ESP32-CAM-Chip.

Ca. 45-60 Minuten nach einem Hard-Reset hat der alte kein neues Foto mehr geschossen, das alte Foto dann gedreht und gedreht. Am Ende hat sich gezeigt, dass der Chip wohl eine Macke hat. Mit einem anderen läuft es jetzt. Ich habe mein Gestell umgebaut, so dass die Kamera leicht von unten auf die Anzeige schaut und die Beleuchtung von unten rechts kommt. Die spiegelt sich jetzt noch leicht in den Nachkommastellen, aber seit gestern läuft alles stabil durch.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 05 Februar 2021, 18:01:40
meiner mittlerweile auch - aber mit einem anderen ESP32-CAM-Chip.
ah das ist natürlich Pech. Aber fein wenns jetzt läuft  8)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 05 Februar 2021, 22:44:42
Hatte mit der 6.0 und der 6.1 auch meinen Kampf ( oft nicht mehr erreichbar oder sehr träge )
Bin jetzt zurück auf die 5.0
Die läuft jetzt seit einer Woche problemlos durch.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 06 Februar 2021, 16:52:04
Bei mir sah es zunächst nach einem systematischen Fehler aus, da es immer 45-60 Minuten gut ging. Mit der neuen Hardware läuft die 6.1.0er stabil durch.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 06 Februar 2021, 18:52:09
so jetzt hat's mich auch erwischt. Wasserzähler begann gestern nachmittag bei der Erkennung von Stunde zu Stunde unwilliger zu werden. Mit Glück ein Messwert alle 30 Min. Hat sich in der Nacht gesteigert auf mehrere Stunden, ab Mitternacht dann gar kein Messwert mehr. Im log sah man reboots beim Start der analogen Erkennung.

Nach etwas Fehlersuche: sdcard kaputt. Seltsamerweise konnte ich sie am PC problemlos lesen und schreiben. Aber der kleine konnte nichts mehr damit anfangen. Neuformatierung hat auch nix gebracht. Neue 16G Karte rein, läuft :)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Stromzähler am 07 Februar 2021, 12:24:35
... mir ging's genauso: sensibel ist er tatsächlich, der Kleine. SD-Karten (8 GB), die andere Geräte problemlos akzeptieren, mag er nicht.  :-\

Ähh, das war jetzt ja nicht gendergerecht. Einigen wir uns auf "es" ...
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Mario67 am 08 Februar 2021, 23:24:42
Hallo,

auch ich habe nun einen weiteren Technologie-Schritt beim Thema Zählerauswertung gewagt, in der Hoffnung auf eine nun verlässliche Lösung.
Der Build des aktuellsten Standes des Master-Zweiges im Repository gelang unter Beachtung von https://github.com/jomjol/AI-on-the-edge-device/issues/104 (https://github.com/jomjol/AI-on-the-edge-device/issues/104).
Ich bin allerdings auf der verzweifelten Suche nach einer Methode die Ausleuchtung durch die LED so zu gestalten, dass diffus der Zähler ausgeleuchtet wird. Bisher ist es mir mit allen möglichen Materialen nicht gelungen eine ausreichende gleichmäßige blendfreie Helligkeit hinzubekommen. Ein Versuch einer Anordung mit einem leichten Winkel von der Seite führte wegen der Verzerrung zu sehr schlechten Erkennung.

Wie habt Ihr das hinbekommen?

Grüße,
Mario
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 09 Februar 2021, 19:32:23
Ich bin allerdings auf der verzweifelten Suche nach einer Methode die Ausleuchtung durch die LED so zu gestalten, dass diffus der Zähler ausgeleuchtet wird. Bisher ist es mir mit allen möglichen Materialen nicht gelungen eine ausreichende gleichmäßige blendfreie Helligkeit hinzubekommen. Ein Versuch einer Anordung mit einem leichten Winkel von der Seite führte wegen der Verzerrung zu sehr schlechten Erkennung.
Wie habt Ihr das hinbekommen?
Wasseruhr: ein kleiner Filz-Puffer aus der Möbelindustrie (ca. 1 mm dick)
Gaszähler: zusätzlich noch ein zweiter dickerer Filz-Puffer (ca. 2-3 mm dick)

Ggf. die Kamera so drehen, dass die Reflektion in einem Bereich liegt in dem nichts abzulesen ist.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 09 Februar 2021, 19:39:54
Ggf. die Kamera so drehen, dass die Reflektion in einem Bereich liegt in dem nichts abzulesen ist.
Genau das ist der Trick. Mit Diffusion hab ich das nicht hinbekommen, landete im Teufelskreis Reflexion vs. Helligkeit.
Ich hab mich mit schrittweisem erhöhen mittels Spiegelband herangetastet bis das Ergebnis paßte. Danach fixieren mit Heißkleber, Gehäuse drauf, fertig.
Es ist Millimeterarbeit  8)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Papaloewe am 10 Februar 2021, 17:39:50
In der Roling-Version kann man jetzt auch die Helligkeit der LED einstellen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Mario67 am 10 Februar 2021, 19:04:23
Danke für die Tipps und den Hinweis auf den anderen Zweig. Dann ist der Abend ja gerettet... ;)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: msome am 12 April 2021, 20:05:09
Hi, wollte auch kurz mein Feedback geben - bin kompletter Neueinsteiger mit dem AI System,
ich hatte vorher ein Sensor-basiertes Zählsystem mit dem ich aber zuletzt nicht mehr zufrieden war.
Dank der super Anleitung hier in Thread und auch auf der GitHub-Seite war das Setup einfach. Danke!
Ich nutze den current master-branch (nach Change-Log wohl die Version 6.6.1).


Leider hat irgendein Industrie-Designer Plexiglas-"Klötzchen" zur Befestigung eines Sensors auf die Scheibe meiner Wasseruhr gemacht - direkt über 2 der
Analoguhren - daher kann ich "nur" in 10-Liter zuverlässig ablesen, die Liter laufen aufgrund der starken Verzerrung einigermaßen, aber eher schlecht. 1/10 Liter gehen gar nicht. Egal.

Wie schon mehrere gemeldet hatten, gab es auch bei mir starke Probleme mit der SD-Karte (4GB Intenso & 8GB Sandisk Karte). Immer mit FAT32 Dateisystem.
Beide Karten hatten bei fast jedem Neustart ein Problem (schnelles Blinken).
Aufgrund des 1GB-Tipps (weiter vorne im Thread) habe ich die Karte dann neu partitioniert und einem kleine 1024MB Partition ausprobiert. Immer noch FAT32.
Das Problem bestand immer noch - manchmal direkt nach Start, manchmal nach ein paar Stunden.

Eher zufällig (Windows Dropdown Defaultwert) habe ich dann eine Karte beim neuinitialisieren der 1GB Partition
mit FAT statt FAT32 formatiert - und seitdem ist Ruhe - über ein Tag und kein schnelles Blinken.

Gegencheck: Ich habe auch die zweite Karte ausprobiert und auch diese lief mehrmals beim Power-on direkt an.
Wieder umformatiert auf FAT32 - direkt beim ersten Versuch wieder Probleme. Kann natürlich Zufall sein.

Vielleicht funktioniert die Umstellung des Dateisystems ja auch bei anderen mit SD-Karten-Problemen.

Ich hoffe jetzt einfach mal dass das System stabil bleibt.

Matthias
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 14:52:30
Hallo zusammen,

nachdem mir mein Wasserversorger keine Wasseruhr mit S0-Schnittstelle einbauen konnte/wollte bin ich auf diese geniale Möglichkeit gestossen.

Die Installation hat reibungslos geklappt und es funktioniert. In Fhem ist der Zähler über MQTT eingebunden.

Aber: Es funktioniert bei mir leider nur eine zeitlang. Dann bekomme ich ein "Connection lost". Der ESP blinkt wie wild und läßt sich aus diesem Zustand nur durch Abziehen und Anstecken der Stromversorgung herausholen. Ein Drücken der Reset-Taste reicht nicht.
An der WLAN-Verbindung kann der "Verbindungsverlust" nicht liegen, da der Repeater 3m entfernt ist.

Hat jemand ähnliche Erfahrung oder eine Idee voran es liegen könnte?

Gruß und Danke
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Gisbert am 20 April 2021, 15:20:02
Hallo zusammen,

nachdem mir mein Wasserversorger keine Wasseruhr mit S0-Schnittstelle einbauen konnte/wollte bin ich auf diese geniale Möglichkeit gestossen.

Die Installation hat reibungslos geklappt und es funktioniert. In Fhem ist der Zähler über MQTT eingebunden.

Aber: Es funktioniert bei mir leider nur eine zeitlang. Dann bekomme ich ein "Connection lost". Der ESP blinkt wie wild und läßt sich aus diesem Zustand nur durch Abziehen und Anstecken der Stromversorgung herausholen. Ein Drücken der Reset-Taste reicht nicht.
An der WLAN-Verbindung kann der "Verbindungsverlust" nicht liegen, da der Repeater 3m entfernt ist.

Hat jemand ähnliche Erfahrung oder eine Idee voran es liegen könnte?

Gruß und Danke
Reinhard

Hallo Reinhard,

kannst du etwas zu deiner Wlan-Infrastruktur sagen? Wlan-Gerät, Anzahl verbundener Devices, ...
Die Fritzboxen sind dafür bekannt, dass sie mit einer größeren Anzahl von Clients nicht zurechtkommen, was zu deinem Fehler passen könnte.
Allerdings wäre es schon ein ziemlicher Zufall, wenn dies gerade bei diesem Gerät und nicht schon bei anderen aufgefallen wäre.

Viele Grüße Gisbert
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 15:58:21
Hallo Giebert,

danke für die schnelle Antwort.

Zu WLAN-Infrastuktur: FritzBox7490+Repeater310-Repeater1160, ca 20 Devices (die überwiegende Anzahl sind SONOFFs und ESPs)

Meine erste Vermutung war natürlich auch das WLAN. Deshalb habe ich den Repeater(310), der normalerweise den SONOFF in der Garage (Toröffner) versorgt in den Keller verpflanzt.
Ein kurzer Verbindungsausfall wäre ja auch nicht unbedingt ein Problem, aber der ESP32-CAM kommt ja wie gesagt nicht aus diesem Zustand heraus.

Gruß
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 20 April 2021, 16:05:14
Hallo ReiKo55
Die Probleme gab es bei mir auch und auch ich benutze eine Repeater.
Ich bin wieder zurück auf die Version v5.0.0 - 2020-12-06.
Damit habe ich jetzt schon Wochen ohne Reboot hinter mir.
master - v5.0.0 - 2020-12-06

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Gisbert am 20 April 2021, 16:13:17
Zitat
Zu WLAN-Infrastuktur: FritzBox7490+Repeater310-Repeater1160, ca 20 Devices (die überwiegende Anzahl sind SONOFFs und ESPs)

Hallo Reinhard,

leider passt dein Fehler sehr gut zur Fritzbox, frag mich aber nicht, warum das so ist.
Ob es nur daran liegt, oder ob der bockige ESP32-CAM und seine Firmware auch daran Schuld sind, wer weiß.

Gibt es denn andere Hiweise, dass der ESP32-CAM Probleme bei der Stabilität von Wlan-Verbindungen hat?

Ich hab einen ESP-Repeater in Betrieb, der auch noch gleichzeitig ein Relais schaltet (d.h. ein 230V-Gerät ein/ausschaltet), siehe hier: https://github.com/martin-ger/esp_wifi_repeater (https://github.com/martin-ger/esp_wifi_repeater).
Dieser Repeater ist als Client im "eigentlichen" Wlan, spannt aber auch noch einen AP auf, auf den sich entferntere Clients verbinden können.
Die Einrichtung ist tricky - zugegebenermaßen, aber so konnte ich eine vorhandene Hardware nutzen und gleichzeitig ein entferntes Device mit Wlan versorgen. Die Kommunikation läuft per MQTT.

Viele Grüße Gisbert
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 16:28:58
Hallo Pink99panther, Hallo Gisbert,

danke für die Antworten.

Gibt es denn andere Hiweise, dass der ESP32-CAM Probleme bei der Stabilität von Wlan-Verbindungen hat?
@Gisbert : Das weiß ich leider nicht. Ist der erste ESP32-CAM den ich im Einsatz habe. Andere ESPs haben keine Probleme.

Die Probleme gab es bei mir auch und auch ich benutze eine Repeater.
Ich bin wieder zurück auf die Version v5.0.0 - 2020-12-06.
Damit habe ich jetzt schon Wochen ohne Reboot hinter mir.
master - v5.0.0 - 2020-12-06

@ Pink99panther : Ok das werde ich versuchen. Hatte sowieso vor einen weiteren ESP zu flaschen. Das werde ich dan mit Version 5.0.0 machen.
Werde berichten

Gruß und danke
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 20 April 2021, 16:33:33
Was für ein Netzteil hast denn dran?
wie ist die SD Karte formatiert?
Das waren auch schon "typische Fehlerquellen"
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 17:00:28
Hallo Frank,

USB-Netzteil: 1,0A
Karte: 8GB, FAT32

Gruß Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Frank_Huber am 20 April 2021, 17:01:39
1A "Netzteil" oder Handyladegerät? Das ist nen Himmelweiter Unterschied.

SD Karte kannst mal mit FAT versuchen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 17:10:06
 Universal USB Netzteil
https://www.amazon.de/gp/product/B071NGZ4QM/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

Ok werde einen Versuch mit FAT machen. Habe hier noch eine neue 32GB-SDHC UHS-1 rumliegen. Oder ist 32GB zu groß?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 20 April 2021, 17:37:42
ich kann die Karte nicht mit FAT formatieren. FAT unterstützt max 4GB. Hab ich grad aber nicht zur Hand
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: rudolfkoenig am 20 April 2021, 17:53:48
Partitionieren?
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 20 April 2021, 22:35:00
ich kann die Karte nicht mit FAT formatieren. FAT unterstützt max 4GB. Hab ich grad aber nicht zur Hand
die Größe der Partition bestimmst du beim formatieren selbst. Für die AI reicht 1 GB :)
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 22 April 2021, 17:17:32
Hallo zusammen,

vielen Dank für die Antworten und Lösungsvorschläge.
Da ich nicht mehrere Änderungen auf einmal machen möchte, habe ich zunächst die  Version v5.0.0 - 2020-12-06. auf einen neuen ESP32 geflascht.
Dieser läuft jetzt mit der 8GB-SD seit 2 Tagen störungsfrei. Läßt sich auch rebooten (mittels Web-Interface und Reset-Knopf).

Was mir noch aufgefallen ist: In der Version 5.0.0 stimmen Datum und Uhrzeit.
In V6.4.1 ist das Datum immer 1970-01-01. In der config.ini steht TimeZone = CET-1CEST,M3.5.0,M10.5.0/3

Gruß
Reinhard

Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 30 April 2021, 21:44:20
Hallo Zusammen,

hat jemand eine Idee für einen Stromzähler mit zwei Anzeigen (HT und NT)?


Gruß
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 01 Mai 2021, 22:41:30
die aktuelle AI Software ist nicht dafür ausgelegt, zwei unabhängige Digitalzähler auszulesen. Die einzige Chance die mir adhoc einfällt wäre, die beiden Zähler in der AI als einen einzurichten, und den Rest per Script zu erledigen (trennen der Werte, Nachkommabearbeitung). Die Werte werden ja per MQTT auch als raw geliefert, damit sollte das  klappen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 02 Mai 2021, 12:43:06
Die einzige Chance die mir adhoc einfällt wäre, die beiden Zähler in der AI als einen einzurichten

Geniale Idee :D Danke.
Noch eine Frage: Wie kann ich den raw wert per MQTT übermitteln?

MQTT liefert mir nur den Zählerstand und wie er auf den Wert kommt ist mir auch noch nicht klar
 /SH/E0/Strom/zaehlerstand 46536.46094
 /SH/E0/Strom/error (null)

Gruß
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: Wetterhexe am 02 Mai 2021, 14:17:47
Noch eine Frage: Wie kann ich den raw wert per MQTT übermitteln?
Sorry da hab ich mich mißverständlich ausgedrückt. Ich dachte der kommt von MQTT, tut er aber nicht. Du drehst einfach in der AI config alle options im postprocessing ab, fertig. Die richtigen Werte mußt du ohnehin selber rechnen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: ReiKo55 am 02 Mai 2021, 19:29:41
Funktioniert Super!
Habe die Werte für HT und NT per userReadings ermittelt
Internals:
   CFGFN     
   FUUID      608e9ad4-f33f-8dfc-988d-5691012ecd9d2ce3
   IODev      Mosquitto2
   NAME       E0.Strom
   NR         54448
   STATE      HT : 46536 KW/h   
NT : 46223 KW/h
   TYPE       MQTT_DEVICE
   READINGS:
     2021-05-02 19:06:37   StromHT         46536
     2021-05-02 19:06:37   StromNT         46223
     2021-05-02 19:06:37   error           
     2021-05-02 19:06:37   transmission-state incoming publish received
     2021-05-02 19:06:36   zaehlerstand    465364622N
   message_ids:
   sets:
   subscribe:
     /SH/E0/Strom/error
     /SH/E0/Strom/zaehlerstand
   subscribeExpr:
     ^\/SH\/E0\/Strom\/error$
     ^\/SH\/E0\/Strom\/zaehlerstand$
   subscribeQos:
     /SH/E0/Strom/error 0
     /SH/E0/Strom/zaehlerstand 0
   subscribeReadings:
     /SH/E0/Strom/error:
       cmd       
       name       error
     /SH/E0/Strom/zaehlerstand:
       cmd       
       name       zaehlerstand
Attributes:
   IODev      Mosquitto2
   alias      Stromzähler
   comment    ESP32-CAM 192.168.178.152

MQTT Test: Einloggen per ssh auf raspiFhem02
abfragen der topics:
mosquitto_sub -h 127.0.0.1 -t /SH/E0/Strom/# -v
   group      Zähler
   icon       stromzaehler_icon@blue
   room       MQTT,Zähler
   stateFormat {"HT : ".sprintf(ReadingsNum("E0.Strom","StromHT",0))." KW/h    \nNT : ".sprintf(ReadingsNum("E0.Strom","StromNT",0))." KW/h"}
   subscribeReading_error /SH/E0/Strom/error
   subscribeReading_zaehlerstand /SH/E0/Strom/zaehlerstand
   userReadings StromHT {my $raw = ReadingsVal("E0.Strom","zaehlerstand",0);
         my $pstr = substr($raw,0,5);
         if ($pstr =~ /N/) {ReadingsVal("E0.Strom","StromHT",0);}
         else {$pstr;} ;;},
StromNT {my $raw = ReadingsVal("E0.Strom","zaehlerstand",0);
         my $pstr = substr($raw,5);
         if ($pstr =~ /N/) {ReadingsVal("E0.Strom","StromNT",0);}
         else {$pstr;} ;;}

Gruß
Reinhard
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: habee am 05 Mai 2021, 19:49:54
Moin,

tolles Projekt hier, war auch schon einige Jahre auf der Suche nach einer zuverlässigen Methode um meinen Wasserverbrauch mitzuplotten. Ich find es auch unheimlich
praktisch sozusagen ein aktuelles Bild vom Zählerstand zu haben, da ich nur schlecht an den Zähler rankomme (steht ein Schrank vor...).

Nachdem ich jetzt einigermaßen brauchbar den Wasserzähler konfiguriert habe, habe ich meinen zweiten ESP32 mal auf die Schnelle auf die Gasuhr gerichtet.

Da ich wenig Platz vor dem Zähler habe und um Reflexionen zu verringern schaut er leicht von unten auf das Zählwerk. Erkennung läuft einigermaßen, allerdings bekomme ich die Dezimalstellen nicht konfiguriert.

Gemäß der Anleitung (https://github.com/jomjol/AI-on-the-edge-device/wiki/Configuration-Parameter-Details) verschiebe ich quasi den Dezimal-Punkt um die genannte Zahl, nach links mit negativen Vorzeichen. Das Beispiel zeigt aber eine Erkennung mit 6 Zahlen, digital und analog. Ich habe aber 7 Zahlen und nur digital. Von wo wird denn dann gezählt?

Für den Gaszähler brauch ich ja nur die digitalen Zahlen, es werden ja keine analogen Pfeile benötigt. Daher hatte ich die Analog-Erkennung ausgeschaltet. Ich denke da liegt das Problem, wenn ich dann nämlich "DecimalShift" -2 eingebe erhalte ich als Zahl z.B. 1234567.00...

Irgendwie versteh ich das nicht... ???

Gruß

habee



 
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: plin am 06 Mai 2021, 16:09:59
Für den Gaszähler brauch ich ja nur die digitalen Zahlen, es werden ja keine analogen Pfeile benötigt. Daher hatte ich die Analog-Erkennung ausgeschaltet. Ich denke da liegt das Problem, wenn ich dann nämlich "DecimalShift" -2 eingebe erhalte ich als Zahl z.B. 1234567.00...

Irgendwie versteh ich das nicht... ???
Was genau ist denn jetzt eigentlich Dein Problem? Dem Screenshot zufolge hast Du ja die analogen Zähler erfolgreich ausgeschaltet. Es werden auch erfolgreich 7 Stellen erkannt. Aber Dein manuell vorgegebenes preValue hast Du ohne Dezimalstelle angegeben (korrekt wäre in Deinem Beispiel 39565.76). Ansonsten wird 39565.76-3956576 = negativer Wert erkannt und der abgelesene Wert verworfen.
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: habee am 06 Mai 2021, 18:35:23
Den Versuch mit dem Dezimalpunkt im preValue setzen hatte ich schon durch, hat irgendwie auch nicht funktioniert.

Macht aber nichts, ich lasse jetzt das Postprocessing sein, setze den DecimalShift auf "-2" und es funktioniert soweit.

Werde es mal beobachten.

Gruß

habee

Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: svenkoni am 01 August 2021, 18:07:00
Hallo pink99panther,



Hat ein Weilchen gedauert, hatte schon alles umgebaut auf WaterCalCulator.

Hier nun die 2 Listings.
Internals:
   CFGFN     
   CID        wasser
   DEF        wasser
   DEVICETOPIC MQTT2_wasser
   FUUID      5fb41ab4-f33f-f73e-3dff-eac4d4986615e0ed
   IODev      MyBroker
   LASTInputDev MyBroker
   MSGCNT     7
   MyBroker_MSGCNT 7
   MyBroker_TIME 2020-11-17 20:33:16
   NAME       MQTT2_wasser
   NR         372
   STATE      <b>Zählerstand:</b> 0.5850 m<sup>3</sup><br><b>Verbrauch heute:</b> 0.00 Liter<br><b>Durchfluss:</b> 0.00 Liter/min
   TYPE       MQTT2_DEVICE
   READINGS:
     2020-11-17 20:33:16   dtime           350
     2020-11-17 20:33:16   flow            0
     2020-11-17 20:33:16   readout         182.5850
     2020-11-17 20:33:16   statFlowDay     Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowHour    Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowMonth   Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statFlowYear    Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueDay    Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueHour   Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueMonth  Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statValueYear   Min: 0.5829 Avg: 0.5829 Max: 0.5850 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeDay   Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeHour  Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeMonth Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   statVolumeYear  Min: 0 Avg: 0 Max: 0 (since: 2020-11-17_20:27:26 )
     2020-11-17 20:33:16   value           0.5850
     2020-11-17 20:33:16   valueDay        0
     2020-11-17 20:33:16   valueHour       0
     2020-11-17 20:33:16   volume          2.10000000000002
   helper:
     _98_statistics Wasserstatistik
Attributes:
   IODev      MyBroker
   alias      Haus_Wasserverbrauch
   event-on-change-reading .*(flow|volume|value|stat).*
   event-on-update-reading .*readout|statFlowHourLast.*
   icon       sani_water_tap
   readingList wasser:watermeter/readout:.* readout
   room       MQTT2_DEVICE
   stateFormat {
  my @dayval = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Month: 0"));;
  sprintf("<b>Zählerstand:</b> %.4f m<sup>3</sup><br>".
          "<b>Verbrauch heute:</b> %0.2f Liter<br>".
          "<b>Durchfluss:</b> %0.2f Liter/min",
          ReadingsVal($name,"value",0),
          $dayval[3]*1000,
          ReadingsVal($name,"flow",0)
         );;
}
   userReadings flow:readout.* {
  my $td = ReadingsVal($name,"dtime",1);;
  my $oldval = ReadingsVal($name,"flow",0);;
  ($td lt 20) ? $oldval : ReadingsVal($name,"volume",0)/$td*60;;
},
valueHour:readout.* {
  my ($d,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
valueDay:readout.* {
  my ($d1,$d2,$d3,$value) = split(" ",ReadingsVal($name,"statValue","Hour: 0 Day: 0 Year: 0"));;
  $value*1000;;
},
volume:readout.* difference {ReadingsVal($name,"value",0)*1000;;},
dtime:readout.* difference {time_str2num(ReadingsTimestamp($name,"value",0));;},
value:readout.* {
  my ($inint,$inrest) = split(/\./,ReadingsVal($name,"readout",0));;
  my ($valint,$valrest) = split(/\./,ReadingsVal($name,"value",0));;
  my $oldval = ($valint.".".$valrest);;
  $valint = $inint if ($inint !~ m/.*N.*/);;
  $valrest = $inrest if ($inrest !~ m/.*N.*/);;
  $valint++ if (($valrest-$inrest) > 8000);; # wahrscheinlich Nulldurchgang
  $valint = int($oldval) if (($valint - int($oldval)) gt 1);; # wahrscheinlich Fehlerkennung
  my $result = ($valint.".".$valrest);;
  return ($result ge $oldval)?$result:$oldval;; # sichere monotones Steigen
}

Internals:
   CFGFN     
   DEF        MQTT2_wasser
   DEV_REGEXP MQTT2_wasser
   FUUID      5fb422ca-f33f-f73e-767e-e2a7bf1f5c7101c4
   NAME       Wasserstatistik
   NOTIFYDEV  global,MQTT2_wasser
   NR         436
   NTFY_ORDER 10-Wasserstatistik
   PREFIX     stat
   STATE      Updated stats for: MQTT2_wasser
   TYPE       statistics
   READINGS:
     2020-11-17 20:27:26   monitoredDevicesMQTT2_DEVICE MQTT2_wasser
     2020-11-17 20:21:57   monitoredDevicesUnsupported MQTT2_wasser#MQTT2_DEVICE
     2020-11-17 20:21:57   nextPeriodChangeCalc 2020-11-17 20:59:55
     2020-11-17 20:41:31   state           Updated stats for: MQTT2_wasser
   fhem:
     modulVersion $Date: 2019-12-24 00:07:57 +0100 (Tue, 24 Dec 2019) $
     nextPeriodChangeTime 1605643195
Attributes:
   deltaReadings value
   minAvgMaxReadings value,flow,volume
   room       zz_Verbrauch

Danke schon mal für Deine Mühe.

Hast Du eigentlich das Problem gelöst, dass bei Dir kein "statValue" mit den Werten "Hour: 0 Day: 0 Month: 0" erzeugt wird ? bei mir fehlt es nämlich, weswegen auch keine Verbrauchswerte angezeigt werden.

Gruß
Sven
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: pink99panther am 01 August 2021, 19:37:53
Hallo Sven,
habe mich nicht wirklich weiter mit statistics abgemüht.
Läuft auf WaterCalCulator und der bringt mir alle wichtigen Infos.

LG
p99p
Titel: Antw:Alternative Methode zum Auslesen von Zählern (Wasseruhr, Gaszähler etc)
Beitrag von: svenkoni am 01 August 2021, 21:11:29
Alles klar, vielen Dank. Dann werde ich mich auch mal mit dem WaterCalCulator beschäftigen.

LG
Sven