Autor Thema: Stromzähler mit S0 Schnittstelle nochmals  (Gelesen 51745 mal)

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #315 am: 22 April 2018, 09:28:15 »
Hallo birdy,

der alte ArduCounter geht von einer seriellen Verbindung aus.
In der neuen Version, die dann auch auf dem ESP laufen kann, kann man beim Define auch IP-Adresse und Port angeben.
Dann versucht Fhem direkt per TCP mit dem Zähler zu reden.
Unter der Adresse kann dann entweder direkt ein ESP erreichbar sein oder auch ein Umsetzer:

Fhem - WLAN - ESP8266
oder
Fhem - WLAN - ser2Net - Arduino

Gruss
    Stefan

Offline birdy

  • Full Member
  • ***
  • Beiträge: 178
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #316 am: 22 April 2018, 21:01:11 »
Danke Stefan

Ab welcher Version sprechen wir von...
... der neuen Version, die dann auch auf dem ESP laufen kann......
Gruss
birdy
FHEM5.8@Debian 8.6@Proxmox VE 5.0-30@intelNUC   (+ Pi 3 )
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube MAXLan, Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #317 am: 22 April 2018, 21:46:24 »
Hallo,

Die Version für den ESP ist noch nicht eingecheckt. Der letzte Abstand, den ich gepostet habe, ist vom 18.3.
(Hier im Thread gepostet)

Gruss
   Stefan
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #318 am: 05 Mai 2018, 12:35:55 »
Hallo,

anbei der aktuelle Entwicklungsstand des ArduCounters für Arduino und ESP8266.
Ich habe einiges im Modul und im Sketch umgebaut, damit es sowohl mit einem Uno / Nano als auch mit einem ESP funktioniert. Für Kommunikation per TCP sind ein paar neue Features hinzugekommen:

- bei Verbindung per TCP sendet das Modul regelmäßig eine Keepalive-Anfrage an das Zähler-Board um zu prüfen, ob die TCP- bzw. WLAN-Verbindung noch steht. Falls keine Antwort kommt, wird die Verbindung geschlossen und versucht sie neu aufzubauen.
- Auf Board-Seite wird bei Verbindungen über TCP bemerkt wenn die TCP-Verbindung unterbrochen wurde. Dann wird die nächste Meldung des Zählerstandes bis zu drei mal verzögert und weitergezählt.
- Das Modul versucht verpasste Zählerstands-Meldungen zu rekonstruieren.
- Die Pin-History und Debug-Meldungen bei jedem Pegelwechsel an einem Input können per set devVerbose eingestellt werden.

Ich hoffe dass noch alles so wie vorher funktioniert und keine neuen Fehler im Code sind. Da ich aber sehr viel umgebaut habe, ist das nicht auszuschließen. Es wäre daher schön wenn ich ein paar Test-Feedbacks bekomme.

Für den ESP muss das Board noch über die Arduino IDE geflasht werden. Auch die eigene WLAN SSID und das WLAN-Passwort müssen noch manuell in den Code eingetragen werden.

Gruss / vielen Dank
   Stefan

Offline tpm88

  • Full Member
  • ***
  • Beiträge: 375
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #319 am: 05 Mai 2018, 22:18:29 »
Hallo Stefan,

danke für die TCP-Erweiterungen - genau mein Anwendungsfall ;-)

Allererstes Feedback: Zähler 2.35 zählt auf meinem Wemos D1 ...

FHEM-Log:
2018.05.05 21:58:38 3: AC_Strom: disable attribute removed
2018.05.05 21:58:38 3: Opening AC_Strom device 192.168.8.69:80
2018.05.05 21:58:38 3: AC_Strom device opened
2018.05.05 21:58:38 3: AC_Strom: device sent hello: ArduCounter V2.35 on ESP8266 ESP8266_WEMOS_D1MINI compiled May  5 2018 21:52:33 Hello, pins 0,1,2,5,6,7 available T99636,0 B559,0
2018.05.05 21:58:39 3: AC_Strom: sending configuration from attributes to device
2018.05.05 21:58:39 3: AC_Strom: ConfigureDevice calls Attr with pinD5 falling pullup 30
2018.05.05 21:58:39 3: AC_Strom: ConfigureDevice calls Attr with interval 2 300 1 1
2018.05.05 21:58:39 3: AC_Strom: device: defined P5 falling pullup min 30
2018.05.05 21:58:39 3: AC_Strom: device: intervals set to 2 300 1 1
2018.05.05 22:01:55 3: AC_Strom: pin 5 (pin5) interpolating for 1067.29 secs until boot, 10 estimated pulses (before 1 in 108133 ms, now 1 in 108133 ms, avg ratio 0.00924787067777644 p/s)

Und das zugehörige Log:

2018-05-05_21:37:48 AC_Strom power5: 0.333
2018-05-05_21:37:48 AC_Strom pin5: 44820
2018-05-05_21:37:48 AC_Strom long5: 54081
2018-05-05_21:37:48 AC_Strom reject5: 12683
2018-05-05_21:37:48 AC_Strom TotalKWh: 72576.3416665697
2018-05-05_21:39:12 AC_Strom power5: 0.350
2018-05-05_21:39:12 AC_Strom pin5: 44821
2018-05-05_21:39:12 AC_Strom long5: 54082
2018-05-05_21:39:12 AC_Strom reject5: 12683
2018-05-05_21:39:12 AC_Strom TotalKWh: 72576.349999903
==== STOP v 2.31

==== Beginn v 2.35
2018-05-05_22:01:55 AC_Strom power5: 0.277
2018-05-05_22:01:55 AC_Strom reject5: 12684
2018-05-05_22:01:55 AC_Strom timeDiff5: 108133
2018-05-05_22:01:55 AC_Strom countDiff5: 1
2018-05-05_22:01:55 AC_Strom pin5: 2
2018-05-05_22:01:55 AC_Strom long5: 54084
2018-05-05_22:01:55 AC_Strom seq5: 1
2018-05-05_22:01:55 AC_Strom TotalKWh: 72576.3666665697
2018-05-05_22:03:43 AC_Strom power5: 0.278
2018-05-05_22:03:43 AC_Strom reject5: 12684
2018-05-05_22:03:43 AC_Strom timeDiff5: 107814
2018-05-05_22:03:43 AC_Strom countDiff5: 1
2018-05-05_22:03:43 AC_Strom pin5: 3
2018-05-05_22:03:43 AC_Strom long5: 54085
2018-05-05_22:03:43 AC_Strom seq5: 2
2018-05-05_22:03:43 AC_Strom TotalKWh: 72576.374999903
2018-05-05_22:05:29 AC_Strom power5: 0.280
2018-05-05_22:05:29 AC_Strom reject5: 12684
2018-05-05_22:05:29 AC_Strom timeDiff5: 107098
2018-05-05_22:05:29 AC_Strom countDiff5: 1
2018-05-05_22:05:29 AC_Strom pin5: 4
2018-05-05_22:05:29 AC_Strom long5: 54086
2018-05-05_22:05:29 AC_Strom seq5: 3
2018-05-05_22:05:29 AC_Strom TotalKWh: 72576.3833332364

Kurze Frage zu den neuen Readings: timeDiff ist wohl selbsterklärend. Welche genaue Bedeutung haben countDiff und seq? In der CommandRef fehlen sie noch...

Gruß,
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on CubieTruck, HM-USB, JeeLink
DB Logging FHEM Server on QNAP NAS
Devices: diverse HM, IT1500, 1wire via AVR NetIO, LaCrosse

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #320 am: 06 Mai 2018, 11:27:51 »
Hallo Tobias,

jede Zählermeldung vom Board an Fhem hat nun eine Sequenz-Nummer. Damit kann das Modul erkennen, wenn es eine Meldung verpasst hat. Das ist das Reading seq.
CountDiff ist das Delte zur letzten Zählermeldung. Dieses Delta wird zusammen mit TimeDiff zur Berechnung des Verbrauchs verwendet.
Ich werd's in der Commandref noch ergänzen. Danke für den Hinweis.
Sind die anderen Werte sonst in Ordnung?

Gruss und vielen Dank fürs Testen
   Stefan

Offline tpm88

  • Full Member
  • ***
  • Beiträge: 375
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #321 am: 06 Mai 2018, 12:06:57 »
Hallo Stefan,

danke, bisher sieht alles einwandfrei aus. Ich möchte noch ein wenig testen und Fehler ( TCP / WLAN - Abbrüche ) simulieren, das schaffe ich aber erst frühestens nächstes Wochenende. Bis dahin gleiche ich den Stromzähler noch einmal ab und sehe dann, ob innerhalb einer Woche keine Impulse verloren gehen.

Ich vermute mal, daß die Attribute keepAliveDelay, keepAliveTimeout, nextOpenDelay und openTimeout mit Default Werten vorbelegt sind. Als internal ( mit Default 60s ) habe ich nur nextOpenDelay gefunden. Wäre super, wenn du die Defaults in der CommandRef ergänzen könntest.

VG
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on CubieTruck, HM-USB, JeeLink
DB Logging FHEM Server on QNAP NAS
Devices: diverse HM, IT1500, 1wire via AVR NetIO, LaCrosse

Offline tpm88

  • Full Member
  • ***
  • Beiträge: 375
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #322 am: 11 Mai 2018, 21:32:16 »
Hallo Stefan,

eben ist das neue ArduCounter Modul Amok gelaufen. Der Status des Wemos ist innerhalb ca 3 Minuten etwa 820x ununterbrochen von CONNECTED auf DISCONNECTED gesprungen. Ein Notify schickt mir hierzu jedesmal eine Push Nachricht (1740 Messages...). Nach einem manuellen Reboot des Wemos hat sich das System wieder gefangen. Was das ganze ausgelöst hat, kann ich nicht sagen. Vielleicht kannst Du aus den Logs etwas herauslesen.

AC Log:

2018-05-11_20:59:12 AC_Strom power5: 0.337
2018-05-11_20:59:12 AC_Strom reject5: 14418
2018-05-11_20:59:12 AC_Strom timeDiff5: 89071
2018-05-11_20:59:12 AC_Strom countDiff5: 1
2018-05-11_20:59:12 AC_Strom pin5: 5341
2018-05-11_20:59:12 AC_Strom long5: 59423
2018-05-11_20:59:12 AC_Strom seq5: 220
2018-05-11_20:59:12 AC_Strom TotalKWh: 72620.5583332261
2018-05-11_21:00:52 AC_Strom power5: 0.302
2018-05-11_21:00:52 AC_Strom reject5: 14418
2018-05-11_21:00:52 AC_Strom timeDiff5: 99247
2018-05-11_21:00:52 AC_Strom countDiff5: 1
2018-05-11_21:00:52 AC_Strom pin5: 5342
2018-05-11_21:00:52 AC_Strom long5: 59424
2018-05-11_21:00:52 AC_Strom seq5: 221
2018-05-11_21:00:52 AC_Strom TotalKWh: 72620.5666665594
2018-05-11_21:02:29 AC_Strom DISCONNECTED
2018-05-11_21:02:29 AC_Strom CONNECTED
2018-05-11_21:02:29 AC_Strom DISCONNECTED
2018-05-11_21:02:30 AC_Strom CONNECTED
2018-05-11_21:02:30 AC_Strom DISCONNECTED
2018-05-11_21:02:30 AC_Strom CONNECTED
2018-05-11_21:02:30 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:31 AC_Strom DISCONNECTED
2018-05-11_21:02:31 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:32 AC_Strom DISCONNECTED
2018-05-11_21:02:32 AC_Strom CONNECTED
2018-05-11_21:02:33 AC_Strom DISCONNECTED
...
2018-05-11_21:04:21 AC_Strom DISCONNECTED
2018-05-11_21:04:21 AC_Strom CONNECTED
2018-05-11_21:04:21 AC_Strom DISCONNECTED
2018-05-11_21:04:21 AC_Strom CONNECTED
2018-05-11_21:04:21 AC_Strom DISCONNECTED
2018-05-11_21:04:21 AC_Strom CONNECTED
2018-05-11_21:04:21 AC_Strom DISCONNECTED
2018-05-11_21:04:21 AC_Strom CONNECTED
2018-05-11_21:04:21 AC_Strom DISCONNECTED
2018-05-11_21:04:21 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:04:22 AC_Strom CONNECTED
2018-05-11_21:04:22 AC_Strom DISCONNECTED
2018-05-11_21:05:27 AC_Strom CONNECTED
2018-05-11_21:07:40 AC_Strom power5: 0.386
2018-05-11_21:07:40 AC_Strom reject5: 14418
2018-05-11_21:07:40 AC_Strom timeDiff5: 77777
2018-05-11_21:07:40 AC_Strom countDiff5: 1
2018-05-11_21:07:40 AC_Strom pin5: 2
2018-05-11_21:07:40 AC_Strom long5: 59426
2018-05-11_21:07:40 AC_Strom seq5: 1
2018-05-11_21:07:40 AC_Strom TotalKWh: 72620.5833332261
2018-05-11_21:09:00 AC_Strom power5: 0.378
2018-05-11_21:09:00 AC_Strom reject5: 14418
2018-05-11_21:09:00 AC_Strom timeDiff5: 79390
2018-05-11_21:09:00 AC_Strom countDiff5: 1
2018-05-11_21:09:00 AC_Strom pin5: 3
2018-05-11_21:09:00 AC_Strom long5: 59427
2018-05-11_21:09:00 AC_Strom seq5: 2
2018-05-11_21:09:00 AC_Strom TotalKWh: 72620.5916665594

FHEM Log:

2018.05.11 21:02:04 3: AC_Strom: device didn't reply to k(eeepAlive). Is the right sketch flashed?
2018.05.11 21:02:19 3: AC_Strom: device didn't reply to k(eeepAlive). Is the right sketch flashed?
2018.05.11 21:02:29 3: AC_Strom: device didn't reply to k(eeepAlive). Is the right sketch flashed?
2018.05.11 21:02:29 3: AC_Strom: no retries left, setting device to disconnected
2018.05.11 21:02:29 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:29 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:29 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:29 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:30 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:30 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:30 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:30 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:30 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:30 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:31 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:31 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:31 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:32 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:32 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:32 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:32 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:32 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:02:32 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:02:32 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:02:32 3: 192.168.8.69:80 reappeared (AC_Strom)
...
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:22 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:04:22 3: AC_Strom: unparseable message from device: connection already busy
2018.05.11 21:04:22 3: 192.168.8.69:80 disconnected, waiting to reappear (AC_Strom)
2018.05.11 21:04:24 3: AC_Strom: device didn't reply to k(eeepAlive). Is the right sketch flashed?
2018.05.11 21:04:24 3: AC_Strom: no retries left, setting device to disconnected
2018.05.11 21:04:37 3: AC_Strom: sending h(ello) to device to ask for version
2018.05.11 21:05:27 3: 192.168.8.69:80 reappeared (AC_Strom)
2018.05.11 21:05:27 3: AC_Strom: device sent hello: ArduCounter V2.35 on ESP8266 ESP8266_WEMOS_D1MINI compiled May  5 2018 21:52:33
Hello, pins 0,1,2,5,6,7 available T38156,0 B561,0
2018.05.11 21:05:28 3: AC_Strom: sending configuration from attributes to device
2018.05.11 21:05:28 3: AC_Strom: ConfigureDevice calls Attr with interval 2 300 1 1
2018.05.11 21:05:28 3: AC_Strom: ConfigureDevice calls Attr with pinD5 falling pullup 30
2018.05.11 21:05:28 3: AC_Strom: device: intervals set to 2 300 1 1
2018.05.11 21:05:28 3: AC_Strom: device: defined P5 falling pullup min 30
2018.05.11 21:07:40 3: AC_Strom: pin 5 (pin5) interpolating for 237.60 secs until boot, 3 estimated pulses (before 1 in 77777 ms, no
w 1 in 77777 ms, avg ratio 0.0128572714298572 p/s)
2018.05.11 21:10:12 3: AC_Strom: device didn't reply to k(eeepAlive). Is the right sketch flashed?

Danke & Gruß
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on CubieTruck, HM-USB, JeeLink
DB Logging FHEM Server on QNAP NAS
Devices: diverse HM, IT1500, 1wire via AVR NetIO, LaCrosse

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #323 am: 12 Mai 2018, 10:53:10 »
Hallo Tobias,

Aus den Logs lese ich folgendes:
Das Fhem-Modul hat keine Antworten mehr vom Wemos D1 bekommen. Könnte am WLAN oder anderen Problemen gelegen haben. Das Modul hat daraufhin die TCP-Verbindung beendet und versucht sie neu zu öffnen.
Auf Seite des Wemos werden zwei TCP-Verbindungen verwaltet.
Die erste / primäre Verbindung kommuniziert mit Fhem. Die zweite ist nur dazu da einen weiteren Verbindungsversuch ordentlich abzuweisen. Dabei wird „connection already busy“ gesendet und die Verbindung geschlossen.
In Deinem Fall scheint der Wemos nicht mitbekommen zu haben, dass die erste Verbindung beendet wurde und dann kam Fhem nicht mehr ran ...
Ich denke da muss ich auf Geräteseite auch einen KeepAlive / Timeout für die Verbindung einbauen. Dann würde auch der Wemos die erste Verbindung wegwefen und die neue akzeptieren.
Zudem sollte das Modul nach einer „connection busy“-Meldung kurz warten.

Gruss
    Stefan
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #324 am: 14 Mai 2018, 19:32:05 »
Hallo,

anbei eine neue Version zum Testen.
Das Modul teilt dem Device nun auch mit, wann die nächste keepalive-Nachricht zu erwarten ist. Wenn die zu lange ausbleibt, beendet auch das Device die TCP-Verbindung und wartet darauf, dass sie neu aufgebaut wird.

Gruss
   Stefan
« Letzte Änderung: 19 Mai 2018, 08:05:44 von StefanStrobel »

Offline tpm88

  • Full Member
  • ***
  • Beiträge: 375
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #325 am: 15 Mai 2018, 14:56:59 »
Hallo Stefan,

vielen Dank für die neue Version. Werde ich gerne testen, bin aber derzeit geschäftlich auswärts unterwegs. Kann also ein wenig dauern, da ich von remote den wemos nicht flashen kann...  8)

Ich melde mich...

Gruß
Tobias

Edit: Habe eben die v 2.36 eingespielt
« Letzte Änderung: 17 Mai 2018, 22:09:01 von tpm88 »
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on CubieTruck, HM-USB, JeeLink
DB Logging FHEM Server on QNAP NAS
Devices: diverse HM, IT1500, 1wire via AVR NetIO, LaCrosse

Offline Takero

  • New Member
  • *
  • Beiträge: 9
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #326 am: 27 Mai 2018, 10:49:59 »
Hallo Zusammen,

ich habe vor kurzem die Adapter in Fhem aktualisiert. So weit so gut.

Leider funktioniert seit dem der Counter meine S0 Schnittstelle nicht mehr. Davor funktionierte es tadellos.

Ich habe die aktuell Firmware des Arduino geflashed.

Meine config sieht wie folgt aus:

define AC ArduCounter /dev/ttyUSB0
attr AC factor 500
attr AC interval 10 300
attr AC pinD5 falling pullup
attr AC verboseReadings5
#attr AC userReadings Zaehler {ReadingsVal("AC","pinD5",0)/2000 }

get Info spukt das hier aus:

M Status: ArduCounter V2.05
normal interval 10000
max interval 300000
min interval 0
min count 0
pin 5 PCInt pin 21, iMode falling, no min len, count 0 (+0) in 177374 ms
Next report in 2603 Milliseconds
pulse history:
pin 5 start -7264 len 29 at 0 
pin 5 start -7235 len 746 at 1 
pin 5 start -6489 len 30 at 0 
pin 5 start -6459 len 738 at 1 
pin 5 start -5721 len 30 at 0 
pin 5 start -5691 len 742 at 1 
pin 5 start -4949 len 30 at 0 
pin 5 start -4919 len 741 at 1 
pin 5 start -4178 len 30 at 0 
pin 5 start -4148 len 742 at 1 
pin 5 start -3406 len 31 at 0 
pin 5 start -3375 len 741 at 1 
pin 5 start -2634 len 30 at 0 
pin 5 start -2604 len 739 at 1 
pin 5 start -1865 len 30 at 0 
pin 5 start -1835 len 710 at 1 
pin 5 start -1125 len 29 at 0 
pin 5 start -1096 len 659 at 1 
pin 5 start -437 len 29 at 0 

Ich habe auch schon versucht den PIN D5 manuell auf GND zu ziehen, dabei geschieht auch nichts.

Wo ist mein Fehler?

Ich könnte noch rising versuchen, aber dann müsste der zweite PIN vom S0 auf VCC oder irre ich?

Danke und viele Grüße,
Andreas

Offline StefanStrobel

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 968
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #327 am: 28 Mai 2018, 10:59:42 »
Hallo Andreas,

Welche Modulversion verwendest Du denn?
Sketch 2.05 ist der aus dem SVN. Hier im Thread findest Du eine deutlich neuere Version.

Am besten nimmst Du gleich die neue Version des Moduls und des Sketches hier aus dem Thread.
Die beiden Versionen müssen zusammen passen, sonst klappt es nicht.

Bitte gib doch nach falling pullup noch ein 20 als Mindestlänge an.
In der Pulse-History sieht man dass der Zähler durchaus Impulse sieht, die 30ms auf GND liegen.
Nur gezählt werden sie wohl nicht.
Das sollte mit der aktuellen Version und Angabe einer Mindestlänge kein Problem sein.

Gruß
    Stefan


Offline Takero

  • New Member
  • *
  • Beiträge: 9
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #328 am: 28 Mai 2018, 16:20:26 »
Hallo, vielen Dank für die Antwort. Konnte das Problem vorhin schon lösen. Es war wie die auch schreibst das Timing. Falling pullup 30 ist es bei mir.

B+G E-Tech Zähler.

Offline Otto123

  • Hero Member
  • *****
  • Beiträge: 9927
    • Otto's Technik Blog
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #329 am: 13 Juni 2018, 11:07:06 »
Hallo, vielen Dank für die Antwort. Konnte das Problem vorhin schon lösen. Es war wie die auch schreibst das Timing. Falling pullup 30 ist es bei mir.

B+G E-Tech Zähler.
Hallo Stefan,

irgendwie hat mir genau der Hinweis beim Update (habe es schon dreimal zurück gedreht) gefehlt. Mit der alten DEF (ohne das Timing) gab es keine Impulse mehr  :'(

Danke  ;)

So jetzt mal die ganz neue Version auf dem ESP testen  ;)

Gruß Otto
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,ET9200,Arduino nano,ESP8266

 

decade-submarginal