Neues Modul: GasCalculator

Begonnen von Sailor, 21 Januar 2016, 12:48:11

Vorheriges Thema - Nächstes Thema

gadget

Zitat von: Wolle02 am 08 März 2021, 11:08:28
Allerdings möchte ich das event-on-change-reading .* aus den o.g. Gründen eigentlich nicht rausnehmen.
Ist es eventuell möglich das irgendwie anders zu implementieren?

Es reicht ja offenbar aus, wenn Du das Counter-Reading in ein event-on-update-reading packst. Bei mir ist das dann ein Event alle paar Minuten. YMMV.

Wolle02

Naja, wie man's sieht. Hier ein paar Events, da ein paar Events; und da auch noch ein paar. Immer nur alle paar Minuten. Das läppert sich halt auch zusammen. Irgendwann schaust du dann mal in den Eventmonitor und wunderst dich, dass es da fast fließend nur so durchrauscht. Kleinvieh macht halt auch Mist.
Außerdem bläht es das Logfile unnötig auf.

Sailor

Zitat von: Wolle02 am 09 März 2021, 21:16:20
Naja, wie man's sieht. Hier ein paar Events, da ein paar Events; und da auch noch ein paar. Immer nur alle paar Minuten. Das läppert sich halt auch zusammen. Irgendwann schaust du dann mal in den Eventmonitor und wunderst dich, dass es da fast fließend nur so durchrauscht. Kleinvieh macht halt auch Mist.
Außerdem bläht es das Logfile unnötig auf.

Irgendwas is immer!

Aber gegen aufgeblähte Logs gibt "DbLogExclude"

Gruß
    Sailor
******************************
Man wird immer besser...

KölnSolar

#393
Hi Sailor,
mir hats nach gestrigem Update FHEM zerrissen.Quantifier follows nothing in regex; marked by <-- HERE in m/* <-- HERE total:/ at ./FHEM/73_GasCalculator.pm line 464.Update davor war am 27.12.

Nach dem update gab es auch Zähleränderungen. Dann erst hatte ich einen restart gemacht u. danach gab es keine Zähleränderungen(Impulse aber alle 5') mehr. Nach dem Absturz gab es wieder Zähleränderungen. Mal sehen was zum Tageswechsel passiert. :-\

Ich checke mal die Daten...

Grüße Markus
Edit: Werte sehen OK aus bis auf die daylastwerte(=0; timestamp der 1. Zähleränderung nach dem Neustart nach Absturz)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

KölnSolar

Hi Sailor,
und täglich grüßt das Murmeltier. Leider wieder der Absturz gegen Mitternacht.  :'(Quantifier follows nothing in regex; marked by <-- HERE in m/* <-- HERE total:/ at ./FHEM/73_GasCalculator.pm line 464Ich nimm dann mal die alte Version aus dem Backup. :(
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

KölnSolar

Und weil Abstürze so viel Spaß machen, hat dann diese Nacht der WaterCalculator zugeschlagen. Es ist wohl ziemlich genau zu Mitternacht, wie ich jetzt sehe, da dieses Mal noch die Blocking-Meldungen vor dem restart kommen.Quantifier follows nothing in regex; marked by <-- HERE in m/* <-- HERE Totall/ at ./FHEM/73_WaterCalculator.pm line 464.
2021.04.08 00:00:01 1: BlockingInformParent (BlockingStart): Can't connect to 127.0.0.1:38147: IO::Socket::INET: connect: Connection refused
2021.04.08 00:00:01 1: BlockingInformParent (GPIO4_GetfinishFn): Can't connect to 127.0.0.1:38147: IO::Socket::INET: connect: Connection refused
2021.04.08 00:17:10 1: Including fhem.cfg


Also auch den WaterCalculator aus dem backup geholt.  >:(

da sind wir mal auf kommende Nacht gespannt. ???
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Nestor

#396
The SyncCounter command is not working for me.
There is no _CounterCurrent reading in GasCalc only _Meter?  Fixed some typos also.

--- - 2021-04-11 22:29:16.022817301 +0200
+++ /srv/fhem/FHEM/73_GasCalculator.pm 2021-04-11 22:08:10.000000000 +0200
@@ -391,8 +391,8 @@
### Create Log entries for debugging
Log3 $GasCalcName, 5, $GasCalcName. " - Syncing Counter with :" . $value;

- ### Sreach for the ReadingsName of the Current CounterValue
- my @SearchResult = grep(/_CounterCurrent/, @cList);
+ ### Search for the ReadingsName of the Current CounterValue
+ my @SearchResult = grep(/_Meter$/, @cList);

### Get current CalculatorValue
my $CalculaterValueCurrent = ReadingsVal($GasCalcName, $SearchResult[0], 0);
@@ -422,7 +422,7 @@
$attr{$GasCalcName}{GasCounterOffset} = $CounterOffsetNew;

### Create ReturnMessage
- $ReturnMessage = $GasCalcName . " - Successfully synchromized Counter and Calculator with : " . $value . " kWh";
+ $ReturnMessage = $GasCalcName . " - Successfully synchronized Counter and Calculator with : " . $value . " kWh";
}
### For Test purpose only
# elsif ($reading eq "Test")

Sailor

Hallo Markus

Zitat von: KölnSolar am 08 April 2021, 10:16:18
Also auch den WaterCalculator aus dem backup geholt.  >:(

Sorry, dass ich mich erst jetzt melde.

Diese Fehler scheinen immer nur bei denen aufzutreten, die den Counter-Modus verwenden...

Da ich das nicht nachvollziehen kann, habe ich versucht diesen Fehler abzufangen und gebe eine Fehlermeldung aus.
Ich hoffe, dass ich aus Euren Log-Eintraegen schlau werde.

Ich habe alle 3 Module entsprechend erweitert.

Gruß
    Sailor
******************************
Man wird immer besser...

Sailor

#398
Hi Nestor

Zitat von: Nestor am 11 April 2021, 22:32:27
The SyncCounter command is not working for me.
There is no _CounterCurrent reading in GasCalc only _Meter?  Fixed some typos also.

Thanks a lot!

I have implemented them into the new version...

Thats a copy-and-paste mistake from the other sister modules...

Kind Regards
   Sailor
******************************
Man wird immer besser...

KölnSolar

Hi Sailor,

ZitatSorry, dass ich mich erst jetzt melde.
So ist das halt mit uns Hobby-Entwicklern.  :)

ZitatDiese Fehler scheinen immer nur bei denen aufzutreten, die den Counter-Modus verwenden...
Was ist denn die Alternative ? Ich dachte, es gäbe nur Counterdevices.  :-\

ZitatIch hoffe, dass ich aus Euren Log-Eintraegen schlau werde.
Du meinst mit den neuen Versionen. Den WaterCalculator kann ich wie gehabt im TestFHEM testen. Im Augenblick darf das aber nicht abstürzen, weil ich eigene Module dort teste. Dauert also noch...

Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Sailor

Hallo Markus

Zitat von: KölnSolar am 13 April 2021, 21:31:06
Was ist denn die Alternative ? Ich dachte, es gäbe nur Counterdevices.  :-\

Das Calculator Device
Siehe Attriburt  "ReadingDestination" auf "CalculatorDevice"

Zitat von: KölnSolar am 13 April 2021, 21:31:06
Du meinst mit den neuen Versionen. Den WaterCalculator kann ich wie gehabt im TestFHEM testen. Im Augenblick darf das aber nicht abstürzen, weil ich eigene Module dort teste. Dauert also noch...

OK, dann warte ich noch ein bisschen. Und Vorsicht beim nächsten Update...  ;)

Gruß
   Sailor
******************************
Man wird immer besser...

octek0815

Zitat von: octek0815 am 18 April 2021, 18:52:04
Hallo,

ich habe weiterhin das selbe Problem. CounterDay1st wird nach einem Neustart auf den Aktuellen Wert von CounterCurrent gesetzt.
Und somit fängt der Tageszäher (EnergyDay) wieder bei 0 an.
Erstaunlicherweise bekommt neuerdings auch CounterDayLast einen neuen Zeitstempel nach einem Neustart behält aber den Wert von Mitternacht.

Dieses selbe Problem ist im übrigen auch bei deinem WaterCalculator und auch beim GasCalculator.
Die Module sind somit für mich derzeit unbrauchbar, was sehr schade ist da Sie mehrere Jahre zuverlässig Ihren Dienst verrichtet haben.
Erst seit dem Umbau / Update der Module (ich glaube so Mitte Februar) fingen die Problem an.

Wie kann ich zur Lösung der Problematik beitragen?

LG
Olli

Problem: CounterDay1st wird nach einem Neustart auf den Aktuellen Wert von CounterCurrent gesetzt.

Karflyer

Ich habe seit kurzem jede Nacht die folgenden Meldungen im Log:

2021.04.20 00:00:01 2: Stromzaehler : ElectricityCalculator_MidnightTimer ReadingRegEx        : interpolatedLongD5
2021.04.20 00:00:01 2: Stromzaehler : ElectricityCalculator_MidnightTimer ReadingRegExNeg     : interpolatedLongD5_
2021.04.20 00:00:01 2: Gaszaehler : GasCalculator_MidnightTimer ReadingRegEx        : interpolatedLongD5
2021.04.20 00:00:01 2: Gaszaehler : GasCalculator_MidnightTimer ReadingRegExNeg     : interpolatedLongD5_


wobei 'interpolatedLongD5' das Reading des Zählers ist, dass im Modul ausgewertet wird. Gibt es dafür eine Erklärung?

Grüße
Stefan

Sailor

Hallo Stefan

Zitat von: Karflyer am 20 April 2021, 08:21:14
wobei 'interpolatedLongD5' das Reading des Zählers ist, dass im Modul ausgewertet wird. Gibt es dafür eine Erklärung?

Das ist kein Bug sondern ein Feature, mit dem ich bei diversen Nutzern versuche Fehler zu finden.
Solange das nur um Mitternacht auftaucht ist alles ok.

Funktioniert der Calculator bei dir gut?
Wird nach einem Neustart der Tages - Erstwert neu gesetzt oder bleibt er auf dem des um Mitternacht gesetzten Wertes?

Gruss
    Sailor
******************************
Man wird immer besser...

Karflyer

ZitatFunktioniert der Calculator bei dir gut?
Wird nach einem Neustart der Tages - Erstwert neu gesetzt oder bleibt er auf dem des um Mitternacht gesetzten Wertes?

Gruss
    Sailor

Die Calculatoren (Strom und Gas) funktionieren bei mir fehlerfrei. Alle Werte bleiben bei einem Neustart erhalten. Es wird nichts zurückgesetzt.

Grüße
Stefan