Keymatic über MQTT

#1

Hallo Sathya.

KeyMatic mit AES geht also nun auch über node red? Hast du da mal ein kleines Beispiel für mich? Ich habe Nodered mit Mosquitto am laufen. Eigentlich funktioniert alles bis auf die KeyMatic.

Für ein Snippet oder ein Tipp wie es denn jetzt per nodered geht die Türe aufzuschleissen wäre ich sehr dankbar.

Lieben Gruß,
Udo

AES mit CC1101
#2

https://allgeek.de/2017/10/05/node-red-in-verbindung-mit-loxone/
(Hier geht es zwar um Loxone, aber die Keymatic ist über Homegear per MQTT angebunden)

Geht schon sehr sehr lange. Du brauchst nur die entsprechende Payload per MQTT zu senden, nachdem du die Keymatic an Homegear angelernt hast.

#3

KeyMatic ist schon lange angelernt. Ich habe aber keinen schimmer wie ich z.B. mit einem Schalter die KeyMatic dazu bewege die Türe zü öffnen. Also entriegeln und weiter bis dass die Türe aufgeht also öffnen.

Hier der Eintrag in Homegear:

     40 │ Türschloss                │   11B8B2 │    GEQ0023122 │ 0019 │                HM-Sec-Key │      2.4 │             No │      No │      No

Lieben Gruß,
Udo

#4

https://ref.homegear.eu/device.html?directory=HomeMatic+BidCoS&file=rf_keymatic.xml&familyLink=homematicbidcos&name=HM-Sec-Key#affixSubsubsection1_2_6

#5

Ja das mit dem OPEN ist super danke. Aber was sende ich denn da? Boolean geht nicht. Welche Actions gibt es denn? Das kann ich leider nciht ersehen oder ich bin zu blöde.

Lieben Gruß,
Udo

#6

Hier mal ein Log wo ich string “true” als payload sende. Boolean true geht auch nicht. Das ist das was ich aus dem Link mit dem Loxone herausgelesen habe.

(Integer) 40

(Integer) 1

(String) OPEN

(Boolean) 1

05/10/19 10:59:15.775 Module HomeMatic BidCoS: Debug: OPEN of peer 40 with serial number GEQ0023122:1 was set to 01.

05/10/19 10:59:16.051 Script Engine Server: Info: Client number 0 is calling RPC method: peerExists

(Integer) 3

05/10/19 10:59:16.051 Script Engine Server: Response:

(Boolean) 1

05/10/19 10:59:16.136 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:57:54.551

05/10/19 10:59:17.056 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:59:16.136

05/10/19 10:59:17.616 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:59:17.056

05/10/19 10:59:17.778 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:17.878 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:17.978 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:18.079 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:18.179 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:18.279 Module HomeMatic BidCoS: Debug: Postponing deletion of queue 33880 for BidCoS peer with address 0x11B8B2, because it is still in use (2 referring objects).

05/10/19 10:59:18.329 RPC Server (Port 2001): Response:

(Struct length=2)

{

[faultCode]

{

(Integer) -100

}

[faultString]

{

(String) No answer from device.

}

}

05/10/19 10:59:18.379 Module HomeMatic BidCoS: Debug: Deleting queue 33880 for BidCoS peer with address 0x11B8B2

05/10/19 10:59:18.379 Module HomeMatic BidCoS: Info: Setting peer to unreachable, because the queue processing was interrupted.

05/10/19 10:59:18.379 Module HomeMatic BidCoS: Info: Queue is not finished (peer: 40). Retrying...

05/10/19 10:59:18.840 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:59:17.616

05/10/19 10:59:19.760 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:59:18.840

05/10/19 10:59:20.320 Module HomeMatic BidCoS: TI CC110X "My-CC1101": Info: Sending (My-CC1101): 10C3B001FDBABE11B8B200040000000000 Planned sending time: 05/10/19 10:59:19.760

05/10/19 10:59:20.482 Module HomeMatic BidCoS: Debug: Deleting queue 33881 for BidCoS peer with address 0x11B8B2

05/10/19 10:59:20.483 Module HomeMatic BidCoS: Info: Setting peer to unreachable, because the queue processing was interrupted.

05/10/19 10:59:20.483 Module HomeMatic BidCoS: Info: Queue is not finished (peer: 40). Retrying...
#7

In Nodered im Designbereich ist die MQTT node nach dem Deploy auch nicht mit dem grünen viereck und “Connected” zu sehen. Da stimmt irgend was nicht. Ich komme nicht weiter.

Lieben Gruß,
Udo

#8

Benutz doch bitte die Formatierungsfunktionen des Forums:
image

Du kannst deinen Beitrag nachträglich bearbeiten.

#9

Habe ich versucht. Wenn ich auf ändern gehe und dann speichern will kommt folgende Meldung.

#10

Habs mal korrigiert…

Verstehe allerdings dein Problem immer noch nicht.
Den Loxone-Teil aus meinem Beispiel kannst du ignorieren. In der Doku siehst du, dass es sich um zwei Werte handelt, die du brauchst: STATE und OPEN. Dort musst du die passende payload hinsenden.

#11

Im obigen Log siehst du dass ich den Channel 1 mit der ID 40 (HM-Key-Sec) in Homegear auf OPEN setze aber die Keymatic antwortet nicht.

Ich bäuchte mal einen Beispielflow. Das würde mir enorm helfen. Wenn der dann nicht geht ist irgendwas anders faul. Ich kann das Türschloss mit den beiden direkt angebundenen Fernbedinungen einwandfrei betätigen. Verrigeln, entrigeln und öffnen.

Lieben Gruß,
Udo

#12

Hier ein Beispiel mit der Keymatic. Aber es scheint, dass Du ein grundsätzliches Problem mit MQTT hast, wenn es sich nicht verbindet…

[
    {
        "id": "9dc3197d.e5e48",
        "type": "tab",
        "label": "Keymatic",
        "disabled": true,
        "info": ""
    },
    {
        "id": "84602d6.c954ed",
        "type": "mqtt out",
        "z": "9dc3197d.e5e48",
        "name": "Keymatic Open",
        "topic": "homegear/1234-5678-9abc/set/13/1/OPEN",
        "qos": "",
        "retain": "",
        "broker": "c10daf00.dcd48",
        "x": 620,
        "y": 440,
        "wires": []
    },
    {
        "id": "8fe6971d.8e4548",
        "type": "mqtt out",
        "z": "9dc3197d.e5e48",
        "name": "Keymatic State",
        "topic": "homegear/1234-5678-9abc/set/13/1/STATE",
        "qos": "",
        "retain": "",
        "broker": "c10daf00.dcd48",
        "x": 620,
        "y": 520,
        "wires": []
    },
    {
        "id": "b1c32473.0bc848",
        "type": "inject",
        "z": "9dc3197d.e5e48",
        "name": "",
        "topic": "Open door",
        "payload": "true",
        "payloadType": "bool",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 320,
        "y": 440,
        "wires": [
            [
                "84602d6.c954ed"
            ]
        ]
    },
    {
        "id": "e9449d13.b7365",
        "type": "inject",
        "z": "9dc3197d.e5e48",
        "name": "",
        "topic": "Lock door",
        "payload": "false",
        "payloadType": "bool",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 320,
        "y": 500,
        "wires": [
            [
                "8fe6971d.8e4548"
            ]
        ]
    },
    {
        "id": "5819ad42.e6e05c",
        "type": "inject",
        "z": "9dc3197d.e5e48",
        "name": "",
        "topic": "Unlock door",
        "payload": "true",
        "payloadType": "bool",
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "x": 320,
        "y": 540,
        "wires": [
            [
                "8fe6971d.8e4548"
            ]
        ]
    },
    {
        "id": "c10daf00.dcd48",
        "type": "mqtt-broker",
        "z": "",
        "broker": "localhost",
        "port": "1883",
        "clientid": "node-red",
        "usetls": false,
        "compatmode": true,
        "keepalive": "60",
        "cleansession": true,
        "birthTopic": "",
        "birthQos": "0",
        "birthPayload": "",
        "willTopic": "",
        "willQos": "0",
        "willPayload": ""
    }
]
1 Like
#13

Gute Idee!

Was hast du in der mqtt.conf angegeben und wo läuft dein Broker?
Hast du schon mal versucht über ein Tool wie mqtt-spy oder mqtt.fx eine Befehll abzusetzen oder zu schauen was denn auf dem Broker so passiert?

#14

Der Broker läuft auf dem gleichen PI. localhost:1883. Der Broker funktioniert und alle anderen MQTT Nodes funktionieren ja wunderbar. Schaltbare Steckdosen, Rolladenaktoren, Unterputzschalter für Licht etc. Alles kein Problem. Aber der HM-Sec-Key unter Peerid 40 will einfach nicht. Siehe Log oben. Immer das gleiche auch bei den Nodes von Avanc. Grade probiert. Geht nicht. Ich verstehe das nicht.

#15

Hallo @mover,

so wie es aussieht, sind da noch Konfigurationspakete nicht übertragen. Ich würde im ersten Schritt probieren, die KeyMatic in den Anlernmodus zu versetzen (dann müsste auch etwas im Log passieren). Wenn das nicht hilft:

homegear -r
fs 0
ps 40
queues clear

Viele Grüße

Sathya