[erledigt] expertenmeinug gefragt ...

Begonnen von the ratman, 04 Oktober 2021, 09:48:42

Vorheriges Thema - Nächstes Thema

the ratman

grüße, die profis!

eventuell könnte es hier https://forum.fhem.de/index.php?topic=123230.msg1177709#msg1177709 auch für hm interessant werden. vielleicht mag mal schnell ein wissender dort rein schauen - speziell mein 2. beitrag könnte staunen hervorrufen *g*.
→do↑p!dnʇs↓shit←

Beta-User

#1
Zeig mal ein list von schlafzimmer_temperatur.
Wenn ich wetten müßte, würde ich auf einen nicht gesetzten Trigger bei einem dortigen userReadings-Eintrag setzen ;) .

Zitat von: the ratman am 04 Oktober 2021, 10:08:49
was die userreadings angeht, hab ich mal im hm-abteil hierher verwiesen. da wird ja momentan sehr viel rumgebastelt - vielleicht ist das ein nebenkriegsschauplatz.
weil mehr als ein userreading anlegen kann ich ja nicht wirklich. das geht dann, oder nicht, aber doppelt schreiben?
Wenn es das trigger-Thema ist, ist es schon länger so, das hatten wir 1:1 auch schon bei diversen Event-Handlern (das "state-Thema"). Mit den jüngsten Umbauten hat es nichts zu tun.
Mehrere userReadings gehen schon, aber eben nicht gleich benannt; das dürfte aber klar bzw. bekannt sein.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

the ratman

bitteescheen - extra frisch gezapft für dich:

Internals:
   DEF        621F4B
   FUUID      5cd2e86f-f33f-0f9e-c5ac-da92f25ee5540345
   IODev      hmLan2
   LASTInputDev hmLan2
   MSGCNT     32
   NAME       schlafzimmer_temperatur
   NR         227
   NTFY_ORDER 50-schlafzimmer_temperatur
   STATE      temp:18.4 °c || lf:64 %

tp:11.5 °c (abs:10.0 %)
   TYPE       CUL_HM
   chanNo     01
   disableNotifyFn 1
   hmLan2_MSGCNT 32
   hmLan2_RAWMSG 05000039978670621F4B00000000B840
   hmLan2_RSSI -57
   hmLan2_TIME 2021-10-04 10:10:54
   lastMsg    No:97 - t:70 s:621F4B d:000000 00B840
   protLastRcv 2021-10-04 10:10:54
   protRcv    32 last_at:2021-10-04 10:10:54
   rssi_at_hmLan2 cnt:32 min:-58 max:-53 avg:-54.71 lst:-57
   CL:
     Authenticated 0
     BUF       
     FD         4
     FW_ID      15193
     LASTACCESS 1633335106
     NAME       handyWEB_192.168.178.51_5752
     NR         15679
     PEER       192.168.178.51
     PORT       5752
     SNAME      handyWEB
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FHEMWEB
     canAsyncOutput 1
     READINGS:
       2021-10-04 10:11:30   state           Connected
   Helper:
     DBLOG:
       dewpoint:
         logdb:
           TIME       1633335054.45233
           VALUE      11.5
       humidity:
         logdb:
           TIME       1633335054.45233
           VALUE      64
       temperature:
         logdb:
           TIME       1633335054.45233
           VALUE      18.4
       temperature_alt:
         logdb:
           TIME       1633335054.45233
           VALUE      18.5
       temperature_komma:
         logdb:
           TIME       1633335054.45233
           VALUE      18,4
   OLDREADINGS:
     2021-10-04 09:45:44   temperature     18.5
   READINGS:
     2021-10-04 09:01:49   Activity        alive
     2021-04-13 10:25:19   D-firmware      1.3
     2021-04-13 10:25:19   D-serialNr      OEQ1305690
     2021-10-04 08:51:49   IODev           hmLan2
     2021-04-13 10:25:20   PairedTo        0x322433
     2021-04-13 10:25:20   R-pairCentral   0x322433
     2021-04-13 10:25:20   RegL_00.        00:00 01:00 02:01 0A:32 0B:24 0C:33 0F:00 18:00
     2021-10-04 10:10:54   absoluteHumidity 10.0
     2021-10-04 10:10:54   battery         ok
     2021-05-01 16:41:56   cfgState        ok
     2021-04-15 12:00:38   commState       Info_Cleared
     2021-10-04 10:10:54   dewpoint        11.5
     2021-10-04 10:10:54   humidity        64
     2021-10-04 10:10:54   state           T: 18.4 H: 64
     2021-10-04 10:10:54   temperature     18.4
     2021-10-04 10:10:54   temperature_alt 18.5
     2021-10-04 10:10:54   temperature_komma 18,4
   helper:
     HM_CMDNR   151
     lastMsgTm  1633335054.44953
     mId        00BC
     peerFriend
     peerIDsState complete
     peerOpt    p:THSensor
     regLst     0
     rxType     132
     supp_Pair_Rep 0
     cmds:
       TmplKey    :no:1633330309.9055
       TmplTs     1633330309.9055
       cmdKey     1:1:0::schlafzimmer_temperatur:00BC:01:
       cmdLst:
         assignHmKey noArg
         burstXmit  noArg
         clear      [(readings|trigger|register|oldRegs|rssi|msgEvents|{msgErrors}|attack|all)]
         deviceRename -newName-
         fwUpdate   -filename- [-bootTime-]
         getConfig  noArg
         getDevInfo noArg
         getRegRaw  (List0|List1|List2|List3|List4|List5|List6|List7) [-peerChn-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   0 -actChn- [({single})] [({set}|unset)] [actor|remote|both]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         unpair     noArg
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         param      -param-
         reg        -addr- -list- [-peerChn-]
         regList    noArg
         regTable   noArg
         regVal     -addr- -list- [-peerChn-]
         saveConfig [-filename-]
         tplInfo    noArg
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +621F4B,00,00,00
       nextSend   1633335054.54524
       rxt        0
       vccu       vccu
       p:
         621F4B
         00
         00
         00
       prefIO:
         hmLan2
     mRssi:
       mNo        97
       io:
         hmLan2:
           -51
           -51
     peerIDsH:
       00000000   broadcast
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       chn        1
       dev        1
     rssi:
       at_hmLan2:
         avg        -54.71875
         cnt        32
         lst        -57
         max        -53
         min        -58
     tmpl:
Attributes:
   IOgrp      vccu:hmLan2
   actCycle   000:10
   actStatus  alive
   alias      schlafzimmer temperatursensor
   autoReadReg 4_reqStatus
   expert     defReg,rawReg
   firmware   1.3
   fp_3d      959,589,0,schlafzimmer_temperatur,
   group      sensoren
   icon       temp_temperature
   model      HM-WDS40-TH-I-2
   oldreadings temperature
   peerIDs    00000000
   room       homematic
   serialNr   OEQ1305690
   stateFormat temp:temperature °c || lf:humidity %

tp:dewpoint °c (abs:absoluteHumidity %)
   subType    THSensor
   userReadings temperature_komma { my $val = (ReadingsVal($name,"temperature","temperature")); $val =~ s/\./,/g; return $val;},
temperature_alt { OldReadingsNum($name,"temperature",0); }
→do↑p!dnʇs↓shit←

Beta-User

qed, Wette gewonnen, wo ist mein Preis ;D .

(Siehe auch meinen Edit im vorherigen Post).

userReadings temperature_komma:temperature.* { my $val = (ReadingsVal($name,"temperature","temperature")); $val =~ s/\./,/g; return $val;},
temperature_alt:temperature.* { OldReadingsNum($name,"temperature",0); }
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

the ratman

juhuu, wieder mal.
was die zeit angeht - keine ahnung, bei mir steht alles mehrfach seit dem 27.9. drinnen.

muss schon sagen, dass sowas extrem frustrierend ist - ich kann ja ned jeden tag jeden beitrag hier lesen um eventuell rückschlüsse auf mein fhem machen zu können.
das kann ich jetzt wieder überall zusammensuchen - ist ja nicht selten, dass ich userreadings verwende.

da du aber nix für kannst: wieder mal danke für die schnelle hilfe ...
→do↑p!dnʇs↓shit←

the ratman

#5
nur gleich ne dumme frage - weil ichs auch oft habe - ich hab bei den magnet- und lichtschranken-kontakten folgende userreadings:

lastOpen:open {ReadingsTimestamp($name,"state","") =~ /^(\d+)-(\d+)-(\d+)\s(\d+:\d+:\d+)$/;; "$3.$2.$1 $4"},
lastClosed:closed {ReadingsTimestamp($name,"state","") =~ /^(\d+)-(\d+)-(\d+)\s(\d+:\d+:\d+)$/;; "$3.$2.$1 $4"}

und das für ein "entferntes" reading in einem doif?

regenmenge_aktuell:regen_d_curr.* {ReadingsVal("wetterstation","regen_d_curr","0")}

sind die wenigstens o.k.?
→do↑p!dnʇs↓shit←

Beta-User

...immer wieder gerne...

Btw: Ganz unabhängig von dieser "state"-Event-"machine" "predige" ich schon seit längerem, dass userReadings ohne trigger (denkdirwas) sind :-* . Das Problem hat sich nur deutlich vertieft ;D . (Der Effekt ist zwar bei CUL_HM relativ neu, betrifft aber auch diverse andere Module bzw. Datenlieferanten.)

Zitat von: the ratman am 04 Oktober 2021, 10:37:28
nur gleich ne dumme frage - weil ichs auch oft habe - ich hab bei den magnet- und lichtschranken-kontakten folgende userreadings:

lastOpen:open {ReadingsTimestamp($name,"state","") =~ /^(\d+)-(\d+)-(\d+)\s(\d+:\d+:\d+)$/;; "$3.$2.$1 $4"},
lastClosed:closed {ReadingsTimestamp($name,"state","") =~ /^(\d+)-(\d+)-(\d+)\s(\d+:\d+:\d+)$/;; "$3.$2.$1 $4"}

und das für ein "entferntes" reading in einem doif?

regenmenge_aktuell:regen_d_curr.* {ReadingsVal("wetterstation","regen_d_curr","0")}

sind die wenigstens o.k.?
Jein. Die oberen ja, beim unteren (Device heißt ja nicht "wetterstation", sonst würde da $name stehen?) müßte "zufällig" auch ein Reading getriggert werden, das auf die Regex "regen_d_curr.*" paßt.
Kurz: userReadings auf "fremde" Geräte sollte man vermeiden, das ist Bäh...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

frank

#7
ZitatKurz: userReadings auf "fremde" Geräte sollte man vermeiden, das ist Bäh...
ich dachte, dass nur "eigene" trigger ein userreading triggern können.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

the ratman

#8
ja, würd ich auch gerne - aber vor langen jahren hat ich probleme mit der wetterstation. da ich ned wusste, ob ich wieder eine kriege, hab ich ne netatmo probiert und dann wieder ne station von hm. drum dachte ich, ein "sammelpunkt" wäre nicht blöd, wenn ich wieder die hw umstelle und den wert somit ins doif gelegt.
so musste ich keine kunststücke mehr mit der db aufführen, wenn ich die regenmenge wieder mal wo anders her bekommen hab.

im nachhinein blöd, aber ich will jetzt nicht unbedingt an der db rumdrehen, damit ich meine werte plotten kann. kennst ja meinen wissensstand in solchen sachen *g*. würd bei mir wahrscheinlich den totalverlust der db-einträge bedeuten ...

wie also krieg ich solch ein userreading hin - egal, ob gescheit oder blöd? immerhin scheint das jetzt das einzige vorhandene userreading zu sein, dass noch blödsinn macht, soweit ich dass mit meinem tunnelblick sehen kann.
greifst mir nochmal unter die (frisch gewaschenen) arme?

derzeit aktuell: userReadings
regenmenge_aktuell {ReadingsVal("wetterstation","regen_d_curr","0")}
da schreibt er wenigstens zu viel, anstelle nix in die db ...



@frank ...TIMESTAMP;DEVICE;TYPE;EVENT;READING;VALUE;UNIT
2021-10-04 10:31:34;doif_regenumrechnung;DOIF;regenmenge_aktuell: 10.6;regenmenge_aktuell;10.6;
2021-10-04 10:31:34;doif_regenumrechnung;DOIF;regenmenge_aktuell: 10.6;regenmenge_aktuell;10.6;
2021-10-04 10:31:34;doif_regenumrechnung;DOIF;regenmenge_aktuell: 10.6;regenmenge_aktuell;10.6;
2021-10-04 10:31:34;doif_regenumrechnung;DOIF;regenmenge_aktuell: 10.6;regenmenge_aktuell;10.6;
2021-10-04 10:31:34;doif_regenumrechnung;DOIF;regenmenge_aktuell: 10.6;regenmenge_aktuell;10.6;
"nur triggern" wäre ja schon fast schön *g*
→do↑p!dnʇs↓shit←

Beta-User

#9
Zitat von: frank am 04 Oktober 2021, 10:52:50
Kurz: userReadings auf "fremde" Geräte sollte man vermeiden, das ist Bäh...
ich dachte, dass nur "eigene" trigger ein userreading triggern können.
Schon richtig, ein eigener trigger ist erforderlich. Das heißt aber nicht, dass man userReadings nicht verwenden könnte, um Daten aus einem fremden Device zu holen. Aber auf was internes trigger, um dann möglicherweise veraltete Daten von woanders zu holen, das ist m.e. "Bäh"...

"Unter die Arme greifen" ginge vielleicht, wenn ich "Material" (=list) hätte.

Gebe aber zu bedenken, dass DBLog m.E. in der Lage ist, auch alte Readings "umzusortieren". Vielleicht nutzt du den "fast-doppel-Thread" und fragst mal nach, wie das genau geht ;) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

the ratman

#10
naja, mit der dbrep ginge es scheinbar - die löscht wohl auf verlangen doppeltes zeug wieder raus.
und gehen tut sicher viel ... aber ich würd natürlich das problem lieber an der wurzel lösen und nicht am ast.

welches list hätten's den gerne? wetterstation:Internals:
   DEF        62E4AE
   FUUID      5c62c6bf-f33f-0f9e-8d92-c33bb22adf9d44b4
   IODev      hmLan2
   LASTInputDev hmLan2
   MSGCNT     53
   NAME       wetterstation
   NR         104
   NTFY_ORDER 50-wetterstation
   STATE      regen

heute:10.9 mm

stunde:0.0 mm



temp:12.3 °c || lf:92 %

tp:11.0 °c (abs:10.0 %)
   TYPE       CUL_HM
   chanNo     01
   disableNotifyFn 1
   hmLan2_MSGCNT 53
   hmLan2_RAWMSG 05000036B2867062E4AE000000007B5C00EAC055444E77
   hmLan2_RSSI -54
   hmLan2_TIME 2021-10-04 11:05:18
   lastMsg    No:B2 - t:70 s:62E4AE d:000000 007B5C00EAC055444E77
   protLastRcv 2021-10-04 11:05:18
   protRcv    53 last_at:2021-10-04 11:05:18
   rssi_at_hmLan2 cnt:53 min:-60 max:-51 avg:-52.79 lst:-54
   CL:
     Authenticated 0
     BUF       
     FD         19
     FW_ID      26120
     LASTACCESS 1633338397
     NAME       handyWEB_192.168.178.51_6762
     NR         26120
     PEER       192.168.178.51
     PORT       6762
     SNAME      handyWEB
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FHEMWEB
     canAsyncOutput 1
     READINGS:
       2021-10-04 11:06:31   state           Connected
   Helper:
     DBLOG:
       brightness:
         logdb:
           TIME       1633338318.44812
           VALUE      119
       dewpoint:
         logdb:
           TIME       1633338318.44812
           VALUE      11.0
       humidity:
         logdb:
           TIME       1633338318.44812
           VALUE      92
       temperature:
         logdb:
           TIME       1633338318.44812
           VALUE      12.3
       temperature_alt:
         logdb:
           TIME       1633338318.44812
           VALUE      12.4
       temperature_komma:
         logdb:
           TIME       1633338318.44812
           VALUE      12,3
       windDirection:
         logdb:
           TIME       1633338318.44812
           VALUE      340
       windSpeed:
         logdb:
           TIME       1633338318.44812
           VALUE      8.5
   OLDREADINGS:
     2021-10-04 10:57:00   temperature     12.4
   READINGS:
     2021-10-04 09:01:49   Activity        alive
     2021-04-13 10:30:00   CommandAccepted yes
     2021-04-12 08:46:10   D-firmware      1.6
     2021-04-12 08:46:10   D-serialNr      OEQ1864809
     2021-10-04 08:51:49   IODev           hmLan2
     2021-04-13 11:52:47   PairedTo        0x322433
     2021-04-13 10:29:58   R-burstRx       off
     2021-04-13 10:29:58   R-localResDis   off
     2021-04-13 10:29:58   R-pairCentral   0x322433
     2021-04-13 10:29:59   R-sunThresh     50
     2021-04-13 10:29:59   R-windSpeedRsltSrc max
     2021-04-13 11:52:47   RegL_00.        00:00 01:00 02:01 0A:32 0B:24 0C:33 18:00
     2021-04-13 11:52:46   RegL_01.        00:00 05:32 06:14 07:05 0A:01
     2021-10-04 11:05:18   absoluteHumidity 10.0
     2021-10-04 11:05:18   battery         ok
     2021-10-04 11:05:18   brightness      119
     2021-05-01 16:41:56   cfgState        ok
     2021-08-24 07:28:49   commState       CMDs_done
     2021-10-04 11:05:18   dewpoint        11.0
     2021-10-04 11:05:18   humidity        92
     2021-10-04 11:05:18   isRaining       0
     2021-08-24 07:28:49   powerOn         2021-08-24 07:28:49
     2021-10-04 11:05:18   rain            69.03
     2021-08-24 07:28:49   recentStateType info
     2021-10-04 11:05:18   regen_all       cH: 0.0 lH: 0.0 cD: 10.9 lD: 5.3 IR: 0 Rnow: 0.0 Rdif: 0
     2021-10-04 11:05:18   regen_d_curr    10.9
     2021-10-04 00:00:37   regen_d_last    5.3
     2021-10-04 00:00:37   regen_d_start   58.1
     2021-10-04 00:00:37   regen_d_trig_tsecs 1633384800
     2021-10-04 11:05:18   regen_h_curr    0.0
     2021-10-04 11:05:18   regen_h_last    0.0
     2021-10-04 11:05:18   regen_h_start   69.0
     2021-10-04 11:05:18   regen_h_trig_tsecs 1633338000
     2021-10-04 11:05:18   regen_now_diff  0
     2021-10-04 11:05:18   regen_now_rate  0.0
     2021-10-04 11:05:18   regen_now_value 69.0
     2021-10-04 11:05:18   regen_tsecs     1633338318.43899
     2021-10-04 11:05:18   state           T: 12.3 H: 92 W: 8.5 R: 69.03 IR: 0 WD: 340 WDR: 67.5 S: 78 B: 119
     2021-10-04 11:05:18   sunshine        78
     2021-10-04 11:05:18   temperature     12.3
     2021-10-04 11:05:18   temperature_alt 12.4
     2021-10-04 11:05:18   temperature_komma 12,3
     2021-08-24 07:28:49   unknown         06000030
     2021-10-04 11:05:18   windDirRange    67.5
     2021-10-04 11:05:18   windDirection   340
     2021-10-04 11:05:18   windSpeed       8.5
   helper:
     HM_CMDNR   178
     lastMsgTm  1633338318.43756
     mId        00AE
     peerFriend peerAct,peerVirt
     peerIDsState complete
     peerOpt    1p:THSensor,4:THSensor,p:THSensor
     regLst     0,1,1p,4p
     rxType     140
     supp_Pair_Rep 0
     cmds:
       TmplKey    :no:1633330310.00023
       TmplTs     1633330310.00023
       cmdKey     1:1:0::wetterstation:00AE:01:
       cmdLst:
         assignHmKey noArg
         burstXmit  noArg
         clear      [(readings|trigger|register|oldRegs|rssi|msgEvents|{msgErrors}|attack|all)]
         deviceRename -newName-
         fwUpdate   -filename- [-bootTime-]
         getConfig  noArg
         getDevInfo noArg
         getRegRaw  (List0|List1|List2|List3|List4|List5|List6|List7) [-peerChn-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   0 -actChn- [({single})] [({set}|unset)] [actor|remote|both]
         peerSmart  -peerOpt-
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         sign       [(on|{off})]
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         trgEventL  -peer- -condition-
         trgEventS  -peer- -condition-
         trgPressL  [(-peer-|{all})]
         trgPressS  [(-peer-|{all})]
         unpair     noArg
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt    4k12v_schalter1,4k12v_schalter2,4k12v_schalter3,4k12v_schalter4,schlafzimmer_rollo,solaranlage_kuehlung,vccu,wohnzimmer_buero_licht_Dim,wohnzimmer_buero_licht_Dim_V_01,wohnzimmer_buero_licht_Dim_V_02,wohnzimmer_gang_gz_licht_Dim,wohnzimmer_gang_gz_licht_Dim_V_01,wohnzimmer_gang_gz_licht_Dim_V_02,wohnzimmer_gang_sz_licht_Dim,wohnzimmer_gang_sz_licht_Dim_V_01,wohnzimmer_gang_sz_licht_Dim_V_02,wohnzimmer_rollo_strasse,wohnzimmer_rollo_terrasse,wohnzimmer_sofa_licht_Dim,wohnzimmer_sofa_licht_Dim_V_01,wohnzimmer_sofa_licht_Dim_V_02
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         param      -param-
         reg        -addr- -list- [-peerChn-]
         regList    noArg
         regTable   noArg
         regVal     -addr- -list- [-peerChn-]
         saveConfig [-filename-]
         tplInfo    noArg
     expert:
       def        1
       det        1
       raw        1
       tpl        1
     io:
       flgs       0
       newChn     +62E4AE,00,00,00
       nextSend   1633338318.53321
       rxt        0
       vccu       vccu
       p:
         62E4AE
         00
         00
         00
       prefIO:
         hmLan2
     mRssi:
       mNo        B2
       io:
         hmLan2:
           -48
           -48
     peerIDsH:
       00000000   broadcast
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       chn        1
       dev        1
     rssi:
       at_hmLan2:
         avg        -52.7924528301887
         cnt        53
         lst        -54
         max        -51
         min        -60
     tmpl:
Attributes:
   IOgrp      vccu:hmLan2
   actCycle   000:10
   actStatus  alive
   alias      wetterstation
   autoReadReg 0_off
   expert     defReg,allReg,rawReg,templ
   firmware   1.6
   group      sensoren
   icon       weather_station
   model      HM-WDS100-C6-O-2
   oldreadings temperature
   peerIDs    00000000
   room       homematic
   serialNr   OEQ1864809
   stateFormat regen

heute:regen_d_curr mm

stunde:regen_h_curr mm



temp:temperature °c || lf:humidity %

tp:dewpoint °c (abs:absoluteHumidity %)
   subType    THSensor
   userReadings temperature_komma:temperature.* { my $val = (ReadingsVal($name,"temperature",0)); $val =~ s/\./,/g; return $val;},
temperature_alt:temperature.* { OldReadingsNum($name,"temperature",0); }


nachtrag:
ganz vergessen: die werte werden aus dem modal "rain" in die wetterstation gepresst.
da würd ich sowieso schon nach alternativen suchen, weil so derartig zuverlässig is die sache nicht. das ding bringt auch gern mal beim tageswechsel minus-werte
→do↑p!dnʇs↓shit←

Beta-User

Dein list ist ja schön, aber da finde ich nicht das userReadings, das du eigentlich anfassen wolltest, oder...?
Zitat von: the ratman am 04 Oktober 2021, 10:55:40
regenmenge_aktuell {ReadingsVal("wetterstation","regen_d_curr","0")}
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

the ratman

ja, nur für doif gibt's scheints kein list ... weil kein get.

ich geb die anstelle ne raw def, vielleicht hilfts ja?defmod doif_regenumrechnung DOIF ( \
   [HM_70FEFD_Rain:regen] eq "rain"\
   and [$SELF:zustand] eq "an" \
)\
\
( set HM_70FEFD_Heating on-for-timer 300 )\
( setreading $SELF regen_echt 255 )\
\
DOELSEIF ## 02\
\
( \
   [HM_70FEFD_Rain:regen] eq "rain"\
   and [$SELF:zustand] eq "aus" \
)\
\
( set HM_70FEFD_Heating off)\
( setreading $SELF regen_echt 130 )\
\
DOELSEIF ## 03\
\
( [HM_70FEFD_Rain:regen] eq "dry" )\
\
( set HM_70FEFD_Heating off ) \
( setreading $SELF regen_echt 0 )\
\
DOELSEIF ## 04\
\
(  [HM_70FEFD_Rain:regen] eq "rain"\
   and [wetterstation:temperature] < 2 \
   and [$SELF:zustand] eq "an" \
) \
\
( set HM_70FEFD_Heating on-for-timer 599 )\
( setreading $SELF regen_echt 10 )\
\
DOELSEIF ## 05\
\
( [00:00] )\
\
( setreading wetterstation regen_d_curr 0 )\
\
DOELSEIF ## 06\
\
( [solaranlage_kuehlung:battery] eq "low" )\
\
( set $SELF zustand aus )\
( set HM_70FEFD_Heating off )
attr doif_regenumrechnung alias regen umrechnen und heizen
attr doif_regenumrechnung do always
attr doif_regenumrechnung group temperaturhilfen
attr doif_regenumrechnung icon helper_doif
attr doif_regenumrechnung readingList zustand \
regen_echt
attr doif_regenumrechnung repeatcmd 600:0:0:0
attr doif_regenumrechnung room logik und schalten
attr doif_regenumrechnung setList regen_echt:0,10,130,255
attr doif_regenumrechnung startup set $SELF checkall
attr doif_regenumrechnung stateFormat regen? regen_echt
attr doif_regenumrechnung userReadings regenmenge_aktuell {ReadingsVal("wetterstation","regen_d_curr","0")}\
\


setstate doif_regenumrechnung regen? 255
setstate doif_regenumrechnung 2021-10-04 11:12:30 Device wetterstation
setstate doif_regenumrechnung 2021-10-04 11:11:34 cmd 1.2
setstate doif_regenumrechnung 2021-10-04 11:11:34 cmd_event doif_regenumrechnung
setstate doif_regenumrechnung 2021-10-04 11:11:34 cmd_nr 1
setstate doif_regenumrechnung 2021-10-04 11:11:34 cmd_seqnr 2
setstate doif_regenumrechnung 2021-10-03 17:45:10 e_HM_70FEFD_Rain_regen rain
setstate doif_regenumrechnung 2021-10-04 07:41:40 e_doif_regenumrechnung_zustand an
setstate doif_regenumrechnung 2021-10-04 11:12:30 e_wetterstation_temperature 12.3
setstate doif_regenumrechnung 2021-09-29 15:47:04 mode enabled
setstate doif_regenumrechnung 2021-10-04 11:11:34 regen_echt 255
setstate doif_regenumrechnung 2021-10-04 11:12:30 regenmenge_aktuell 10.9
setstate doif_regenumrechnung 2021-10-04 11:11:34 state cmd_1
setstate doif_regenumrechnung 2021-10-04 08:51:34 timer_01_c05 05.10.2021 00:00:00
setstate doif_regenumrechnung 2021-10-04 11:11:34 wait_timer 04.10.2021 11:21:34 cmd_1_1 doif_regenumrechnung
setstate doif_regenumrechnung 2021-10-04 07:41:40 zustand an
→do↑p!dnʇs↓shit←

Beta-User

Aua, ich vergaß: DOIF kapiere ich nicht...

Anders gesagt: Such' dir ein passendes Event an dem DOIF aus und packe das in den trigger. Das _könnte_ "Device.wetterstation" sein. Aber hatte DOIF nicht Mittel und Wege, eigene Readings zu setzen? Müßte doch gehen, Änderungen der Regenmenge am überwachten Device abzugreifen...?

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

the ratman

#14
tröste dich - ich kapier viel, viel mehr ned *g*

das
regenmenge_aktuell:cmd_nr.* {ReadingsVal("wetterstation","regen_d_curr",0)}
müsste also gehen?
dann müsste das bei jedem fall-wechsel im reading
cmd_nr 3 2021-10-04 11:39:17
triggern. theoretisch also bei regen alle 600 sek.

nachtrag:
ja, geht auch - nur "verliere" ich dann eben alle regeneinträge, die mit einem anderen readingsnamen/device gemacht wurden im plot.
und ja, könnte man sicher umstellen in der db, usw. aber ich bin schon froh, dass die sache generell rennt.
die mysql-db ist nicht nur für fhem. wenn ich da scheiße drehe, stell ich mich still ins winkerl und weine 3 tage durch.
→do↑p!dnʇs↓shit←