Hauptmenü

Structure für Lampen

Begonnen von Mundus, 18 August 2017, 14:06:07

Vorheriges Thema - Nächstes Thema

Mundus

Hi,

ich versuche gerade einen Zentralen-Ausschalter für mein Licht im Haus zu erstellen und habe mich für structure entschieden. Leider stolpere ich noch bzw. habe noch nicht die richtige Lösung gefunden.

Zunächst habe ich die structure angelegt (Hier das List
Internals:
   ATTR       room
   CFGFN
   DEF        room wz_Esstisch_RGB_Lampe wz_Lampe_TV
   NAME       st_wz_Licht
   NR         64505
   NTFY_ORDER 50-st_wz_Licht
   STATE      undefined
   TYPE       structure
   Content:
     wz_Esstisch_RGB_Lampe
     wz_Lampe_TV
   Readings:
     2017-08-18 13:49:40   LastDevice      wz_Lampe_TV
     2017-08-18 13:49:40   LastDevice_Abs  wz_Lampe_TV
     2017-08-18 13:49:40   state           undefined
Attributes:
   clientstate_behavior relative
   clientstate_priority An|on|On|an Aus|off|Off|aus
   group      Licht
   room       ADummy


Hier seht ihr bereits, dass der state undefined ist. Nun wollte ich mittels
attr wz_Lampe_TV room_map !Aus:An Aus:Aus
ein funktionierendes Mapping erstellen und somit dafür sorgen, dass der Zustand des structures korrekt angezeigt wird. Leider funktioniert es nicht. Da die wz_Lampe_TV auch gedimmt werden kann, ist state nicht ausschließlich an, sondern kann u.a. auch "dim 17" sein; daher die Idee mittels !Aus:An zuarbeiten...

Wo ist mein Fehler bzw. wieso funktioniert das nicht?

Zudem ergibt sich für mich noch die Frage, wie ich bewerkstellige, dass das structure nur off|Aus anzeigt, wenn alle angeschlossenen "Devices" off|Aus sind und on|An anzeigt, sobald ein "Device" on|An ist. Aus der Erklärung der Hilfe werde ich nicht schlau...

Gruß und vielen Dank

CoolTux


Internals:
   ATTR       Licht
   CFGFN
   CHANGEDCNT 1545
   DEF        Licht LED_LichtWohnzimmerStehlampeRechts_2 LED_LichtWohnzimmerStehlampeRechts_1 LED_LichtWohnzimmerStehlampeLinks_2 LED_LichtWohnzimmerStehlampeLinks_1 LED_LichtAugeWohnzimmerEcke mFimPower01_Out2 LichtSchalterWohnzimmer_dreierDeckenLampe_Sw LichtSchalterWohnzimmer_zweierDeckenLampe_Sw structureCandleWohnzimmer
   NAME       structureLichtWohnzimmer
   NR         119
   NTFY_ORDER 50-structureLichtWohnzimmer
   STATE      off
   TYPE       structure
   CONTENT:
     LED_LichtAugeWohnzimmerEcke off
     LED_LichtWohnzimmerStehlampeLinks_1 off
     LED_LichtWohnzimmerStehlampeLinks_2 off
     LED_LichtWohnzimmerStehlampeRechts_1 off
     LED_LichtWohnzimmerStehlampeRechts_2 off
     LichtSchalterWohnzimmer_dreierDeckenLampe_Sw off
     LichtSchalterWohnzimmer_zweierDeckenLampe_Sw off
     mFimPower01_Out2 off
     structureCandleWohnzimmer undefined
   READINGS:
     2017-08-18 15:10:17   LastDevice      LED_LichtAugeWohnzimmerEcke
     2017-08-18 15:10:17   LastDevice_Abs  LED_LichtAugeWohnzimmerEcke
     2017-08-18 15:10:17   state           off
Attributes:
   Verbraucher structureVerbraucherWohnzimmer
   Wohnung    structureLichtWohnung
   alias      Licht Wohnzimmer
   clientstate_behavior relative
   clientstate_priority on off
   devStateIcon off:light_light_dim_00 on:light_light_dim_100 set.*:light_exclamation chn.*:light_exclamation
   group      Verbraucher
   room       AnniKraussStr
   userattr   Verbraucher Verbraucher_map Wohnung Wohnung_map structexclude
   webCmd     :



Vielleicht hilft Dir ein Beispiel weiter
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Mundus

Leider hilft mir dein Beispiel nicht wirklich weiter :'(. Wenn ich nicht total daneben liegen -ist aber durchaus möglich ??? -, dann weichen unsere beiden structures nicht voneinander ab. Du hast mehr Attribute, die sind aber spezifisch für deine Bedarfe zugeschnitten (verschachtelte structure usw.).

Im Gegensatz zu mir, liefern deine Lampen aber einen definierten Zustand, den ich nicht erhalte. Hier scheint bei mir etwas falsch zu laufen. Ein List von der Lampe wz_Lampe_TVInternals:
   DEF        cf62bc16 14
   IODev      ZWAVE1
   LASTInputDev ZWAVE1
   MSGCNT     1290
   NAME       wz_Lampe_TV
   NR         34
   STATE      Aus
   TYPE       ZWave
   ZWAVE1_MSGCNT 1290
   ZWAVE1_RAWMSG 0004000e0a32022144000021590000
   ZWAVE1_TIME 2017-08-18 15:00:08
   ZWaveSubDevice no
   endpointChildren ZWave_ZWAVEPLUS_INFO_14.01,ZWave_ZWAVEPLUS_INFO_14.02
   homeId     cf62bc16
   isWakeUp
   lastMsgSent 1503056973.89065
   nodeIdHex  0e
   Readings:
     2017-08-02 18:30:32   CMD             ZW_APPLICATION_UPDATE
     2016-11-24 20:43:46   SEND_DATA       failed:00
     2017-02-13 07:14:02   UNPARSED        METER 0a32120164000014640000
     2016-10-31 12:21:39   alarm           PowerManagement: Surge Detection
     2016-12-08 19:34:19   configSoftStartFunctionality shortSoftStart01
     2017-08-18 15:00:08   energy           85.37 kWh
     2016-10-13 17:29:00   mcCapability_01 ZWAVEPLUS_INFO BASIC VERSION SWITCH_MULTILEVEL ASSOCIATION ASSOCIATION_GRP_INFO MULTI_CHANNEL_ASSOCIATION METER SENSOR_MULTILEVEL ALARM
     2016-12-08 19:33:22   mcEndpoints     total 2, different
     2016-10-13 17:29:00   model           FIBARO System FGD212 Dimmer 2
     2016-10-13 17:29:00   modelConfig     fibaro/fgd212.xml
     2016-10-13 17:29:00   modelId         010f-0102-1000
     2017-03-18 07:15:16   neighborUpdate  done
     2017-08-18 14:50:01   power           0.0 W
     2016-12-08 19:32:49   powerlvl        current 0 remain 0
     2016-12-08 19:32:55   powerlvlTest    node 0 status 0 frameAck 0
     2017-08-18 13:49:37   reportedState   off
     2017-08-18 13:49:37   state           off
     2017-08-18 13:49:36   timeToAck       2.970
     2017-08-18 13:49:40   transmit        NO_ACK
     2017-01-21 00:37:13   velocity        101.6 m/s
Attributes:
   IODev      ZWAVE1
   classes    ZWAVEPLUS_INFO BASIC VERSION MANUFACTURER_SPECIFIC SWITCH_MULTILEVEL DEVICE_RESET_LOCALLY ASSOCIATION_GRP_INFO ASSOCIATION POWERLEVEL SECURITY FIRMWARE_UPDATE_MD CRC_16_ENCAP CONFIGURATION SENSOR_MULTILEVEL METER MULTI_CHANNEL_ASSOCIATION MULTI_CHANNEL PROTECTION ALARM SWITCH_ALL APPLICATION_STATUS MARK SCENE_ACTIVATION
   devStateIcon An:FS20.on Aus:FS20.off 25%:dim25% 50%:dim50% 75%:dim75% 100%:FS20.on
   eventMap   /on:An/off:Aus/dim 25:25%/dim 50:50%/dim 75:75%/dim 99:100%/
   group      Licht
   neighborListPos 200.656876024298,410.9958340449883
   room       Wohnzimmer,ZWave
   room_map   !Aus:An Aus:Aus
   userattr   room_map structexclude
   vclasses   ALARM:5 APPLICATION_STATUS:1 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BASIC:1 CONFIGURATION:1 CRC_16_ENCAP:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:2 METER:3 MULTI_CHANNEL:4 MULTI_CHANNEL_ASSOCIATION:3 POWERLEVEL:1 PROTECTION:2 SCENE_ACTIVATION:1 SECURITY:1 SENSOR_MULTILEVEL:4 SWITCH_ALL:1 SWITCH_MULTILEVEL:3 VERSION:2 ZWAVEPLUS_INFO:2
   webCmd     An:Aus:dim


Ich vermute room_map ist falsch, weiß aber noch nicht, wie ich es einstellen muss.

CoolTux

Änder das mal bitte

clientstate_priority An|on|On|an Aus|off|Off|aus


in

clientstate_priority on|On|an|An off|Off|aus|Aus
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Mundus

Habe ich geändert, das Resultat bleibt gleich.

Bei eingeschaltetem Licht ist der state "dim 99" und sodann erscheint im structure undefined...

DeeSPe

Zitat von: Mundus am 18 August 2017, 16:07:47
Habe ich geändert, das Resultat bleibt gleich.

Bei eingeschaltetem Licht ist der state "dim 99" und sodann erscheint im structure undefined...

Evtl. so?

clientstate_priority An|on|On|an|dim.* Aus|off|Off|aus

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

CoolTux

Ach so. Das ist Dein Problem.
Schau Mal mein Device. Fällt Dir was auf?


Internals:
   CFGFN
   DEF        1D647E01
   NAME       LichtDimmerSchlafzimmerDeckenLampe_Sw
   NOTIFYDEV  global
   NR         122
   NTFY_ORDER 50-LichtDimmerSchlafzimmerDeckenLampe_Sw
   STATE      off
   TYPE       CUL_HM
   chanNo     01
   device     LichtDimmerSchlafzimmerDeckenLampe
   Helper:
     DBLOG:
       level:
         logDbCurrent:
           TIME       1502993593.86632
           VALUE      0
       state:
         logDbCurrent:
           TIME       1502961395.77226
           VALUE      chn:off phys:100
   READINGS:
     2017-08-17 11:16:36   CommandAccepted yes
     2016-06-20 17:54:54   R-logicCombination or
     2016-06-20 17:54:54   R-powerUpAction off
     2017-05-22 08:15:18   RegL_01.        30:06 32:50 33:64 34:4B 35:50 56:00 57:24 59:01 00:00
     2017-08-17 20:13:13   deviceMsg       off (to VCCU1)
     2017-08-17 20:13:13   dim             stop:off
     2017-08-17 20:13:13   level           0
     2017-08-17 20:13:13   overheat        off
     2017-08-17 20:13:13   overload        off
     2017-08-17 20:13:13   pct             0
     2017-08-17 20:13:13   phyLevel        0
     2017-08-17 20:13:13   recentStateType info
     2017-08-17 20:13:13   reduced         off
     2017-08-17 20:13:13   state           off
     2017-08-17 20:13:13   timedOn         off
   helper:
     dlvlCmd    ++A0112AEE701D647E0201000000
     dir:
       cur        stop
       rct        up
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     role:
       chn        1
     shadowReg:
     tmpl:
     vDim:
       idPhy      1D647E01
       idV2       1D647E02
       idV3       1D647E03
Attributes:
   Licht      structureLichtSchlafzimmer
   Licht_map  pct:^[1-9][0-9]{0,2}:on pct:^0$:off
   Wohnung    structureLichtWohnung
   alias      Deckenlampe
   devStateIcon off:light_light_dim_00 on:light_light_dim_100 set.*:light_exclamation chn.*:light_exclamation 1.:light_light_dim_10 2.:light_light_dim_20 3.:light_light_dim_30 4.:light_light_dim_40 5.:light_light_dim_50 6.:light_light_dim_60 7.:light_light_dim_70 8.:light_light_dim_80 9.:light_light_dim_90
   event-on-change-reading state,level,pct
   group      Licht Schlafzimmer
   icon       li_wht_dimmer
   model      HM-LC-Dim1TPBU-FM
   peerIDs    00000000,
   room       Schlafzimmer
   userattr   Licht Licht_map Wohnung Wohnung_map structexclude
   webCmd     pct


Mappe es so wie Du es brauchst. Dann kannst auch alles andere ausser on off bei der structure wegnehmen
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Mundus

Zitat von: CoolTux am 18 August 2017, 16:12:05
Mappe es so wie Du es brauchst. Dann kannst auch alles andere ausser on off bei der structure wegnehmen

Ich habe das Mapping "room_map" jetzt angepasst und es funktioniert (Zumindest bei meinen ersten Tests ;) ). Vielen Dank!

Ich kann jetzt jede Einstellung einzeln mappen, gibt es aber auch die Chance ein mapping vorzunehmen wie
room_map off:off !off:on

Das würde mir viel Mapping arbeit erleichtern, da ich auch farbige Lampen habe und die Status natürlich vielfältig sind...

Und dann noch eine Frage, ist structure von der Grundeinstellung so, dass on immer angezeigt wird, sobald ein Gerät on ist und off erst, wenn alle Geräte off sind.

CoolTux

Also in einer structure würde ich mir lediglich anzeigen lassen ob die Teilnehmer an oder aus sind. Mehr ist, jedenfalls für mich, nicht interessant.

Du kannst on und off auch umdrehen. Wenn du lieber hast das wenn alle on sind erst in angezeigt wird und einer off ist off angezeigt wird dann schreibe

off on

Bei clientstate_priority
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Mundus

Danke, meine Überlegung ging in Richtung Jalousiesteuerung. Wenn alle unten sind, dann on; wenn alle oben sind, dann on; alles andere undefined. So können mit einem zentralen Structure alle Jalousien geöffnet bzw. geschlossen werden. Da ich aber erst zukünftig elektrische Jalousien habe, werde ich mir zu gegebener Zeit meine Gedanken machen.

Klappt dass mit dem !off:on? Hinbekommen habe ich es nicht, aber das heißt nichts  ;) 

CoolTux

Die Überlegung ist gut. Bis auf das undefined. Was nützt dir der Hinweis das deine structure einen nicht definierten Zustand hat.

Kann sein manche oben manche unten oder was auch immer. Vielleicht würde die oben links geklaut. Undefiniert halt.

In meinen Augen macht es Sinn das wenn eine oben ist die Strukture oben ist und alle unten die structure unten.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Mundus

Das mit der Jalousiesteuerung überlege ich noch, aber das dauert;-).