HM-LC-DIM1T-FM 1-Kanal-Dimmer - Schalter soll immer hochdimmen (wenn pct < 50)

Begonnen von Christian Uhlmann, 08 Januar 2019, 13:28:30

Vorheriges Thema - Nächstes Thema

Christian Uhlmann

Hallo zusammen,

ich bin auf der Suche nach einer Möglichkeit das verhalten beim betätigen des Schalters am HM-LC-DIM1T-FM 1-Kanal-Dimmer zu beeinflussen.
Es gibt ja einige Register, leider kenne ich mich damit nicht gut aus und meine Suchen hier im Forum, im Wiki bzw. über google haben zu nichts geführt was ich verstehe und mir weiterhilft.

Ich würde gerne, bei einem langen Drücken auf den Schalter immer hochdimmen und nicht abwechselnd hoch/runter.
Am besten nur, wenn Beispielsweise pct zwischen 0 und 30 ist.

Gibt es da eine Möglichkeit?

Hier der Auszug der relevanten Register für self01 (Schalter direkt am Aktor), um den geht aus auch, nicht um andere externe Trigger:

     2017-11-23 12:09:39   R-self01-lgActionTypeDim toggelDim
     2017-11-23 12:09:39   R-self01-lgCtDlyOff geLo
     2017-11-23 12:09:39   R-self01-lgCtDlyOn geLo
     2017-11-23 12:09:39   R-self01-lgCtOff geLo
     2017-11-23 12:09:39   R-self01-lgCtOn geLo
     2017-11-23 12:09:39   R-self01-lgCtRampOff geLo
     2017-11-23 12:09:39   R-self01-lgCtRampOn geLo
     2017-11-23 12:09:39   R-self01-lgCtValHi 100
     2017-11-23 12:09:39   R-self01-lgCtValLo 50
     2017-11-23 12:09:39   R-self01-lgDimJtDlyOff rampOff
     2017-11-23 12:09:39   R-self01-lgDimJtDlyOn rampOn
     2017-11-23 12:09:39   R-self01-lgDimJtOff dlyOn
     2017-11-23 12:09:39   R-self01-lgDimJtOn dlyOff
     2017-11-23 12:09:39   R-self01-lgDimJtRampOff off
     2017-11-23 12:09:39   R-self01-lgDimJtRampOn on
     2017-11-23 12:09:39   R-self01-lgDimMaxLvl 100 %
     2017-11-23 12:09:39   R-self01-lgDimMinLvl 0 %
     2017-11-23 12:09:39   R-self01-lgDimStep 1 %
     2017-11-23 12:09:39   R-self01-lgMultiExec on
     2017-11-23 12:09:39   R-self01-lgOffDly 0 s
     2017-11-23 12:09:39   R-self01-lgOffDlyBlink on
     2017-11-23 12:09:39   R-self01-lgOffDlyNewTime 0.4 s
     2017-11-23 12:09:39   R-self01-lgOffDlyOldTime 0.4 s
     2017-11-23 12:09:39   R-self01-lgOffDlyStep 5 %
     2017-11-23 12:09:39   R-self01-lgOffLevel 0 %
     2017-11-23 12:09:39   R-self01-lgOffTime unused
     2017-11-23 12:09:39   R-self01-lgOffTimeMode absolut
     2017-11-23 12:09:39   R-self01-lgOnDly 0 s
     2017-11-23 12:09:39   R-self01-lgOnDlyMode setToOff
     2017-11-23 12:09:39   R-self01-lgOnLevel oldLevel
     2017-11-23 12:09:39   R-self01-lgOnLvlPrio high
     2017-11-23 12:09:39   R-self01-lgOnMinLevel 1 %
     2017-11-23 12:09:39   R-self01-lgOnTime 900 s
     2017-11-23 12:09:39   R-self01-lgOnTimeMode absolut
     2017-11-23 12:09:39   R-self01-lgRampOffTime 0.5 s
     2017-11-23 12:09:39   R-self01-lgRampOnTime 0.5 s
     2017-11-23 12:09:39   R-self01-lgRampSstep 5 %
     2017-11-23 12:09:39   R-self01-shActionTypeDim jmpToTarget
     2017-11-23 12:09:39   R-self01-shCtDlyOff geLo
     2017-11-23 12:09:39   R-self01-shCtDlyOn geLo
     2019-01-08 13:20:45   R-self01-shCtOff geLo
     2019-01-08 13:20:45   R-self01-shCtOn geLo
     2017-11-23 12:09:39   R-self01-shCtRampOff geLo
     2017-11-23 12:09:39   R-self01-shCtRampOn geLo
     2017-11-23 12:09:39   R-self01-shCtValHi 100
     2017-11-23 12:09:39   R-self01-shCtValLo 50
     2017-11-23 12:09:39   R-self01-shDimJtDlyOff rampOff
     2017-11-23 12:09:39   R-self01-shDimJtDlyOn rampOn
     2017-11-23 12:09:39   R-self01-shDimJtOff dlyOn
     2017-11-23 12:09:39   R-self01-shDimJtOn dlyOff
     2017-11-23 12:09:39   R-self01-shDimJtRampOff off
     2017-11-23 12:09:39   R-self01-shDimJtRampOn on
     2017-11-23 12:09:39   R-self01-shDimMaxLvl 100 %
     2017-11-23 12:09:39   R-self01-shDimMinLvl 0 %
     2017-11-23 12:09:39   R-self01-shDimStep 1 %
     2017-11-23 12:09:39   R-self01-shMultiExec off
     2017-11-23 12:09:39   R-self01-shOffDly 0 s
     2017-11-23 12:09:39   R-self01-shOffDlyBlink on
     2017-11-23 12:09:39   R-self01-shOffDlyNewTime 0.4 s
     2017-11-23 12:09:39   R-self01-shOffDlyOldTime 0.4 s
     2017-11-23 12:09:39   R-self01-shOffDlyStep 5 %
     2017-11-23 12:09:39   R-self01-shOffLevel 0 %
     2017-11-23 12:09:39   R-self01-shOffTime unused
     2017-11-23 12:09:39   R-self01-shOffTimeMode absolut
     2017-11-23 12:09:39   R-self01-shOnDly 0 s
     2017-11-23 12:09:39   R-self01-shOnDlyMode setToOff
     2017-11-23 12:09:39   R-self01-shOnLevel oldLevel
     2017-11-23 12:09:39   R-self01-shOnLvlPrio high
     2017-11-23 12:09:39   R-self01-shOnMinLevel 1 %
     2017-11-23 12:09:39   R-self01-shOnTime 900 s
     2017-11-23 12:09:39   R-self01-shOnTimeMode absolut
     2017-11-23 12:09:39   R-self01-shRampOffTime 0.5 s
     2017-11-23 12:09:39   R-self01-shRampOnTime 0.5 s
     2017-11-23 12:09:39   R-self01-shRampSstep 5 %



Danke und Grüße

Christian
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

rabehd

ZitatAm besten nur, wenn Beispielsweise pct zwischen 0 und 30 ist.
und ab 30?
Auch funktionierende Lösungen kann man hinterfragen.

Pfriemler

Ich nehme an, dass bei >30 schlicht das normale toggleDim-Verhalten gefragt ist, halt nur bei <30 soll immer aufgedimmt werden.

Spannende Idee. Ich glaube ich kenne mich mit den Registern schon ein bisschen besser aus, aber ich sehe keine Chance dafür. Es ist zwar möglich, auf Triggern mit Werten zu reagieren (etwa bei Bewegungsmeldern, die eine Helligkeit mit senden - hier kann man im Aktor festlegen, bei welchen Grenzwerten was passiert), aber die internen Trigger (Tasten) senden nun einmal solche Werte nicht, und die State Machine kennt keinen Rückgriff auf eigene Variablen.

Auch mit virtuellen Kanälen sehe ich keine Möglichkeit, zumindest keine rückwirkungsfreie.

Machbar ist, die untere Dimmschwelle auf einen Minimalwert festzunageln, so dass das Licht beim Dimmen nie ausgeht. Ausschalten geht dann nur noch über kurzen Tastendruck.
Auch ein Einschaltlevel kann festgelegt werden.
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Christian Uhlmann

Hi,

Zitat von: rabehd am 08 Januar 2019, 13:56:54
und ab 30?
dann gerne wie bisher im wechsel, sollte das aber nicht gehen wäre es auch möglich dann nichts zu tun oder runter zu dimmen.
Wenn das relevant ist um so eine Lösung zu bauen. Generell geht es mir darum:

Wenn die Rollos unten sind, schaltet ein DOIF in FHEM bei erkannter Bewegung den Aktor auf pct 15.
Wenn meine Frau es dann heller machen möchte, passiert es halt, das es erst mal dunkler wird.
Sie bat mich jetzt mal zu prüfen ob man das auch so umstellen kann, das wenn es nur dunkel gedimmt ist, das dann immer hochgedimmt wird anstatt manchmal hoch und manchmal runter (weil ist ja toggle, also im wechsel).

Bin für viele Möglichkeiten offen, hauptanliegen ist, wenn das Licht unter einem bestimmten Wert nur gedimmt ist, dann soll ein weiteres dimmen immer hochdimmen.
Das ist die Hauptanforderung, mit allen anderen wenn und abers würde ich mich dann in einem zweiten Schritt befassen.

Die Frage ist, ob das prinzipiell anpassbar ist und welche Register dann welche Funktion haben um das zu beeinflussen.



Grüße

Christian
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

Christian Uhlmann

Zitat von: Pfriemler am 08 Januar 2019, 14:38:35
Ich nehme an, dass bei >30 schlicht das normale toggleDim-Verhalten gefragt ist, halt nur bei <30 soll immer aufgedimmt werden.

Spannende Idee. Ich glaube ich kenne mich mit den Registern schon ein bisschen besser aus, aber ich sehe keine Chance dafür. Es ist zwar möglich, auf Triggern mit Werten zu reagieren (etwa bei Bewegungsmeldern, die eine Helligkeit mit senden - hier kann man im Aktor festlegen, bei welchen Grenzwerten was passiert), aber die internen Trigger (Tasten) senden nun einmal solche Werte nicht, und die State Machine kennt keinen Rückgriff auf eigene Variablen.

Auch mit virtuellen Kanälen sehe ich keine Möglichkeit, zumindest keine rückwirkungsfreie.

Machbar ist, die untere Dimmschwelle auf einen Minimalwert festzunageln, so dass das Licht beim Dimmen nie ausgeht. Ausschalten geht dann nur noch über kurzen Tastendruck.
Auch ein Einschaltlevel kann festgelegt werden.

Richtige Annahme.
das sieht ja fast schlecht aus :( warten wir noch mal ab.
ggf setz ich bei den Schalter das min level auf 30, dann geht es auch, man kann dann aber niemals manuell am Schalter wieder unter 30 dimmen.
Ist aber ein interessanter Ansatz, ich werde das mal testen

LG Christian
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

frank

du könntest das dimmen auch grundsätzlich "enttoggeln".
also einen taster immer zum hochdimmen und einen anderen immer zum runterdimmen. dann weiss man immer, was passieren wird.

edit:
shit, du meintes sicher den externen schalter. dafür natürlich ungeeignet.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Pfriemler

@frank: eben - ein -FM ohne PBU. Als Wandaktor hätte es ja gar kein Problem gegeben.

Aber wenn der Minimallevel (damit man bei geschlossenem Rolladen nicht im Stockdunklen steht) 15% ist - dann setz doch lgDimMinLvl eben auf 15%. Das schlimmste was dann noch passieren kann ist, dass beim ersten langen Drücken nichts passiert.

Übrigens: wenn Du jetzt noch lgOffLevel lgOnMinLevelauf 15% setzt, dann schaltert der Dimmer bei einem langen Tastendruck auch von aus auf 15%. Nutze ich bei mir als Orientierungslicht in der Küche. Kurz drücken schaltet voll ein - bzw. bei Dir auf den letzten Level, da Du auf oldLevel gesetzt hast. Und im Treppenhaus (Ein-Tasten-Betrieb wie bei Dir) schalte ich so ebenfalls ein Abendlicht ein, gleichzeitig ist lgOnTime eine halbe Stunde statt 2 Minuten - reicht zum Putzen  ;D
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."