Homematic Schalter MISSING ACK

Begonnen von andreas_r, 25 Januar 2013, 15:03:57

Vorheriges Thema - Nächstes Thema

andreas_r

Hallo Forumsmitglieder,

ich habe ein kleines Problem mit meinen ersten Gehversuchen mit FHEM. Ich möchte das Ganze erst mal als kleine Teststellung aufbauen.

Folgendes habe ich schon geschafft:
- Installation FHEM inkl. CUL
- Pairing einer Funksteckdose (HM-LC-Sw1-PI-2)
- Die Steckdose ist schaltbar über die FHEM Weboberfläche

Was ich jetzt tun will:
Da ich nicht nur über FHEM die Steckdose schalten will, soll ein Schalter (HM-PB-2-WM) das ebenfalls übernehmen können.

Ich versuche jetzt den Schalter zu pairen:
Dazu habe ich in die fhem.cfg den Schalter so eingetragen:
define fb2 CUL_HM 123456 (natürlich mit richtiger ID)
Danach schalte ich das CUL in den Pairing an
set CUL_0 hmPairForSec 600
Danach setze ich den Schalter in den Anlernmodus. Es scheint zumindest eine Verbindung zustande zu kommen, weil kurz darauf habe ich die Kanäle mit in der fhem.cfg stehen:
define fb3_Btn_01 CUL_HM 19C0FD01
attr fb3_Btn_01 chanNo 01
attr fb3_Btn_01 device fb3
attr fb3_Btn_01 model HM-PB-2-WM
attr fb3_Btn_01 room CUL_HM
define FileLog_fb3_Btn_01 FileLog ./log/fb3_Btn_01-%Y.log fb3_Btn_01
attr FileLog_fb3_Btn_01 logtype text
attr FileLog_fb3_Btn_01 room CUL_HM

define fb3_Btn_02 CUL_HM 19C0FD02
attr fb3_Btn_02 chanNo 02
attr fb3_Btn_02 device fb3
attr fb3_Btn_02 model HM-PB-2-WM
attr fb3_Btn_02 room CUL_HM
define FileLog_fb3_Btn_02 FileLog ./log/fb3_Btn_02-%Y.log fb3_Btn_02
attr FileLog_fb3_Btn_02 logtype text
attr FileLog_fb3_Btn_02 room CUL_HM


Aus meiner Sicht sollte das passen, allerdings sehe ich jetzt in der FHEM Oberfläche nur unter dem Abschnitt "remote"
fb3     MISSING ACK

Bei den beiden Kanälen steht:
fb3_Btn_01     ???
fb3_Btn_02     ???


Was ist jetzt noch zu tun, damit die Verbindung von Schalter zu FHEM funktioniert?

Danke und viele Grüße,
Andreas

martinp876

Hi Andreas,

wenn du anlernen drückst sollte (hat) FHEM diese Nachricht empfangen und die Buttons angelegt. Dass deine Remote auch etwas empfangen hat ist damit nicht bewiesen.

Du kannst versuchen deine remote auszulesen mit getConfig, dann anlernen drücken (sonst antwortet die remote nicht...)
Damit erfährst du auch, ob deine remote mit dem Schalter gepairt ist.
Das gleiche kannst du mit deinem Schalter machen - anlernen drücken sollte hier nicht notwendig sein.

dass bei den Button ??? steht ist der default. Wenn du einmal drückst sollte sich der Status aendern. Viel Status hat ein Button ja nicht - erweiss nicht ob er an oder aus schaltet sondern triggert nur "irgendwas" - im besten Fall weiss er, "wen" er triggert.

Zum peeren von schaltern untereinander kannst du devicepair benutzen.

Gruss
Martin

andreas_r

Hallo Martin,

vielen Dank für deine schnelle Antwort. Ich habe es mit Deiner Hilfe geschafft, das Pairing herzustellen. Alles funktioniert jetzt wie erwartet.

Noch eine Frage dazu: Der Button der Remote sendet als Status immer
fb3_Btn_01     Short (to broadcast)

Bedeutet dies, dass der Button immer noch nicht weiß, an wen er sendet oder sendet die Remote immer an "broadcast"?

Viele Grüße,
Andreas

martinp876

Hallo Andreas
Zitatfb3_Btn_01 Short (to broadcast)
Bedeutet dies, dass der Button immer noch nicht weiß, an wen er sendet oder sendet die Remote immer an "broadcast"?
das ist wohl so.
hast du das peering aus deiner remote einmal ausgelesen?
Wenn dein Aktor reagiert heist dies, dass dein Aktor gepeert ist.
Dein remote muss dazu nicht gepeert sein. Das peering der remote bringt dir eigeltich nur, dass die LED gruen wird. Also die Remote will dann ein ack von allen eingestellten peers erhalten.

Genau genommen ist das peering getrennt bei Remote und Aktor. Bei FHEM kannst du es auch getrennt 'auslösen' -  mit dem letzten Parameter von devicepair (actor|remote|both).
Du kannst also noch einmal bei der remote nachlegen (also remote angeben...)

Kontrolle immer mit getCongif - dann die peerList der einzelnen Buttons ansehen

Gruss
Martin

andreas_r

Hallo nochmal,

tut mir leid, dass ich nochmal nachfragen muss, aber ich werde daraus wirklich nicht schlau.
Zunächst einmal der Aktor: Ich kann ihn über die FHEM Weboberfläche schalten, wenn ich aber folgendes abfrage
set steckdose getgonfig
bekomme ich als Antwort in den Readings
peerList ,       2013-01-29 19:46:27
Ich hätte hier erwartet, dass der Aktor mit dem CUL als gepairt geannt wird?

Bei der Remote ist es noch schlimmer:
set schalter_Btn_01 getConfig
bringt lediglich
peerList 2013-01-29 19:32:36

Mein Ziel wäre es zwei "saubere" beidseitige Pairings
schalter <--> CUL und CUL <--> steckdose zu erreichen.

Ich habe dazu wirklich schon einige Anleitungen gelesen und versucht nachzuvollziehen, aber scheinbar mache ich noch etwas grundsätzlich falsch.
Ist es zum Beispiel nötig, dem CUL manuell eine hmid als Attribut zuzuweisen? Oder wie kann ich vielleicht den ganzen Prozess besser monitoren? Obwohl alle Beteiligten mittlerweile Loglevel 5 haben, bekomme ich kaum Infos in den Logs.

Danke für Eure Geduld,
Andreas

Rohan

Zitat von: andreas_r schrieb am Mi, 30 Januar 2013 06:34... Ist es zum Beispiel nötig, dem CUL manuell eine hmid als Attribut zuzuweisen?

Zitat aus dem Wiki: "Falls man dem CUL keine explizite hmID per Attribut zugewiesen hat, wird diese ID aus "F1<housecode>" zusammengebaut."

Man muss also nicht, aber so kann man diese wenigstens beeinflussen.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

martinp876

Hallo Andreas,

ich gehe davon aus, dass getgofig ein tippfehler ist.
Zu beachten ist, dass das Abholen der Daten etwas dauert. Also einige Sekunden warten und dann refresh.

Wenn keinen Daten vorhanden sind ist dies ein Problem - in der peerlist sollte unbedingt etwas stehen - wenn erfolgreich gepeert ist. Aussedem sollten die einen oder anderen register zu lesen sein.
Wichtig zu wissen ist, dass die peers nur in einem Channel stehen. Wenn du also am device geschaut hast und channels existieren dan schau bei diesen nach.
Du kannst auch einmal das Attribut peerIDs nachsehen - das sollte mit dem Reading peerList konform gehen.

Dass die peerlist bei deinem Remote leer ist ist nur konsequent - daher auch der "to broadcast" - wie schon vormals bemerkt

andreas_r

Hallo nochmal,

ja, das ist natürlich nur ein Tippfehler gewesen.

Noch als kleines Update: Letztlich bin ich gescheitert eine Verbindung zwischen Remote und CUL herzustellen.
Ich habe jetzt das so aufgebaut, dass remote und Aktor direkt miteinander sprechen und FHEM nur mitlauscht.
Hier hat alles funktioniert. Ich kann in den beiden Buttons der remote die Steckdose in der peerlist sehen. Auch umgekehrt sehe ich in der Peerlist der Steckdose die beiden Schalter. Vom Prinzip klappts also.

Wenn jemand noch eine geniale Idee hat, wie ich monitoren kann, warum ein Pairing zwischen remote und CUL nicht möglich ist, immer her damit.
Ansonsten danke an alle, die sich mit meinem Problem beschäftigt haben.

Viele Grüße,
Andreas

Martin Thomas Schrott

hi

ev ist die remote schon mit einer anderen zentrale gepaired und lässt sich deshalb nicht pairen?
schau mal in reg all nach, ob dort bei pair schon etwas drin steht.
sonst zurücksetzen mit 2x mind. 5sek taste drücken und dann von vorne versuchen.
lg
Martin