[gelöst]HM-LC-Sw1PBU-FM schalten nur be Longpress

Begonnen von AB1970, 24 September 2018, 22:34:32

Vorheriges Thema - Nächstes Thema

AB1970

Hi gesucht aber nicht gefunden.
Kann ich den HM-LC-Sw1PBU-FM so umprogrammieren, das er nur nach einem Longpress schaltet ?

Viele Grüße und danke!



Pfriemler

#1
Ja, das ist möglich. Warum auch immer das nötig sein sollte:
set <aktor> regSet intKeyVisib visib
set <aktor> getConfig
set <aktor> regSet shActionType off self01
set <aktor> regSet shActionType off self02


edit: off statt no.
"Ä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 ..."

AB1970

Danke !
Ich frage mich, ob es irgendwo eine Doku der Readings gibt?

Pfriemler

Du meinst eher eine Doku der Register ... also was man programmieren kann.

Ich kann nur gebetsmühlenartig wiederholen, was viele auch vor mit getan haben: Eine gute Idee davon was man mit Registern tun kann und wie die ganzen Funktionen überhaupt zusammenhängen, bekommt man im Einsteiger-Doc-Anhang zu Homematic, was Martin sehr detailliert zusammengetragen hat. Dann gibt es einen Artikel im Wiki zum Homematic-Register programmieren - was fehlt ist eine Art Index zu den ganzen Registern. Das gibt es, nicht ganz fein lesbar, aber immerhin, in der "HMConfig.pm" jeder FHEM-Installation, und - schöner aufbereitet - in jeder Homematic-Geräte- oder -Kanal-Definition per "get ... regList" - dort sind alle das Gerät betreffenden Register inklusive erlaubten Wertebereichen gelistet. Was in einem Gerät tatsächlich programmiert ist, bekommt man - neben den Readings - auch per "get ... regTable" zu Gesicht.

Eigentlich wollte ich mal eine Datenbank mit klarschriftlichen Erklärungen dazu basteln, aber das Projekt ist temporär eingeschläfert - ganz oder gar nicht, und gut 300 Register etwa wollen erst einmal erklärt sein. Interessanterweise muss man eigentlich nicht so viel erklären - wenn man das Schema mal kapiert hat, ist es einfach.

sh für short (kurzer Tastendruck) und ...ActionType (es gibt also auch lgActionType) legen normalerweise global fest, was bei einem entsprechenden TastenDruck zu tun ist. "jmpToTarget" ist die normale Aktion und bedeutet, dass der Tastendruck entsprechend der "state machine" abzuarbeiten ist. Möglich sind "jmpToTarget,off,toggleToCnt,toggleToCntInv". Dabei sehe ich gerade einen Fehler in meinem Beitrag zuvor: bei den Sprungzielen ist "no" erlaubt, beim ActionType schaltet man die Aktion mit "off" aus.

Die erwähnten Programmierungen bedeuten also, dass das kurze Drücken der internen Tasten (self01 und self02) funktionslos wird. Mit "jmpToTarget" macht man die Tasten wieder funktionsfähig.

"Ä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 ..."

martinp876

Die register einesmdevice sind mit reglist und  regtable ablesbar und kurz beschrieben.
Die wesentlichen, also statemachin und evtl conditiontable, sind im einsteigerdoc beschrieben. Man sollte wissen, was eine statemachin ist.
Alle anderen sind entsprechend spezifisch.
Elv hat auch gute artikel hierzu. Kostet mal nen euro oder so. Lohnt sich für interessierte

AB1970