Skip to main content

Ukázka integrace Smarwi do HomeKit přes Homebridge, MQTT a NodeRed

  • Vratislav
  • Topic Author
  • New Member
  • New Member
More
29 Nov 2020 20:45 #564 by Vratislav
Ahoj,
dlouho mě trápilo ovládání Smarwi do Homekitu a tak jsem nakonec udělal svoje rozhraní. Smarwi je nakonfigurováno, aby používalo můj MQTT broker na lokální adrese. Data z MQTT brokeru si bere NodeRed, kde se transformují jednoduše do nových MQTT témat, která jsou pak srozumitelná pro Homebridge, resp. pro Homekit. V HomeBridge je okno přidáno přes mqttthing následovně. Flow pro NodeRed dávám do přílohy.
Užívejte v pokoji.


Homebridge config:
Code:
{ "accessory": "mqttthing", "type": "window", "name": "Smarwi Window MQTT", "url": "mqtt://192.168.x.y", "username": "xxxxx", "password": "yyyyy", "topics": { "getCurrentPosition": { "topic": "smarwi/window1/state", "apply": "return JSON.parse(message).currentPosition" }, "setTargetPosition": "smarwi/window1/cmd/targetposition", "getTargetPosition": { "topic": "smarwi/window1/state", "apply": "return JSON.parse(message).targetPosition" }, "getPositionState": { "topic": "smarwi/window1/state", "apply": "return JSON.parse(message).positionState" }, "setHoldPosition": "smarwi/window1/cmd/holdposition", "getObstructionDetected": { "topic": "smarwi/window1/state", "apply": "return JSON.parse(message).obstructionDetected" } }, "positionStateValues": [ "decreasing-value", "increasing-value", "stopped-value" ], "manufacturer": "Vektiva", "model": "Smarwi SWR1010", "firmwareRevision": "1.0" }

NodeRed Flow:

File Attachment:

File Name: smarwi-nod...mqtt.zip
File Size:5 KB
Attachments:

Please Log in or Create an account to join the conversation.

  • Kositch
  • New Member
  • New Member
More
18 Mar 2021 16:56 #720 by Kositch
Moc děkuji, potřeboval bych ale trochu poradit. Do NodeRed jsem přidal vaše flow, nemám vlastní MQTT broker tak jsem se v rámci flow přihlásil do broker.vektiva.com, data z okna to načítá, ostatní jsem pouze upravi na údaje mého Smarwi.

Když ale přidám tento kod do Homebridge MQTTThing pluginu, okno se vytvoří, ale nic se neděje. Může být problém, že na serveru broker.vektiva.com nemohu používat vlastní topicy, které vytváří flow v NodeRed?

Pozn. - ve flow se vytváří topic ve tvaru např.: smarwi/window1/state a nevím, zda se mi na serveru broker.vektiva.com zapíše.

Kod v Homebridge vypadá takto:

{
"accessory": "mqttthing",
"type": "window",
"name": "Smarwi Pracovna",
"url": "broker.vektiva.com",
"username": "XXXXXX",
"password": "YYYYY",
"topics": {
"getCurrentPosition": {
"topic": "smarwi/window1/state",
"apply": "return JSON.parse(message).currentPosition"
},
"setTargetPosition": "smarwi/window1/cmd/targetposition",
"getTargetPosition": {
"topic": "smarwi/window1/state",
"apply": "return JSON.parse(message).targetPosition"
},
"getPositionState": {
"topic": "smarwi/window1/state",
"apply": "return JSON.parse(message).positionState"
},
"setHoldPosition": "smarwi/window1/cmd/holdposition",
"getObstructionDetected": {
"topic": "smarwi/window1/state",
"apply": "return JSON.parse(message).obstructionDetected"
}
},
"positionStateValues": [
"decreasing-value",
"increasing-value",
"stopped-value"
],
"manufacturer": "Vektiva",
"model": "Smarwi SWR1010",
"firmwareRevision": "1.0"
}

Please Log in or Create an account to join the conversation.

  • Vratislav
  • Topic Author
  • New Member
  • New Member
More
19 Mar 2021 14:40 #722 by Vratislav
Asi jednoduchá odpověď broker.vektiva.com není veřejný MQTT broker. Takže to fungovat nebude. Buď vyzkoušet nějaký veřejný MQTT server, nebo jestli máš NodeRed, tak na ten samý stroj nainstalovat Mosquitto ( mosquitto.org ) není nic náročného a budeš to mít celé pod kontrolou.

Please Log in or Create an account to join the conversation.

Time to create page: 0.141 seconds