Node Red, Shelly Integration

Aber ich muss im Shelly trotzdem MQTT aktivieren um den aktuellen Schaltzustand, auch wenn ich lokal schalte, zu sehen?
Woher sehe ich, dass die folgenden Einstellungen stimmen? Habe zum testen mal ein anderes Passwort eingegeben und er zeigt mir kein Fehler an?

Musst du normalerweise nicht, wie hast du den Adapter eingestellt Coap oder MQTT. Ich nehme da Coap. Bei mir werden die Zustände in den Objekten direkt aktualisiert. Du musst nur mit der Firmware der Shellys aufpassen. Der Stable-Adapter für iobroker geht nur bis V1.7.xxx, ab V1.8.xxx musst man den Testadapter ab V4 benutzen. Ich habe den schon monatelang problemlos laufen.

1 „Gefällt mir“

Ups, ich hab die aktuellste Firmware:
Current version: 20201128-102046/v1.9.2@e83f7025
You have latest version on your device!

Ich hab in ioBroker aber auch so wie es aussieht die richtige Version installiert. 4.0.3

Wegen der Coap / MQTT Einrichtung vom Shelly… bin gerade blind. Hab jetzt MQTT wieder deaktiviert aber finde die Einstellung mit Coap nicht. Suche gerade…

Die Versionen passen schon mal! Findest du in der Instanz unter Allg. Einstellungen gleich der erste Parameter „Shelly Protokoll“ - CoAp und http bzw. MQTT und http.

1 „Gefällt mir“

Ah stimmt! Danke, hatte im Shelly direkt gesucht, nicht bei den instances :sleeping:
Hab wieder auf http/coap umgeschalten.
Jetzt bräuchte ich nur noch ein Beispiel wie ich den Schaltzustand an homee übertragen kann.
Mein aktuelles Node sieht ja so aus und funktioniert auch, nur dass sich der Status im homee nicht aktualisiert, wenn ich lokal schalte.

Ich schicke dir nachher was. Passt gerade nicht.

1 „Gefällt mir“

Alles gut, kein Stress. Danke :slight_smile:

Hallo @Yangar,

mach das über die Nodes von Iobrocker.

1

Hier ist der Flow zum import must du nur anpassen. flows.pdf (7,0 KB)
flows.pdf umbenennen in flows.json

1 „Gefällt mir“

Hallo @RennEnte

Danke! Werde mich nachher dran machen! :slight_smile:

Ok, habe es nun mal versucht an meinen LED Stripe anzupassen.


Immerhin zeigt er mir jetzt im Debug beim lokalen tasten etwas an. (Wenn auch eine Fehlermeldung hehe).

Dass ich beim „ioBroker in“ auf Switch geschaltet habe ist richtig oder?

Hallo @Yangar,

du hast bei den Attribute eine 1 eingetragen, da sollte eine 100 rein.

Du sendes ja im Funktionsnode „on/off“ an Attribut 100

1

Schönens WE

1 „Gefällt mir“

Äh, ja… :roll_eyes: habe es auf 100 geändert. Die Fehlermeldung im debug ist nun auch weg. Allerdings tut sich leider am Stripe nichts. Ich habe ihn zwar im homee gefunden, aber kann nicht an / aus schalten.

[
{
„id“: „c3094c50.a2df“,
„type“: „tab“,
„label“: „Flow 1“,
„disabled“: false,
„info“: „“
},
{
„id“: „99a516a2.88fd68“,
„type“: „change“,
„z“: „c3094c50.a2df“,
„name“: „“,
„rules“: [
{
„t“: „change“,
„p“: „payload“,
„pt“: „msg“,
„from“: „true“,
„fromt“: „str“,
„to“: „1“,
„tot“: „num“
},
{
„t“: „change“,
„p“: „payload“,
„pt“: „msg“,
„from“: „false“,
„fromt“: „str“,
„to“: „0“,
„tot“: „num“
}
],
„action“: „“,
„property“: „“,
„from“: „“,
„to“: „“,
„reg“: false,
„x“: 400,
„y“: 120,
„wires“: [
[
„aba04996.6fc148“
]
]
},
{
„id“: „aba04996.6fc148“,
„type“: „function“,
„z“: „c3094c50.a2df“,
„name“: „On/Off“,
„func“: „node.send({payload:{„attribute“:{„id“:100,„value“:msg.payload}}})\nnode.status({text:msg.payload});“,
„outputs“: 1,
„noerr“: 0,
„initialize“: „“,
„finalize“: „“,
„x“: 670,
„y“: 120,
„wires“: [
[
„1433efaa.d9307“
]
]
},
{
„id“: „1433efaa.d9307“,
„type“: „homeeDevice“,
„z“: „c3094c50.a2df“,
„virtual-homee“: „“,
„name“: „WZ LED Stripe“,
„nodeId“: „100“,
„showNodeId“: true,
„profile“: „16“,
„icon“: „nodeicon_bulb“,
„attributes“: [
{
„instance“: 0,
„minimum“: 0,
„maximum“: 1,
„current_value“: 0,
„target_value“: 0,
„last_value“: 0,
„unit“: „“,
„step_value“: 1,
„editable“: 1,
„state“: 1,
„last_changed“: 12345555,
„changed_by“: 1,
„changed_by_id“: 0,
„based_on“: 1,
„data“: „“,
„type“: 1,
„id“: 100,
„node_id“: 100
}
],
„statusTemplate“: „“,
„x“: 180,
„y“: 280,
„wires“: [
[
„74795f73.76947“
]
]
},
{
„id“: „74795f73.76947“,
„type“: „function“,
„z“: „c3094c50.a2df“,
„name“: „“,
„func“: „if (msg.payload.attributeId === 100 && msg.payload.targetValue === 1) {\n \n msg.payload = true\n return msg\n}\nif (\n msg.payload.attributeId === 100 && msg.payload.targetValue === 0){\n \n msg.payload = false\n return msg\n }\n“,
„outputs“: 1,
„noerr“: 0,
„initialize“: „“,
„finalize“: „“,
„x“: 420,
„y“: 280,
„wires“: [
[
„87c27154.62186“
]
]
},
{
„id“: „87c27154.62186“,
„type“: „ioBroker out“,
„z“: „c3094c50.a2df“,
„name“: „Switch“,
„topic“: „shelly.0.SHSW-25#E09806954570#1.Relay0.Switch“,
„ack“: „false“,
„autoCreate“: „false“,
„stateName“: „“,
„role“: „“,
„stateUnit“: „“,
„stateMin“: „“,
„stateMax“: „“,
„x“: 670,
„y“: 280,
„wires“: []
},
{
„id“: „b293ba6c.df87e8“,
„type“: „ioBroker in“,
„z“: „c3094c50.a2df“,
„name“: „Switch“,
„topic“: „shelly.0.SHSW-25#E09806954570#1.Relay0.Switch“,
„payloadType“: „value“,
„onlyack“: „“,
„func“: „all“,
„gap“: „“,
„fireOnStart“: „false“,
„x“: 130,
„y“: 120,
„wires“: [
[
„99a516a2.88fd68“
]
]
}
]

Exportiere mal deine Flow als File und benenne ihn um in flows.pdf und lade den mal hoch.

Den Flow bekomme ich so nicht importiert.

Mfg

1 „Gefällt mir“

flows.pdf (4,0 KB)

Bei mir Funktioniert der Flow, musste nur den Vh und den Shelly anpassen und es rennt.

Kannst du den deinen Shelly im Iobrocker schalten ?

Wenn das geht , dann ändere mal die Node-Id und Attribute mal auf 3000.

Ich weis nich was passiert wenn die schon belegt sind.

Leider muss ich erst mal los.

1 „Gefällt mir“

Ja im ioBroker kann ich den Shelly schalten.
Ich habe die ID auf 3000 geändert (muss ich „nur“ in den zwei Funktionen und vhih machen?).
Funktioniert aber leider nicht. In der homee iOS App sehe ich das Gerät, jetzt z.B. mit Zustand AN (weil ich den Stripe eingeschaltet habe), sobald ich auf Aus schalte, passiert mit dem Stripe nichts und der Button springt sofort wieder auf An in der app…

Ja

Hast du auch die Attribute im vhih auf 3000 geändert.

Du kannst ja nicht in der Funktionnode"function" auf payload.attributeId =3000 vergleichen, wenn im vhih Attribute noch auf 100 stehen.

Es kommt ja kein Befehl am ioBroker out"Swich" an.

Hier sieht man das ein Schaltbefehl ankekommen ist.

Mach mal die zwei debug nodes rein wie in meinem Bsp. und poste mal die Ergebnisse.

Ich verstehe es gerade nicht. Ich bekomme nichts mehr im Debug angezeigt. Auch wenn ich in ioBroker direkt den shelly schalte, kommt nichts raus… Die zwei debug msg hab ich gesetzt…

Im hih hatte ich die ID auch gesetzt.

Hast du im homee nach einem neuen Gerät gesucht.

Dein WZ LED Stripe im homee ist ja noch mit der Nod-id 100.

Altes löschen und neu suchen lassen.

Ja, schon mehrmals. Er findet den vhih, aber schalten geht nicht. :frowning: