FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: TWART016 am 31 März 2020, 00:37:43

Titel: Licht aus, an und dann dimmen
Beitrag von: TWART016 am 31 März 2020, 00:37:43
Hallo,

ich habe Homematic Unterputzdimmer.

Wenn ich nun das Licht zwischen 20 und 02 Uhr ausschalte und innerhalb von 3 Sekunden  wieder einschalte, soll es gedimmt werden. Dimmen funktioniert, nur weiß ich nicht wie die Logik dahinter aussehen muss. Ich verstehe die Readings nicht.

Um 00:25:29 habe ich das Gerät eingeschalten.
Event-Monitor:
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 set_on
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 trigLast: fhem:02
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 deviceMsg: on (to Homematic_LAN_Gateway)
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 dim: stop:on
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 level: 100
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 overheat: off
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 overload: off
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 pct: 100
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 reduced: off
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 chn:on phys:0
2020-03-31 00:25:29 CUL_HM Licht_Wohnzimmer_2 timedOn: off
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 deviceMsg: on (to Homematic_LAN_Gateway)
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 dim: stop:on
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 level: 100
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 overheat: off
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 overload: off
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 pct: 100
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 phyLevel: 100
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 reduced: off
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 on
2020-03-31 00:25:36 CUL_HM Licht_Wohnzimmer_2 timedOn: off


Warum wird 7 Sekunden nachdem das Licht eingeschalten wurde, nochmal fast die gleichen Events generiert?

Readings:
2020-03-31 00:25:29   CommandAccepted yes
2017-12-30 17:48:57   R-logicCombination or
2017-12-30 17:48:57   R-powerUpAction off
2017-12-30 17:49:08   RegL_01.        30:06 32:50 33:64 34:4B 35:50 56:00 57:24 59:01 00:00
2020-03-31 00:25:36   deviceMsg       on (to Homematic_LAN_Gateway)
2020-03-31 00:25:36   dim             stop:on
2020-03-31 00:25:36   level           100
2018-01-15 21:02:19   levelMissed     desired:0
2020-03-31 00:25:36   overheat        off
2020-03-31 00:25:36   overload        off
2020-03-31 00:25:36   pct             100
2020-03-31 00:25:36   phyLevel        100
2020-03-31 00:25:36   recentStateType info
2020-03-31 00:25:36   reduced         off
2020-03-31 00:25:36   state           on
2020-03-31 00:25:36   timedOn         off
2020-03-31 00:25:29   trigLast        fhem:02


Daher meine Frage
1) Auf welche Readings muss ich triggern
2) Mit welchem Modul ist es am einfachsten innerhalb von 3 Sekunden ein Event zu triggern?


Gruß
TWART016
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 31 März 2020, 09:16:16
Moin,

ich behaupte mal: mit einem HM Dimmer "in der Wand" wird das nichts.

Dein Beispiel ist mit FHEM oder mit dem Taster vor Ort erzeugt?

Dein Beispiel zeigt: set_on ist eine Art Zwischenschritt - der Aktor bekommt den Befehl gesendet (bei fehlender Quittung würde der wiederholt) und irgendwann (bei Dir nach 7 sec) kommt die Quittung vom Aktor.
Die Zeit ist bei HM aus gutem Grund variabel, damit die Chance besteht, das der Empfänger (die Zentrale) bei heftigem Funkverkehr auch alles mit bekommt.

Eine Folge im Abstand von weinigen (3) sekunden halte ich für kaum realisierbar.

Das funktioniert nur, wenn Du Aktor (Dimmer) und Taster getrennt hast. D.h. Du reagierst auf eine Folge am Taster und wartest nicht auf die Reaktion des Aktors.

Abhängig vom Aktor gibt es da ev. alternative Firmware, die Taster und Aktor trennen kann.

Tipp: mit attr <device> event-on-change-reading .*  kannst Du die Anzahl an Events drastisch reduzieren. Für alle Deine Geräte mit einem Befehl:
attr TYPE=CUL_HM event-on-change-reading .*

Vorher besser schauen ob schon individuell gesetzt:
list TYPE=CUL_HM event-on-change-reading

Gruß Otto
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Pfriemler am 31 März 2020, 10:40:03
Ich vermute mal, es ist NICHT mit den aktoreigenen Tasten erzeugt, diese senden nämlich keinen set_-Zwischenstatus an die Zentrale, wenn der Schaltvorgang von einem Peer ausgelöst wurde. set_ gibt es nmE nur wenn FHEM sendet. Allerdings senden Dimmer einen ersten Zwischenstatus, wenn sie eine Rampe fahren.

Aber auch so sehe ich keine Möglichkeit für eine vernünftige Reaktion. Reaktionen des Aktors auf gepeerte Geräte sind immer ohne Zeitbezug - den kann nur FHEM von außen liefern, müsste also in die Kommunikation zwischen Taster und Aktor korrigierend eingreifen.
Alternativ ist ein Betrieb ohne Direktkopplung denkbar - mit einer Zeitabfrage nach dem Empfangen des Tasterevents könnte man zumindest zeitabhängig reagieren und auch das Alter des letzten state-readings des Aktors auswerten (um auf die 3s zu checken), damit verliert man aber wieder deren Vorteile wie Funktionssicherheit bei FHEM-Ausfall und deutlich beschleunigte Reaktion.

Ich verstehe auch nicht ganz, welchen Sinn es haben soll, durch diese Bedienkombination ein Dimmen zu erzeugen. Das Verhalten kennt man von dimmfähigen Leuchtmitteln für Schalterbetrieb, die man durch kurzes Ein- und Ausschalten zwischen verschiedenen Dimmstufen umschalten kann (ich finde die Dinger schon recht praktisch, weil man ohne Dimmer auskommt und sogar 0 Standby hat). Aber warum sollte man das simulieren wollen?

Vielleicht kann uns der TE erklären, was genau er eigentlich erreichen möchte, und wir finden ein Ersatzbedienszenario, was HM bewältigen kann. Die genauen Bezeichnungen der beteiligten Geräte können dabei nüttzlich sein...


Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 31 März 2020, 12:22:38
Tatsächlich wurde das von FHEM ausgelöst.

Wenn ich über den Dimmer HM-LC-DIM1TPBU-FM schalte sieht es besser aus.

2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 deviceMsg: on (to Homematic_LAN_Gateway)
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 dim: stop:on
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 level: 100
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 overheat: off
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 overload: off
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 pct: 100
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 phyLevel: 100
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 reduced: off
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 on
2020-03-31 12:17:42 CUL_HM Licht_Wohnzimmer_2 timedOn: off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 deviceMsg: off (to Homematic_LAN_Gateway)
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 dim: stop:off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 level: 0
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 overheat: off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 overload: off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 pct: 0
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 phyLevel: 0
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 reduced: off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 off
2020-03-31 12:18:07 CUL_HM Licht_Wohnzimmer_2 timedOn: off


Gibt es da eine einfachere Methode wie über Userreading stateOn und stateOff die Zeit zu berechnen?

Ich möchte wenn ich abends aus und gleich wieder an mache, auf 5 pct gedimmt wird. Manuell über die Schaltwippen das einzustellen ist quasi unmöglich.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 31 März 2020, 12:54:07
ich denke, man könnte für short zb eine kontinuierliche 3'er sequenz programmieren:
... => on100 => on5 => off => on100 => ...

der zustand on5 würde dann zb im dlyoff timer realisiert werden mit einer sehr grossen verweildauer.

falls die sequenz nicht grundsätzlich gewünscht wäre, könnte man über zb ein at den dimmer zu gewünschten zeiten umprogrammieren.

edit:
da muss ich noch mal genauer schauen.
1. hast du ja eventuell für einen btn short => off und den anderen short => on.
2. gibt es keinen expliziten level im dlyoff timer.

aber irgendeine short sequenz sollte man bei den vielen möglichkeiten irgendwie hinbekommen.
virtuelle channel gibt es ja sogar auch noch.

vielleicht zeigst du mal deine aktuellen register mit "get regTable". eventuell zuerst die "internen taster" sichtbar machen.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 31 März 2020, 13:57:08
Zitat von: TWART016 am 31 März 2020, 12:22:38
Ich möchte wenn ich abends aus und gleich wieder an mache, auf 5 pct gedimmt wird. Manuell über die Schaltwippen das einzustellen ist quasi unmöglich.
Ich habe meine Dimmer so eingestellt, dass er bei 5 pct "aufhört". Das heisst einfach ein langer Tastendruck und er ist maximal gedimmt. Wäre das eine Alternative?
Bei mir so (nur ein Teil der Registerprogrammierung):
set LichtWzR_Dim regSet prep lgOffLevel 5 self01
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 31 März 2020, 14:28:07
Zitat von: frank am 31 März 2020, 12:54:07
ich denke, man könnte für short zb eine kontinuierliche 3'er sequenz programmieren:
... => on100 => on5 => off => on100 => ...

der zustand on5 würde dann zb im dlyoff timer realisiert werden mit einer sehr grossen verweildauer.

Sequenz hört sich schon gut an.
defmod sequenceTEST sequence Licht_Wohnzimmer_4:on 10 Licht_Wohnzimmer_4:off

Das erstellt ein Event:
2020-03-31 13:58:01 Global global MODIFIED sequenceTEST


Ein trigger greift jedoch nicht
defmod sequenceTESTon notify sequenceTEST:trigger set Licht_Wohnzimmer_4 pct 5

Nur das erschient im Event Monitor
2020-03-31 14:01:46 notify sequenceTESTon active


btn habe ich nicht. Wie mache ich das und was ist es?

Es gibt nur regList:
list:         register | range              | peer     | description
   1: fuseDelay        | 0.00 to 2.55s       |          | fuse delay
   1: logicCombination |     literal        |          |  options:nand,mul,and,minusinv,andinv,invPlus,orinv,inactive,minus,plusinv,nor,or,invMinus,mulinv,invMul,plus,xor
   1: ovrTempLvl       |  30 to 100C        |          | overtemperatur level
   1: powerUpAction    |     literal        |          | on: simulate short press of peer self01 (self02 if dual buttons) after power up options:on,off
   1: redLvl           | 0.0 to 100%        |          | reduced power level
   1: redTempLvl       |  30 to 100C        |          | reduced temperatur recover
   1: sign             |     literal        |          | signature (AES) options:off,on
   1: statusInfoMinDly | 0.0 to 15.5s       |          | status message min delay special:unused
   1: statusInfoRandom |   0 to 7s          |          | status message random delay
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   3: lgActionTypeDim  |     literal        | required |  options:downDim,upDim,jmpToTarget,toggelDim,toggleToCntInv,toggelDimToCntInv,off,toggelDimToCnt,toggleToCnt
   3: lgCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:outside,geHi,ltHi,between,ltLo,geLo
   3: lgCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:ltLo,geLo,outside,geHi,ltHi,between
   3: lgCtOff          |     literal        | required | Jmp on condition from off options:between,ltHi,geHi,outside,geLo,ltLo
   3: lgCtOn           |     literal        | required | Jmp on condition from on options:ltLo,geLo,geHi,outside,between,ltHi
   3: lgCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geLo,ltLo,ltHi,between,outside,geHi
   3: lgCtRampOn       |     literal        | required | Jmp on condition from rampOn options:outside,geHi,between,ltHi,ltLo,geLo
   3: lgCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: lgCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: lgDimElsActionType |     literal        | required |  options:toggelDimToCnt,toggleToCnt,toggelDim,toggleToCntInv,toggelDimToCntInv,off,upDim,jmpToTarget,downDim
   3: lgDimElsJtDlyOff |     literal        | required | else Jump from delayOff options:off,rampOn,dlyOff,on,rampOff,dlyOn,no
   3: lgDimElsJtDlyOn  |     literal        | required | else Jump from delayOn options:rampOff,no,dlyOn,off,rampOn,on,dlyOff
   3: lgDimElsJtOff    |     literal        | required | else Jump from off options:rampOff,dlyOn,no,rampOn,off,dlyOff,on
   3: lgDimElsJtOn     |     literal        | required | else Jump from on options:rampOff,dlyOn,no,rampOn,off,on,dlyOff
   3: lgDimElsJtRampOff |     literal        | required | else Jump from rampOff options:dlyOff,on,rampOn,off,dlyOn,no,rampOff
   3: lgDimElsJtRampOn |     literal        | required | else Jump from rampOn options:dlyOn,no,rampOff,on,dlyOff,off,rampOn
   3: lgDimElsOffTimeMd |     literal        | required |  options:minimal,absolut
   3: lgDimElsOnTimeMd |     literal        | required |  options:absolut,minimal
   3: lgDimJtDlyOff    |     literal        | required | Jump from delayOff options:rampOff,dlyOn,no,off,rampOn,dlyOff,on
   3: lgDimJtDlyOn     |     literal        | required | Jump from delayOn options:off,rampOn,dlyOff,on,rampOff,no,dlyOn
   3: lgDimJtOff       |     literal        | required | Jump from off options:dlyOff,on,rampOn,off,no,dlyOn,rampOff
   3: lgDimJtOn        |     literal        | required | Jump from on options:off,rampOn,on,dlyOff,rampOff,dlyOn,no
   3: lgDimJtRampOff   |     literal        | required | Jump from rampOff options:off,rampOn,on,dlyOff,rampOff,no,dlyOn
   3: lgDimJtRampOn    |     literal        | required | Jump from rampOn options:off,rampOn,on,dlyOff,rampOff,no,dlyOn
   3: lgDimMaxLvl      | 0.0 to 100%        | required | dimMaxLevel
   3: lgDimMinLvl      | 0.0 to 100%        | required | dimMinLevel
   3: lgDimStep        | 0.0 to 100%        | required | dimStep
   3: lgMultiExec      |     literal        | required | execution per repeat message options:off,on
   3: lgOffDly         | 0.0 to 111600s     | required | off delay
   3: lgOffDlyBlink    |     literal        | required | blink when in off delay options:on,off
   3: lgOffDlyNewTime  | 0.1 to 25.6s       | required | off delay blink time for low
   3: lgOffDlyOldTime  | 0.1 to 25.6s       | required | off delay blink time for high
   3: lgOffDlyStep     | 0.1 to 25.6%       | required | off delay step if blink is active
   3: lgOffLevel       | 0.0 to 100%        | required | PowerLevel off
   3: lgOffTime        | 0.0 to 111600s     | required | off time special:unused
   3: lgOffTimeMode    |     literal        | required | off time meant absolut or at least options:minimal,absolut
   3: lgOnDly          | 0.0 to 111600s     | required | on delay
   3: lgOnDlyMode      |     literal        | required |  options:setToOff,NoChange
   3: lgOnLevel        | 0.0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: lgOnLvlPrio      |     literal        | required |  options:low,high
   3: lgOnMinLevel     | 0.0 to 100%        | required | minimum PowerLevel
   3: lgOnTime         | 0.0 to 111600s     | required | on time special:unused
   3: lgOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut
   3: lgRampOffTime    | 0.0 to 111600s     | required | rampOffTime
   3: lgRampOnTime     | 0.0 to 111600s     | required | rampOnTime
   3: lgRampSstep      | 0.0 to 100%        | required | rampStartStep
   3: shActionTypeDim  |     literal        | required |  options:downDim,upDim,jmpToTarget,toggelDim,toggleToCntInv,toggelDimToCntInv,off,toggelDimToCnt,toggleToCnt
   3: shCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:outside,geHi,ltHi,between,ltLo,geLo
   3: shCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:ltLo,geLo,outside,geHi,ltHi,between
   3: shCtOff          |     literal        | required | Jmp on condition from off options:between,ltHi,geHi,outside,geLo,ltLo
   3: shCtOn           |     literal        | required | Jmp on condition from on options:ltLo,geLo,geHi,outside,between,ltHi
   3: shCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geLo,ltLo,ltHi,between,outside,geHi
   3: shCtRampOn       |     literal        | required | Jmp on condition from rampOn options:outside,geHi,between,ltHi,ltLo,geLo
   3: shCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: shCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: shDimElsActionType |     literal        | required |  options:toggelDimToCnt,toggleToCnt,toggelDim,toggleToCntInv,toggelDimToCntInv,off,upDim,jmpToTarget,downDim
   3: shDimElsJtDlyOff |     literal        | required | else Jump from delayOff options:off,rampOn,dlyOff,on,rampOff,dlyOn,no
   3: shDimElsJtDlyOn  |     literal        | required | else Jump from delayOn options:rampOff,no,dlyOn,off,rampOn,on,dlyOff
   3: shDimElsJtOff    |     literal        | required | else Jump from off options:rampOff,dlyOn,no,rampOn,off,dlyOff,on
   3: shDimElsJtOn     |     literal        | required | else Jump from on options:rampOff,dlyOn,no,rampOn,off,on,dlyOff
   3: shDimElsJtRampOff |     literal        | required | else Jump from rampOff options:dlyOff,on,rampOn,off,dlyOn,no,rampOff
   3: shDimElsJtRampOn |     literal        | required | else Jump from rampOn options:dlyOn,no,rampOff,on,dlyOff,off,rampOn
   3: shDimElsOffTimeMd |     literal        | required |  options:minimal,absolut
   3: shDimElsOnTimeMd |     literal        | required |  options:absolut,minimal
   3: shDimJtDlyOff    |     literal        | required | Jump from delayOff options:rampOff,dlyOn,no,off,rampOn,dlyOff,on
   3: shDimJtDlyOn     |     literal        | required | Jump from delayOn options:off,rampOn,dlyOff,on,rampOff,no,dlyOn
   3: shDimJtOff       |     literal        | required | Jump from off options:dlyOff,on,rampOn,off,no,dlyOn,rampOff
   3: shDimJtOn        |     literal        | required | Jump from on options:off,rampOn,on,dlyOff,rampOff,dlyOn,no
   3: shDimJtRampOff   |     literal        | required | Jump from rampOff options:off,rampOn,on,dlyOff,rampOff,no,dlyOn
   3: shDimJtRampOn    |     literal        | required | Jump from rampOn options:off,rampOn,on,dlyOff,rampOff,no,dlyOn
   3: shDimMaxLvl      | 0.0 to 100%        | required | dimMaxLevel
   3: shDimMinLvl      | 0.0 to 100%        | required | dimMinLevel
   3: shDimStep        | 0.0 to 100%        | required | dimStep
   3: shMultiExec      |     literal        | required | reg unused, placeholder only options:on,off
   3: shOffDly         | 0.0 to 111600s     | required | off delay
   3: shOffDlyBlink    |     literal        | required | blink when in off delay options:on,off
   3: shOffDlyNewTime  | 0.1 to 25.6s       | required | off delay blink time for low
   3: shOffDlyOldTime  | 0.1 to 25.6s       | required | off delay blink time for high
   3: shOffDlyStep     | 0.1 to 25.6%       | required | off delay step if blink is active
   3: shOffLevel       | 0.0 to 100%        | required | PowerLevel off
   3: shOffTime        | 0.0 to 111600s     | required | off time special:unused
   3: shOffTimeMode    |     literal        | required | off time meant absolut or at least options:minimal,absolut
   3: shOnDly          | 0.0 to 111600s     | required | on delay
   3: shOnDlyMode      |     literal        | required |  options:setToOff,NoChange
   3: shOnLevel        | 0.0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: shOnLvlPrio      |     literal        | required |  options:low,high
   3: shOnMinLevel     | 0.0 to 100%        | required | minimum PowerLevel
   3: shOnTime         | 0.0 to 111600s     | required | on time special:unused
   3: shOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut
   3: shRampOffTime    | 0.0 to 111600s     | required | rampOffTime
   3: shRampOnTime     | 0.0 to 111600s     | required | rampOnTime
   3: shRampSstep      | 0.0 to 100%        | required | rampStartStep



Zitat von: Otto123 am 31 März 2020, 13:57:08
Ich habe meine Dimmer so eingestellt, dass er bei 5 pct "aufhört". Das heisst einfach ein langer Tastendruck und er ist maximal gedimmt. Wäre das eine Alternative?
Bei mir so:
set LichtWzR_Dim regSet prep lgOffLevel 5 self01
Ich möchte zusätzlich noch normal dimmen können. Macht das der Code? Wenn ich auf dem Taster nach unten dimmen bleibe, wäre es für mich in Ordnung wenn das bis maximal pct 5 geht. Ausmachen kann ich über einen kurzen Druck.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 31 März 2020, 14:42:43
ZitatIch möchte zusätzlich noch normal dimmen können. Macht das der Code?
genau das. Er geht beim Dim Vorgang eben nur nicht am Ende aus sondern bleibt. Ich finde einfacher geht es nicht, zumal ohne FHEM. Ist ja nur ein Register.

Sorry mein Code war nur eine kopierte Zeile, da muss dann noch ein mit exec folgen! Mir ging es nur um das Register

Komplett:

In Summe habe ich folgendes gemacht, da ich LEDs dran habe:
set LichtWzR_Dim regSet intKeyVisib visib

# shOnLevel setzt den Einschaltlevel herunter
# dann fängt das runter dimmen beim DimMaxLvl an und nicht bei 100%
set LichtWzR_Dim regSet prep lgOffLevel 5 self01
set LichtWzR_Dim regSet prep shOnLevel 55 self02

# minimale Register für bessere Dim Kurve

set LichtWzR_Dim regSet prep lgDimMaxLvl 55 self02
set LichtWzR_Dim regSet prep lgDimMinLvl 5 self01
set LichtWzR_Dim regSet prep lgDimStep 2.5 self01
set LichtWzR_Dim regSet exec lgDimStep 2.5 self02

set LichtWzR_Dim regSet intKeyVisib invisib


Den Max Wert habe ich nach Gefühl ermittelt. Bei mir ist bei den LEDs fast kein Unterschied zwischen 100 und 55 %. Mit der Programmierung hat man eine halbwegs bedienbare Dimmkurve.

@Frank Beim Template bauen bin ich letztens abgestorben 🤔
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 31 März 2020, 15:37:50
Zitat@Frank Beim Template bauen bin ich letztens abgestorben
das solltest du mal genauer ausführen.
vielleicht besser im hm.js thread.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 31 März 2020, 16:52:42
Zitat von: Otto123 am 31 März 2020, 14:42:43
set LichtWzR_Dim regSet prep lgOffLevel 5 self01
set LichtWzR_Dim regSet prep shOnLevel 55 self02

Also muss ich nur das ausführen? Einmal oder immer?
Was ist der default Wert?

Oder benötige ich das auch noch?
Zitat von: Otto123 am 31 März 2020, 14:42:43
set LichtWzR_Dim regSet prep lgDimMaxLvl 55 self02
set LichtWzR_Dim regSet prep lgDimMinLvl 5 self01
set LichtWzR_Dim regSet prep lgDimStep 2.5 self01
set LichtWzR_Dim regSet exec lgDimStep 2.5 self02

set LichtWzR_Dim regSet intKeyVisib invisib
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 31 März 2020, 17:06:57
Was meinst Du mit default Wert?

Die von mir gezeigten Zeilen programmieren den Dimmer, sie schreiben in die Register! Das ist ein einmaliger Vorgang!
Wenn Du unsicher bist, lass es lieber. Ich darf momentan nicht zu Dir kommen :)
Der Dimmer muss im Standardzustand sein! Nicht das Du schon die Tastenfunktion getauscht hast? Oben (self02) an Unten (self01) aus!
Die internen Taster müssen sichtbar sein:
set LichtWzR_Dim regSet intKeyVisib visib
Bitte kontrollieren, das der Dimmer den Befehl akzeptiert hat.
Die folgenden Registerbefehle sind ein Block! prep -> vorbereiten exec -> ausführen
Der Level für lange Drücken runter dimmen wird gesetzt
set LichtWzR_Dim regSet prep lgOffLevel 5 self01
Der Level für kurz drücken an wird gesetzt
set LichtWzR_Dim regSet prep shOnLevel 55 self02
Der maximale und minimale Dimm Level wird gesetzt
set LichtWzR_Dim regSet prep lgDimMaxLvl 55 self02
set LichtWzR_Dim regSet prep lgDimMinLvl 5 self01

Die Schrittweite wird gesetzt, der letzte Befehl überträgt alles zum Dimmer!
set LichtWzR_Dim regSet prep lgDimStep 2.5 self01
set LichtWzR_Dim regSet exec lgDimStep 2.5 self02


Jetzt kann man den Erfolg testen! Indem man prep / exec weglässt kann man auch jedes Register einzeln setzen (mehr Funkverkehr)

Funktioniert alles, kann man die internen Taster wieder unsichtbar machen
set LichtWzR_Dim regSet intKeyVisib invisib

Gruß Otto
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 31 März 2020, 17:48:56
ich hätte noch eine idee.  :)

im moment wird mit taster1-short on und taster2-short off geschaltet.

nun könnte man taster1-short umprogrammieren, so dass dieser immer zwischen on und off toggelt. zusätzlich wird bei diesem taster shOffLevel auf 5 gesetzt, wodurch dieser immer zwischen 100 und 5 toggelt.

der taster2-short macht dann weiterhin richtig aus.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 31 März 2020, 21:09:43
ich habe mal ein generisches template für dimmer erstellt, also jeweils eins für short oder long:

toggleMaxMin_dimmer_short und toggleMaxMin_dimmer_long
(toggle a dimmer between on (maxLevel) and off (minLevel) within rampTime. )
das template hat 3 parameter für maxLevel, minLevel und rampTime.

wenn dein hminfo device "hminfo" heisst, einfach den folgenden befehl in die fhem befehlseingabe eingeben. ansonsten den entsprechenden namen ändern.

set hminfo templateDef toggleMaxMin_dimmer maxLevel:minLevel:rampTime "toggle a dimmer between on (maxLevel) and off (minLevel) within rampTime. " ActionTypeDim:jmpToTarget CtDlyOff:geLo CtDlyOn:geLo CtOff:geLo CtOn:geLo CtRampOff:geLo CtRampOn:geLo CtValHi:100 CtValLo:50 DimJtDlyOff:rampOff DimJtDlyOn:rampOn DimJtOff:dlyOn DimJtOn:dlyOff DimJtRampOff:off DimJtRampOn:on DimMaxLvl:100 DimMinLvl:0 DimStep:5 MultiExec:off OffDly:0 OffDlyBlink:off OffDlyNewTime:0.4 OffDlyOldTime:0.4 OffDlyStep:5 OffLevel:p1 OffTime:unused OffTimeMode:absolut OnDly:0 OnDlyMode:setToOff OnLevel:p0 OnLvlPrio:high OnMinLevel:p1 OnTime:unused OnTimeMode:absolut RampOffTime:p2 RampOnTime:p2 RampSstep:0

anschliessend sollte das template beim dimmer in der set liste unter tpl_<peername> zu finden sein.
also einfach die "_short" version des templates für den entsprechenden taster auswählen und set klicken. dadurch wird das template zugewiesen und register entsprechend gesetzt. die parameter bekommen in diesem fall die aktuellen registerwerte.

zum ändern der parameter einfach die entsprechenden "set tplPara... " befehle auswählen und werte setzen.


ein webui zum einfachen register ändern und einfacher templateunterstützung gibt es hier:
https://forum.fhem.de/index.php/topic,106959.0.html (https://forum.fhem.de/index.php/topic,106959.0.html)


falls das ausschalten des anderen tasters zb beim minLevel nicht funktionieren sollte, sag bescheid dann mache ich dafür auch ein template.

edit: templatename geändert.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 01 April 2020, 16:34:10
passend zum template toggleMaxMin_dimmer[_short|_long] noch 2 templates, die entweder nur on oder off schalten.
aber auch mit parametern zum setzen des levels und der ramptime.


switchToOffLevel_dimmer[_short|_long]
(switch dimmer to off (offLevel) within rampTime.)

set hminfo templateDef switchToOffLevel_dimmer offLevel:rampTime "switch dimmer to off (offLevel) within rampTime. " ActionTypeDim:jmpToTarget CtDlyOff:geLo CtDlyOn:geLo CtOff:geLo CtOn:geLo CtRampOff:geLo CtRampOn:geLo CtValHi:100 CtValLo:50 DimJtDlyOff:rampOff DimJtDlyOn:rampOff DimJtOff:rampOff DimJtOn:rampOff DimJtRampOff:off DimJtRampOn:dlyOff DimMaxLvl:100 DimMinLvl:0 DimStep:5 MultiExec:off OffDly:0 OffDlyBlink:off OffDlyNewTime:0.4 OffDlyOldTime:0.4 OffDlyStep:5 OffLevel:p0 OffTime:unused OffTimeMode:absolut OnDly:0 OnDlyMode:setToOff OnLevel:100 OnLvlPrio:high OnMinLevel:p0 OnTime:unused OnTimeMode:absolut RampOffTime:p1 RampOnTime:p1 RampSstep:0


switchToOnLevel_dimmer[_short|_long]
(switch dimmer to on (onLevel) within rampTime.)

set hminfo templateDef switchToOnLevel_dimmer onLevel:rampTime "switch dimmer to on (onLevel) within rampTime." ActionTypeDim:jmpToTarget CtDlyOff:geLo CtDlyOn:geLo CtOff:geLo CtOn:geLo CtRampOff:geLo CtRampOn:geLo CtValHi:100 CtValLo:50 DimJtDlyOff:rampOn DimJtDlyOn:rampOn DimJtOff:rampOn DimJtOn:rampOn DimJtRampOff:dlyOn DimJtRampOn:on DimMaxLvl:100 DimMinLvl:0 DimStep:5 MultiExec:off OffDly:0 OffDlyBlink:off OffDlyNewTime:0.4 OffDlyOldTime:0.4 OffDlyStep:5 OffLevel:0 OffTime:unused OffTimeMode:absolut OnDly:0 OnDlyMode:setToOff OnLevel:p0 OnLvlPrio:high OnMinLevel:0 OnTime:unused OnTimeMode:absolut RampOffTime:p1 RampOnTime:p1 RampSstep:0
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 01 April 2020, 23:50:00
Zitat von: Otto123 am 31 März 2020, 17:06:57
Was meinst Du mit default Wert?
Es gibt ja jetzt einen eingestellten Wert, den ich ändere.

Zitat von: Otto123 am 31 März 2020, 17:06:57
Die von mir gezeigten Zeilen programmieren den Dimmer, sie schreiben in die Register! Das ist ein einmaliger Vorgang!
Das Register ist also sowas eine config für den Dimmer?

Zitat von: Otto123 am 31 März 2020, 17:06:57
Der Dimmer muss im Standardzustand sein! Nicht das Du schon die Tastenfunktion getauscht hast? Oben (self02) an Unten (self01) aus!
Wo sieht man den Wert self01 und self02? Ich wüsste nicht, dass ich da was geändert habe, also nein.

Zitat von: Otto123 am 31 März 2020, 17:06:57
Die internen Taster müssen sichtbar sein:
set LichtWzR_Dim regSet intKeyVisib visib
Bitte kontrollieren, das der Dimmer den Befehl akzeptiert hat.
Habe ich gemacht.
Internals:
   DEF        53014701
   FUUID      5c7197ee-f33f-50ef-d504-00939d7172be358e
   FVERSION   10_CUL_HM.pm:0.210930/2020-02-02
   NAME       Licht_Wohnzimmer_4
   NOTIFYDEV  global
   NR         779
   NTFY_ORDER 50-Licht_Wohnzimmer_4
   STATE      off
   TYPE       CUL_HM
   chanNo     01
   device     HM_530147
   peerList   self01,self02,
   READINGS:
     2020-04-01 18:26:33   CommandAccepted yes
     2017-12-30 17:51:38   R-fuseDelay     1 s
     2017-12-30 17:51:38   R-logicCombination or
     2017-12-30 17:51:38   R-ovrTempLvl    80 C
     2017-12-30 17:51:38   R-powerUpAction off
     2017-12-30 17:51:38   R-redLvl        40 %
     2017-12-30 17:51:38   R-redTempLvl    75 C
     2020-04-01 23:16:25   R-self01-lgActionTypeDim downDim
     2020-04-01 23:16:25   R-self01-lgCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-lgCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-lgCtOff geLo
     2020-04-01 23:16:25   R-self01-lgCtOn geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOff geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOn geLo
     2020-04-01 23:16:25   R-self01-lgCtValHi 100
     2020-04-01 23:16:25   R-self01-lgCtValLo 50
     2020-04-01 23:16:25   R-self01-lgDimElsActionType off
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimJtDlyOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtOff dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-lgDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-lgDimStep 5 %
     2020-04-01 23:16:25   R-self01-lgMultiExec on
     2020-04-01 23:16:25   R-self01-lgOffDly 0 s
     2020-04-01 23:16:25   R-self01-lgOffDlyBlink on
     2020-04-01 23:16:25   R-self01-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-lgOffLevel 0 %
     2020-04-01 23:16:25   R-self01-lgOffTime unused
     2020-04-01 23:16:25   R-self01-lgOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgOnDly 0 s
     2020-04-01 23:16:25   R-self01-lgOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-lgOnLevel 100 %
     2020-04-01 23:16:25   R-self01-lgOnLvlPrio high
     2020-04-01 23:16:25   R-self01-lgOnMinLevel 10 %
     2020-04-01 23:16:25   R-self01-lgOnTime 1 s
     2020-04-01 23:16:25   R-self01-lgOnTimeMode minimal
     2020-04-01 23:16:25   R-self01-lgRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampOnTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampSstep 5 %
     2020-04-01 23:16:25   R-self01-shActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-shCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-shCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-shCtOff geLo
     2020-04-01 23:16:25   R-self01-shCtOn geLo
     2020-04-01 23:16:25   R-self01-shCtRampOff geLo
     2020-04-01 23:16:25   R-self01-shCtRampOn geLo
     2020-04-01 23:16:25   R-self01-shCtValHi 100
     2020-04-01 23:16:25   R-self01-shCtValLo 50
     2020-04-01 23:16:25   R-self01-shDimElsActionType off
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-shDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimElsOnTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimJtDlyOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtOff dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-shDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-shDimStep 5 %
     2020-04-01 23:16:25   R-self01-shMultiExec off
     2020-04-01 23:16:25   R-self01-shOffDly 0 s
     2020-04-01 23:16:25   R-self01-shOffDlyBlink on
     2020-04-01 23:16:25   R-self01-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-shOffLevel 0 %
     2020-04-01 23:16:25   R-self01-shOffTime unused
     2020-04-01 23:16:25   R-self01-shOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-shOnDly 0 s
     2020-04-01 23:16:25   R-self01-shOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-shOnLevel 100 %
     2020-04-01 23:16:25   R-self01-shOnLvlPrio high
     2020-04-01 23:16:25   R-self01-shOnMinLevel 10 %
     2020-04-01 23:16:25   R-self01-shOnTime unused
     2020-04-01 23:16:25   R-self01-shOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-shRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampOnTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampSstep 5 %
     2020-04-01 23:16:27   R-self02-lgActionTypeDim upDim
     2020-04-01 23:16:27   R-self02-lgCtDlyOff geLo
     2020-04-01 23:16:27   R-self02-lgCtDlyOn geLo
     2020-04-01 23:16:27   R-self02-lgCtOff geLo
     2020-04-01 23:16:27   R-self02-lgCtOn geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOff geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOn geLo
     2020-04-01 23:16:27   R-self02-lgCtValHi 100
     2020-04-01 23:16:27   R-self02-lgCtValLo 50
     2020-04-01 23:16:27   R-self02-lgDimElsActionType off
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimJtOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-lgDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-lgDimStep 5 %
     2020-04-01 23:16:27   R-self02-lgMultiExec on
     2020-04-01 23:16:27   R-self02-lgOffDly 0 s
     2020-04-01 23:16:27   R-self02-lgOffDlyBlink on
     2020-04-01 23:16:27   R-self02-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-lgOffLevel 0 %
     2020-04-01 23:16:27   R-self02-lgOffTime unused
     2020-04-01 23:16:27   R-self02-lgOffTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgOnDly 0 s
     2020-04-01 23:16:27   R-self02-lgOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-lgOnLevel 100 %
     2020-04-01 23:16:27   R-self02-lgOnLvlPrio high
     2020-04-01 23:16:27   R-self02-lgOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-lgOnTime unused
     2020-04-01 23:16:27   R-self02-lgOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampSstep 5 %
     2020-04-01 23:16:27   R-self02-shDimElsActionType off
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-shDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-shDimStep 5 %
     2020-04-01 23:16:27   R-self02-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-shOnLevel 100 %
     2020-04-01 23:16:27   R-self02-shOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-shRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampSstep 5 %
     2020-04-01 23:06:55   R-sign          off
     2017-12-30 17:51:38   R-statusInfoMinDly 2 s
     2017-12-30 17:51:38   R-statusInfoRandom 1 s
     2017-12-30 17:51:38   R-transmitTryMax 6
     2020-04-01 18:26:39   deviceMsg       off (to Homematic_LAN_Gateway)
     2020-04-01 18:26:39   dim             stop:off
     2020-04-01 18:26:39   level           0
     2017-12-30 17:51:44   levelMissed     desired:100
     2020-04-01 18:26:39   overheat        off
     2020-04-01 18:26:39   overload        off
     2020-04-01 18:26:39   pct             0
     2020-04-01 23:16:20   peerList        self01,self02,
     2020-04-01 18:26:39   phyLevel        0
     2020-04-01 18:26:39   recentStateType info
     2020-04-01 18:26:39   reduced         off
     2020-04-01 18:26:39   state           off
     2020-04-01 18:26:39   timedOn         off
     2020-04-01 18:26:33   trigLast        fhem:02
   helper:
     dlvlCmd    ++A0116873675301470201000000
     peerFriend peerSens,peerVirt
     peerIDsRaw ,53014701,53014702,00000000
     peerOpt    3:dimmer
     regLst     1,3p
     dir:
       cur        stop
       rct        up
     expert:
       def        1
       det        1
       raw        0
       tpl        0
     regCollect:
     role:
       chn        1
     shadowReg:
     tmpl:
     vDim:
       idPhy      53014701
       idV2       53014702
       idV3       53014703
Attributes:
   FTUI_at    1
   alexaName  Decken Licht 4 im Wohnzimmer
   expert     1_allReg
   fhem_widget_channels [{"allowed_values":["off","on"],"controlled_attribute":"state"}]
   group      Deckenlicht
   model      HM-LC-DIM1TPBU-FM
   peerIDs    00000000,53014701,53014702,
   room       10_Wohnzimmer,70_Licht,Homekit,alexa
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
   webCmd     statusRequest:toggle:on:off:up:down



Zitat von: frank am 31 März 2020, 21:09:43
ich habe mal ein generisches template für dimmer erstellt, also jeweils eins für short oder long:

toggleMaxMin_dimmer_short und toggleMaxMin_dimmer_long
(toggle a dimmer between on (maxLevel) and off (minLevel) within rampTime. )
das template hat 3 parameter für maxLevel, minLevel und rampTime.

wenn dein hminfo device "hminfo" heisst, einfach den folgenden befehl in die fhem befehlseingabe eingeben. ansonsten den entsprechenden namen ändern.

set hminfo templateDef toggleMaxMin_dimmer maxLevel:minLevel:rampTime "toggle a dimmer between on (maxLevel) and off (minLevel) within rampTime. " ActionTypeDim:jmpToTarget CtDlyOff:geLo CtDlyOn:geLo CtOff:geLo CtOn:geLo CtRampOff:geLo CtRampOn:geLo CtValHi:100 CtValLo:50 DimJtDlyOff:rampOff DimJtDlyOn:rampOn DimJtOff:dlyOn DimJtOn:dlyOff DimJtRampOff:off DimJtRampOn:on DimMaxLvl:100 DimMinLvl:0 DimStep:5 MultiExec:off OffDly:0 OffDlyBlink:off OffDlyNewTime:0.4 OffDlyOldTime:0.4 OffDlyStep:5 OffLevel:p1 OffTime:unused OffTimeMode:absolut OnDly:0 OnDlyMode:setToOff OnLevel:p0 OnLvlPrio:high OnMinLevel:p1 OnTime:unused OnTimeMode:absolut RampOffTime:p2 RampOnTime:p2 RampSstep:0

anschliessend sollte das template beim dimmer in der set liste unter tpl_<peername> zu finden sein.
also einfach die "_short" version des templates für den entsprechenden taster auswählen und set klicken. dadurch wird das template zugewiesen und register entsprechend gesetzt. die parameter bekommen in diesem fall die aktuellen registerwerte.

zum ändern der parameter einfach die entsprechenden "set tplPara... " befehle auswählen und werte setzen.



Ich habe ein hminfo erstellt. Es gibt keine Readings, ist das normal?

Internals:
   CFGFN     
   FUUID      5e8501f6-f33f-50ef-d785-23103b5108a10834
   NAME       hminfo
   NR         32900
   NTFY_ORDER 50-hm
   STATE      ???
   TYPE       HMinfo
   Version    01
   helper:
     cfgChkResult configCheck done:
   nb:
     cnt        1
Attributes:
   event-on-change-reading .*
   sumERROR   battery:ok,sabotageError:off,powerError:ok,overload:off,overheat:off,reduced:off,motorErr:ok,error:none,uncertain:[no|yes],smoke_detect:none,cover:closed
   sumStatus  battery,sabotageError,powerError,motor
   webCmd     update:protoEvents short:rssi:peerXref:configCheck:models


Die Register muss ich aber trotzdem bearbeiten, per command oder dem Tool, korrekt?

Was ist der Vorteil von dem Template anstatt die command direkt zu setzen?

Und wie würde ich von einem Template wieder auf meinen jetzigen Standard kommen?




Offtopic: Ich habe 4 Devices für den Dimmer:
<Name> zum Schalten
HM_530147
HM_530147_Dim_V_01
HM_530147_Dim_V_02

Für was sind die da und brauche ich die alle?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 02 April 2020, 09:11:11
Moin,

fangen wir hinten an: Die Homematic Geräte haben alle immer ein Hauptdevice und einen oder mehrere Channel (Devices) der Dimmer hat 3 Channels, zusammen mit dem Hauptdevice sind es 4. Ja Du brauchst sie alle, praktisch betrachten musst Du jetzt nur den Channel _Dim - den Du in Licht_Wohnzimmer_4 umbenannt hast.

Alle jetzigen Werte siehst Du mit
get Licht_Wohnzimmer_4 regTable
alle möglichen Werte, sowie den Wertebereich und die Bedeutung siehst Du mit
get Licht_Wohnzimmer_4 regList
Ja, die Register ist sowas wie die eingebaute config des Dimmers.

Du kannst entweder meine 6 Zeilen absetzen ODER das Template anwenden. Letztlich setzen beide Varianten die Register.
Die Templates vereinfachen die Sache - auch wenn das gerade nicht so aussieht :) - vor allem dann wenn man mehrere Geräte hat und wenn man Geräte austauscht ...

Gruß Otto
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 02 April 2020, 10:18:20
ZitatIch habe ein hminfo erstellt. Es gibt keine Readings, ist das normal?
hminfo updated alle 10min (einstellbar) per default, oder manuell, siehe set cmds.

hminfo stellt auch befehle für templates bereit. hier kann man sie definieren, wie oben gezeigt. das webui nutzt sie ebenfalls.

ZitatWas ist der Vorteil von dem Template anstatt die command direkt zu setzen?

ein template (vorlage/muster) ist die zusammenstellung mehrere register mit entsprechenden werten, die jeweils zur selben device/peer kombination gehören.

vorteile:
1. man muss sich nicht diverse register/werte merken, um ein bestimmtes verhalten zu konfigurieren.

2. ein template kann beliebig vielen devices zugewiesen werden.

3. "get hminfo configCheck" überprüft auch aktuelle registerwerte mit zugewiesenen (assignten) templates.

4. mit "set hminfo templateExe" kann man systemweit sämtliche abweichungen restaurieren.

5. ausgetauschte, zb defekte devices sind schnell wieder konfiguriert.

6. man kann seine konfigurationen mit anderen usern "tauschen" und auf einfache weise übernehmen.

7. ein neuer zusätzlicher taster wird mit einem vorhanden aktor gepeert. das verhalten wird schnell und einfach durch zuweisen bereits existierender templates konfiguriert.
bei nutzung von short/long-templates wird nur das jeweilige verhalten verändert, somit beliebig kombinierbar.

8. enthält ein template einen parameter (zb für shOnLevel im obigen bsp) wird es "universeller". so kann man das selbe template an vielen stellen nutzen, die sich dann zb nur bei diesem register unterscheiden.
parameter sind auch nützlich, wenn man noch nicht genau weiss, ob der registerwert endgültig so bleiben soll. man muss dann nicht das template jedes mal ändern. einfach den parameter ändern und hminfo configcheck wird automatisch den neuen wert "überwachen".

9. es gibt sicher noch viele weitere beispiele

nachteile: keine


ZitatUnd wie würde ich von einem Template wieder auf meinen jetzigen Standard kommen?
einfach die zuweisung des templates lösen (unassign) und anschliessend zb genau so, als wenn du alle register mühevoll von hand eingestellt hättest.

ich empfehle, falls noch kein template genutzt wird:
vor dem ändern ein template des jeweiligen registersatzes erstellen. das sind vielleicht 4-5 klicks über das webui.

in deinem fall solltest du mit meinem template switchToOnLevel_dimmer_short das alte verhalten zurück bekommen.

ich hatte ja schon nach get regTable gefragt, da sieht man sehr schön alle registereinstellungen. hast du es auch in chn1 probiert?
für die selfxx peers muss register intKeyVisible=visib gesetzt sein. vermutlich im hauptdevice.

die 2 weiteren "virtuellen" chn sind für zusätzliche, komplexe verknüpfungen mit weiteren gepeerten devices gedacht, zb bewegungsmelder. also nicht löschen, höchstens verstecken.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 02 April 2020, 12:04:16
in deinem letzten list vom dimmer chn1 fehlen einige register für den peer self02.
copy fehler?
ansonnsten getconfig probieren.

scheinbar hast du ja noch nie ein register verändert, oder?

diese "jungfreuliche" config bekommt man natürlich auch immer mit einem werkreset wieder hin. anschliessend natürlich wieder pairen.

mit einem template von diesem zustand hättest du sogar ein "default"-template und könntest damit immer die config "resetten", ohne einen echten reset machen zu müssen. erspart erneutes pairen und eventuell vorhandene devices erneut peeren zu müssen.

aber wie gesagt, mit den obigen templates kannst du das short verhalten restaurieren.

um von einem oder allen devices inklusive aller channels plus eventueller peeringdaten alle daten zu sichern ist auch grundsätzlich "set hminfo saveConfig" zu empfehlen. siehe wiki hminfo.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 02 April 2020, 14:37:53
moin,

es gab ein problem mit den namen der hier vorgestellten templates im webui.
ein update dazu habe ich gerade im hm.js thread veröffentlicht.

gruss frank
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 03 April 2020, 14:31:04
Da ich insgesamt 3 Dimmer und 3 Schaltaktoren habe, würde ich daher Templates bevorzugen.

Zitat von: frank am 02 April 2020, 10:18:20
hminfo updated alle 10min (einstellbar) per default, oder manuell, siehe set cmds.

Ich bekomme jetzt ein paar Readings, auch wenn es keine interessanten Infos wie Batterie sind. Aber das ist erstmal nicht so wichtig.
Internals:
   CFGFN     
   CHANGED   
   FUUID      5e8501f6-f33f-50ef-d785-23103b5108a10834
   I_HM_IOdevices ok: Homematic_LAN_Gateway;
   NAME       hminfo
   NR         32900
   NTFY_ORDER 50-hm
   STATE      updated:2020-04-03 13:42:23
   TYPE       HMinfo
   Version    01
   W__protoNames HM_530078,HM_530114,HM_530147,Licht_Flur
   READINGS:
     2020-04-03 13:42:23   CRI__protocol   -
     2020-04-03 01:41:46   C_sumDefined    entities:20,device:7,channel:15,virtual:0
     2020-04-03 13:42:23   ERR__protocol   -
     2020-04-03 01:18:55   ERR__unreachable 0
     2020-04-03 13:42:23   I_actTotal      -
     2020-04-03 01:18:55   I_autoReadPend  0
     2020-04-03 01:18:55   I_rssiMinLevel  59<:7 60>:0 80>:0 99>:0
     2020-04-03 01:18:55   W__protocol     Resnd:4
   helper:
     autoUpdate 600
     cfgChkResult configCheck done:
   nb:
     cnt        3
Attributes:
   autoUpdate 00:10
   event-on-change-reading .*
   sumERROR   battery:ok,sabotageError:off,powerError:ok,overload:off,overheat:off,reduced:off,motorErr:ok,error:none,uncertain:[no|yes],smoke_detect:none,cover:closed
   sumStatus  battery,sabotageError,powerError,motor
   webCmd     update:protoEvents short:rssi:peerXref:configCheck:models


Zitat von: frank am 02 April 2020, 10:18:20
einfach die zuweisung des templates lösen (unassign) und anschliessend zb genau so, als wenn du alle register mühevoll von hand eingestellt hättest.
In welchem Device finde ich das?

Zitat von: frank am 02 April 2020, 10:18:20
ich empfehle, falls noch kein template genutzt wird:
vor dem ändern ein template des jeweiligen registersatzes erstellen. das sind vielleicht 4-5 klicks über das webui.
Aktuell habe ich noch nichts mit Templates gemacht. Geht das auch über die commands und muss das zwingend über die webui gemacht werden?

Zitat von: frank am 02 April 2020, 10:18:20
in deinem fall solltest du mit meinem template switchToOnLevel_dimmer_short das alte verhalten zurück bekommen.
Wo ist das Template?

Zitat von: frank am 02 April 2020, 10:18:20
ich hatte ja schon nach get regTable gefragt, da sieht man sehr schön alle registereinstellungen. hast du es auch in chn1 probiert?
channel_01 ist bei mir Licht_Wohnzimmer_4:
   channel_01 Licht_Wohnzimmer_4
   channel_02 HM_530147_Dim_V_01
   channel_03 HM_530147_Dim_V_02


regTable:
No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          downDim         jmpToTarget     upDim           
CtDlyOff               geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo           
CtValHi                100             100             100             
CtValLo                50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn         
DimJtDlyOn             dlyOff          dlyOff          rampOn         
DimJtOff               dlyOff          dlyOff          dlyOn           
DimJtOn                dlyOff          dlyOff          rampOn         
DimJtRampOff           off             off             rampOn         
DimJtRampOn            dlyOff          dlyOff          on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  0               0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              on              off             on             
OffDly            [s]  0               0               0               
OffDlyBlink            on              on              on             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  0               0               0               
OffTime                unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         
OnDly             [s]  0               0               0               
OnDlyMode              setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high           
OnMinLevel        [%]  10              10              10              10             
OnTime            [s]  1               unused          unused         
OnTimeMode             minimal         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  5               5               5               5   






Zitat von: frank am 02 April 2020, 12:04:16
in deinem letzten list vom dimmer chn1 fehlen einige register für den peer self02.
copy fehler?
Hatte ich eigentlich schon gepostet, aber nochmal:
Internals:
   DEF        53014701
   FUUID      5c7197ee-f33f-50ef-d504-00939d7172be358e
   FVERSION   10_CUL_HM.pm:0.210930/2020-02-02
   NAME       Licht_Wohnzimmer_4
   NOTIFYDEV  global
   NR         779
   NTFY_ORDER 50-Licht_Wohnzimmer_4
   STATE      off
   TYPE       CUL_HM
   chanNo     01
   device     HM_530147
   peerList   self01,self02,
   READINGS:
     2020-04-03 02:00:56   CommandAccepted yes
     2017-12-30 17:51:38   R-fuseDelay     1 s
     2017-12-30 17:51:38   R-logicCombination or
     2017-12-30 17:51:38   R-ovrTempLvl    80 C
     2017-12-30 17:51:38   R-powerUpAction off
     2017-12-30 17:51:38   R-redLvl        40 %
     2017-12-30 17:51:38   R-redTempLvl    75 C
     2020-04-01 23:16:25   R-self01-lgActionTypeDim downDim
     2020-04-01 23:16:25   R-self01-lgCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-lgCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-lgCtOff geLo
     2020-04-01 23:16:25   R-self01-lgCtOn geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOff geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOn geLo
     2020-04-01 23:16:25   R-self01-lgCtValHi 100
     2020-04-01 23:16:25   R-self01-lgCtValLo 50
     2020-04-01 23:16:25   R-self01-lgDimElsActionType off
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimJtDlyOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtOff dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-lgDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-lgDimStep 5 %
     2020-04-01 23:16:25   R-self01-lgMultiExec on
     2020-04-01 23:16:25   R-self01-lgOffDly 0 s
     2020-04-01 23:16:25   R-self01-lgOffDlyBlink on
     2020-04-01 23:16:25   R-self01-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-lgOffLevel 0 %
     2020-04-01 23:16:25   R-self01-lgOffTime unused
     2020-04-01 23:16:25   R-self01-lgOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgOnDly 0 s
     2020-04-01 23:16:25   R-self01-lgOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-lgOnLevel 100 %
     2020-04-01 23:16:25   R-self01-lgOnLvlPrio high
     2020-04-01 23:16:25   R-self01-lgOnMinLevel 10 %
     2020-04-01 23:16:25   R-self01-lgOnTime 1 s
     2020-04-01 23:16:25   R-self01-lgOnTimeMode minimal
     2020-04-01 23:16:25   R-self01-lgRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampOnTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampSstep 5 %
     2020-04-01 23:16:25   R-self01-shActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-shCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-shCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-shCtOff geLo
     2020-04-01 23:16:25   R-self01-shCtOn geLo
     2020-04-01 23:16:25   R-self01-shCtRampOff geLo
     2020-04-01 23:16:25   R-self01-shCtRampOn geLo
     2020-04-01 23:16:25   R-self01-shCtValHi 100
     2020-04-01 23:16:25   R-self01-shCtValLo 50
     2020-04-01 23:16:25   R-self01-shDimElsActionType off
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-shDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimElsOnTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimJtDlyOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtOff dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-shDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-shDimStep 5 %
     2020-04-01 23:16:25   R-self01-shMultiExec off
     2020-04-01 23:16:25   R-self01-shOffDly 0 s
     2020-04-01 23:16:25   R-self01-shOffDlyBlink on
     2020-04-01 23:16:25   R-self01-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-shOffLevel 0 %
     2020-04-01 23:16:25   R-self01-shOffTime unused
     2020-04-01 23:16:25   R-self01-shOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-shOnDly 0 s
     2020-04-01 23:16:25   R-self01-shOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-shOnLevel 100 %
     2020-04-01 23:16:25   R-self01-shOnLvlPrio high
     2020-04-01 23:16:25   R-self01-shOnMinLevel 10 %
     2020-04-01 23:16:25   R-self01-shOnTime unused
     2020-04-01 23:16:25   R-self01-shOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-shRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampOnTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampSstep 5 %
     2020-04-01 23:16:27   R-self02-lgActionTypeDim upDim
     2020-04-01 23:16:27   R-self02-lgCtDlyOff geLo
     2020-04-01 23:16:27   R-self02-lgCtDlyOn geLo
     2020-04-01 23:16:27   R-self02-lgCtOff geLo
     2020-04-01 23:16:27   R-self02-lgCtOn geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOff geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOn geLo
     2020-04-01 23:16:27   R-self02-lgCtValHi 100
     2020-04-01 23:16:27   R-self02-lgCtValLo 50
     2020-04-01 23:16:27   R-self02-lgDimElsActionType off
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimJtOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-lgDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-lgDimStep 5 %
     2020-04-01 23:16:27   R-self02-lgMultiExec on
     2020-04-01 23:16:27   R-self02-lgOffDly 0 s
     2020-04-01 23:16:27   R-self02-lgOffDlyBlink on
     2020-04-01 23:16:27   R-self02-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-lgOffLevel 0 %
     2020-04-01 23:16:27   R-self02-lgOffTime unused
     2020-04-01 23:16:27   R-self02-lgOffTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgOnDly 0 s
     2020-04-01 23:16:27   R-self02-lgOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-lgOnLevel 100 %
     2020-04-01 23:16:27   R-self02-lgOnLvlPrio high
     2020-04-01 23:16:27   R-self02-lgOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-lgOnTime unused
     2020-04-01 23:16:27   R-self02-lgOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampSstep 5 %
     2020-04-01 23:16:27   R-self02-shDimElsActionType off
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-shDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-shDimStep 5 %
     2020-04-01 23:16:27   R-self02-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-shOnLevel 100 %
     2020-04-01 23:16:27   R-self02-shOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-shRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampSstep 5 %
     2020-04-01 23:06:55   R-sign          off
     2017-12-30 17:51:38   R-statusInfoMinDly 2 s
     2017-12-30 17:51:38   R-statusInfoRandom 1 s
     2017-12-30 17:51:38   R-transmitTryMax 6
     2020-04-03 02:01:05   deviceMsg       off (to Homematic_LAN_Gateway)
     2020-04-03 02:01:05   dim             stop:off
     2020-04-03 02:01:05   level           0
     2017-12-30 17:51:44   levelMissed     desired:100
     2020-04-03 02:01:05   overheat        off
     2020-04-03 02:01:05   overload        off
     2020-04-03 02:01:05   pct             0
     2020-04-01 23:16:20   peerList        self01,self02,
     2020-04-03 02:01:05   phyLevel        0
     2020-04-03 02:01:05   recentStateType info
     2020-04-03 02:01:05   reduced         off
     2020-04-03 02:01:05   state           off
     2020-04-03 02:01:05   timedOn         off
     2020-04-03 02:00:53   trigLast        fhem:02
   helper:
     cfgChkResult No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          downDim         jmpToTarget     upDim           
CtDlyOff               geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo           
CtValHi                100             100             100             
CtValLo                50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn         
DimJtDlyOn             dlyOff          dlyOff          rampOn         
DimJtOff               dlyOff          dlyOff          dlyOn           
DimJtOn                dlyOff          dlyOff          rampOn         
DimJtRampOff           off             off             rampOn         
DimJtRampOn            dlyOff          dlyOff          on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  0               0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              on              off             on             
OffDly            [s]  0               0               0               
OffDlyBlink            on              on              on             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  0               0               0               
OffTime                unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         
OnDly             [s]  0               0               0               
OnDlyMode              setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high           
OnMinLevel        [%]  10              10              10              10             
OnTime            [s]  1               unused          unused         
OnTimeMode             minimal         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  5               5               5               5               

     dlvlCmd    ++A0116873675301470201000000
     peerFriend peerSens,peerVirt
     peerIDsRaw ,53014701,53014702,00000000
     peerOpt    3:dimmer
     regLst     1,3p
     dir:
       cur        stop
       rct        up
     expert:
       def        1
       det        1
       raw        0
       tpl        0
     regCollect:
     role:
       chn        1
     shadowReg:
     tmpl:
     vDim:
       idPhy      53014701
       idV2       53014702
       idV3       53014703
   nb:
     cnt        5
Attributes:
   FTUI_at    1
   alexaName  Decken Licht 4 im Wohnzimmer
   expert     1_allReg
   fhem_widget_channels [{"allowed_values":["off","on"],"controlled_attribute":"state"}]
   group      Deckenlicht
   model      HM-LC-DIM1TPBU-FM
   peerIDs    00000000,53014701,53014702,
   room       10_Wohnzimmer,70_Licht,Homekit,alexa
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
   webCmd     statusRequest:toggle:on:off:up:down



Zitat von: frank am 02 April 2020, 12:04:16
scheinbar hast du ja noch nie ein register verändert, oder?
Nein, noch nicht.

Zitat von: frank am 02 April 2020, 12:04:16
um von einem oder allen devices inklusive aller channels plus eventueller peeringdaten alle daten zu sichern ist auch grundsätzlich "set hminfo saveConfig" zu empfehlen. siehe wiki hminfo.
Wo wird die Datei abgelegt? Ich finde die nicht auch wenn ich mit configDir einen eigenen Pfad angebe.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 03 April 2020, 15:49:56
bevor du die templates nutzen kannst musst du die fehlenden register "wiederbeleben".
schau dir das regTable an. in der letzten spalte zu self02/sh fehlen diverse register.
du hast noch kein "set getConfig" ausgeführt?


ZitatWo ist das Template?
ich hatte dir definitionen für 3 templates gepostet und den ablauf geschildert. hier nochmal ausführlich:

1. die templates musst du jeweils in die fhem befehlszeile kopieren und ausführen. danach sind sie in fhem vergügbar.

2. du rufst die detailseite von chn1 deiner dimmer auf.

nach den daten der regTable benutzt du taster self01 zu runterdimmen (long) und zum ausschalten (short).
self02 zum hochdimmen (long) und einschalten (short).

demnach wählst du aus der set liste den befehl:

3. set tpl_self02 aus und wählst dazu aus der 2. liste das template toggleMaxMin_dimmer_short aus. nun auf set drücken und fertig.

das template wurde assigned und die register werden entsprechend gesetzt. nun funktioniert der taster self02 als toggle zwischen 100 und 0.

4. nach dem zuweisen des templates gibt es jetzt weitere set befehle. wahrscheinlich einmal die detailseite refreshen.

5. damit der toggle zwischen 100 und 5 funktioniert musst du nun den parameter minLevel des templates ändern. dazu gibt es jetzt für jeden parameter des templates ein set tplPara... befehl. also entsprechend setzen.

6. mit set tpl_self01 switchToOffLevel_dimmer_short weist du dem anderen taster das nächste template zum ausschalten zu.
in der set liste sind anschliessend 2 weitere tplPara... befehle für diese templatezuweisung. hier brauchst du aber nichts ändern.

7. fertig

um die templatezuweisungen zu entfernen (unassign) gibt es in der set liste nun tplDel mit 2 optionen für die 2 zugewiesenen templates.
wenn du die einstellungen beibehalten willst, solltest du die zuweisungen nicht löschen damit hminfo die einstellungen überwachen kann.


hminfo:

die datei mit den konfigurationen sollte im fhem ordner liegen. also zb opt/fhem. es gibt in hminfo auch attribute für einen namen und ordner. steht das nicht im wiki?

batterie meldung wird schon noch kommen, falls du devices mit batterien hast.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 03 April 2020, 17:00:27
Zitat von: frank am 03 April 2020, 15:49:56
bevor du die templates nutzen kannst musst du die fehlenden register "wiederbeleben".
schau dir das regTable an. in der letzten spalte zu self02/sh fehlen diverse register.
du hast noch kein "set getConfig" ausgeführt?
Jetzt sollte es passen
No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          downDim         jmpToTarget     upDim           jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOn         
DimJtDlyOn             dlyOff          dlyOff          rampOn          rampOn         
DimJtOff               dlyOff          dlyOff          dlyOn           dlyOn           
DimJtOn                dlyOff          dlyOff          rampOn          rampOn         
DimJtRampOff           off             off             rampOn          rampOn         
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  0               0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              on              off             on              off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            on              on              on              on             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  0               0               0               0               
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  10              10              10              10             
OnTime            [s]  1               unused          unused          unused         
OnTimeMode             minimal         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  5               5               5               5               



Zitat von: frank am 03 April 2020, 15:49:56
5. damit der toggle zwischen 100 und 5 funktioniert musst du nun den parameter minLevel des templates ändern. dazu gibt es jetzt für jeden parameter des templates ein set tplPara... befehl. also entsprechend setzen.
also so?
set Licht_Wohnzimmer_4 tplPara001_self01_short_toggIeMaxMIn_dimmer_minLevel 5


Zitat von: frank am 03 April 2020, 15:49:56
6. mit set tpl_self01 switchToOffLevel_dimmer_short weist du dem anderen taster das nächste template zum ausschalten zu.
in der set liste sind anschliessend 2 weitere tplPara... befehle für diese templatezuweisung. hier brauchst du aber nichts ändern.
Warum brauche ich insgesamt 3 Templates, zusätzlich switchToOffLevel_dimmer_short und switchToOffLevel_dimmer_long? Ich möchte ja nur das runterdimmen, also 1 self ändern. Und bei tplDel soll es auch nur 2 geben.


Zitat von: frank am 03 April 2020, 15:49:56
hminfo:

die datei mit den konfigurationen sollte im fhem ordner liegen. also zb opt/fhem. es gibt in hminfo auch attribute für einen namen und ordner. steht das nicht im wiki?

batterie meldung wird schon noch kommen, falls du devices mit batterien hast.
Hab das im falschen Device gemacht.
Edit: Das muss in Licht_Wohnimmer_4 gemacht werden und nicht in hminfo. Im wiki sehe ich dazu nichts, aber in der commandref


Mit loadConfig kann ich dann das Backup wiederherstellen?
#======== store device data:HM_530147 === from: 2020-04-03 16:20:34
#---      entity:HM_530147
setreading HM_530147 D-firmware 2.9
setreading HM_530147 D-serialNr NEQ1802311
setreading HM_530147 .D-devInfo 110100
setreading HM_530147 .D-stc 20
set HM_530147 regBulk .RegL_00.  00:00 02:81 0A:68 0B:73 0C:67 15:FF 18:00 8A:42 #2020-04-01 23:16:18
#     timestamp of the readings for reference
#        2020-04-01 23:16:18 :.RegL_00.
#---      entity:HM_530147_Dim_V_01
# Peer Names:self01,self02,
set HM_530147_Dim_V_01 peerBulk 00000000,53014701,53014702,#2020-04-01 23:16:21
set HM_530147_Dim_V_01 regBulk .RegL_01.  00:00 08:00 30:06 32:50 33:64 34:4B 35:50 56:00 57:24 59:00 #2020-04-01 23:16:21
set HM_530147_Dim_V_01 regBulk .RegL_03.self01  00:00 01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:00 0B:44 0C:54 0D:64 0E:20 0F:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81$
set HM_530147_Dim_V_01 regBulk .RegL_03.self02  00:00 01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:00 0B:12 0C:22 0D:23 0E:20 0F:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81$
#     timestamp of the readings for reference
#        self01,self02, :peerList
#        2020-04-01 23:16:21 :.RegL_01.
#        2020-04-01 23:16:29 :.RegL_03.self01
#        2020-04-01 23:16:31 :.RegL_03.self02
#---      entity:HM_530147_Dim_V_02
# Peer Names:self01,self02,
set HM_530147_Dim_V_02 peerBulk 00000000,53014701,53014702,#2020-04-01 23:16:23
set HM_530147_Dim_V_02 regBulk .RegL_01.  00:00 08:00 30:06 32:50 33:64 34:4B 35:50 56:00 57:24 59:00 #2020-04-01 23:16:22
set HM_530147_Dim_V_02 regBulk .RegL_03.self01  00:00 01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:00 0B:44 0C:54 0D:64 0E:20 0F:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81$
set HM_530147_Dim_V_02 regBulk .RegL_03.self02  00:00 01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:00 0B:12 0C:22 0D:23 0E:20 0F:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81$
#     timestamp of the readings for reference
#        self01,self02, :peerList
#        2020-04-01 23:16:22 :.RegL_01.
#        2020-04-01 23:16:33 :.RegL_03.self01
#        2020-04-01 23:16:35 :.RegL_03.self02
#---      entity:Licht_Wohnzimmer_4
# Peer Names:self01,self02,
set Licht_Wohnzimmer_4 peerBulk 00000000,53014701,53014702,#2020-04-01 23:16:20
set Licht_Wohnzimmer_4 regBulk .RegL_01.  00:00 08:00 30:06 32:50 33:64 34:4B 35:50 56:00 57:24 59:01 #2020-04-01 23:16:19
set Licht_Wohnzimmer_4 regBulk .RegL_03.self01  00:00 01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:01 0B:44 0C:54 0D:64 0E:20 0F:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81$
set Licht_Wohnzimmer_4 regBulk .RegL_03.self02  00:00 10:14 11:C8 12:0A 13:05 14:05 15:00 16:C8 17:0A 18:0A 19:04 1A:04 26:00 27:14 28:52 29:63 81:00 82:00 83:00 84:32 85:64 86:00 87:FF 88:00 89:FF 8A:24 8B:12 8C:22 8D:23 8E:20 8F:00 90$
#     timestamp of the readings for reference
#        self01,self02, :peerList
#        2020-04-01 23:16:19 :.RegL_01.
#        2020-04-01 23:16:25 :.RegL_03.self01
#        2020-04-01 23:16:27 :.RegL_03.self02
======= finished ===



Edit: Ich habe das "Backup" mit der jetzigen Version verglichen. Abgesehen von der Uhrzeit sind nur die Wertein .RegL_03.self02 dazugekommen
01:00 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:01 0B:12 0C:22 0D:23 0E:20 0F:00
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 03 April 2020, 17:35:38
ZitatWarum brauche ich insgesamt 3 Templates
#3 ist für self02_short gedacht, falls du wieder das alte verhalten haben willst.

da ich generische templates gebaut habe, gibt es automatisch short und long. die musst du ja nicht benutzen, sie sind aber trotzdem in fhem. tut ja nicht weh.  :)
vielleicht möchte jemand die funktion für long, jeder wie er mag.

tplDel bedeutet nicht, das template aus fhem zu löschen. es wird nur die zuweisung zum device/peer aufgehoben (unassigned). du hast nur 2 zuweisungen. wenn du an einem taster ein anderes template zuweisen möchtest als das aktuelle, dann erst das alte unassignen und danach das neue setzen.

templates werden in hminfo gelöscht.


du musst nicht ängstlich sein.
einfach mal mutig was ausprobieren.
der parameterbefehl ist genau richtig. kannste später auch noch mal ändern.
oder die ramptime von einem level zum anderen mal ändern.


loadconfig habe ich noch nicht gemacht. 
die datei ist ja erstmal nur für den notfall.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 04 April 2020, 01:41:59
Zitat von: frank am 03 April 2020, 17:35:38
#3 ist für self02_short gedacht, falls du wieder das alte verhalten haben willst.
Ist das nicht das gleiche wie tplDel? Dort wird auch die Zuweisung getrennt und auf den default Wert zurückgesetzt?


Zitat von: frank am 03 April 2020, 15:49:56
5. damit der toggle zwischen 100 und 5 funktioniert musst du nun den parameter minLevel des templates ändern. dazu gibt es jetzt für jeden parameter des templates ein set tplPara... befehl. also entsprechend setzen.
Wo finde ich tplPara? Wie passe ich das an und in welchem Gerät?
Ich sehe in hminfo templateSet. So?
set hminfo templateSet Licht_Wohnzimmer_4 toggleMaxMin_dimmer DimMinLvl:long 5


Zitat von: frank am 03 April 2020, 15:49:56
6. mit set tpl_self01 switchToOffLevel_dimmer_short weist du dem anderen taster das nächste template zum ausschalten zu.
in der set liste sind anschliessend 2 weitere tplPara... befehle für diese templatezuweisung. hier brauchst du aber nichts ändern.
Muss ich das wirklich ändern? Da ändert sich ja nichts.


Zitat von: frank am 03 April 2020, 15:49:56
7. fertig
um die templatezuweisungen zu entfernen (unassign) gibt es in der set liste nun tplDel mit 2 optionen für die 2 zugewiesenen templates.
wenn du die einstellungen beibehalten willst, solltest du die zuweisungen nicht löschen damit hminfo die einstellungen überwachen kann.
Muss hminfo das zwingend überwachen? Ich vermute die config wird auf das Homematic System übertragen und funktioniert auch ohne fhem.


Ich probiere das morgen mal aus.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 04 April 2020, 10:51:15
ZitatIch probiere das morgen mal aus.
du wirst es nicht bereuen.  8)

die vielzahl der befehle, teilweise verwirrende befehlsnamen, auch noch über 3 module verteilt, hat mich anfänglich ziehmlich abgeschreckt. dabei ist das konzept der templates letztendlich "verblüffend" einfach.

wenn man weiss, welches template das gewünschte verhalten ermöglicht, muss man es nur zuweisen und schon ist man fertig.

das webui könnte helfen, die "einfachheit" der templates zu entdecken.
ausserdem kann man damit sehr einfach eigene templates erstellen, wodurch templates so richtig zum erlebnis werden.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 04 April 2020, 19:10:05
Zitat von: frank am 03 April 2020, 15:49:56
5. damit der toggle zwischen 100 und 5 funktioniert musst du nun den parameter minLevel des templates ändern. dazu gibt es jetzt für jeden parameter des templates ein set tplPara... befehl. also entsprechend setzen.


Ich habe die hm.js nun implementiert.
self2 ist toggleMaxMin_dimmer_short zugewiesen. Dort finde ich jedoch nur p1minLevel und nicht DimMinLvl.

Müsste ich nicht den Wert von self01 ändern, dieser ist schließlich für das runterdimmen, self02 für hochdimmen. In deinen Schritten steht, mal solle minLevel von self02 ändern.

Macht es nicht Sinn, mir ein eigenes Template zu erstellen, anstatt deines zu nehmen und dann den Befehl zu setzen?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 04 April 2020, 19:56:21
meine templates haben nichts mit ottos vorschlag zu tun.
wenn du meine anleitung mit meinen templates umsetzt, funktioniert dein dimmer so, wie du es in post 1 gewünscht hast.

was hindert dich, es mal aus zu probieren?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 04 April 2020, 20:11:41
Ich habe das jetzt so umgesetzt. Wenn ich jetzt den Wert nicht von 5 haben möchte, sondern von 20, was müsste ich ändern?

Edit: getestet habe ich es mit p1   minLevel 20.
Wie zu sehen ist, habe ich runtergedimmt und pct ist 5

Internals:
   DEF        53014701
   FUUID      5c7197ee-f33f-50ef-d504-00939d7172be358e
   FVERSION   10_CUL_HM.pm:0.210930/2020-02-02
   NAME       Licht_Wohnzimmer_4
   NOTIFYDEV  global
   NR         779
   NTFY_ORDER 50-Licht_Wohnzimmer_4
   STATE      5
   TYPE       CUL_HM
   chanNo     01
   device     HM_530147
   peerList   self01,self02,
   READINGS:
     2020-04-04 18:57:07   CommandAccepted yes
     2017-12-30 17:51:38   R-fuseDelay     1 s
     2017-12-30 17:51:38   R-logicCombination or
     2017-12-30 17:51:38   R-ovrTempLvl    80 C
     2017-12-30 17:51:38   R-powerUpAction off
     2017-12-30 17:51:38   R-redLvl        40 %
     2017-12-30 17:51:38   R-redTempLvl    75 C
     2020-04-04 18:50:06   R-self01-lgActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-lgCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-lgCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-lgCtOff geLo
     2020-04-01 23:16:25   R-self01-lgCtOn geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOff geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOn geLo
     2020-04-01 23:16:25   R-self01-lgCtValHi 100
     2020-04-01 23:16:25   R-self01-lgCtValLo 50
     2020-04-01 23:16:25   R-self01-lgDimElsActionType off
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimElsOnTimeMd absolut
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOn rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOn rampOff
     2020-04-01 23:16:25   R-self01-lgDimJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimMaxLvl 100 %
     2020-04-04 18:50:06   R-self01-lgDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-lgDimStep 5 %
     2020-04-04 18:50:06   R-self01-lgMultiExec off
     2020-04-01 23:16:25   R-self01-lgOffDly 0 s
     2020-04-04 18:50:06   R-self01-lgOffDlyBlink off
     2020-04-01 23:16:25   R-self01-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyStep 5 %
     2020-04-04 18:50:06   R-self01-lgOffLevel 5 %
     2020-04-01 23:16:25   R-self01-lgOffTime unused
     2020-04-04 18:50:06   R-self01-lgOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgOnDly 0 s
     2020-04-04 18:50:06   R-self01-lgOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-lgOnLevel 100 %
     2020-04-04 18:50:06   R-self01-lgOnLvlPrio high
     2020-04-04 18:50:06   R-self01-lgOnMinLevel 5 %
     2020-04-04 18:50:06   R-self01-lgOnTime unused
     2020-04-04 18:50:06   R-self01-lgOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampOnTime 0.5 s
     2020-04-04 18:50:06   R-self01-lgRampSstep 0 %
     2020-04-01 23:16:25   R-self01-shActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-shCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-shCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-shCtOff geLo
     2020-04-01 23:16:25   R-self01-shCtOn geLo
     2020-04-01 23:16:25   R-self01-shCtRampOff geLo
     2020-04-01 23:16:25   R-self01-shCtRampOn geLo
     2020-04-01 23:16:25   R-self01-shCtValHi 100
     2020-04-01 23:16:25   R-self01-shCtValLo 50
     2020-04-01 23:16:25   R-self01-shDimElsActionType off
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-shDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimElsOnTimeMd absolut
     2020-04-04 18:55:10   R-self01-shDimJtDlyOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtDlyOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtRampOff off
     2020-04-04 18:55:10   R-self01-shDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-shDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-shDimStep 5 %
     2020-04-01 23:16:25   R-self01-shMultiExec off
     2020-04-01 23:16:25   R-self01-shOffDly 0 s
     2020-04-03 16:46:09   R-self01-shOffDlyBlink off
     2020-04-01 23:16:25   R-self01-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-shOffLevel 0 %
     2020-04-01 23:16:25   R-self01-shOffTime unused
     2020-04-01 23:16:25   R-self01-shOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-shOnDly 0 s
     2020-04-03 16:46:09   R-self01-shOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-shOnLevel 100 %
     2020-04-03 16:46:09   R-self01-shOnLvlPrio high
     2020-04-03 16:46:09   R-self01-shOnMinLevel 0 %
     2020-04-01 23:16:25   R-self01-shOnTime unused
     2020-04-01 23:16:25   R-self01-shOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-shRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampOnTime 0.5 s
     2020-04-03 16:46:09   R-self01-shRampSstep 0 %
     2020-04-01 23:16:27   R-self02-lgActionTypeDim upDim
     2020-04-01 23:16:27   R-self02-lgCtDlyOff geLo
     2020-04-01 23:16:27   R-self02-lgCtDlyOn geLo
     2020-04-01 23:16:27   R-self02-lgCtOff geLo
     2020-04-01 23:16:27   R-self02-lgCtOn geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOff geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOn geLo
     2020-04-01 23:16:27   R-self02-lgCtValHi 100
     2020-04-01 23:16:27   R-self02-lgCtValLo 50
     2020-04-01 23:16:27   R-self02-lgDimElsActionType off
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimJtOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-lgDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-lgDimStep 5 %
     2020-04-01 23:16:27   R-self02-lgMultiExec on
     2020-04-01 23:16:27   R-self02-lgOffDly 0 s
     2020-04-01 23:16:27   R-self02-lgOffDlyBlink on
     2020-04-01 23:16:27   R-self02-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-lgOffLevel 0 %
     2020-04-01 23:16:27   R-self02-lgOffTime unused
     2020-04-01 23:16:27   R-self02-lgOffTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgOnDly 0 s
     2020-04-01 23:16:27   R-self02-lgOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-lgOnLevel 100 %
     2020-04-01 23:16:27   R-self02-lgOnLvlPrio high
     2020-04-01 23:16:27   R-self02-lgOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-lgOnTime unused
     2020-04-01 23:16:27   R-self02-lgOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampSstep 5 %
     2020-04-03 16:23:22   R-self02-shActionTypeDim jmpToTarget
     2020-04-03 16:23:22   R-self02-shCtDlyOff geLo
     2020-04-03 16:23:22   R-self02-shCtDlyOn geLo
     2020-04-03 16:23:22   R-self02-shCtOff geLo
     2020-04-03 16:23:22   R-self02-shCtOn geLo
     2020-04-03 16:23:22   R-self02-shCtRampOff geLo
     2020-04-03 16:23:22   R-self02-shCtRampOn geLo
     2020-04-03 16:23:22   R-self02-shCtValHi 100
     2020-04-03 16:23:22   R-self02-shCtValLo 50
     2020-04-01 23:16:27   R-self02-shDimElsActionType off
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimElsOnTimeMd absolut
     2020-04-04 18:56:01   R-self02-shDimJtDlyOff rampOff
     2020-04-04 18:56:01   R-self02-shDimJtDlyOn rampOn
     2020-04-04 18:56:01   R-self02-shDimJtOff dlyOn
     2020-04-04 18:56:01   R-self02-shDimJtOn dlyOff
     2020-04-04 18:56:01   R-self02-shDimJtRampOff off
     2020-04-04 18:56:01   R-self02-shDimJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-shDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-shDimStep 5 %
     2020-04-03 16:23:22   R-self02-shMultiExec off
     2020-04-03 16:23:22   R-self02-shOffDly 0 s
     2020-04-04 18:56:01   R-self02-shOffDlyBlink off
     2020-04-01 23:16:27   R-self02-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyStep 5 %
     2020-04-04 20:18:43   R-self02-shOffLevel 20 %
     2020-04-03 16:23:22   R-self02-shOffTime unused
     2020-04-03 16:23:22   R-self02-shOffTimeMode absolut
     2020-04-03 16:23:22   R-self02-shOnDly 0 s
     2020-04-04 18:56:01   R-self02-shOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-shOnLevel 100 %
     2020-04-04 18:56:01   R-self02-shOnLvlPrio high
     2020-04-04 20:18:43   R-self02-shOnMinLevel 20 %
     2020-04-03 16:23:22   R-self02-shOnTime unused
     2020-04-03 16:23:22   R-self02-shOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-shRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampOnTime 0.5 s
     2020-04-04 18:56:01   R-self02-shRampSstep 0 %
     2020-04-01 23:06:55   R-sign          off
     2017-12-30 17:51:38   R-statusInfoMinDly 2 s
     2017-12-30 17:51:38   R-statusInfoRandom 1 s
     2017-12-30 17:51:38   R-transmitTryMax 6
     2020-04-04 20:09:45   deviceMsg       5 (to Homematic_LAN_Gateway)
     2020-04-04 20:09:45   dim             stop:5
     2020-04-04 20:09:45   level           5
     2017-12-30 17:51:44   levelMissed     desired:100
     2020-04-04 20:09:45   overheat        off
     2020-04-04 20:09:45   overload        off
     2020-04-04 20:09:45   pct             5
     2020-04-04 20:18:45   peerList        self01,self02,
     2020-04-04 20:09:45   phyLevel        5
     2020-04-04 20:09:45   recentStateType info
     2020-04-04 20:09:45   reduced         off
     2020-04-04 20:09:45   state           5
     2020-04-04 20:09:45   timedOn         off
     2020-04-04 18:57:06   trigLast        fhem:02
   helper:
     cfgChkResult No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          jmpToTarget     jmpToTarget     upDim           jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOff         
DimJtDlyOn             rampOff         rampOff         rampOn          rampOn         
DimJtOff               rampOff         rampOff         dlyOn           dlyOn           
DimJtOn                rampOff         rampOff         rampOn          dlyOff         
DimJtRampOff           off             off             rampOn          off             
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  0               0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              off             off             on              off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            off             off             on              off             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  5               0               0               20             
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  5               0               10              20             
OnTime                 unused          unused          unused          unused         
OnTimeMode             absolut         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  0               0               5               0               

     dlvlCmd    ++A0116873675301470201000000
     peerFriend peerSens,peerVirt
     peerIDsRaw ,53014701,53014702,00000000
     peerOpt    3:dimmer
     regLst     1,3p
     tmplChg    1
     dir:
       cur        stop
       rct        down
     expert:
       def        1
       det        1
       raw        0
       tpl        0
     regCollect:
     role:
       chn        1
     shadowReg:
     tmpl:
       self01:short>switchToOffLevel_dimmer 0 0.5
       self02:short>toggleMaxMin_dimmer 100 20 0.5
     vDim:
       idPhy      53014701
       idV2       53014702
       idV3       53014703
   nb:
     cnt        23
Attributes:
   FTUI_at    1
   alexaName  Decken Licht 4 im Wohnzimmer
   expert     1_allReg
   fhem_widget_channels [{"allowed_values":["off","on"],"controlled_attribute":"state"}]
   group      Deckenlicht
   model      HM-LC-DIM1TPBU-FM
   peerIDs    00000000,53014701,53014702,
   room       10_Wohnzimmer,70_Licht,Homekit,alexa
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
   webCmd     statusRequest:toggle:on:off:up:down
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 04 April 2020, 20:35:33
tipp:

im webui kannst du auch ein template en block mehreren device/peer kombinationen zuweisen, parameter setzen oder zuweisungen aufheben.

dazu änderst du in der templateansicht oben rechts das dropdown auf "global usage".
jetzt erscheint eine tabelle, die die "globale" nutzung des templates zeigt.

wenn du die tabelle nach deimen wünschen eingestellt hast, werden alle änderungen durch klick auf use ausgeführt.

so kannst du deine 3 dimmer auf einen streich konfigurieren.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 04 April 2020, 20:41:03
Das habe ich gesehen. Wenn ich maximal runterdimmt ist pct 5. Obwohl in p1minLevel 20 steht. Wie kann ich das ändern?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 04 April 2020, 21:06:36
du willst also beim runterdimmen mit self01/long, dass bei 20% schluss ist, richtig?

dann öffne dass webui über self01, gehe in den expert mode und suche lgDimMinLevel.

ich sehe gerade, dass du das long verhalten von self01 komplett geändert hast. das sieht aus als hättest du dort ein long template zugewiesen.

dann wird das so wahrscheinlich nichts.

ich weiss jetzt nicht mehr, was du genau vor hast.  :)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 04 April 2020, 21:18:47
Ich behaupte mal vorsichtig: nach fest kommt ab :)
Ich meine: nach lgDimMinLevel kommt lgOffLevel - also wenn man runter dimmen will und bei 5 % soll Schluss sein muss man beide setzen. Sonst "fährt er drüber" und das Licht ist aus.

Ansonsten konnte ich nicht mehr folgen ;)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 04 April 2020, 21:32:50
Zitat von: frank am 04 April 2020, 21:06:36
du willst also beim runterdimmen mit self01/long, dass bei 20% schluss ist, richtig?

dann öffne dass webui über self01, gehe in den expert mode und suche lgDimMinLevel.

ich sehe gerade, dass du das long verhalten von self01 komplett geändert hast. das sieht aus als hättest du dort ein long template zugewiesen.

dann wird das so wahrscheinlich nichts.

ich weiss jetzt nicht mehr, was du genau vor hast.  :)

Genau
self01/long auf maximal 20% (für ein anderes Gerät später auf 5)
self01/short auf 0% = aus
self02/long auf 100%
self02/short auf 0%

Wie komme ich in den Expert Mode? In hminfo oder meinem Licht_Wohnzimmer_4?

Ich habe die Templates nochmal neu zugewiesen
self01:short>switchToOffLevel_dimmer
self02:short>toggleMaxMin_dimmer



Internals:
   DEF        53014701
   FUUID      5c7197ee-f33f-50ef-d504-00939d7172be358e
   FVERSION   10_CUL_HM.pm:0.210930/2020-02-02
   NAME       Licht_Wohnzimmer_4
   NOTIFYDEV  global
   NR         779
   NTFY_ORDER 50-Licht_Wohnzimmer_4
   STATE      5
   TYPE       CUL_HM
   chanNo     01
   device     HM_530147
   peerList   self01,self02,
   READINGS:
     2020-04-04 18:57:07   CommandAccepted yes
     2017-12-30 17:51:38   R-fuseDelay     1 s
     2017-12-30 17:51:38   R-logicCombination or
     2017-12-30 17:51:38   R-ovrTempLvl    80 C
     2017-12-30 17:51:38   R-powerUpAction off
     2017-12-30 17:51:38   R-redLvl        40 %
     2017-12-30 17:51:38   R-redTempLvl    75 C
     2020-04-04 18:50:06   R-self01-lgActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-lgCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-lgCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-lgCtOff geLo
     2020-04-01 23:16:25   R-self01-lgCtOn geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOff geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOn geLo
     2020-04-01 23:16:25   R-self01-lgCtValHi 100
     2020-04-01 23:16:25   R-self01-lgCtValLo 50
     2020-04-01 23:16:25   R-self01-lgDimElsActionType off
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimElsOnTimeMd absolut
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOn rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOn rampOff
     2020-04-01 23:16:25   R-self01-lgDimJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimMaxLvl 100 %
     2020-04-04 18:50:06   R-self01-lgDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-lgDimStep 5 %
     2020-04-04 18:50:06   R-self01-lgMultiExec off
     2020-04-01 23:16:25   R-self01-lgOffDly 0 s
     2020-04-04 18:50:06   R-self01-lgOffDlyBlink off
     2020-04-01 23:16:25   R-self01-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyStep 5 %
     2020-04-04 18:50:06   R-self01-lgOffLevel 5 %
     2020-04-01 23:16:25   R-self01-lgOffTime unused
     2020-04-04 18:50:06   R-self01-lgOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgOnDly 0 s
     2020-04-04 18:50:06   R-self01-lgOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-lgOnLevel 100 %
     2020-04-04 18:50:06   R-self01-lgOnLvlPrio high
     2020-04-04 18:50:06   R-self01-lgOnMinLevel 5 %
     2020-04-04 18:50:06   R-self01-lgOnTime unused
     2020-04-04 18:50:06   R-self01-lgOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampOnTime 0.5 s
     2020-04-04 18:50:06   R-self01-lgRampSstep 0 %
     2020-04-01 23:16:25   R-self01-shActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-shCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-shCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-shCtOff geLo
     2020-04-01 23:16:25   R-self01-shCtOn geLo
     2020-04-01 23:16:25   R-self01-shCtRampOff geLo
     2020-04-01 23:16:25   R-self01-shCtRampOn geLo
     2020-04-01 23:16:25   R-self01-shCtValHi 100
     2020-04-01 23:16:25   R-self01-shCtValLo 50
     2020-04-01 23:16:25   R-self01-shDimElsActionType off
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-shDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimElsOnTimeMd absolut
     2020-04-04 18:55:10   R-self01-shDimJtDlyOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtDlyOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtRampOff off
     2020-04-04 18:55:10   R-self01-shDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-shDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-shDimStep 5 %
     2020-04-01 23:16:25   R-self01-shMultiExec off
     2020-04-01 23:16:25   R-self01-shOffDly 0 s
     2020-04-03 16:46:09   R-self01-shOffDlyBlink off
     2020-04-01 23:16:25   R-self01-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-shOffLevel 0 %
     2020-04-01 23:16:25   R-self01-shOffTime unused
     2020-04-01 23:16:25   R-self01-shOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-shOnDly 0 s
     2020-04-03 16:46:09   R-self01-shOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-shOnLevel 100 %
     2020-04-03 16:46:09   R-self01-shOnLvlPrio high
     2020-04-03 16:46:09   R-self01-shOnMinLevel 0 %
     2020-04-01 23:16:25   R-self01-shOnTime unused
     2020-04-01 23:16:25   R-self01-shOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-shRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampOnTime 0.5 s
     2020-04-03 16:46:09   R-self01-shRampSstep 0 %
     2020-04-01 23:16:27   R-self02-lgActionTypeDim upDim
     2020-04-01 23:16:27   R-self02-lgCtDlyOff geLo
     2020-04-01 23:16:27   R-self02-lgCtDlyOn geLo
     2020-04-01 23:16:27   R-self02-lgCtOff geLo
     2020-04-01 23:16:27   R-self02-lgCtOn geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOff geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOn geLo
     2020-04-01 23:16:27   R-self02-lgCtValHi 100
     2020-04-01 23:16:27   R-self02-lgCtValLo 50
     2020-04-01 23:16:27   R-self02-lgDimElsActionType off
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimJtOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-lgDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-lgDimStep 5 %
     2020-04-01 23:16:27   R-self02-lgMultiExec on
     2020-04-01 23:16:27   R-self02-lgOffDly 0 s
     2020-04-01 23:16:27   R-self02-lgOffDlyBlink on
     2020-04-01 23:16:27   R-self02-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-lgOffLevel 0 %
     2020-04-01 23:16:27   R-self02-lgOffTime unused
     2020-04-01 23:16:27   R-self02-lgOffTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgOnDly 0 s
     2020-04-01 23:16:27   R-self02-lgOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-lgOnLevel 100 %
     2020-04-01 23:16:27   R-self02-lgOnLvlPrio high
     2020-04-01 23:16:27   R-self02-lgOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-lgOnTime unused
     2020-04-01 23:16:27   R-self02-lgOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampSstep 5 %
     2020-04-03 16:23:22   R-self02-shActionTypeDim jmpToTarget
     2020-04-03 16:23:22   R-self02-shCtDlyOff geLo
     2020-04-03 16:23:22   R-self02-shCtDlyOn geLo
     2020-04-03 16:23:22   R-self02-shCtOff geLo
     2020-04-03 16:23:22   R-self02-shCtOn geLo
     2020-04-03 16:23:22   R-self02-shCtRampOff geLo
     2020-04-03 16:23:22   R-self02-shCtRampOn geLo
     2020-04-03 16:23:22   R-self02-shCtValHi 100
     2020-04-03 16:23:22   R-self02-shCtValLo 50
     2020-04-01 23:16:27   R-self02-shDimElsActionType off
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimElsOnTimeMd absolut
     2020-04-04 18:56:01   R-self02-shDimJtDlyOff rampOff
     2020-04-04 18:56:01   R-self02-shDimJtDlyOn rampOn
     2020-04-04 18:56:01   R-self02-shDimJtOff dlyOn
     2020-04-04 18:56:01   R-self02-shDimJtOn dlyOff
     2020-04-04 18:56:01   R-self02-shDimJtRampOff off
     2020-04-04 18:56:01   R-self02-shDimJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-shDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-shDimStep 5 %
     2020-04-03 16:23:22   R-self02-shMultiExec off
     2020-04-03 16:23:22   R-self02-shOffDly 0 s
     2020-04-04 18:56:01   R-self02-shOffDlyBlink off
     2020-04-01 23:16:27   R-self02-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyStep 5 %
     2020-04-04 20:18:43   R-self02-shOffLevel 20 %
     2020-04-03 16:23:22   R-self02-shOffTime unused
     2020-04-03 16:23:22   R-self02-shOffTimeMode absolut
     2020-04-03 16:23:22   R-self02-shOnDly 0 s
     2020-04-04 18:56:01   R-self02-shOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-shOnLevel 100 %
     2020-04-04 18:56:01   R-self02-shOnLvlPrio high
     2020-04-04 20:18:43   R-self02-shOnMinLevel 20 %
     2020-04-03 16:23:22   R-self02-shOnTime unused
     2020-04-03 16:23:22   R-self02-shOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-shRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampOnTime 0.5 s
     2020-04-04 18:56:01   R-self02-shRampSstep 0 %
     2020-04-01 23:06:55   R-sign          off
     2017-12-30 17:51:38   R-statusInfoMinDly 2 s
     2017-12-30 17:51:38   R-statusInfoRandom 1 s
     2017-12-30 17:51:38   R-transmitTryMax 6
     2020-04-04 20:38:59   deviceMsg       5 (to Homematic_LAN_Gateway)
     2020-04-04 20:38:59   dim             stop:5
     2020-04-04 20:38:59   level           5
     2017-12-30 17:51:44   levelMissed     desired:100
     2020-04-04 20:38:59   overheat        off
     2020-04-04 20:38:59   overload        off
     2020-04-04 20:38:59   pct             5
     2020-04-04 21:30:16   peerList        self01,self02,
     2020-04-04 20:38:59   phyLevel        5
     2020-04-04 20:38:59   recentStateType info
     2020-04-04 20:38:59   reduced         off
     2020-04-04 20:38:59   state           5
     2020-04-04 20:38:59   timedOn         off
     2020-04-04 18:57:06   trigLast        fhem:02
   helper:
     cfgChkResult No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          jmpToTarget     jmpToTarget     upDim           jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOff         
DimJtDlyOn             rampOff         rampOff         rampOn          rampOn         
DimJtOff               rampOff         rampOff         dlyOn           dlyOn           
DimJtOn                rampOff         rampOff         rampOn          dlyOff         
DimJtRampOff           off             off             rampOn          off             
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  0               0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              off             off             on              off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            off             off             on              off             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  5               0               0               20             
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  5               0               10              20             
OnTime                 unused          unused          unused          unused         
OnTimeMode             absolut         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  0               0               5               0               

     dlvlCmd    ++A0116873675301470201000000
     peerFriend peerSens,peerVirt
     peerIDsRaw ,53014701,53014702,00000000
     peerOpt    3:dimmer
     regLst     1,3p
     tmplChg    1
     dir:
       cur        stop
       rct        down
     expert:
       def        1
       det        1
       raw        0
       tpl        0
     regCollect:
     role:
       chn        1
     shadowReg:
     tmpl:
       self01:short>switchToOffLevel_dimmer 0 0.5
       self02:short>toggleMaxMin_dimmer 100 20 0.5
     vDim:
       idPhy      53014701
       idV2       53014702
       idV3       53014703
   nb:
     cnt        27
Attributes:
   FTUI_at    1
   alexaName  Decken Licht 4 im Wohnzimmer
   expert     1_allReg
   fhem_widget_channels [{"allowed_values":["off","on"],"controlled_attribute":"state"}]
   group      Deckenlicht
   model      HM-LC-DIM1TPBU-FM
   peerIDs    00000000,53014701,53014702,
   room       10_Wohnzimmer,70_Licht,Homekit,alexa
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
   webCmd     statusRequest:toggle:on:off:up:down
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 05 April 2020, 00:51:21
Zitat von: Otto123 am 04 April 2020, 21:18:47
Ich behaupte mal vorsichtig: nach fest kommt ab :)
Ich meine: nach lgDimMinLevel kommt lgOffLevel - also wenn man runter dimmen will und bei 5 % soll Schluss sein muss man beide setzen. Sonst "fährt er drüber" und das Licht ist aus.

Ansonsten konnte ich nicht mehr folgen ;)
In dem register kann ich lgDimMinLvl nicht setzen, ist ausgegraut.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: C_hris am 05 April 2020, 07:21:20
Also bei mir ist der Knoten auch noch nicht geplatzt.

Hängen die Devices
...V_01
...V_02

und diese Switches

Self01
Self02

zusammen oder wie funktioniert das alles?

VG,
Chris
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 05 April 2020, 09:47:28
@twart016
im webui dropdown oben links gibt es expertmode. nur in dieser ansicht kann man direkt register ändern.

also ändern bei short01:
lgActionTypeDim=dimDown
lgDimMinLevel
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 05 April 2020, 10:54:51
Zitat von: C_hris am 05 April 2020, 07:21:20
Also bei mir ist der Knoten auch noch nicht geplatzt.

Hängen die Devices
...V_01
...V_02

und diese Switches

Self01
Self02

zusammen oder wie funktioniert das alles?

VG,
Chris
Hallo Chris,

nein, dass hat nur insofern etwas miteinander zu tun, dass es in einem Device ist. Ich glaube deine Frage ist vielleicht durch einmal lesen des Abschnittes Homematic hier ganz gut zu erklären.
https://fhem.de/Heimautomatisierung-mit-fhem.pdf

Gruß Otto
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 05 April 2020, 12:44:07
Zitat von: frank am 05 April 2020, 09:47:28
@twart016
im webui dropdown oben links gibt es expertmode. nur in dieser ansicht kann man direkt register ändern.

also ändern bei short01:
lgActionTypeDim=dimDown
lgDimMinLevel

Ich bin jetzt auf self01 und links oben auf expert mode. Wo ist da short01? Möchte ich  nicht long ändern?

lgActionTypeDim ist aktuell jmpToTarget. Das muss ich in dimDown ändern?
lgDimMinLvl gibt es (nicht lgDimMinLevel), ist aber auch dort ausgegraut.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 05 April 2020, 13:34:56
hm..., irgend wie anstrengend.
warum fehlt dir der mut einfach mal was ein zu stellen? du kannst doch sofort wieder ändern? und nach einem reset ist alles wieder neu.

ich meinte natürlich self01. short01 gibt es ja gar nicht.
schreibfehler schenke ich dir.  :)

ZitatlgDimMinLvl gibt es (nicht lgDimMinLevel), ist aber auch dort ausgegraut.
verstehe und kenne ich nicht.
du kannst nichts eingeben, oder was?
wenn nein, zeig ein screenshot.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 05 April 2020, 20:53:49
Zitat von: frank am 05 April 2020, 13:34:56
hm..., irgend wie anstrengend.
warum fehlt dir der mut einfach mal was ein zu stellen? du kannst doch sofort wieder ändern? und nach einem reset ist alles wieder neu.

ich meinte natürlich self01. short01 gibt es ja gar nicht.
schreibfehler schenke ich dir.  :)
verstehe und kenne ich nicht.
du kannst nichts eingeben, oder was?
wenn nein, zeig ein screenshot.

Wenn ich nun an mache (short nach oben) wird auf 100 gestellt. Drücke ich nun nochmal short nach oben, wird auf 20 gedimmt. Zumindest das funktioniert, auch wenn mit einer anderen Methode. Wenn ich nun long nach unten dimmen möchte, passiert nichts. short nach unten ist wie gewünscht 0.
Internals:
   DEF        53014701
   FUUID      5c7197ee-f33f-50ef-d504-00939d7172be358e
   FVERSION   10_CUL_HM.pm:0.210930/2020-02-02
   NAME       Licht_Wohnzimmer_4
   NOTIFYDEV  global
   NR         779
   NTFY_ORDER 50-Licht_Wohnzimmer_4
   STATE      20
   TYPE       CUL_HM
   chanNo     01
   device     HM_530147
   peerList   self01,self02,
   READINGS:
     2020-04-05 13:35:24   CommandAccepted yes
     2017-12-30 17:51:38   R-fuseDelay     1 s
     2017-12-30 17:51:38   R-logicCombination or
     2017-12-30 17:51:38   R-ovrTempLvl    80 C
     2017-12-30 17:51:38   R-powerUpAction off
     2017-12-30 17:51:38   R-redLvl        40 %
     2017-12-30 17:51:38   R-redTempLvl    75 C
     2020-04-05 20:44:42   R-self01-lgActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-lgCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-lgCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-lgCtOff geLo
     2020-04-01 23:16:25   R-self01-lgCtOn geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOff geLo
     2020-04-01 23:16:25   R-self01-lgCtRampOn geLo
     2020-04-01 23:16:25   R-self01-lgCtValHi 100
     2020-04-01 23:16:25   R-self01-lgCtValLo 50
     2020-04-01 23:16:25   R-self01-lgDimElsActionType off
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-lgDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-lgDimElsOnTimeMd absolut
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtDlyOn rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOff rampOff
     2020-04-04 18:50:06   R-self01-lgDimJtOn rampOff
     2020-04-01 23:16:25   R-self01-lgDimJtRampOff off
     2020-04-01 23:16:25   R-self01-lgDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-lgDimMaxLvl 100 %
     2020-04-05 20:43:18   R-self01-lgDimMinLvl 20 %
     2020-04-01 23:16:25   R-self01-lgDimStep 5 %
     2020-04-05 20:44:42   R-self01-lgMultiExec off
     2020-04-01 23:16:25   R-self01-lgOffDly 0 s
     2020-04-04 18:50:06   R-self01-lgOffDlyBlink off
     2020-04-01 23:16:25   R-self01-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-lgOffDlyStep 5 %
     2020-04-05 20:47:54   R-self01-lgOffLevel 0 %
     2020-04-01 23:16:25   R-self01-lgOffTime unused
     2020-04-05 20:44:42   R-self01-lgOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgOnDly 0 s
     2020-04-04 18:50:06   R-self01-lgOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-lgOnLevel 100 %
     2020-04-04 18:50:06   R-self01-lgOnLvlPrio high
     2020-04-04 18:50:06   R-self01-lgOnMinLevel 5 %
     2020-04-04 18:50:06   R-self01-lgOnTime unused
     2020-04-05 20:44:42   R-self01-lgOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-lgRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-lgRampOnTime 0.5 s
     2020-04-04 18:50:06   R-self01-lgRampSstep 0 %
     2020-04-01 23:16:25   R-self01-shActionTypeDim jmpToTarget
     2020-04-01 23:16:25   R-self01-shCtDlyOff geLo
     2020-04-01 23:16:25   R-self01-shCtDlyOn geLo
     2020-04-01 23:16:25   R-self01-shCtOff geLo
     2020-04-01 23:16:25   R-self01-shCtOn geLo
     2020-04-01 23:16:25   R-self01-shCtRampOff geLo
     2020-04-01 23:16:25   R-self01-shCtRampOn geLo
     2020-04-01 23:16:25   R-self01-shCtValHi 100
     2020-04-01 23:16:25   R-self01-shCtValLo 50
     2020-04-01 23:16:25   R-self01-shDimElsActionType off
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:25   R-self01-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOff dlyOn
     2020-04-01 23:16:25   R-self01-shDimElsJtOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOff off
     2020-04-01 23:16:25   R-self01-shDimElsJtRampOn on
     2020-04-01 23:16:25   R-self01-shDimElsOffTimeMd absolut
     2020-04-01 23:16:25   R-self01-shDimElsOnTimeMd absolut
     2020-04-04 18:55:10   R-self01-shDimJtDlyOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtDlyOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOff rampOff
     2020-04-04 18:55:10   R-self01-shDimJtOn rampOff
     2020-04-04 18:55:10   R-self01-shDimJtRampOff off
     2020-04-04 18:55:10   R-self01-shDimJtRampOn dlyOff
     2020-04-01 23:16:25   R-self01-shDimMaxLvl 100 %
     2020-04-01 23:16:25   R-self01-shDimMinLvl 0 %
     2020-04-01 23:16:25   R-self01-shDimStep 5 %
     2020-04-01 23:16:25   R-self01-shMultiExec off
     2020-04-01 23:16:25   R-self01-shOffDly 0 s
     2020-04-03 16:46:09   R-self01-shOffDlyBlink off
     2020-04-01 23:16:25   R-self01-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:25   R-self01-shOffDlyStep 5 %
     2020-04-01 23:16:25   R-self01-shOffLevel 0 %
     2020-04-01 23:16:25   R-self01-shOffTime unused
     2020-04-01 23:16:25   R-self01-shOffTimeMode absolut
     2020-04-01 23:16:25   R-self01-shOnDly 0 s
     2020-04-03 16:46:09   R-self01-shOnDlyMode setToOff
     2020-04-01 23:16:25   R-self01-shOnLevel 100 %
     2020-04-03 16:46:09   R-self01-shOnLvlPrio high
     2020-04-03 16:46:09   R-self01-shOnMinLevel 0 %
     2020-04-01 23:16:25   R-self01-shOnTime unused
     2020-04-01 23:16:25   R-self01-shOnTimeMode absolut
     2020-04-01 23:16:25   R-self01-shRampOffTime 0.5 s
     2020-04-01 23:16:25   R-self01-shRampOnTime 0.5 s
     2020-04-03 16:46:09   R-self01-shRampSstep 0 %
     2020-04-01 23:16:27   R-self02-lgActionTypeDim upDim
     2020-04-01 23:16:27   R-self02-lgCtDlyOff geLo
     2020-04-01 23:16:27   R-self02-lgCtDlyOn geLo
     2020-04-01 23:16:27   R-self02-lgCtOff geLo
     2020-04-01 23:16:27   R-self02-lgCtOn geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOff geLo
     2020-04-01 23:16:27   R-self02-lgCtRampOn geLo
     2020-04-01 23:16:27   R-self02-lgCtValHi 100
     2020-04-01 23:16:27   R-self02-lgCtValLo 50
     2020-04-01 23:16:27   R-self02-lgDimElsActionType off
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-lgDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimElsOnTimeMd absolut
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtOff dlyOn
     2020-04-01 23:16:27   R-self02-lgDimJtOn rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOff rampOn
     2020-04-01 23:16:27   R-self02-lgDimJtRampOn on
     2020-04-01 23:16:27   R-self02-lgDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-lgDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-lgDimStep 5 %
     2020-04-01 23:16:27   R-self02-lgMultiExec on
     2020-04-01 23:16:27   R-self02-lgOffDly 0 s
     2020-04-01 23:16:27   R-self02-lgOffDlyBlink on
     2020-04-01 23:16:27   R-self02-lgOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-lgOffDlyStep 5 %
     2020-04-01 23:16:27   R-self02-lgOffLevel 0 %
     2020-04-01 23:16:27   R-self02-lgOffTime unused
     2020-04-01 23:16:27   R-self02-lgOffTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgOnDly 0 s
     2020-04-01 23:16:27   R-self02-lgOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-lgOnLevel 100 %
     2020-04-01 23:16:27   R-self02-lgOnLvlPrio high
     2020-04-01 23:16:27   R-self02-lgOnMinLevel 10 %
     2020-04-01 23:16:27   R-self02-lgOnTime unused
     2020-04-01 23:16:27   R-self02-lgOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-lgRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampOnTime 0.5 s
     2020-04-01 23:16:27   R-self02-lgRampSstep 5 %
     2020-04-03 16:23:22   R-self02-shActionTypeDim jmpToTarget
     2020-04-03 16:23:22   R-self02-shCtDlyOff geLo
     2020-04-03 16:23:22   R-self02-shCtDlyOn geLo
     2020-04-03 16:23:22   R-self02-shCtOff geLo
     2020-04-03 16:23:22   R-self02-shCtOn geLo
     2020-04-03 16:23:22   R-self02-shCtRampOff geLo
     2020-04-03 16:23:22   R-self02-shCtRampOn geLo
     2020-04-03 16:23:22   R-self02-shCtValHi 100
     2020-04-03 16:23:22   R-self02-shCtValLo 50
     2020-04-01 23:16:27   R-self02-shDimElsActionType off
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOff rampOff
     2020-04-01 23:16:27   R-self02-shDimElsJtDlyOn rampOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOff dlyOn
     2020-04-01 23:16:27   R-self02-shDimElsJtOn dlyOff
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOff off
     2020-04-01 23:16:27   R-self02-shDimElsJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimElsOffTimeMd absolut
     2020-04-01 23:16:27   R-self02-shDimElsOnTimeMd absolut
     2020-04-04 18:56:01   R-self02-shDimJtDlyOff rampOff
     2020-04-04 18:56:01   R-self02-shDimJtDlyOn rampOn
     2020-04-04 18:56:01   R-self02-shDimJtOff dlyOn
     2020-04-04 18:56:01   R-self02-shDimJtOn dlyOff
     2020-04-04 18:56:01   R-self02-shDimJtRampOff off
     2020-04-04 18:56:01   R-self02-shDimJtRampOn on
     2020-04-01 23:16:27   R-self02-shDimMaxLvl 100 %
     2020-04-01 23:16:27   R-self02-shDimMinLvl 0 %
     2020-04-01 23:16:27   R-self02-shDimStep 5 %
     2020-04-03 16:23:22   R-self02-shMultiExec off
     2020-04-03 16:23:22   R-self02-shOffDly 0 s
     2020-04-04 18:56:01   R-self02-shOffDlyBlink off
     2020-04-01 23:16:27   R-self02-shOffDlyNewTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyOldTime 0.4 s
     2020-04-01 23:16:27   R-self02-shOffDlyStep 5 %
     2020-04-04 20:18:43   R-self02-shOffLevel 20 %
     2020-04-03 16:23:22   R-self02-shOffTime unused
     2020-04-03 16:23:22   R-self02-shOffTimeMode absolut
     2020-04-03 16:23:22   R-self02-shOnDly 0 s
     2020-04-04 18:56:01   R-self02-shOnDlyMode setToOff
     2020-04-01 23:16:27   R-self02-shOnLevel 100 %
     2020-04-04 18:56:01   R-self02-shOnLvlPrio high
     2020-04-04 20:18:43   R-self02-shOnMinLevel 20 %
     2020-04-03 16:23:22   R-self02-shOnTime unused
     2020-04-03 16:23:22   R-self02-shOnTimeMode absolut
     2020-04-01 23:16:27   R-self02-shRampOffTime 0.5 s
     2020-04-01 23:16:27   R-self02-shRampOnTime 0.5 s
     2020-04-04 18:56:01   R-self02-shRampSstep 0 %
     2020-04-01 23:06:55   R-sign          off
     2017-12-30 17:51:38   R-statusInfoMinDly 2 s
     2017-12-30 17:51:38   R-statusInfoRandom 1 s
     2017-12-30 17:51:38   R-transmitTryMax 6
     2020-04-05 20:48:29   deviceMsg       20 (to Homematic_LAN_Gateway)
     2020-04-05 20:48:29   dim             stop:20
     2020-04-05 20:48:29   level           20
     2017-12-30 17:51:44   levelMissed     desired:100
     2020-04-05 20:48:29   overheat        off
     2020-04-05 20:48:29   overload        off
     2020-04-05 20:48:29   pct             20
     2020-04-05 20:47:58   peerList        self01,self02,
     2020-04-05 20:48:29   phyLevel        20
     2020-04-05 20:48:29   recentStateType info
     2020-04-05 20:48:29   reduced         off
     2020-04-05 20:48:29   state           20
     2020-04-05 20:48:29   timedOn         off
     2020-04-05 13:35:21   trigLast        fhem:02
   helper:
     cfgChkResult No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          downDim         jmpToTarget     upDim           jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOff         
DimJtDlyOn             rampOff         rampOff         rampOn          rampOn         
DimJtOff               rampOff         rampOff         dlyOn           dlyOn           
DimJtOn                rampOff         rampOff         rampOn          dlyOff         
DimJtRampOff           off             off             rampOn          off             
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  20              0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              off             off             on              off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            off             off             on              off             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  5               0               0               20             
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  5               0               10              20             
OnTime                 unused          unused          unused          unused         
OnTimeMode             absolut         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  0               0               5               0               

     dlvlCmd    ++A0116873675301470201000000
     peerFriend peerSens,peerVirt
     peerIDsRaw ,53014701,53014702,00000000
     peerOpt    3:dimmer
     regLst     1,3p
     tmplChg    1
     dir:
       cur        stop
       rct        down
     expert:
       def        1
       det        1
       raw        0
       tpl        0
     regCollect:
     role:
       chn        1
     shadowReg:
     tmpl:
       self01:short>switchToOffLevel_dimmer 0 0.5
       self02:short>toggleMaxMin_dimmer 100 20 0.5
     vDim:
       idPhy      53014701
       idV2       53014702
       idV3       53014703
   nb:
     cnt        28
Attributes:
   FTUI_at    1
   alexaName  Decken Licht 4 im Wohnzimmer
   expert     1_allReg
   fhem_widget_channels [{"allowed_values":["off","on"],"controlled_attribute":"state"}]
   group      Deckenlicht
   model      HM-LC-DIM1TPBU-FM
   peerIDs    00000000,53014701,53014702,
   room       10_Wohnzimmer,70_Licht,Homekit,alexa
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
   webCmd     statusRequest:toggle:on:off:up:down


Ich habe die Seite nochmal neu geladen. Jetzt kann ich dir Werte auch setzen, davor war es immer: (0)

Wie mache ich den reset der Werte? mit tplDel funktioniert es nicht.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 05 April 2020, 22:11:56
wenn du alles zurücksetzen willst, sollte reset und drüberpairen mit seriennummer am einfachsten sein.

tplDel bedeutet unassign.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 05 April 2020, 22:24:52
Also muss man den kompletten Dimmer neu anlernen mit set hmPairForSec? Ich dachte man kann auf den Anfangsstand zurück.

Wie kann ich es einrichten, dass über long down wieder runtergedimmt wird? Welches Register ist dafür notwendig?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 05 April 2020, 22:37:49
self01/long: alle werte so setzen, wie in deinem 1. regTable.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 05 April 2020, 23:41:25
ZitatWenn ich nun an mache (short nach oben) wird auf 100 gestellt. Drücke ich nun nochmal short nach oben, wird auf 20 gedimmt. Zumindest das funktioniert, auch wenn mit einer anderen Methode. Wenn ich nun long nach unten dimmen möchte, passiert nichts. short nach unten ist wie gewünscht 0.

du bringst mich langsam an den rand der verzweiflung.  ???

wie soll das denn auch funktionieren?
Gestern sollte unbedingt das runterdimmen bei 20 enden.
damit das geschieht, setzt du lgDimMinLvl=20, wie empholen.

und nun beschwerst du dich, dass von 20 nicht weiter runtergedimmt werden kann.

wahnsinn!!!

self01/long macht genau, was du wolltest.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 06 April 2020, 10:43:50
moin,

ich habe mal meinen dimmer resetet, um ein paar templates zu bauen, die das reset verhalten setzen.

für die namen habe ich mir folgendes muster überlegt: "~<model>_<fw>_<channel>_<peer>".
damit sie an das ende der template liste sortiert werden, fangen sie mit "~" an.


HM-LC-DIM1TPBU-FM channel01:

general
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_general 0 "reset register values. " fuseDelay:1 logicCombination:or ovrTempLvl:80 powerUpAction:off redLvl:40 redTempLvl:75 statusInfoMinDly:2 statusInfoRandom:1 transmitTryMax:6

self01
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_self01 0 "reset register values. " lgActionTypeDim:downDim lgCtDlyOff:geLo lgCtDlyOn:geLo lgCtOff:geLo lgCtOn:geLo lgCtRampOff:geLo lgCtRampOn:geLo lgCtValHi:100 lgCtValLo:50 lgDimElsActionType:off lgDimElsJtDlyOff:rampOff lgDimElsJtDlyOn:rampOn lgDimElsJtOff:dlyOn lgDimElsJtOn:dlyOff lgDimElsJtRampOff:off lgDimElsJtRampOn:on lgDimElsOffTimeMd:absolut lgDimElsOnTimeMd:absolut lgDimJtDlyOff:rampOff lgDimJtDlyOn:dlyOff lgDimJtOff:dlyOff lgDimJtOn:dlyOff lgDimJtRampOff:off lgDimJtRampOn:dlyOff lgDimMaxLvl:100 lgDimMinLvl:0 lgDimStep:5 lgMultiExec:on lgOffDly:0 lgOffDlyBlink:on lgOffDlyNewTime:0.4 lgOffDlyOldTime:0.4 lgOffDlyStep:5 lgOffLevel:0 lgOffTime:unused lgOffTimeMode:absolut lgOnDly:0 lgOnDlyMode:setToOff lgOnLevel:100 lgOnLvlPrio:high lgOnMinLevel:10 lgOnTime:1 lgOnTimeMode:minimal lgRampOffTime:0.5 lgRampOnTime:0.5 lgRampSstep:5 shActionTypeDim:jmpToTarget shCtDlyOff:geLo shCtDlyOn:geLo shCtOff:geLo shCtOn:geLo shCtRampOff:geLo shCtRampOn:geLo shCtValHi:100 shCtValLo:50 shDimElsActionType:off shDimElsJtDlyOff:rampOff shDimElsJtDlyOn:rampOn shDimElsJtOff:dlyOn shDimElsJtOn:dlyOff shDimElsJtRampOff:off shDimElsJtRampOn:on shDimElsOffTimeMd:absolut shDimElsOnTimeMd:absolut shDimJtDlyOff:rampOff shDimJtDlyOn:dlyOff shDimJtOff:dlyOff shDimJtOn:dlyOff shDimJtRampOff:off shDimJtRampOn:dlyOff shDimMaxLvl:100 shDimMinLvl:0 shDimStep:5 shMultiExec:off shOffDly:0 shOffDlyBlink:on shOffDlyNewTime:0.4 shOffDlyOldTime:0.4 shOffDlyStep:5 shOffLevel:0 shOffTime:unused shOffTimeMode:absolut shOnDly:0 shOnDlyMode:setToOff shOnLevel:100 shOnLvlPrio:high shOnMinLevel:10 shOnTime:unused shOnTimeMode:absolut shRampOffTime:0.5 shRampOnTime:0.5 shRampSstep:5

self02
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_self02 0 "reset register values. " lgActionTypeDim:upDim lgCtDlyOff:geLo lgCtDlyOn:geLo lgCtOff:geLo lgCtOn:geLo lgCtRampOff:geLo lgCtRampOn:geLo lgCtValHi:100 lgCtValLo:50 lgDimElsActionType:off lgDimElsJtDlyOff:rampOff lgDimElsJtDlyOn:rampOn lgDimElsJtOff:dlyOn lgDimElsJtOn:dlyOff lgDimElsJtRampOff:off lgDimElsJtRampOn:on lgDimElsOffTimeMd:absolut lgDimElsOnTimeMd:absolut lgDimJtDlyOff:rampOn lgDimJtDlyOn:rampOn lgDimJtOff:dlyOn lgDimJtOn:rampOn lgDimJtRampOff:rampOn lgDimJtRampOn:on lgDimMaxLvl:100 lgDimMinLvl:0 lgDimStep:5 lgMultiExec:on lgOffDly:0 lgOffDlyBlink:on lgOffDlyNewTime:0.4 lgOffDlyOldTime:0.4 lgOffDlyStep:5 lgOffLevel:0 lgOffTime:unused lgOffTimeMode:absolut lgOnDly:0 lgOnDlyMode:setToOff lgOnLevel:100 lgOnLvlPrio:high lgOnMinLevel:10 lgOnTime:unused lgOnTimeMode:absolut lgRampOffTime:0.5 lgRampOnTime:0.5 lgRampSstep:5 shActionTypeDim:jmpToTarget shCtDlyOff:geLo shCtDlyOn:geLo shCtOff:geLo shCtOn:geLo shCtRampOff:geLo shCtRampOn:geLo shCtValHi:100 shCtValLo:50 shDimElsActionType:off shDimElsJtDlyOff:rampOff shDimElsJtDlyOn:rampOn shDimElsJtOff:dlyOn shDimElsJtOn:dlyOff shDimElsJtRampOff:off shDimElsJtRampOn:on shDimElsOffTimeMd:absolut shDimElsOnTimeMd:absolut shDimJtDlyOff:rampOn shDimJtDlyOn:rampOn shDimJtOff:dlyOn shDimJtOn:rampOn shDimJtRampOff:rampOn shDimJtRampOn:on shDimMaxLvl:100 shDimMinLvl:0 shDimStep:5 shMultiExec:off shOffDly:0 shOffDlyBlink:on shOffDlyNewTime:0.4 shOffDlyOldTime:0.4 shOffDlyStep:5 shOffLevel:0 shOffTime:unused shOffTimeMode:absolut shOnDly:0 shOnDlyMode:setToOff shOnLevel:100 shOnLvlPrio:high shOnMinLevel:10 shOnTime:unused shOnTimeMode:absolut shRampOffTime:0.5 shRampOnTime:0.5 shRampSstep:5


channel 0,2 und 3 schenke ich mir mal.

vielleicht kann es jemand gebrauchen.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 06 April 2020, 11:43:09
Ich glaube du verstehst mich falsch. Ich möchte dass dimmen nur bis 20 geht, daher lgDimMinLvl. Allerdings kann ich nun nicht mehr zwischen 100 und 20 dimmen. Bleibe ich lange auf self01 passiert trotzdem nichts.

So habe ich es jetzt hinbekommen
- set tpl_self01 switchToOffLevel_dimmer_short
- self01 lgDimMinLvl von 0 auf 20
- self01 OffLevel von 0 auf 20
- self01 OnMinLevel von 0 auf 20
- set getConfig

set tpl_self02 toggleMaxMin_dimmer_short brauche ich für mein Szenario nicht. Oder gibt es noch andere Gründe, warum ich es brauche?

Ich möchte nun noch verhindern, dass self01/short getoggel wird, nur an und self02/short aus. Welche Register benötige ich da wirklich. Wenn ich es richtig sehe wurde das verändert
DimJtDlyOff            rampOff         rampOff         rampOn          rampOff         
DimJtOff               rampOff         rampOff         rampOn          dlyOn           
DimJtOn                rampOff         rampOff         rampOn          dlyOff         
DimJtRampOff           off             off             dlyOn           off             


Ich möchte diese config auf 1 weiteres device ausrollen und eines mit Wert 5 anstatt. Macht es Sinn, dass man in diesem Fall ich mir ein eigenes Template dafür baue? Auch mit dem Gedanken, dass ich meine FHEM Installation bald wohl auf einen anderen Server migrieren muss. Dort ist es vermutlich einfacher nur ein Template zuzuweisen.


Meine jetzige Config:
No regs found for:

Licht_Wohnzimmer_4 type:dimmer -
list:peer register         :value
   1:      fuseDelay        :1 s
   1:      logicCombination :or
   1:      ovrTempLvl       :80 C
   1:      powerUpAction    :off
   1:      redLvl           :40 %
   1:      redTempLvl       :75 C
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          jmpToTarget     jmpToTarget     jmpToTarget     jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOff         
DimJtDlyOn             rampOff         rampOff         rampOn          rampOn         
DimJtOff               rampOff         rampOff         rampOn          dlyOn           
DimJtOn                rampOff         rampOff         rampOn          dlyOff         
DimJtRampOff           off             off             dlyOn           off             
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  100             100             100             100             
DimMinLvl         [%]  20              0               0               0               
DimStep           [%]  5               5               5               5               
MultiExec              off             off             off             off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            off             off             off             off             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  20              0               0               0               
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             100             100             100             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  20              0               0               0               
OnTime                 unused          unused          unused          unused         
OnTimeMode             absolut         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  0               0               0               0               
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 06 April 2020, 12:29:41
ZitatIch glaube du verstehst mich falsch. Ich möchte dass dimmen nur bis 20 geht, daher lgDimMinLvl. Allerdings kann ich nun nicht mehr zwischen 100 und 20 dimmen. Bleibe ich lange auf self01 passiert trotzdem nichts.
ich verstehe dich sehr gut.
und, es funktioniert bei mir sehr gut, wenn die long register ihre original werte behalten, ausser natürlich lgDimMaxLvl und lgDimMinLvl.
du hast allerdings die long register für beide schalter mittlerweile ziehmlich verstellt.


ZitatIch möchte nun noch verhindern, dass self01/short getoggel wird, nur an und self02/short aus.
dafür hatte ich dir bereits 2 templates gebaut. sie heissen:
einschalten: switchToOnLevel_dimmer_short
ausschalten: switchToOffLevel_dimmer_short


ZitatIch möchte diese config auf 1 weiteres device ausrollen und eines mit Wert 5 anstatt. Macht es Sinn, dass man in diesem Fall ich mir ein eigenes Template dafür baue? Auch mit dem Gedanken, dass ich meine FHEM Installation bald wohl auf einen anderen Server migrieren muss. Dort ist es vermutlich einfacher nur ein Template zuzuweisen.
baue ein template mit einem parameter, dass du dann für beide dimmer nutzen kannst.
alle anderen templates aber dann unassignen.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 06 April 2020, 14:31:24
Zitat von: frank am 06 April 2020, 10:43:50
moin,

ich habe mal meinen dimmer resetet, um ein paar templates zu bauen, die das reset verhalten setzen.

für die namen habe ich mir folgendes muster überlegt: "~<model>_<fw>_<channel>_<peer>".
damit sie an das ende der template liste sortiert werden, fangen sie mit "~" an.


HM-LC-DIM1TPBU-FM channel01:

general
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_general 0 "reset register values. " fuseDelay:1 logicCombination:or ovrTempLvl:80 powerUpAction:off redLvl:40 redTempLvl:75 statusInfoMinDly:2 statusInfoRandom:1 transmitTryMax:6

self01
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_self01 0 "reset register values. " lgActionTypeDim:downDim lgCtDlyOff:geLo lgCtDlyOn:geLo lgCtOff:geLo lgCtOn:geLo lgCtRampOff:geLo lgCtRampOn:geLo lgCtValHi:100 lgCtValLo:50 lgDimElsActionType:off lgDimElsJtDlyOff:rampOff lgDimElsJtDlyOn:rampOn lgDimElsJtOff:dlyOn lgDimElsJtOn:dlyOff lgDimElsJtRampOff:off lgDimElsJtRampOn:on lgDimElsOffTimeMd:absolut lgDimElsOnTimeMd:absolut lgDimJtDlyOff:rampOff lgDimJtDlyOn:dlyOff lgDimJtOff:dlyOff lgDimJtOn:dlyOff lgDimJtRampOff:off lgDimJtRampOn:dlyOff lgDimMaxLvl:100 lgDimMinLvl:0 lgDimStep:5 lgMultiExec:on lgOffDly:0 lgOffDlyBlink:on lgOffDlyNewTime:0.4 lgOffDlyOldTime:0.4 lgOffDlyStep:5 lgOffLevel:0 lgOffTime:unused lgOffTimeMode:absolut lgOnDly:0 lgOnDlyMode:setToOff lgOnLevel:100 lgOnLvlPrio:high lgOnMinLevel:10 lgOnTime:1 lgOnTimeMode:minimal lgRampOffTime:0.5 lgRampOnTime:0.5 lgRampSstep:5 shActionTypeDim:jmpToTarget shCtDlyOff:geLo shCtDlyOn:geLo shCtOff:geLo shCtOn:geLo shCtRampOff:geLo shCtRampOn:geLo shCtValHi:100 shCtValLo:50 shDimElsActionType:off shDimElsJtDlyOff:rampOff shDimElsJtDlyOn:rampOn shDimElsJtOff:dlyOn shDimElsJtOn:dlyOff shDimElsJtRampOff:off shDimElsJtRampOn:on shDimElsOffTimeMd:absolut shDimElsOnTimeMd:absolut shDimJtDlyOff:rampOff shDimJtDlyOn:dlyOff shDimJtOff:dlyOff shDimJtOn:dlyOff shDimJtRampOff:off shDimJtRampOn:dlyOff shDimMaxLvl:100 shDimMinLvl:0 shDimStep:5 shMultiExec:off shOffDly:0 shOffDlyBlink:on shOffDlyNewTime:0.4 shOffDlyOldTime:0.4 shOffDlyStep:5 shOffLevel:0 shOffTime:unused shOffTimeMode:absolut shOnDly:0 shOnDlyMode:setToOff shOnLevel:100 shOnLvlPrio:high shOnMinLevel:10 shOnTime:unused shOnTimeMode:absolut shRampOffTime:0.5 shRampOnTime:0.5 shRampSstep:5

self02
set hminfo templateDef ~HM-LC-DIM1TPBU-FM_2.6_01_self02 0 "reset register values. " lgActionTypeDim:upDim lgCtDlyOff:geLo lgCtDlyOn:geLo lgCtOff:geLo lgCtOn:geLo lgCtRampOff:geLo lgCtRampOn:geLo lgCtValHi:100 lgCtValLo:50 lgDimElsActionType:off lgDimElsJtDlyOff:rampOff lgDimElsJtDlyOn:rampOn lgDimElsJtOff:dlyOn lgDimElsJtOn:dlyOff lgDimElsJtRampOff:off lgDimElsJtRampOn:on lgDimElsOffTimeMd:absolut lgDimElsOnTimeMd:absolut lgDimJtDlyOff:rampOn lgDimJtDlyOn:rampOn lgDimJtOff:dlyOn lgDimJtOn:rampOn lgDimJtRampOff:rampOn lgDimJtRampOn:on lgDimMaxLvl:100 lgDimMinLvl:0 lgDimStep:5 lgMultiExec:on lgOffDly:0 lgOffDlyBlink:on lgOffDlyNewTime:0.4 lgOffDlyOldTime:0.4 lgOffDlyStep:5 lgOffLevel:0 lgOffTime:unused lgOffTimeMode:absolut lgOnDly:0 lgOnDlyMode:setToOff lgOnLevel:100 lgOnLvlPrio:high lgOnMinLevel:10 lgOnTime:unused lgOnTimeMode:absolut lgRampOffTime:0.5 lgRampOnTime:0.5 lgRampSstep:5 shActionTypeDim:jmpToTarget shCtDlyOff:geLo shCtDlyOn:geLo shCtOff:geLo shCtOn:geLo shCtRampOff:geLo shCtRampOn:geLo shCtValHi:100 shCtValLo:50 shDimElsActionType:off shDimElsJtDlyOff:rampOff shDimElsJtDlyOn:rampOn shDimElsJtOff:dlyOn shDimElsJtOn:dlyOff shDimElsJtRampOff:off shDimElsJtRampOn:on shDimElsOffTimeMd:absolut shDimElsOnTimeMd:absolut shDimJtDlyOff:rampOn shDimJtDlyOn:rampOn shDimJtOff:dlyOn shDimJtOn:rampOn shDimJtRampOff:rampOn shDimJtRampOn:on shDimMaxLvl:100 shDimMinLvl:0 shDimStep:5 shMultiExec:off shOffDly:0 shOffDlyBlink:on shOffDlyNewTime:0.4 shOffDlyOldTime:0.4 shOffDlyStep:5 shOffLevel:0 shOffTime:unused shOffTimeMode:absolut shOnDly:0 shOnDlyMode:setToOff shOnLevel:100 shOnLvlPrio:high shOnMinLevel:10 shOnTime:unused shOnTimeMode:absolut shRampOffTime:0.5 shRampOnTime:0.5 shRampSstep:5


channel 0,2 und 3 schenke ich mir mal.

vielleicht kann es jemand gebrauchen.

Damit es sauber ist, wollte bei dem Gerät alles nochmal von neu aufbauen und habe die 3 Templates angewandt. Wie kann ich diese wieder löschen?
Edit: hab es. get tplInfo zeigt alle möglichen an.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 06 April 2020, 14:36:58
Zitat von: frank am 06 April 2020, 12:29:41
du hast allerdings die long register für beide schalter mittlerweile ziehmlich verstellt.
habe mit mit deinen neuen Templates zurückgesetzt.

Zitat von: frank am 06 April 2020, 12:29:41
baue ein template mit einem parameter, dass du dann für beide dimmer nutzen kannst.
alle anderen templates aber dann unassignen.
Wie erstellt man das am besten? Gibt es die Möglichkeit die aktuellen Einstellungen als Template zu speichern?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 06 April 2020, 15:04:45
webui -> new template
1. name eintragen
2. infotext eintragen
3. "All On" anklicken, um alle register aus zu wählen
4. beim register für den parameter das grüne on auf p0 einstellen
5. parametername eintragen (neue tabelle unter  infotext)
6. "Define" anklicken und fertig.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 06 April 2020, 16:15:08
die beste lektüre, die ich kenne, zum verständnis der statemschine und vieler register gibt es bei elv nun auch gratis zum download:

https://de.elv.com/homematic-programmieren-aktionsprofile-fuer-aktoren-erarbeiten-203591 (https://de.elv.com/homematic-programmieren-aktionsprofile-fuer-aktoren-erarbeiten-203591)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 07 April 2020, 00:25:38
Zitat von: frank am 06 April 2020, 15:04:45
webui -> new template
1. name eintragen
2. infotext eintragen
3. "All On" anklicken, um alle register aus zu wählen
4. beim register für den parameter das grüne on auf p0 einstellen
5. parametername eintragen (neue tabelle unter  infotext)
6. "Define" anklicken und fertig.

Ich hänge da gerade bei 4. Also in in Spalte 1 nur die Zeile auswählen, wo man haben möchte und von on auf p0 ändern? Oder werden alle Werte mit dem Template dann genauso übertragen?

Bei 5. muss der Parametername eingetragen werden. Ist das egal, wie der lautet oder wird der noch wo verwendet? Der Wert kommt unten aus der Liste und nicht aus der neuen Zeile?

Wo bekomme ich die Codezeile, um das Paramter in hminfo zu definieren? Wie du es hier gemacht hast:
https://forum.fhem.de/index.php/topic,109700.msg1037476.html#msg1037476
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 09:36:25
lese die anleitung im webui thread.
auch mehrmals kann nicht schaden.

du entscheidest, ob du parameter im template nutzen möchtst. parameter erlauben flexible werte.

namen sind natürlich beliebig.
extra für dich, damit du auch morgen noch weisst, wofür du diesen parameter im template benutzt.

code brauchst du nicht. das macht natürlich schon der befehl "define".

einfach machen und ausprobieren.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Pfriemler am 07 April 2020, 11:35:56
Zitat von: frank am 06 April 2020, 16:15:08
... die beste lektüre, die ich kenne ...
... kannte ich noch nicht. Aber gefällt mir auch. Die Bezeichnungen der Register allda stimmen nicht mit den in FHEM überein, können aber mit etwas Phantasie einwandfrei zugeordnet werden.
"X GE COND_VALUE_LO" etwa heißt bei uns schlicht "geLo" ...

Man sollte mal eine Übersetzungstabelle ins Wiki stellen ... (Aufgabe an mich)...
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 07 April 2020, 11:36:56
Zitat von: frank am 07 April 2020, 09:36:25
lese die anleitung im webui thread.
auch mehrmals kann nicht schaden.

du entscheidest, ob du parameter im template nutzen möchtst. parameter erlauben flexible werte.

namen sind natürlich beliebig.
extra für dich, damit du auch morgen noch weisst, wofür du diesen parameter im template benutzt.

code brauchst du nicht. das macht natürlich schon der befehl "define".

einfach machen und ausprobieren.
Damit mit on / off in den Templates stehe ich schon. Was ist der Unterschied von p0 zu on? Du meintest ist soll p0 nehmen.

Wenn ich einen Wert in einem Template ändere, ändern sich dann alle Geräte automatisch, wenn diesem das Template zugewiesen ist?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 12:30:16
1. ein template ohne parameter
dieses template kann für alle enthaltenen register nur feste werte setzen.
also: jedes mal, wenn du dieses template einem device zuweist, werden immer die selben werte den selben registern zugewiesen.
logisch, oder?

2. ein template mit maximal 9 parametern (p0...p8)
wie 1. für alle register, die feste werte haben.
die register, die einen parameter nutzen sollen, werden beim zuweisen des templates nur verändert, wenn du explizit den parameter beim zuweisen des templates veränderst.

also: bei jedem zuweisen des templates wird dir die parameter tabelle gezeigt, um die parameter zu setzen.
wenn du keine werte änderst beim zuweisen, bleiben die werte natürlich unangetastet.
der erste parameter heisst immer p0.


das hast du schon die ganze zeit mit den ersten 3 templates getan. (switchToOnLevel....)

aber du musst keine parameter verwenden.
wenn du es nicht verstehst, oder keine verwendung siehst, lass sie weg und erstelle für jeden taster ein eigenes template mit festen werten.


mehr fällt mir zu dem thema nicht ein.
wenn du einfach mal probieren würdestet, würde sich sicher das meiste von selbest erklären.
lies auch diesen thread noch mal langsam in ruhe durch.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 12:44:07
Zitat von: Pfriemler am 07 April 2020, 11:35:56
... kannte ich noch nicht.

kann ich gar nicht glauben, da es in der bauanleitung zum sw1pbu (c26) enthalten ist.  ;)
zumindestens in meiner.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 07 April 2020, 14:14:21
Zitat von: frank am 07 April 2020, 12:30:16
1. ein template ohne parameter
dieses template kann für alle enthaltenen register nur feste werte setzen.
also: jedes mal, wenn du dieses template einem device zuweist, werden immer die selben werte den selben registern zugewiesen.
logisch, oder?

2. ein template mit maximal 9 parametern (p0...p8)
wie 1. für alle register, die feste werte haben.
die register, die einen parameter nutzen sollen, werden beim zuweisen des templates nur verändert, wenn du explizit den parameter beim zuweisen des templates veränderst.

also: bei jedem zuweisen des templates wird dir die parameter tabelle gezeigt, um die parameter zu setzen.
wenn du keine werte änderst beim zuweisen, bleiben die werte natürlich unangetastet.
der erste parameter heisst immer p0.


das hast du schon die ganze zeit mit den ersten 3 templates getan. (switchToOnLevel....)

aber du musst keine parameter verwenden.
wenn du es nicht verstehst, oder keine verwendung siehst, lass sie weg und erstelle für jeden taster ein eigenes template mit festen werten.


mehr fällt mir zu dem thema nicht ein.
wenn du einfach mal probieren würdestet, würde sich sicher das meiste von selbest erklären.
lies auch diesen thread noch mal langsam in ruhe durch.
Ich habe schon  mehrere Sachen gesetzt, sehe nur zum Teil kein Unterschied.

Wie können denn die Paramter beim Zuweisen eines Templates verändert werden? Bei set tplSet sehe ich nur das Template. Oder wird das später über das webUI gemacht?

Ich verstehe eben nicht, warum du mir empfohlen hast, p0 und nicht on. hinter p0 muss ja was stecken, wo sehe ich das?

Hier habe ich mal eines mit on und p0 erstellt.
set hminfo templateDef TestWohnzimemrA lgDimStep "test Wohnzimmer" lgActionTypeDim:downDim lgDimStep:p0

Wenn du sagst nimm einfach on / p0 ist das notfalls auch in Ordnung. Ich versuche es nur zu verstehen.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 14:38:55
die befehle tplSet... fordern nicht zum setzen der parameter auf. da bleiben beim setzen die betreffenden regiszer unangetastet.
darum hat martin die zusätzlichen befehle tplPara... im angebot. diese befehle existieren aber nur, wenn das device templates mit parametern nutzt.


im webui ist immer die parameter tabelle sichtbar, wenn du ein template, welches parameter enthält, aus dem dropdown auswählst.
die dort gezeigten werte, sind zuerst immer die aktuellen werte, der mit diesen parametern verknüpften register.


wähle dein template im webui aus der liste aus.
schau dir andere templates im vergleich an.
immer wenn die parameter tabelle angezeigt wird, sind diese im template entsprechend definiert.

wenn du zusätzlich "register details" oben recht auswählst, kannst du die definitionen der register sehen.


da du ein template für mehrere dimmer wolltest, aber ein register in den dimmern unterschiedlich einzustellen sein sollte, würde ich aus bequemlichkeit ein template erstellen, das aber von allen dimmern genutzt werden kann.
so ein template braucht dann aber einen  parameter.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 07 April 2020, 16:03:25
Zitat von: frank am 07 April 2020, 14:38:55
die befehle tplSet... fordern nicht zum setzen der parameter auf. da bleiben beim setzen die betreffenden regiszer unangetastet.
darum hat martin die zusätzlichen befehle tplPara... im angebot. diese befehle existieren aber nur, wenn das device templates mit parametern nutzt.


im webui ist immer die parameter tabelle sichtbar, wenn du ein template, welches parameter enthält, aus dem dropdown auswählst.
die dort gezeigten werte, sind zuerst immer die aktuellen werte, der mit diesen parametern verknüpften register.


wähle dein template im webui aus der liste aus.
schau dir andere templates im vergleich an.
immer wenn die parameter tabelle angezeigt wird, sind diese im template entsprechend definiert.

wenn du zusätzlich "register details" oben recht auswählst, kannst du die definitionen der register sehen.


da du ein template für mehrere dimmer wolltest, aber ein register in den dimmern unterschiedlich einzustellen sein sollte, würde ich aus bequemlichkeit ein template erstellen, das aber von allen dimmern genutzt werden kann.
so ein template braucht dann aber einen  parameter.

Ok, mein folgendes Template sieht nun so aus:
- auf self01 habe ich ein neues Template erstellt
- All on
- Bei den Register: lgDimMinLvl, lgOffLevel, lgOnMinLevel auf p0 geändert
- p0 DimMax = value 20
- dieses Template ist auf dem einen Gerät zugewiesen, auf ein anderes ist es kein Problem.
- rechts oben stelle ich dann auf global usage, wähle Licht_Schlafzimmer aus und p0 = 4

Das funktioniert auch soweit.

Kann man tplPara auf ohne webUI setzen, also mit fhem set Befehlen? Finde das nicht.
Titel: OT: Gute Anleitungen für Homematic-Register
Beitrag von: Pfriemler am 07 April 2020, 16:35:37
Zitat von: frank am 07 April 2020, 12:44:07
kann ich gar nicht glauben, da es in der bauanleitung zum sw1pbu (c26) enthalten ist.  ;)
Einer der wenigen Aktoren, die ich NICHT habe. Tatsächlich sind die Bauanleitungen für Sw1PBU, Dim1TPBU und Bl1TBU zusammengefasst im Journal 3/2012 und 4/2012 veröffentlicht, aber der von Dir erwähnte Artikel ist in der 3/2012 unabhängig erschienen. Mag sein, dass es als Papierbeilage eine Kombi aus allen drei Artikeln gab.
In der Papieranleitung zum Dim1TPBU etwa ist eine Beschreibung der Logiken für virtuelle Dimmerkanäle enthalten, die im Journal 2/2012 zu finden ist.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 16:55:56
Zitat- Bei den Register: lgDimMinLvl, lgOffLevel, lgOnMinLevel auf p0 geändert
- p0 DimMax = value 20

vorsicht mit "multi"-parametern. daher bekommen sie als background color orange.
immer kontrollieren, ob die wertebereiche bei allen registern passen.
ggf kann man sich ja infos in den infotext schreiben.

ansonnsten gilt bei verwendung mehrerer "pars":
1. par p0, 2. par p1, 3. par p2, ....
es darf also keine "lücke" in der px-reihe geben.


tplPara sollte existieren, wenn ein assign zum device existiert. wahrscheinlich hilft ein browser refresh.
Titel: Antw:OT: Gute Anleitungen für Homematic-Register
Beitrag von: frank am 07 April 2020, 17:06:04
Zitat von: Pfriemler am 07 April 2020, 16:35:37
In der Papieranleitung zum Dim1TPBU etwa ist eine Beschreibung der Logiken für virtuelle Dimmerkanäle enthalten, die im Journal 2/2012 zu finden ist.
genau. die gabe es schon damals auch gratis als download.

leider gibt es diese möglichkeiten nur bei wenigen dimmern. da, wo ich die möglichkeiten gut gebrauchen könnte, habe dann die "falschen" devices.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 07 April 2020, 17:30:06
Zitat von: frank am 07 April 2020, 16:55:56
vorsicht mit "multi"-parametern. daher bekommen sie als background color orange.
immer kontrollieren, ob die wertebereiche bei allen registern passen.
ggf kann man sich ja infos in den infotext schreiben.

ansonnsten gilt bei verwendung mehrerer "pars":
1. par p0, 2. par p1, 3. par p2, ....
es darf also keine "lücke" in der px-reihe geben.


tplPara sollte existieren, wenn ein assign zum device existiert. wahrscheinlich hilft ein browser refresh.

In meinem Fall müssen die 3 Werte immer gleich sein.

Wie kann ich nachträglich die Infotexte bzw. das Template umbenennen?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 07 April 2020, 22:28:14
echtes editieren geht nur mit dem modul HMtemplate.pm
das musst du aber selbst herausfinden, wie das genau geht.  ;)

zur zeit lösche ich ein template und erstelle es neu, wenn unbedingt nötig.

HMtemplate hätte den vorteil, dass angeblich alle template zuweisungen erhalten bleiben.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 16 Mai 2020, 00:34:18
Ist auch folgendes möglich?

1) Zweimal kurz nach oben / unten , dass ein Event generiert wird. Ziel, 2 mal nach oben Shelly RGBW2 ein, 2 mal nach unten aus.
2) In einem Zimmer sind 2 Schalter, einmal mit HM-LC-Sw1PBU-FM und einmal ohne Homematic ganz klassisch. Wenn der klassische betätigt wird, funktioniert der Homematic nur anders herum, solange der klassiche nochmal getoggelt wurde. Ist es möglich, da was am dem Aktor zu ändern?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Pfriemler am 16 Mai 2020, 19:58:03
zu 1): Ich bin nicht auf dem Laufenden: Wir reden doch die ganze Zeit von internen Tastern. Die erzeugen keine verwertbaren Events nach außen. Mit einem Sw1PBU mit alternativer Firmware ginge das. Und natürlich mit jedem externen Taster.

zu 2): Das ist eine neue Baustelle. Nur soviel: Das Problem Wechselschaltung mit dem Sw1PBU wurde schon vielfach behandelt. Prinzipiell funktioniert das Zusammenspiel wie in Deinem Fall nicht. Auch hier ist die alternative Firmware nützlich, weil sie die hardwaremäßig vorhandene Stromflusserkennung im Gegensatz zur Originalfirmware auch unterstützt. Es bliebe der unschöne Nebeneffekt, dass das Relais in dieser Kombination in der Hälfte der Schaltkombinationen sinnlos angezogen bleibt und zusätzlich Strom verbraucht, obwohl der Verbraucher aus ist.
Du solltest erwägen, den normalen Wechsler entweder durch einen HM-Taster zu ersetzen (gibt es in der Bauform wie Sw1PBU, mal mit Batterie, mal mit Netzbetrieb). Alternativ ist auch ein Schalterinterface SWI-FM (mit einer Registermanipulation auch SCI-FM) hinter dem stromlos geklemmten Wechselschalter als Fernbedienung möglich. Spätestens wenn in der Schalterdose sowohl Dauer-L als auch ein N aufzutreiben sind, wäre die netzbetriebene Tastervariante die nachhaltigste, weil wartungsfreie Lösung.

Ich selbst nutze einen Shelly im Eingangsflur. Dort schaltet die normale Wechselschaltung nur den Steuereingang des Shelly. Das ist dann eine echte normale klick-klack-Wechselschaltung und kann trotzdem von extern umgeschaltet werden. Der Steuereingang toggelt in diesem Fall das Relais. Auch hier kann es passieren, dass die Steuerspannung anliegt, während der Shelly aus ist, aber der dort fließende Strom ist vernachlässigbar klein.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Rockojfonzo am 04 Februar 2021, 16:34:52
Hallo TWART016, ich weiß, alter Fred, aber ich habe hier gesehen, dass Du ebenfalls mit Templates, Peers, fhem_widget und Alexa unterwegs bist.

Ich versuche, bei meinem Dimmern SoftOn und SoftOff zu realisieren. Laut Martin (https://forum.fhem.de/index.php/topic,118015.msg1127467.html#msg1127467) geht das wohl nun nur noch mit Virtual Button und dann am besten mit Template.

Im WebCmd geht es natürlich so, aber wie bekommt man das vernünftig an FHEM_widget und Alexa geknotet?
Hast Du da einen Rat?

Dank & Gruß

Tino
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 22 Februar 2021, 20:38:36
Hi, Rockojfonzo,

Zitat von: Rockojfonzo am 04 Februar 2021, 16:34:52
Ich versuche, bei meinem Dimmern SoftOn und SoftOff zu realisieren. Laut Martin (https://forum.fhem.de/index.php/topic,118015.msg1127467.html#msg1127467) geht das wohl nun nur noch mit Virtual Button und dann am besten mit Template.

was meinst du mit SoftOn und SoftOff? Ich dimme ganz normal per Schalter und in FHEM hoch/runter. Das funktioniert bei den Dimmern standardmäßig. Ich habe nur das Verhalten mit dem Register nur beeinflusst.

Zitat von: Rockojfonzo am 04 Februar 2021, 16:34:52
Im WebCmd geht es natürlich so, aber wie bekommt man das vernünftig an FHEM_widget und Alexa geknotet?
Was meinst du mit FHEM_widget?
Mit Alexa schalte ich eigentlich nur aus/aus. Das funktioniert soweit auch. Dimmen habe ich noch gar nicht probiert, ggf. wird hier ein homebridge/alexamapping benötigt.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Rockojfonzo am 22 Februar 2021, 21:45:29
Hi TWART016, Dank für Deine Antwort!

Vielleicht stehe ich ja auf dem völlig falschen Schlauch: Bis vor meinem letzten FHEM-Update haben meine Leuchten immer einen sanften Übergang von einer Helligkeitsstufe zur anderen (oder natürlich auch bei An/Aus) gemacht. Das konnte man mal mit dem Homematic-Geräte-Konfigurationsprogramm (https://wiki.fhem.de/wiki/HM-CFG-LAN_LAN_Konfigurations-Adapter#Homematic-Ger.C3.A4te-Konfigurationsprogramm_verbindet_sich_nicht_mit_LAN-Adapter) im Device hinterlegen.
Seit meinem letzten Update schalten die Leuchten immer hart von hell auf dunkel und zurück. Ich hätte gerne ein sanfteres Überblenden.

FHEM_widget: Ich hatte das in Deinen Attributes gesehen (z.B. Dein Post vom 04 April 2020, 20:11:41) und gedacht, vielleicht hast Du das schon irgendwie realisiert.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 23 Februar 2021, 00:51:55
Zitat von: Rockojfonzo am 22 Februar 2021, 21:45:29
Vielleicht stehe ich ja auf dem völlig falschen Schlauch: Bis vor meinem letzten FHEM-Update haben meine Leuchten immer einen sanften Übergang von einer Helligkeitsstufe zur anderen (oder natürlich auch bei An/Aus) gemacht. Das konnte man mal mit dem Homematic-Geräte-Konfigurationsprogramm (https://wiki.fhem.de/wiki/HM-CFG-LAN_LAN_Konfigurations-Adapter#Homematic-Ger.C3.A4te-Konfigurationsprogramm_verbindet_sich_nicht_mit_LAN-Adapter) im Device hinterlegen.
Das Tool kenne ich nicht. Ich habe das über die Register gemacht. Dazu wurde in diesem Thema schon viel beschrieben.

Zitat von: Rockojfonzo am 22 Februar 2021, 21:45:29
Seit meinem letzten Update schalten die Leuchten immer hart von hell auf dunkel und zurück. Ich hätte gerne ein sanfteres Überblenden.
Ob es mit dem Update zusammenhängt, kann ich nicht sagen. Bin da auch kein Profi ;). Ich meine bei den Registern gibt es einen DimStep. Damit kann man zumindest ein bisschen die Geschwindigkeit beeinflussen.

Zitat von: Rockojfonzo am 22 Februar 2021, 21:45:29
FHEM_widget: Ich hatte das in Deinen Attributes gesehen (z.B. Dein Post vom 04 April 2020, 20:11:41) und gedacht, vielleicht hast Du das schon irgendwie realisiert.
Ich meinte da hätte ich aber nicht verstellt. Das war entweder schon da, oder ist irgendwo mitgekommen.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Rockojfonzo am 23 Februar 2021, 13:04:24
Zitat von: TWART016 am 23 Februar 2021, 00:51:55
Ich meine bei den Registern gibt es einen DimStep. Damit kann man zumindest ein bisschen die Geschwindigkeit beeinflussen.
Ja, es gibt ein shDimStep, aber dazu brauche ich ja einen Peer, und den hab ich ja nicht bzw. es sind mind. 4 verschiedene.

Gibt es denn keine Möglichkeit (mehr), dem Dimmer einfach zu sagen: "Hey, egal woher der Befehl 'AN' kommt, mach es gaaaaanz langsam"  :'(
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 23 Februar 2021, 13:10:04
Ich kann das alles seit einigen Beiträgen nicht mehr nachvollziehen, dass es daran liegt dass ich mit einer "alten" Version CUL_HM fahre mag ich nicht glauben.

Der dimStep steht doch in den Registern, der peer ist er doch selbst? Und an den Registern hat doch CUL_HM nichts geändert?

No regs found for:

LichtWzL_Dim type:dimmer -
list:peer register         :value
                       self01                          self02                         
                       lg              sh              lg              sh             
ActionTypeDim          downDim         jmpToTarget     upDim           jmpToTarget     
CtDlyOff               geLo            geLo            geLo            geLo           
CtDlyOn                geLo            geLo            geLo            geLo           
CtOff                  geLo            geLo            geLo            geLo           
CtOn                   geLo            geLo            geLo            geLo           
CtRampOff              geLo            geLo            geLo            geLo           
CtRampOn               geLo            geLo            geLo            geLo           
CtValHi                100             100             100             100             
CtValLo                50              50              50              50             
DimElsActionType       off             off             off             off             
DimElsJtDlyOff         rampOff         rampOff         rampOff         rampOff         
DimElsJtDlyOn          rampOn          rampOn          rampOn          rampOn         
DimElsJtOff            dlyOn           dlyOn           dlyOn           dlyOn           
DimElsJtOn             dlyOff          dlyOff          dlyOff          dlyOff         
DimElsJtRampOff        off             off             off             off             
DimElsJtRampOn         on              on              on              on             
DimElsOffTimeMd        absolut         absolut         absolut         absolut         
DimElsOnTimeMd         absolut         absolut         absolut         absolut         
DimJtDlyOff            rampOff         rampOff         rampOn          rampOn         
DimJtDlyOn             dlyOff          dlyOff          rampOn          rampOn         
DimJtOff               dlyOff          dlyOff          dlyOn           dlyOn           
DimJtOn                dlyOff          dlyOff          rampOn          rampOn         
DimJtRampOff           off             off             rampOn          rampOn         
DimJtRampOn            dlyOff          dlyOff          on              on             
DimMaxLvl         [%]  60              100             60              100             
DimMinLvl         [%]  6               0               6               0               
DimStep           [%]  3               5               3               5               
MultiExec              on              off             on              off             
OffDly            [s]  0               0               0               0               
OffDlyBlink            on              on              on              on             
OffDlyNewTime     [s]  0.4             0.4             0.4             0.4             
OffDlyOldTime     [s]  0.4             0.4             0.4             0.4             
OffDlyStep        [%]  5               5               5               5               
OffLevel          [%]  5               0               5               0               
OffTime                unused          unused          unused          unused         
OffTimeMode            absolut         absolut         absolut         absolut         
OnDly             [s]  0               0               0               0               
OnDlyMode              setToOff        setToOff        setToOff        setToOff       
OnLevel           [%]  100             55              100             55             
OnLvlPrio              high            high            high            high           
OnMinLevel        [%]  5               10              5               10             
OnTime            [s]  1               unused          unused          unused         
OnTimeMode             minimal         absolut         absolut         absolut         
RampOffTime       [s]  0.5             0.5             0.5             0.5             
RampOnTime        [s]  0.5             0.5             0.5             0.5             
RampSstep         [%]  5               5               5               5             


Notfalls nimmt man für die Betätigung aus FHEM pressS self01  self02 ?
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 23 Februar 2021, 13:31:31
ich verstehe es so, dass neuerdings beim fhem cmd "pct:(-value-|old) [(-ontime-|{})] [(-ramptime-|{})]" keine default ramptime mehr existiert. scheinbar verhält sich der befehl jetzt anders.

otto, sniffe doch mal in deiner version zb ein "set pct 20".

mit aktuellem fhem sieht es bei mir so aus:
2021.02.23 13:26:25.928 3 : CUL_HM set DimUP01 pct 20
2021.02.23 13:26:26.001 0 : HMLAN_Send:  hmlan1 S:SCEDADEC7 stat:  00 t:00000000 d:01 r:CEDADEC7 m:57 A011 1ACE1F 1F64D8 0201280000FFFF


ausserdem gibt es noch warnings:
https://forum.fhem.de/index.php/topic,118015.0.html (https://forum.fhem.de/index.php/topic,118015.0.html)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 23 Februar 2021, 16:04:58
geht unauffällig durch :)
2021.02.23 16:01:41.234 0: HMLAN_Send:  HMLAN1 S:SCF690268 stat:  00 t:00000000 d:01 r:CF690268 m:83 A011 200DB8 617DE9 0201280320FFFF
2021.02.23 16:01:41.276 0: HMUARTLGW HMUART1 recv: 01 05 00 00 11 msg: 83 A0 11 200DB8 617DE9 0201280320FFFF
2021.02.23 16:01:41.294 0: HMUARTLGW ser2netUart recv: 01 05 00 00 35 msg: 83 A0 11 200DB8 617DE9 0201280320FFFF
2021.02.23 16:01:41.393 0: HMUARTLGW HMUART1 recv: 01 05 00 00 3B msg: 83 80 02 617DE9 200DB8 010101104500
2021.02.23 16:01:41.437 0: HMUARTLGW ser2netUart recv: 01 05 00 00 39 msg: 83 80 02 617DE9 200DB8 010101104500
2021.02.23 16:01:41.441 0: HMLAN_Parse: HMLAN1 R:RCF690268 stat:0001 t:F95878A0 d:FF r:FFBC     m:83 8002 617DE9 200DB8 010101104500
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 23 Februar 2021, 17:14:36
Zitat2021.02.23 16:01:41.234 0: HMLAN_Send:  HMLAN1 S:SCF690268 stat:  00 t:00000000 d:01 r:CF690268 m:83 A011 200DB8 617DE9 0201280320FFFF
bei dir wird aber eine default ramptime eingebaut.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Rockojfonzo am 23 Februar 2021, 17:24:33
Ich hab jetzt mal in alle Register, die für mich halbwegs sinnvoll erscheinen, einen Wert eingetragen:


No regs found for:

Ball type:dimmer -
       self01                         
                       lg sh
ActionTypeDim toggleDim jmpToTarget
CtRampOff geLo geLo
CtRampOn geLo geLo
DimMaxLvl [%] 100 100
DimMinLvl [%] 0 0
DimStep [%] 90 90
RampOffTime [s] 0.5 0.5
RampOnTime [s] 5 5
RampSstep [%] 90 90
ActionTypeDim toggleDim jmpToTarget

Ja, bei einem pressS geht er schön langsam – auf 100%.
Aber bei einem "set Ball pct 10" oder "set Ball pct 70" geht es wieder ruckartig.
Ziel ist natürlich, dass auch bei Hoch- oder Runterdimmen über Web-Interface/Phone-App/Alexa/Taster(HM-PB-4DIS-WM) es sanft überblendet.
Das ging ja mal...
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 23 Februar 2021, 17:39:31
@Frank Dann habe ich die Zusammenhänge falsch verstanden  :-[ ich bewundere Dich ;)
Soll ich jetzt meine Versionen hier zum download anbieten? Oder ermitteln wie man die aus dem svn holt?
10_CUL_HM.pm    22022 2020-05-24 08:50:40Z martinp876
98_HMinfo.pm    21999 2020-05-22 11:05:41Z martinp876
HMConfig.pm     20888 2020-01-05 06:59:29Z martinp876
Und sagen wie man das schützt?
attr global exclude_from_update 10_CUL_HM.pm 98_HMinfo.pm HMConfig.pm
Sorry, ich bin da wirklich ratlos, ich verstehe auch wirklich nicht - warum man ein funktionierendes Modul (eines der größten in FHEM und mit Sicherheit nicht gerade wenig komplex) am Zeitpunkt der Einstellung jegliche Hardwareentwicklung seitens Hersteller, von den Füßen auf den Kopf stellen muss.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 23 Februar 2021, 18:36:34
besser wäre ein patch.  8)

ich denke mal laut:

cul_hm zeile 5409 wird scheinbar "unerwartet" ausgeführt:
      $rval = CUL_HM_encodeTime16((@a > 4)?$a[4]:2.5);# rampTime 0.0..85825945.6, 0=immediate
denn würde 2.5 an CUL_HM_encodeTime16 übergeben, käme der richtige wert zurück => "0320".

in CUL_HM_encodeTime16 wird auch das aktuelle warning in der return zeile erzeugt, wodurch die funktion dann "0000" zurückliefert:
sub CUL_HM_encodeTime16($) {####################
  my $v = shift;
  return "0000" if($v < 0.05 || $v !~ m/^[+-]?\d+(\.\d+)?$/);



2021.02.23 13:37:17.733 1: PERL WARNING: Argument "" isn't numeric in numeric lt (<) at ./FHEM/10_CUL_HM.pm line 9027.
2021.02.23 13:37:17.734 1: stacktrace:
2021.02.23 13:37:17.735 1:     main::__ANON__                      called by ./FHEM/10_CUL_HM.pm (9027)
2021.02.23 13:37:17.735 1:     main::CUL_HM_encodeTime16           called by ./FHEM/10_CUL_HM.pm (5409)
2021.02.23 13:37:17.736 1:     main::CUL_HM_Set                    called by fhem.pl (3812)
2021.02.23 13:37:17.737 1:     main::CallFn                        called by fhem.pl (1918)
2021.02.23 13:37:17.737 1:     main::DoSet                         called by fhem.pl (1950)
2021.02.23 13:37:17.737 1:     main::CommandSet                    called by fhem.pl (1250)
2021.02.23 13:37:17.738 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2717)
2021.02.23 13:37:17.738 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (945)
2021.02.23 13:37:17.739 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (593)
2021.02.23 13:37:17.739 1:     main::FW_Read                       called by fhem.pl (3817)
2021.02.23 13:37:17.739 1:     main::CallFn                        called by fhem.pl (758)




mit dieser änderung der zeile 5409 kommt wieder die default ramptime und die warning ist weg:
      $rval = CUL_HM_encodeTime16(($a[4])?$a[4]:2.5);# rampTime 0.0..85825945.6, 0=immediate

2021.02.23 18:31:50.686 3 : CUL_HM set DimUP01 pct 20 
2021.02.23 18:31:50.753 0 : HMLAN_Send:  hmlan1 S:SCFF27BD6 stat:  00 t:00000000 d:01 r:CFF27BD6 m:EA A011 1ACE1F 1F64D8 0201280320FFFF
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Otto123 am 23 Februar 2021, 19:20:18
Vote Frank for Developer  8) 🏅
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Pfriemler am 23 Februar 2021, 19:52:36
franks Patch hier nachgestellt: perfekte Funktion, und auch bei mir sind die Fehlermeldungen weg.

Mehr sag ich dazu jetzt mal nicht  :-X

BTW: Es hagelt inzwischen so dermaßen viele Fehlermeldungen bei mir ständig, dass ich mit dem Debuggen schon aufgehört habe. Es gibt jeden Tag ein neues Logfile und gut isses.
Schön, dass es noch Bugfixes gibt.

edit: Otto, genau das habe ich mich nicht getraut :-)
Habe gestern, mit viel Ruhe im Rücken, mal das ganze FHEM geupdatet inklusive CUL_HM, das schlimmste befürchtend.
Und was war? Nix. Keine Probleme. Kann also wieder mitreden.

Nur bei manchen HM-Geräten bekomme ich mit der beta-hm.js wieder "connection lost". Melde mich aber dazu bei frank selbst.





Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 24 Februar 2021, 09:08:27
ZitatNur bei manchen HM-Geräten bekomme ich mit der beta-hm.js wieder "connection lost". Melde mich aber dazu bei frank selbst.
seit einiger zeit sehe ich auch gelegentlich connection lost, konnte aber noch keinn fall reproduzieren.
mein bauch meint, es liegt an firefox. eventuell hat die anzahl der geöffneten tabs damit zu tun.

damit martin den patch nicht übersieht, habe ich ihn auch mal in den ürsprünglichen thread gepackt:
https://forum.fhem.de/index.php/topic,118015.0.html (https://forum.fhem.de/index.php/topic,118015.0.html)
Titel: OT: hm.js
Beitrag von: Pfriemler am 24 Februar 2021, 14:01:15
Zitat von: frank am 24 Februar 2021, 09:08:27
seit einiger zeit sehe ich auch gelegentlich connection lost, konnte aber noch keinn fall reproduzieren.
Da könnte ich vll. helfen.

Zitatmein bauch meint, es liegt an firefox. eventuell hat die anzahl der geöffneten tabs damit zu tun.
Krieg ich hier gerade sicher auch mit einem Chrome mit nur einem Tab hin.

Die Frage ist: Wo sollen wir das weiter diskutieren? Ich finde inzwischen zu viele Threads zu dem Thema ...
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 24 Februar 2021, 14:12:23
ZitatWo sollen wir das weiter diskutieren?
ich denke hier:
https://forum.fhem.de/index.php/topic,112156.0.html (https://forum.fhem.de/index.php/topic,112156.0.html)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: Pfriemler am 24 Februar 2021, 14:26:38
???
Edith meint, ich solle ruhig sagen dass ich damit nichts anfangen kann ... frank hat den Link korrigiert, jetz geht's.
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: frank am 24 Februar 2021, 14:31:51
schau noch mal.  :) :) :)
Titel: Antw:Licht aus, an und dann dimmen
Beitrag von: TWART016 am 22 März 2021, 01:40:44
Wie übertrage ich die Register & Werte von einem Gerät in ein Template bzw. auf ein anderes Gerät?