Hallo,
versuche mich an dem Skript von voizchat, bekomme bei 2 Sachen aber Fehler:
1)
2017.08.27 20:14:56 1: ERROR evaluating my $EVTPART1='off';my $NAME='GPIOGaszaehler';my $EVTPART0='Longpress:';my $TYPE='RPI_GPIO';my $SELF='GasverbrauchStdNoti';my $EVENT='Longpress: off';{
my $GasUmlaufzeit=ReadingsVal("Gasverbrauch","pauseTimeEdge","0")+ReadingsVal("Gasverbrauch","pulseTimeEdge","0");
my $GasProStd=36/$GasUmlaufzeit;
my $GasProStdRounded=int(100 * $GasProStd + 0.5) / 100;
fhem("set GasverbrauchStd $GasProStdRounded");;
fhem("defmod tmp_time_gas at +00:02:00 set GasverbrauchStd 0");;
}: Illegal division by zero at (eval 4909) line 4, <GEN215> line 30.
2017.08.27 20:14:56 3: GasverbrauchStdNoti return value: Illegal division by zero at (eval 4909) line 4, <GEN215> line 30.
Weiterhin akzeptiert FHEM folgenden Befehl nicht:
set FileLog_Gasverbrauch addRegexpPart GasverbrauchStd:.*
FHEM Ausgabe: addRegexpPart needs 2 parameter(s)
In voizchat stand was von:
define et eventTypes %L/eventtypes.log
Was aber nicht geholfen hat.
Zitatversuche mich an dem Skript von voizchat,
Welches? Der hat ne Reihe von Tutorials und Seiten für Fhem.
my $GasUmlaufzeit=ReadingsVal("Gasverbrauch","pauseTimeEdge","0")+ReadingsVal("Gasverbrauch","pulseTimeEdge","0");
my $GasProStd=36/$GasUmlaufzeit;
Ein "list Gasverbrauch" könnte helfen. Was hat das Device für Readings?
ZitatWeiterhin akzeptiert FHEM folgenden Befehl nicht:
Code: [Auswählen]
set FileLog_Gasverbrauch addRegexpPart GasverbrauchStd:.*
FHEM Ausgabe: addRegexpPart needs 2 parameter(s)
Einfach CommandREF lesen! https://fhem.de/commandref_DE.html#FileLog
ZitataddRegexpPart <device> <regexp>
danke.
der link
https://voizchat.de/gaszaehler-verbrauch-erfassen-mit-fhem-und-raspberry-gpio/
habe eigentlich alles 1:1 gemacht wie auf der Seite beschrieben
list:
Internals:
DEF GPIOGaszaehler:on GPIOGaszaehler:off
NAME Gasverbrauch
NR 27
NTFY_ORDER 50-Gasverbrauch
STATE 0
TYPE HourCounter
VERSION 1.0.1.2 - 24.12.2014
READINGS:
2017-08-28 18:30:32 countsOverall 2647365
2017-08-28 18:30:32 countsPerDay 0
2017-08-28 18:30:32 pauseTimeEdge 2
2017-08-28 18:30:32 pauseTimeIncrement 77429
2017-08-28 18:30:32 pauseTimeOverall 102000
2017-08-28 18:30:32 pauseTimePerDay 64692
2017-08-28 18:30:32 pulseTimeEdge 1
2017-08-28 18:30:32 pulseTimeIncrement 1
2017-08-28 18:30:32 pulseTimeOverall 2
2017-08-28 18:30:32 pulseTimePerDay 0
2017-08-28 18:30:32 state 0
2017-08-27 20:15:04 tickChanged 8
2017-08-28 00:00:00 tickDay 1
2017-08-28 18:00:00 tickHour 22
2017-08-27 20:22:15 tickMonth 0
2017-08-28 18:30:32 tickUpdated 507
2017-08-27 20:22:15 tickWeek 0
2017-08-27 20:22:15 tickYear 0
2017-08-28 18:30:32 value 0
helper:
OFF_Regexp GPIOGaszaehler:off
ON_Regexp GPIOGaszaehler:on
calledByEvent
changedTimestamp 2017-08-28 18:30:32
forceClear
forceDayChange
forceHourChange
forceMonthChange
forceWeekChange
forceYearChange
isFirstRun
sdRoundHourLast 1503936000
value 0
cmdQueue:
Attributes:
room Heizung
Ich vermute, dass bei irgendwelchem Event auf GPIOGaszaehler, die Werte von pulseTimeEdge und pauseTimeEdge gleich 0 sind. Es wäre interssant, die Events von GPIOGazaehler in einder Log zu protikolieren.
Hat sich erstmal erledigt. Der Weg von Voizchat ist suboptiomal.
Meine ganzes System hängt deswegen.
Gruß