einen Funk-Schalter HM-RC-2-PBU-FM angelernt aber wie anwenden?

Begonnen von ron99, 15 August 2017, 21:11:23

Vorheriges Thema - Nächstes Thema

ron99

Hallo Forum,
ich habe einen HM-RC-2-PBU-FM auf CCU2 angelernt, daneben stand mein pi3 + COC  wo Fhem installiert ist. (ich möchte auf fhem umsteigen )
Danach sah ich in der fhem.cfg  dass der Funk-Schalter auch auf dem pi3 im Fhem angezeigt wurde.

Der Grund war  weil in Fhem "autocreate" aktiviert war - hat mir @amenomade gesagt.

Zitat
Aus dem  fhem.cfg

define HM_4D5C4B CUL_HM 4D5C4B
attr HM_4D5C4B autoReadReg 4_reqStatus
attr HM_4D5C4B expert 2_raw
attr HM_4D5C4B firmware 1.1
attr HM_4D5C4B model HM-PB-2-FM
attr HM_4D5C4B room CUL_HM
attr HM_4D5C4B serialNr NEQ0889130
attr HM_4D5C4B subType pushButton
define FileLog_HM_4D5C4B FileLog ./log/HM_4D5C4B-%Y.log HM_4D5C4B
attr FileLog_HM_4D5C4B logtype text
attr FileLog_HM_4D5C4B room CUL_HM
define HM_4D5C4B_Btn_01 CUL_HM 4D5C4B01
attr HM_4D5C4B_Btn_01 model HM-PB-2-FM
attr HM_4D5C4B_Btn_01 peerIDs
define HM_4D5C4B_Btn_02 CUL_HM 4D5C4B02
attr HM_4D5C4B_Btn_02 model HM-PB-2-FM
ich habe Fhem vor 3 Tagen das erste mal in der Hand und inzwischen einige Stunden mit der
Doc verbracht, außerdem mit ein paar Beispielen experimentiert z.B.:
myLamp1  n_mySwitch1 ...

Jetzt würde ich gerne wissen wie ich oben erwähnten Schalter verwenden kann.

Wenn ich den Schalter nach oben und unten schalte bekomme ich im EVENT MONITOR folgendes
Zitat2017-08-15 12:37:51 Global global SAVE
2017-08-15 12:38:14 CUL_HM HM_4D5C4B battery: ok
2017-08-15 12:38:14 CUL_HM HM_4D5C4B HM_4D5C4B_Btn_02 Short
2017-08-15 12:38:14 CUL_HM HM_4D5C4B_Btn_02 Short (to 55C8FD)
2017-08-15 12:38:14 CUL_HM HM_4D5C4B_Btn_02 trigDst_55C8FD: noConfig
2017-08-15 12:38:14 CUL_HM HM_4D5C4B_Btn_02 trigger: Short_3
2017-08-15 12:38:14 CUL_HM HM_4D5C4B_Btn_02 triggerTo_55C8FD: Short_3
2017-08-15 12:38:14 CUL_HM HM_4D5C4B_Btn_02 trigger_cnt: 3
2017-08-15 12:38:14 CUL CUL_0 UNKNOWNCODE A0A05800255C8FD4D5C4B00::-33.5:CUL_0
2017-08-15 12:40:06 CUL_HM HM_4D5C4B battery: ok
2017-08-15 12:40:06 CUL_HM HM_4D5C4B HM_4D5C4B_Btn_01 Short
2017-08-15 12:40:06 CUL_HM HM_4D5C4B_Btn_01 Short (to 55C8FD)
2017-08-15 12:40:06 CUL_HM HM_4D5C4B_Btn_01 trigDst_55C8FD: noConfig
2017-08-15 12:40:06 CUL_HM HM_4D5C4B_Btn_01 trigger: Short_3
2017-08-15 12:40:06 CUL_HM HM_4D5C4B_Btn_01 triggerTo_55C8FD: Short_3
2017-08-15 12:40:06 CUL_HM HM_4D5C4B_Btn_01 trigger_cnt: 3
2017-08-15 12:40:06 CUL CUL_0 UNKNOWNCODE A0A06800255C8FD4D5C4B00::-34:CUL_0

der  Schalter wurde ja schon automatisch definieren,  Er steht im room
CUL_HM als
pushButton      
HM_4D5C4B      HM_4D5C4B_Btn_02 Short

in den Internals finde ich
Channel_01   HM_4D5C4B_Btn_01
Channel_02   HM_4D5C4B_Btn_02

*************
mit n_mySwitch1 ein  notify schalte ich den Schalter mSwitch1 (ein Dummy)
im  n_mySwitch1 internals
steht
die DEF = mySwitch1 set myLamp1,myLamp2, HUEGroup1 $EVENT
die NOTIFYDEV = mySwitch1

HUEGrup1 ist ein  DeviceOverview  kein Dummy und funktioniert

*************
wie muss ich jetzt den Schalter pushButton HM_4D5C4B verwenden?

muss ich einen Schalter bauen – definieren mit TYPE notify
mit der DEF= Schalter set  HUEGroup1 $EVENT 
aber
wo oder was ist das $EVENT  das ich verwenden kann ?

vielen dank
Ron

Beta-User

Hallo Ron99,

sieht so aus, als müßtest Du noch deutlich mehr lesen :D .

Also: Du hast von Deinem Funktaster Events, nämlich z.B.
2017-08-15 12:38:14 CUL_HM HM_4D5C4B HM_4D5C4B_Btn_02 Short
Du könntest also Dein notify umbasteln, dass es nicht mehr auf das Umschalten des Dummy reagiert, sondern eben auf HM_4D5C4B_Btn_02:Short.

Das würde das Short dann an HUEGroup1 als $EVENT weitergeben (was vermutlich keinen Sinn macht, da Short eher kein Schaltbefehl für HUE ist).

Aber grundsätzlich solltest Du Dir überlegen, ob Du HM jetzt mit dem Modul HMCCU (für die Einbindung der CCU2) einbinden willst, oder ob Du CUL_HM (für den COC) nimmst. Aber bitte nur eines von beiden! Siehe dazu z.B. hier: https://forum.fhem.de/index.php/topic,71757.0.html

Ansonsten: Empfangen geht auch so, aber sobald Du HM-Geräte steuern willst, sollten Sie gepairt sein (im Moment an der CCU2, deren HMid Du ggf. für den CUC verwenden könntest.

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Beta-User

Nachtrag noch, nachdem ich eben den anderen Thread gesehen habe:

Zur Verwendung der HMCCU und speziell den firewall-Themen: https://wiki.fhem.de/wiki/HMCCU#CCU_Firewall_Einstellungen

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Devender

Hey,

Da hatte ich vor ein paar Wochen auch drüber gegruebelt. Ergebnis:
Das notify reagierte auf state Evenet bei Short oder Long.
Bei (in meinem Fall , Licht aus) und einem Long lese mir das Wetter vor. Bei Short schaltet das Licht Dusche an.
Da der Taster sozusagen vier Schaltmoeglichkeiten hat ist das notify etwas grösser.
Ich habe noch ein zweites notify was auf Btn_01:state reagiert.

DEF        Bad.Haupt_Btn_02:state.* {

### Long bei Licht Dusche off
### Aktualisiere Daten vor Abfrage
fhem "set Wetter update";
my $Wettervorhersage = "Aktuelle Außentemperatur: "
            . ReadingsVal("Wetter","temperature","unbekannt")
            . " Grad Celsius. Höchsttemperatur: "
            . ReadingsVal("Wetter","fc1_high_c","unbekannt")
            . " Grad Celsius. und es ist "
            . ReadingsVal("Wetter","condition","unbekannt");;

### Hauptprogramm zur Entscheidung bei Tastendruck
my $bad = ReadingsVal("Bad.Dusche","state","");
my $badLong = ReadingsVal("Bad.Haupt_Btn_02","state","");


### Reagiere bei Short mit Licht an/aus
if ($bad eq "on"  and $badLong =~"Short")
{
  fhem "set Bad.Dusche off"
}
elsif ($bad eq "off"  and $badLong =~"Short")
{
  fhem "set Bad.Dusche on"
}

### Reagiere bei Long Licht an und Long Licht aus
if ($bad eq "on"  and $badLong =~"Long")
{
  fhem "set TTSystem tts Hallo"
}
elsif ($bad eq "off"  and $badLong =~"Long")
{
    fhem "set TTSystem tts $Wettervorhersage"
}

}
   NAME       nf.Bad.Dusche
   NOTIFYDEV  Bad.Haupt_Btn_02
   NR         593
   NTFY_ORDER 50-nf.Bad.Dusche
   REGEXP     Bad.Haupt_Btn_02:state.*
   STATE      2017-08-15 21:05:53
   TYPE       notify
   READINGS:
     2017-08-13 21:26:35   state           active
Attributes:
   addStateEvent 1
   room       Badezimmer


Gruesse,
Dirk
FHEM 5.8 auf RasPi mit Jessy - CUL868, JeeLink Lacrosse
Komponenten: HM, IT, ELV, FB7390, FritzPL543,Sonos Play3
Mehrere Wandtablets sowie einen Smart Mirror
https://wiki.fhem.de/wiki/Anwesenheitserkennung#PRESENCE-Modul

ron99

@Betta-User   vielen dank, du hast recht ich muss noch viel mehr lesen aber wie gesagt vor 3 Tagen FHEM  das erste mal installiert.
bez. Firewall  habe ich jetzt noch einmal gecheckt – meiner Meinung alles richtig Vollzugriff  IP, mehrmals pw geändert,  keine Chance.

@Devender    super, vielen dank, werde es gleich probieren.

Schöne Grüße
Ron


ron99

Hallo @Devender

ich habe mit  set HUEDevice4 on  die Lampe geschalten

danach im notify den Code
Zitat
if (HM_4D5C4B_Btn_01 =~"Short")
{
fhem "set HUEDevice4 on"
}
schaltet nicht  was mache ich falsch?
Danke Ron

Otto123

Hallo Ron,

Zitat von: ron99 am 16 August 2017, 09:51:47
was mache ich falsch?
1. Codetags verwenden! # Taste über dem  :-X Smily, damit wird der Codeausschnitt lesbar.
2. List vom device posten und nicht bloß Stückchen. Also list <devicename> und die Ausgabe in Codetags posten.
3. notify am Besten erzeugen lassen-> Eventmonitor aufmachen, Filter auf die zu monitorenden Geräte setzen. Event erzeugen / abwarten, eindeutige Zeile markieren und notify erzeugen lassen. Ausführungsteil ausfüllen.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ron99

Hallo @Otto123

1. sorry
2. Sh. oben
3. habe ich gemacht

danke
Ron

Otto123

Hallo Ron  :)
Das Codetag -> # Taste über Smiley  :-X
Das Zitat -> Taste über Smiley  :-\
Codetag ne Zitat

sorry ich sehe da oben kein list, Du musst list <notify name>oben in der FHEM Befehlszeile eingeben und die Ausgabe komplett markieren kopieren und posten.

Wenn Du im Eventmonitor schaust was HM_4D5C4B_Btn_01 liefert, wenn Du den knopf drückst, wirst Du sehen, dass es einen Event gibt der short schon enthält, den nimmst Du im notify und triggerst nicht einfach auf alles. Damit sparst Du dir eventuell den if ....

Gruß otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ron99

falsch verstanden tut mir leid   (arbeite den 3. Tag mit Fhem.)


Internals:
   CFGFN
   DEF        if (HM_4D5C4B_Btn_01 =~"Short")
{
fhem ("set HUEDevice4 on");
}
   NAME       ntest
   NR         1277
   NTFY_ORDER 50-ntest
   REGEXP     if
   STATE      active
   TYPE       notify
   Readings:
     2017-08-16 10:01:11   state           active
Attributes:
   room       Training




ZitatWenn Du im Eventmonitor schaust was HM_4D5C4B_Btn_01 liefert...

wollte ich wissen jedoch habe ich von @Beta-User gehört
ZitatDas würde das Short dann an HUEGroup1 als $EVENT weitergeben (was vermutlich keinen Sinn macht, da Short eher kein Schaltbefehl für HUE ist).

die Antwort von @Devender ist dann meiner Meinung die Lösung und da brauche ich die if Abfrage oder mit welchen  trigger kann man Hue noch schalten?

danke
Gruß Ron

Beta-User

Zitat von: ron99 am 16 August 2017, 11:02:01
jedoch habe ich von @Beta-User gehört
Damit war nur gemeint, dass es in dem Fall keinen Sinn macht, $EVENT zu verwenden ;) .

Natürlich kannst Du in dem notify auf "short" auch mit einem "set ....,...,HUExxx on" reagieren. Evtl. beherrschen diese Devices auch "toggle" statt "on".

Dazu bräuchte man aber mehr Info, um was für Devices es sich handelt (HUE dürfte toggle zulassen).

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Otto123

Sorry Ron,
das ist kein wirkliches notify.
Das es ohne Fehler überhaupt zu definieren ging. :-X

Das würde auf das gerät "if" triggern, das wird nix... :'(

Mach bitte den Eventmonitor auf klicke auf .*, gib die Textkette HM_4D5C4B_Btn_01 davor, drücke deinen HM_4D5C4B_Btn_01, nimm die Zeile die short enthält und keinen Zähler, markiere das und erzeuge ein notify.
Dort trägst Du im Ausführungsteil mal deine Befehl für die Lampe ein. Das gibst Du uns wieder als List und dann sehen wir mal weiter.

Gruß otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ron99

tut mir leid  da kann ich dir nicht folgen, versucht habe ich

den Filter vom Event monitor auf  HM_4D5C4B_Btn_01.*  gesetzt
danach
Zitat...nimm die Zeile die short enthält und keinen Zähler, markiere das und erzeuge ein notify.

die Zeile  war die HM_4D5C4B_Btn_01 Short

Notify erstellt

define notify HM_4D5C4B_Btn_01 Short

ZitatDort trägst Du im Ausführungsteil mal deine Befehl für die Lampe ein

wobei ich denke der Ausführungsteil  ist DEF da habe ich

set HUEDevice4 on

eingetragen.

Gruß Ron



Otto123

#13
Dein FHEM ist aktuell? Du hast den Knopf Create/Modify Device verwendet? Siehe Anhang? Du hast schon mal in der Doku gelesen wie notify funktioniert? Das der Trigger nicht HM_4D5C4B_Btn_01 Short lauten kann sondern wenn schon HM_4D5C4B_Btn_01:Short!?

Versuch es nochmal  ;)

Hier auch ausführlicher -> https://wiki.fhem.de/wiki/Event_monitor
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ron99

danke Otto123

habe wieder etwas gelernt und werde versuchen es umzusetzen
Zitat...Knopf Create/Modify Device verwendet...
Gruß Ron