HM-LC-SW1-BA-PCB - peeren möglich? und hilfe bei Regset

Begonnen von chris1284, 19 November 2015, 07:38:21

Vorheriges Thema - Nächstes Thema

chris1284

HI,

kann mir jemand sagen ob ich den aktor peeren kann? er hat ja keine channels die man peeren könnte und ich kann nur peerIODev und peerBulk wählen.
bleibt nur der weg des set on / off über notify ?

gruß
christian

frank

das sollte kein problem sein. er hat schon ein channel, der wird aber zusammen mit dem device in fhem angezeigt, wie bei allen devices mit nur 1 channel. nimm peerbulk und setze chn1 bei den 8-stelligen id's. zb xxxxxx01.
peerchan ist bestimmt nur "abhanden" gekommen.
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

chris1284

ich habe in keinem device mehr peerChan!!!!!!!!!

chris1284

ich habe nun 2 buttons des wandtasters per

set <switch>_Btn_03 peerChan 0 <aktor> single set
set <switch>_Btn_04 peerChan 0 <aktor> single set


verbunden. das command wird wohl nur nicht angezeigt

chris1284

#4
ich finde bei dem  HM-LC-SW1-BA-PCB die lösung nicht:

ich will bei:

taste3(wandswitch) short -> den HM-LC-SW1-BA-PCB einschalten
taste4(wandswitch) short -> den HM-LC-SW1-BA-PCB ausschalten

ich habe es nun so angepasst:

R-whg_switch01_Btn_03-lgActionType                             jmpToTarget
R-whg_switch01_Btn_03-shActionType                            jmpToTarget
R-whg_switch01_Btn_04-lgActionType                             jmpToTarget
R-whg_switch01_Btn_04-shActionType                            off

bei jmpToTaget (was auch immer das heisst) toggled er im prinzip

short auf 03 -> an oder aus je nach aktuellem status
short auf 03 -> an oder aus je nach aktuellem status
long 03/04 -> an oder aus je nach aktuellem status
long 03/04 -> an oder aus je nach aktuellem status

drücke ich short auf 04 passiert nichts (der  HM-LC-SW1-BA-PCB bleibt eingeschaltet wenn er on ist).
die buttons 03 und 04 sind zusätzlich noch mit vccu_Btn3,vccu_Btn4 peered

frank

R-whg_switch01_Btn_03-lgActionType                             jmpToTarget
das aktiviert die statemachine für diesen peer.

R-whg_switch01_Btn_04-shActionType                            off
hiermit wird dieser peer totgelegt.

poste mal die kompletten registersätze für short für beide taster.
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

chris1284

wenn ich das hier richtig verstehe http://forum.fhem.de/index.php?topic=12299.40;wap2

ist das was ich will nur über jmpToTarget und anpassung der jumptable möglich , richtig?

jumptable:
Zitatwhg_switch01_Btn_03             whg_switch01_Btn_04
                       lg              sh              lg              sh
ActionType             jmpToTarget     jmpToTarget     jmpToTarget     jmpToTarget
CtDlyOff               geLo            geLo            geLo            geLo
CtDlyOn                geLo            geLo            geLo            geLo
CtOff                  geLo            geLo            geLo            geLo
CtOn                   geLo            geLo            geLo            geLo
CtValHi                100             100             100             100
CtValLo                50              50              50              50
MultiExec              on              off             on              off
OffDly            (s)  0               0               0               0
OffTime                unused          unused          unused          unused
OffTimeMode            absolut         absolut         absolut         absolut
OnDly            ( s)  0               0               0               0
OnTime                 unused          unused          unused          unused
OnTimeMode             absolut         absolut         absolut         absolut
SwJtDlyOff             off             off             off             off
SwJtDlyOn              on              on              on              on
SwJtOff                dlyOn           dlyOn           dlyOn           dlyOn
SwJtOn                 dlyOff          dlyOff          dlyOff          dlyOff

beispiel dev ist aus
                                                             
short von wandswitch -> jmpToTarget -> wenn state OFF sieht in der zeile SwJtOff  nach und geht auf dlyOn ?
                                                             ->wenn state ON sieht in der zeile SwJtOn  nach und geht auf dlyOff ?


registersätze (get reg all???)

Zitatlist:peer   register         :value
   0:         intKeyVisib      :invisib
   0:         ledMode          :on
   0:         lowBatLimitBA    :10.5 V
   0:         pairCentral      :0xF81284
   1:         sign             :off
   3:whg_switch01_Btn_03   lgActionType     :jmpToTarget
   3:whg_switch01_Btn_03   lgCtDlyOff       :geLo
   3:whg_switch01_Btn_03   lgCtDlyOn        :geLo
   3:whg_switch01_Btn_03   lgCtOff          :geLo
   3:whg_switch01_Btn_03   lgCtOn           :geLo
   3:whg_switch01_Btn_03   lgCtValHi        :100
   3:whg_switch01_Btn_03   lgCtValLo        :50
   3:whg_switch01_Btn_03   lgMultiExec      :on
   3:whg_switch01_Btn_03   lgOffDly         :0 s
   3:whg_switch01_Btn_03   lgOffTime        :unused
   3:whg_switch01_Btn_03   lgOffTimeMode    :absolut
   3:whg_switch01_Btn_03   lgOnDly          :0 s
   3:whg_switch01_Btn_03   lgOnTime         :unused
   3:whg_switch01_Btn_03   lgOnTimeMode     :absolut
   3:whg_switch01_Btn_03   lgSwJtDlyOff     :off
   3:whg_switch01_Btn_03   lgSwJtDlyOn      :on
   3:whg_switch01_Btn_03   lgSwJtOff        :dlyOn
   3:whg_switch01_Btn_03   lgSwJtOn         :dlyOff
   3:whg_switch01_Btn_03   shActionType     :jmpToTarget
   3:whg_switch01_Btn_03   shCtDlyOff       :geLo
   3:whg_switch01_Btn_03   shCtDlyOn        :geLo
   3:whg_switch01_Btn_03   shCtOff          :geLo
   3:whg_switch01_Btn_03   shCtOn           :geLo
   3:whg_switch01_Btn_03   shCtValHi        :100
   3:whg_switch01_Btn_03   shCtValLo        :50
   3:whg_switch01_Btn_03   shMultiExec      :off
   3:whg_switch01_Btn_03   shOffDly         :0 s
   3:whg_switch01_Btn_03   shOffTime        :unused
   3:whg_switch01_Btn_03   shOffTimeMode    :absolut
   3:whg_switch01_Btn_03   shOnDly          :0 s
   3:whg_switch01_Btn_03   shOnTime         :unused
   3:whg_switch01_Btn_03   shOnTimeMode     :absolut
   3:whg_switch01_Btn_03   shSwJtDlyOff     :off
   3:whg_switch01_Btn_03   shSwJtDlyOn      :on
   3:whg_switch01_Btn_03   shSwJtOff        :dlyOn
   3:whg_switch01_Btn_03   shSwJtOn         :dlyOff
   3:whg_switch01_Btn_04   lgActionType     :jmpToTarget
   3:whg_switch01_Btn_04   lgCtDlyOff       :geLo
   3:whg_switch01_Btn_04   lgCtDlyOn        :geLo
   3:whg_switch01_Btn_04   lgCtOff          :geLo
   3:whg_switch01_Btn_04   lgCtOn           :geLo
   3:whg_switch01_Btn_04   lgCtValHi        :100
   3:whg_switch01_Btn_04   lgCtValLo        :50
   3:whg_switch01_Btn_04   lgMultiExec      :on
   3:whg_switch01_Btn_04   lgOffDly         :0 s
   3:whg_switch01_Btn_04   lgOffTime        :unused
   3:whg_switch01_Btn_04   lgOffTimeMode    :absolut
   3:whg_switch01_Btn_04   lgOnDly          :0 s
   3:whg_switch01_Btn_04   lgOnTime         :unused
   3:whg_switch01_Btn_04   lgOnTimeMode     :absolut
   3:whg_switch01_Btn_04   lgSwJtDlyOff     :off
   3:whg_switch01_Btn_04   lgSwJtDlyOn      :on
   3:whg_switch01_Btn_04   lgSwJtOff        :dlyOn
   3:whg_switch01_Btn_04   lgSwJtOn         :dlyOff
   3:whg_switch01_Btn_04   shActionType     :jmpToTarget
   3:whg_switch01_Btn_04   shCtDlyOff       :geLo
   3:whg_switch01_Btn_04   shCtDlyOn        :geLo
   3:whg_switch01_Btn_04   shCtOff          :geLo
   3:whg_switch01_Btn_04   shCtOn           :geLo
   3:whg_switch01_Btn_04   shCtValHi        :100
   3:whg_switch01_Btn_04   shCtValLo        :50
   3:whg_switch01_Btn_04   shMultiExec      :off
   3:whg_switch01_Btn_04   shOffDly         :0 s
   3:whg_switch01_Btn_04   shOffTime        :unused
   3:whg_switch01_Btn_04   shOffTimeMode    :absolut
   3:whg_switch01_Btn_04   shOnDly          :0 s
   3:whg_switch01_Btn_04   shOnTime         :unused
   3:whg_switch01_Btn_04   shOnTimeMode     :absolut
   3:whg_switch01_Btn_04   shSwJtDlyOff     :off
   3:whg_switch01_Btn_04   shSwJtDlyOn      :on
   3:whg_switch01_Btn_04   shSwJtOff        :dlyOn
   3:whg_switch01_Btn_04   shSwJtOn         :dlyOff

frank

Zitatist das was ich will nur über jmpToTarget und anpassung der jumptable möglich , richtig?
im grunde schon. notify geht natürlich auch.

   3:whg_switch01_Btn_03   shActionType     :jmpToTarget
   3:whg_switch01_Btn_03   shSwJtDlyOff     :no
   3:whg_switch01_Btn_03   shSwJtDlyOn      :no
   3:whg_switch01_Btn_03   shSwJtOff        :on # im zustand off direkt nach on
   3:whg_switch01_Btn_03   shSwJtOn         :no # no => keine reaktion


       3:whg_switch01_Btn_04   shActionType     :jmpToTarget
       3:whg_switch01_Btn_04   shSwJtDlyOff     :no
       3:whg_switch01_Btn_04   shSwJtDlyOn      :no
       3:whg_switch01_Btn_04   shSwJtOff        :no # no => keine reaktion
       3:whg_switch01_Btn_04   shSwJtOn         :off #im zustand on direkt nach off

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

chris1284

Danke dir, werde ich testen.
notify dauert im vergleich zum peeren ewig bis die aktion am akto ausgeführt wird, finde ich.
jetzt wo die beiden peered sind schaltet er quasi bei knopfdruck ohne verzögerung (mit dem notify würde ich auch noch eine it-dose schalten, was noch mal verzögert -> wenn it vor hm muss hm warten anderstrum it). so läuft alles parallel-> druck -> fhem schaltet it und gleichzeitig geht der switch an

weist du wofür in shSwJtDlyOff  steht ?

frank

keine frage, die statemachine sollte man immer nutzen.

Zitatweist du wofür in shSwJtDlyOff  steht ?
der zustand dlyoff. dieser timer kommt normalerweise nach on. falls man dahin springt, kann man eine ausschaltverzögerung konfigurieren. nach ablauf gehts nach off.
entsprechend für eine einschaltverzögerung gibt es dann shSwJtDlyOn.
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

Bennemannc

Hallo,

das geht auch einfacher:
set Taster_Btn3 peerchan 0 actor dual set both - und gut ist. Der Btn4 wird automatisch mit gepeert. Dann ist Btn 3 on und Btn 4 off.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

chris1284

#11
Zitat von: Bennemannc am 19 November 2015, 23:14:39
Dann ist Btn 3 on und Btn 4 off.

jaein. es ist ein glücksspiel scheint mir, welche button dann on / off ist. des weiteren lässt er ein delay drin.
über die jumplist habe ich den dirketen einfluss und er tut genau das was er soll (je button ohne verzögerung nur ein / aus).

aber man spart sich das händische peeren eines Channels beim dual.

kann man eigentlich

ZitatshSwJtDlyOff no whg_switch01_Btn_03
shSwJtDlyOn no whg_switch01_Btn_03
shSwJtOff on whg_switch01_Btn_03
shSwJtOn no whg_switch01_Btn_03
shSwJtDlyOff no whg_switch01_Btn_04
shSwJtDlyOn no whg_switch01_Btn_04
shSwJtOff no whg_switch01_Btn_04
shSwJtOn off whg_switch01_Btn_04

mit einem cmd absetzten? regSet shSwJtDlyOn no whg_switch01_Btn_03, shSwJtOff on whg_switch01_Btn_03 usw usw???

martinp876

Bei dual legt der aktor fest, was in und was oft ist. Genauer: er legt das gesamte Register set fest. Peert man einen bereits größeren peer noch einmal wird wieder das gesamte registerset über schrieben.
Will man mehr Register eines sets schreiben sollte man mit prep und exec arbeiten.

Das mit mehr Register in einem Kommando geht nicht.

Ich empfehle hier wieder einmal templates. Du legst den Satz Register mit templatedef fest, zum Beispiel den für on, und dann mit templateset er wird er auf den aktor angewendet.
Das templates für on ist im defaultsatz als SWon und auch SWoff enthalten. Templates werden im hminfo betrieben.


chris1284

kannst du anhand meines beispieles erklären wie ich ein template für meinen wünsche baue?
Ich werde aus dem wiki-artikel nicht wirklich schlau................. :o