[gelöst]DbLog "state" wird nicht geloggt bei Verw. von DbLogExclude/Include

Begonnen von frober, 20 Januar 2018, 23:39:20

Vorheriges Thema - Nächstes Thema

frober

Hallo,

bin am verzweifeln. Das "state" vom meinem KS300 wird nicht geloggt.

Grundsätzlich funktioniert das loggen von "state".

Meine Konfig:

define logdb DbLog ./db.conf .*:.*
attr logdb DbLogSelectionMode Exclude/Include
attr logdb DbLogType SampleFill/History

attr KS300 DbLogExclude .*
attr KS300 DbLogInclude state.*


Wenn ich DbLogExclude entferne werden alle readings vom KS300 incl. "state" geloggt.
Bei meiner KS300_Daemmerung und KS300_Einstrahlung funktioniert das loggen auch von "state"
(nur ein reading, daher kein exclude/include).

Ich habe mal alle DbLogExclude entfernt und DbLogSelectionMode auf "Include" umgestellt.
Dazu musste ich entsprechend bei KS300_Daemmerung und KS300_Einstrahlung DbLogInclude state.* setzen.
Danach wurde auch hier kein "state" mehr geloggt.

Anscheinend verhindert die DbLogExclude-Funktion das loggen von "state"!?
Kann das jemand bestätigen?

Gruß frober

P.S. Ich habe mal den Betreff geändert, um das Problem deutlicher zu beschreiben.

Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

DS_Starter

Hallo frober,

Zitat
Anscheinend verhindert die DbLogExclude-Funktion das loggen von "state"!?
Kann das jemand bestätigen?

Nein, ist nicht so. Ich habe es bei mir mit einem USV-Device getestet. KS300 habe ich leider nicht.

Im DbLog

"DbLogSelectionMode = Include"

gesetzt. Im USV-Device:

DbLogExclude = .*
DbLogInclude = state


ebenfalls gesetzt. Im Log mit DbLog verbose 4 sieht man das Ergebnis:

2018.01.21 11:20:04.893 4: DbLog LogDB1 -> ###              start of new Logcycle                       ###
2018.01.21 11:20:04.894 4: DbLog LogDB1 -> ################################################################
2018.01.21 11:20:04.895 4: DbLog LogDB1 -> amount of events received: 1 for device: USV
2018.01.21 11:20:04.896 4: DbLog LogDB1 -> check Device: USV , Event: state: OL
2018.01.21 11:20:04.897 4: DbLog LogDB1 -> added event - Timestamp: 2018-01-21 11:20:04, Device: USV, Type: NUT, Event: state: OL, Reading: state, Value: OL, Unit:
2018.01.21 11:20:04.899 4: DbLog LogDB1 -> ################################################################
2018.01.21 11:20:04.900 4: DbLog LogDB1 -> ###         New database processing cycle - synchronous      ###
2018.01.21 11:20:04.901 4: DbLog LogDB1 -> ################################################################
2018.01.21 11:20:04.901 4: DbLog LogDB1 -> DbLogType is: Current/History
2018.01.21 11:20:04.902 4: DbLog LogDB1 -> AutoCommit mode: ON, Transaction mode: ON
2018.01.21 11:20:04.905 4: DbLog LogDB1 -> processing event Timestamp: 2018-01-21 11:20:04, Device: USV, Type: NUT, Event: state: OL, Reading: state, Value: OL, Unit:
2018.01.21 11:20:04.933 4: DbLog LogDB1 -> 1 of 1 events inserted into table history using PK on columns TIMESTAMP,DEVICE,READING
2018.01.21 11:20:04.934 4: DbLog LogDB1 -> insert table history committed by autocommit
2018.01.21 11:20:04.952 4: DbLog LogDB1 -> 1 of 1 events updated in table current
2018.01.21 11:20:04.953 4: DbLog LogDB1 -> insert / update table current committed by autocommit


Du müsstest mal ein verbose 4 oder 5 anfertigen. Setzte dir dazu vorher im DbLog das Attr:

verbose4Devs = <dein KS300 Device>

Das erhöht die Übersichtlichkeit.
Warum setzt du überhaupt "attr KS300 DbLogExclude = .*" ?
Wenn du im DbLog "DbLogSelectionMode = Include" verwendest, reicht es m.M. nach aus in den entsprechenden Devices "DbLogInclude = <Regex>" zu setzen.

Commandref für DbLog "DbLogSelectionMode = Include" :

ZitatInclude: Es wird nur das geloggt was ueber die RegExp in DbLogInclude eingeschlossen wird.
Das Attribut DbLogExclude wird in diesem Fall ebenso wenig beruecksichtigt wie die Regex im DEF.

Grüße
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

frober

Hallo Heiko,

erstmal danke für die schnelle Antwort :).

Ich habe die Commandref/Wiki mehrmals gelesen, auch das Forum usw. durchforscht.

Meine Grundkonfiguration:

ZitatMeine Konfig:


Code: [Auswählen]

define logdb DbLog ./db.conf .*:.*
attr logdb DbLogSelectionMode Exclude/Include
attr logdb DbLogType SampleFill/History

attr KS300 DbLogExclude .*
attr KS300 DbLogInclude state.*


Ich habe probehalber das Exlude gelöscht und festgestellt, dass dann das "state" mit den restlichen readings geloggt wurde.
Nächster Gedanke war, das DbLogSelectionMode auf "Include" umzustellen (Um Exclude als "Problem" auszuschließen).
Dabei habe ich festgestellt, dass bei KS300_Einstrahlung usw. das "state" nicht mehr geloggt wird.

Aktuell habe ich mit meiner Grundkonfiguration ein verbose erstellt:

2018.01.21 11:39:47 4: DbLog logdb -> ################################################################
2018.01.21 11:39:47 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.01.21 11:39:47 4: DbLog logdb -> ################################################################
2018.01.21 11:39:47 4: DbLog logdb -> amount of events received: 11 for device: KS300
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: state: T: 3.6  H: 79  W: 0.0  R: 885.9  IR: no  Wi: 0
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: rain: 885.9
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: wind: 0.0
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: humidity: 79
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: temperature: 3.6
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: israining: no
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_tsecs: 1516531187.16632
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_now_value: 885.9
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_now_diff: 0
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_all: cH: 0.0 lH: 0.0 cD: 0.0 lD: 14.6 IR: no Rnow: 0.0 Rdif: 0
2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: dewpoint: 0.3
2018.01.21 11:39:49 4: DbLog logdb -> ################################################################
2018.01.21 11:39:49 4: DbLog logdb -> ###         New database processing cycle - synchronous      ###
2018.01.21 11:39:49 4: DbLog logdb -> ################################################################
2018.01.21 11:39:49 4: DbLog logdb -> DbLogType is: Current/History
2018.01.21 11:39:49 4: DbLog logdb -> AutoCommit mode: ON, Transaction mode: ON
2018.01.21 11:39:49 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.history: none
2018.01.21 11:39:49 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.current: none
2018.01.21 11:39:49 4: DbLog logdb -> 1 of 1 events inserted into table history
2018.01.21 11:39:49 4: DbLog logdb -> insert table history committed by autocommit
2018.01.21 11:39:49 4: DbLog logdb -> 1 of 1 events updated in table current
2018.01.21 11:39:49 4: DbLog logdb -> insert / update table current committed by autocommit
2018.01.21 11:39:51 4: DbLog logdb -> ################################################################
2018.01.21 11:39:51 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.01.21 11:39:51 4: DbLog logdb -> ################################################################
2018.01.21 11:39:51 4: DbLog logdb -> amount of events received: 1 for device: KS300_Einstrahlung
2018.01.21 11:39:51 4: DbLog logdb -> check Device: KS300_Einstrahlung , Event: state: 160 W/m²
2018.01.21 11:39:51 4: DbLog logdb -> added event - Timestamp: 2018-01-21 11:39:51, Device: KS300_Einstrahlung, Type: FS20V, Event: state: 160 W/m², Reading: state, Value: 160 W/m², Unit:
2018.01.21 11:39:51 4: DbLog logdb -> ################################################################
2018.01.21 11:39:51 4: DbLog logdb -> ###         New database processing cycle - synchronous      ###
2018.01.21 11:39:51 4: DbLog logdb -> ################################################################
2018.01.21 11:39:51 4: DbLog logdb -> DbLogType is: Current/History
2018.01.21 11:39:51 4: DbLog logdb -> AutoCommit mode: ON, Transaction mode: ON
2018.01.21 11:39:51 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.history: none
2018.01.21 11:39:51 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.current: none
2018.01.21 11:39:51 4: DbLog logdb -> processing event Timestamp: 2018-01-21 11:39:51, Device: KS300_Einstrahlung, Type: FS20V, Event: state: 160 W/m², Reading: state, Value: 160 W/m², Unit:
2018.01.21 11:39:51 4: DbLog logdb -> 1 of 1 events inserted into table history
2018.01.21 11:39:51 4: DbLog logdb -> insert table history committed by autocommit
2018.01.21 11:39:51 4: DbLog logdb -> 1 of 1 events updated in table current
2018.01.21 11:39:51 4: DbLog logdb -> insert / update table current committed by autocommit
2018.01.21 11:39:51 5: DbLog logdb -> DbLog_Push Returncode: 0


Bei KS300_Einstrahlung ist kein Exclude/Include gesetzt.

Gruß Bernd
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

DS_Starter

Hallo Bernd,

Zitat2018.01.21 11:39:51 4: DbLog logdb -> processing event Timestamp: 2018-01-21 11:39:51, Device: KS300_Einstrahlung, Type: FS20V, Event: state: 160 W/m², Reading: state, Value: 160 W/m², Unit:
Das state-Reading wird bei KS300_Einstrahlung geloggt wie man sieht.

Sorry, irgendwie habe ich noch nicht verstanden, was eigentlich genau dein Ziel ist.  ;)  Was möchtest du loggen, nur state ?

Grüße
Heiko



ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

frober

Hallo Heiko,

KS300 (KS300) und KS300_Einstrahlung (FS20V) sind 2 versch. devices, auch wenn beide von KS300 gesendet werden. Wie erwähnt, ist bei KS300_Einstahlung kein Exclude/Include gesetzt, beim KS300 selbst ist Exclude .* und Include state.* gesetzt.


Ja, ich möchte von KS300 nur das state loggen (von KS300_Einstrahlung natürlich auch).

1. sind damit alle Daten vorhanden und damit die Datenmenge reduziert. Auch wenn die Auswertung mittels SVG komplizierter wird.
2. möchte ich meine Logfiles vom KS300 migrieren, und die enthalten nur das state.

Ich habe vergessen zu erwähnen, dass ich gerade erst auf DbLog umsteige. D.h. ich überprüfe noch, ob alle Daten, die ich brauche, auch in DbLog ankommen.

Nachtrag:
Du hast Recht an Exclude/Include kann es nicht liegen. Ich habe noch ein Device bei den state geloggt wird:
defmod Bad LaCrosse 21
attr Bad DbLogExclude .*
attr Bad DbLogInclude state.*
attr Bad IODev JL_LaCrosse


Auszug aus den Exportfile:
"2018-01-21 15:12:36","Bad","LACROSSE","state: T: 21.9 H: 57","state","T: 21.9 H: 57",""


Es schein also am KS300, bzw. FS20V zu liegen.

Gruß
Bernd
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

frober

FS20 habe ich noch getestet, da funktioniert es auch:

defmod LampeKamin FS20 7373 07
attr LampeKamin DbLogExclude .*
attr LampeKamin DbLogInclude state.*
attr LampeKamin IODev nanoCUL


Exportfile:

"2018-01-21 15:22:45","LampeKamin","FS20","state: on","state","on",""
"2018-01-21 15:22:48","LampeKamin","FS20","state: off","state","off",""


Es scheint nur beim KS300 Probleme zu machen (wo ich die restlichen Readings ausschließen möchte). FS20V ist zwar das gleiche Problem, da es aber nur ein Reading (state) gibt, kann ich dieses ohne Exclude/Include loggen .

Gruß
Bernd
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

DS_Starter

Hallo Bernd,

da müssen wir schauen was dein KS300 genau für events sendet.
Also ich nehme an, du hast Dblog nur im Include Mode laufen:


"DbLogSelectionMode = Include"


Dann brauchst du in den zu loggenden Device das Attribut DbLogExclude  nicht zu setzen, es wird ignoriert. Stört andereseits auch nicht.
Dein KS300 bringt diesen Event, um den es zu gehen scheint, richtig ?:


2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: state: T: 3.6  H: 79  W: 0.0  R: 885.9  IR: no  Wi: 0


Kannst du nochmal ein verbose 5 von Logging nur dieses Devices machen (verbose4Devs = KS300  setzen).
Und dann schau auch mal und poste was dein Eventmonitor für dieses Device/state bringt.

Grüße
Heiko

ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#7
Ich glaube ich habe da etwas gefunden. Speziell bei KS300 wird im Eventparser von DbLog das Reading explizit auf "data" gesetzt wenn das Event die Zeichenkette "T:.*" enthält. Ist ja bei dir der Fall. Warum man das gemacht hat, weiß ich nicht. Vielleicht kannst mal posten welche Readings ein solches Device hat.

Du müsstest also für KS300 das Attr "DbLogInclude = data" definieren.
Damit du in der DB wieder "state" erhältst, kannst du in Dblog das Attribut "valuFn" verwenden.
Es müsste funktionieren:


valuFn  = { if ($DEVICE eq "KS300" && $READING eq "data") {$READING = "state";} }



Grüße
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

frober

Hallo Heiko,

ich habe den ganzen Tag gesucht und habe nun einen Test laufen.
Ich habe festgestellt, das im 13_KS300.pm unter:

readingsBulkUpdate($def,'state', $val) 
das state in ' ' steht, in anderen Devicedefinitionen sind es " "
Ich habe es mal geändert und Fhem neugestartet.
Mal schauen....

Falls das nicht die Ursache war, werde ich deinem Wunsch nachkommen.

Ich habe DbLog im Exclude/Include Mode laufen, dass ich wenigstens meine KS300_Dämmerung und KS300_Einstrahlung loggen kann.

Und ja, um diesen Event geht es:

ZitatDein KS300 bringt diesen Event, um den es zu gehen scheint, richtig ?:


Code: [Auswählen]

2018.01.21 11:39:47 4: DbLog logdb -> check Device: KS300 , Event: state: T: 3.6  H: 79  W: 0.0  R: 885.9  IR: no  Wi: 0

Gruß
Bernd
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

DS_Starter

Zitat
readingsBulkUpdate($def,'state', $val)

das state in ' ' steht, in anderen Devicedefinitionen sind es " "
Ich habe es mal geändert und Fhem neugestartet.
Das ist es nicht. Siehe  #7.
Die Sache mit KS300_Dämmerung und KS300_Einstrahlung, die keine KS300 sind, ist sehr verwirrend  ;)
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

frober

Hallo Heiko,

das wars puuuh, :) super danke.

Verbose 5:

2018.01.21 18:21:23 4: DbLog logdb -> ################################################################
2018.01.21 18:21:23 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.01.21 18:21:23 4: DbLog logdb -> ################################################################
2018.01.21 18:21:23 4: DbLog logdb -> amount of events received: 11 for device: KS300
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0
2018.01.21 18:21:23 4: DbLog logdb -> added event - Timestamp: 2018-01-21 18:21:23, Device: KS300, Type: KS300, Event: state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0, Reading: state, Value: state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0, Unit:
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: rain: 886.1
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: wind: 0.0
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: humidity: 92
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: temperature: 1.0
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: israining: no
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_tsecs: 1516555283.64924
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_now_value: 886.1
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_now_diff: 0
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: rain_calc_all: cH: 0.0 lH: 0.0 cD: 0.2 lD: 14.6 IR: no Rnow: 0.0 Rdif: 0
2018.01.21 18:21:23 4: DbLog logdb -> check Device: KS300 , Event: dewpoint: -0.2
2018.01.21 18:21:23 4: DbLog logdb -> ################################################################
2018.01.21 18:21:23 4: DbLog logdb -> ###         New database processing cycle - synchronous      ###
2018.01.21 18:21:23 4: DbLog logdb -> ################################################################
2018.01.21 18:21:23 4: DbLog logdb -> DbLogType is: Current/History
2018.01.21 18:21:23 4: DbLog logdb -> AutoCommit mode: ON, Transaction mode: ON
2018.01.21 18:21:23 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.history: none
2018.01.21 18:21:23 5: DbLog logdb -> Primary Key used in /opt/fhem/fhem.db.current: none
2018.01.21 18:21:23 4: DbLog logdb -> processing event Timestamp: 2018-01-21 18:21:23, Device: KS300, Type: KS300, Event: state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0, Reading: state, Value: state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0, Unit:
2018.01.21 18:21:23 4: DbLog logdb -> 1 of 1 events inserted into table history
2018.01.21 18:21:23 4: DbLog logdb -> insert table history committed by autocommit
2018.01.21 18:21:23 4: DbLog logdb -> Failed to update in current, try to insert - TS: 2018-01-21 18:21:23, Device: KS300, Reading: state, Status = 0
2018.01.21 18:21:23 4: DbLog logdb -> 1 of 1 events not updated and try to insert into table current
2018.01.21 18:21:23 4: DbLog logdb -> 1 of 1 events inserted into table current
2018.01.21 18:21:24 4: DbLog logdb -> insert / update table current committed by autocommit
2018.01.21 18:21:24 5: DbLog logdb -> DbLog_Push Returncode: 0
2018.01.21 18:21:49 4: DbLog logdb ->



Event Monitor:

2018-01-21 18:21:24 KS300 KS300 T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0
2018-01-21 18:21:24 KS300 KS300 rain: 886.1
2018-01-21 18:21:24 KS300 KS300 wind: 0.0
2018-01-21 18:21:24 KS300 KS300 humidity: 92
2018-01-21 18:21:24 KS300 KS300 temperature: 1.0
2018-01-21 18:21:24 KS300 KS300 israining: no
2018-01-21 18:21:24 KS300 KS300 rain_calc_tsecs: 1516555283.64924
2018-01-21 18:21:24 KS300 KS300 rain_calc_now_value: 886.1
2018-01-21 18:21:24 KS300 KS300 rain_calc_now_diff: 0
2018-01-21 18:21:24 KS300 KS300 rain_calc_all: cH: 0.0 lH: 0.0 cD: 0.2 lD: 14.6 IR: no Rnow: 0.0 Rdif: 0
2018-01-21 18:21:24 KS300 KS300 dewpoint: -0.2


Exportfile:
"2018-01-21 18:21:23","KS300","KS300","state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0","state","state: T: 1.0  H: 92  W: 0.0  R: 886.1  IR: no  Wi: 0",""



Ich werde das Thema auf "gelöst" setzen.

Schönen Sonntag noch.

Gruß
Bernd
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

frober

P.S. Was meinst du mit:

ZitatDas ist es nicht. Siehe  #7.


ZitatDie Sache mit KS300_Dämmerung und KS300_Einstrahlung, die keine KS300 sind, ist sehr verwirrend  ;)

Das ist eine Erweiterung von KS300, die nachträglich hinzu "gebastelt" https://forum.fhem.de/index.php?topic=25125.0 wurde um die Einstahlung und Dämmerung zu messen. Die gesendeten Daten gehören nicht zum KS300, sondern werden beim senden einfach im Anhang mit geliefert und durch FS20V ausgewertet. Dazu muss die 00_CUL.pm angepasst werden.
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

DS_Starter

ZitatP.S. Was meinst du mit:

Zitat

    Das ist es nicht. Siehe  #7.

"#7" steht für den Beitrag mit der Kennzeichnung  "#7". Das steht immer unter dem Titel z.B. "« Antwort #7 am: Heute um 18:04:27 »"


Um das Mapping noch zu verfeinern kannst du setzen:

valuFn  = { if ($DEVICE eq "KS300" && $READING eq "data") {$READING = "state"; $VALUE = (split(":",$VALUE,2))[1]} }

Dann fliegt noch das "state" in dem Value-Feld raus wenn ich keinen Fehler gemacht habe.

Dir auch noch einen schönen Restsonntag.

Edit: Code gendert

LG,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

frober

Nochmals vielen vielen Dank für deine Mühe, Hilfe und gute Erklärung.  :) :) :)
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

frober

Hallo Heiko,

ein letztes Mal  ;)

mit

valuFn  = { if ($DEVICE eq "KS300" && $READING eq "data") {$READING = "state"; $VALUE = (split(":",$VALUE,2))[1]} }


kommt nur noch:

,"state"," T",""


Ich habe es nun so versucht:

valuFn  = { if ($DEVICE eq "KS300" && $READING eq "data") {$READING = "state"; $VALUE = (split("state: ",$VALUE,2))[1]} }

,"state","T: 0.1  H: 95  W: 0.0  R: 886.1  IR: no  Wi: 0",""


jetzt funktioniert es  ;)
Raspi 3b mit Raspbian Buster und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...