Mal wieder virtuelle Geräte - jetzt aber richtig!

Kann mir jemand sagen mit welchem Geräteprofil der Eurotronic Luftgütesensor arbeitet und welche Attributte-ID für den VOC-Gehalt und den VOC-Wert heran gezogen werden. Ich finde da in der Liste auf die Schnelle nichts Passendes.
Nachdem der Sensor ja leider nicht so toll sein soll, wollte ich vhih mal einen anderen Sensor einbinden.

So sollte ja das Profil von Eurotronic aussehen:

Hast du den Sensor im Einsatz ?
Dann kannst du dir die kompletten Attribute vom homee ziehen.

Nein, in dem Fall leider nicht :wink:

Die Enums muss aktualisiert werden, da nicht alle Werte vorhanden sind. Ich schau nochmal nach dem genauen Profil.

Habe die Enums auf Github erneuert und das muss @stfnhmplr noch freigeben.
Damit kannst du einen Luftgütesensor abbilden.

3 „Gefällt mir“

Hallo zusammen, ich hab mir die Aeotec Sirene Gen 5, in der falschen Annahme gekauft, dass ich über homee alle 5 Töne für unterschiedliche Szenarien verwenden kann :man_shrugging:manchmal sollte man einfach nicht meinen sondern fragen…
Bevor ich mir jetzt extra ein z-wave shild kaufe, erstmal die Frage, ist das über NodeRed und vhih möglich und hat da schon jemand einen Flow dafür?

Hey @Maddes,
wenn du die Töne per Parameter abspielen kannst dann geht das problemlos.
Einfach ein Gerät bauen das dann die 5 Töne abspielen kann.

Dazu werden dann beim schalten des Gerätes die Parameter an homee gesendet um so den Ton abzuspielen.

So könnte dann ein Befehl an den homee aussehen.

PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=1

Hier ein Beispiel für einen Aeon LED Strips

[
    {
        "id": "ba34b1fa.a4d58",
        "type": "homeeDevice",
        "z": "76b6d694.226ff8",
        "virtual-homee": "",
        "name": "Aeon Modus Switch",
        "nodeId": "145",
        "showNodeId": true,
        "profile": "1004",
        "icon": "default",
        "attributes": [
            {
                "type": 1,
                "state": 1,
                "instance": 0,
                "minimum": 0,
                "maximum": 1,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618602109,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 145,
                "node_id": 145
            },
            {
                "type": 1,
                "state": 1,
                "instance": 1,
                "minimum": 0,
                "maximum": 1,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618602111,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 146,
                "node_id": 145
            },
            {
                "type": 1,
                "state": 1,
                "instance": 2,
                "minimum": 0,
                "maximum": 1,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618602112,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 147,
                "node_id": 145
            },
            {
                "type": 1,
                "state": 1,
                "instance": 3,
                "minimum": 0,
                "maximum": 1,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618602114,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 148,
                "node_id": 145
            },
            {
                "type": 1,
                "state": 1,
                "instance": 4,
                "minimum": 0,
                "maximum": 1,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618603848,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 149,
                "node_id": 145
            },
            {
                "type": 2,
                "state": 1,
                "instance": 0,
                "minimum": 0,
                "maximum": 2147483647,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "data": "",
                "name": "",
                "unit": "",
                "step_value": 1,
                "editable": 1,
                "last_changed": 1618603869,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "options": [],
                "id": 150,
                "node_id": 145
            }
        ],
        "statusTemplate": "",
        "x": 330,
        "y": 1580,
        "wires": [
            [
                "e7554237.21386"
            ]
        ]
    },
    {
        "id": "e7554237.21386",
        "type": "function",
        "z": "76b6d694.226ff8",
        "name": "",
        "func": "if (msg.payload.attributeId == 145){\n    if (msg.payload.targetValue == 1){\n        return [\n            {payload: \"PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=1\"},\n             {payload:{\n                 attributes:[\n                     {id:146,value:0},\n                     {id:147,value:0},\n                     {id:148,value:0},\n                     {id:149,value:0}\n                ]\n             }\n            }\n        ]\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n        payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}\nelse if (msg.payload.attributeId == 146){\n    if (msg.payload.targetValue == 1){\n         return [\n            {payload: \"PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=2\"},\n             {payload:{\n                 attributes:[\n                     {id:145,value:0},\n                     {id:147,value:0},\n                     {id:148,value:0},\n                     {id:149,value:0}\n                ]\n             }\n            }\n        ]\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n            payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}\nelse if (msg.payload.attributeId == 147){\n    if (msg.payload.targetValue == 1){\n        return [\n            {payload: \"PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=3\"},\n             {payload:{\n                 attributes:[\n                     {id:146,value:0},\n                     {id:145,value:0},\n                     {id:148,value:0},\n                     {id:149,value:0}\n                ]\n             }\n            }\n        ]\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n            payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}\nelse if (msg.payload.attributeId == 148){\n    if (msg.payload.targetValue == 1){\n        return [\n            {payload: \"PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=4\"},\n             {payload:{\n                 attributes:[\n                     {id:146,value:0},\n                     {id:147,value:0},\n                     {id:145,value:0},\n                     {id:149,value:0}\n                ]\n             }\n            }\n        ]\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n            payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}\nelse if (msg.payload.attributeId == 149){\n    if (msg.payload.targetValue == 1){\n         return [\n            {payload: \"PUT:nodes/908?configure=1&parameter=40&byte_size=1&value=5\"},\n             {payload:{\n                 attributes:[\n                     {id:146,value:0},\n                     {id:147,value:0},\n                     {id:148,value:0},\n                     {id:145,value:0}\n                ]\n             }\n            }\n        ]\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n            payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}\nelse if (msg.payload.attributeId == 150){\n    if (msg.payload.targetValue > 1){\n        return {\n            payload: \"PUT:nodes/908?configure=1&parameter=39&byte_size=4&value=\"+msg.payload.targetValue\n        }\n    }\n    else if (msg.payload.targetValue == 0){\n        return {\n            payload: \"put:nodes/908/attributes/2376?target_value=0\"\n        }\n    }\n}",
        "outputs": 2,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 560,
        "y": 1580,
        "wires": [
            [
                "9c76c109.81e58"
            ],
            [
                "ba34b1fa.a4d58"
            ]
        ]
    },
    {
        "id": "9c76c109.81e58",
        "type": "link out",
        "z": "76b6d694.226ff8",
        "name": "",
        "links": [
            "e204158a.3c9808"
        ],
        "x": 685,
        "y": 1580,
        "wires": []
    }
]
5 „Gefällt mir“

Danke @Micha dann geh ich mal shoppen :grin:.
Ist das Razberry von Z-wave.me ok? Bevor ich den nächsten semioptimalen Kauf tätige.

Nein nicht shoppen gehen, einfach die Parameter am homee ändern.
Wenn du die Sirene am Pi anlernst geht das natürlich auch.
Aber meine o.g. Lösung bezieht sich rein auf homee ohne zusätzliche Hardware.

:upside_down_face: achso, also ein rein virtuelles Gerät mit fünf Schaltern, welche bei „on“ dann die entsprechenden Parameter setzen.

1 „Gefällt mir“

Ja genau, daher mal das Beispiel für das Aeon LED Band.

2 „Gefällt mir“

Gibt es eine Möglichkeit über die Homee API node durch den put Befehl (put:/nodes/000/attributes/000?target_value=1) den Homee Modus (Zuhause, Abwesend, etc) zu setzen?
Kann man den Homee Modus noch anders von NodeRed aus setzen?

Ja das geht. Dazu musst du das entsprechende Attribut finden.
Das Node ist der homee selber.
Am besten mal nen Debug an das node hängen und den Modus umschalten.
Nun kommt im Debug das entsprechende Attribut an.

1 „Gefällt mir“

Hallo Zusammen,

frei nach dem Motto never Change a running System, habe ich meine Homee-NodeRed Kombination seit über einem Jahr nicht angefasst.
Jetzt hatte ich aber den Bedarf ein Attribute in einem bestehenden Device zu ergänzen und jetzt frage ich mich, wie wird das neue Attribute ins Homee „synchronisiert“. Das Device läuft im NodeRed und der Wert wird auch ordentlich (ohne Fehlermeldung) übergeben. Nur eben im Homee bekomme ich es nicht zu Gesicht - was muss ich tun :slight_smile:

Grüße
Carsten

Du musst das Gerät im homee einmal löschen und wieder neu suchen lassen.

1 „Gefällt mir“

Ich stehe gerade völlig auf dem Schlauch, wie suche ich denn neu?

Neu anlernen,

1 „Gefällt mir“

Wenn du das Node-Red-Device in vielen HG´s verwendest ist es wahrscheinlich besser du vergibst dem Gerät in Node-Red ein neue Geräte-ID. Lernst das Gerät neue in homee an und tauscht die Geräte mit @Micha Flow in den Homeegrammen aus und löscht das alte Gerät erst danach.

2 „Gefällt mir“

Ja genau so geht das @Harry, kann homee das etwa immer noch nicht ?
Bin ja etwas enttäuscht :crazy_face:

2 „Gefällt mir“

Wer sollte das jetzt noch umsetzen :crazy_face: