Mal wieder virtuelle Geräte - jetzt aber richtig!

Der ein oder andere Alt-User kann sich mit Sicherheit noch an die ersten Versuche der Integration von virtuellen Geräten in homee erinnern. Seither ist eine Menge passiert. Was mit Wemos angefangen hat, mit Homematic Geräten weiterging und dann mit simulierten Enocean Geräten fast alle Grenzen beseitigte, findet heute wieder einen neuen Höhepunkt.

Dank der Vorarbeit von @Tobias mit der Veröffentlichung von homeejs konnte ich meinem Node-RED Plugin ein großes Update verpassen. Ihr könnt nun beliebige virtuelle Geräte erzeugen und über die homee-in-homee Funktion an eurem homee anlernen. Es werden alle Gerätetypen unterstützt, die in homee zur Verfügung stehen. Lediglich die Anbindung an die tatsächlichen Geräte müsst ihr über den Flow selbst erstellen. Aber vermutlich werden hier bald einige Beispielflows eine gute Starthilfe geben.

Wer sich darunter nichts vorstellen kann, hier ein paar Beispiele, was möglich ist:

  • Einbinden von Hue-Lampen über die Hue-Bridge mit Farbauswahl
  • Integration eines Danalocks (als Nuki)
  • Günstige WLAN Stecker mit Verbrauchsmessung als Switch
  • Shelly 2.5 via MQTT als RollerShutter

Die kleine Liste lässt sich mit etwas Kreativität beliebig fortsetzen.

Das Plugin ist aktuell noch in der Beta-Phase, wer möchte ist herzlich zum Testen eingeladen. Alles Wissenswerte habe ich unter https://himpler.com/blog/virtuelle-geraete-in-homee-mit-node-red zusammengefasst.

Ein Riesen Dank geht auch an @Micha, der die ersten Versionen des Plugins getestet und bereits viele verschiedene Gerätetypen ausprobiert hat.

60 „Gefällt mir“

Ja @stfnhmplr ich danke dir und auch @Tobias für die super Arbeit. Ich habe das homeejs von @Tobias ja auch vorab getestet und es funktionierte auch. Jetzt hast du mit deinem Node eine Brücke in die Welt von Node Red gebaut.

Ich bin damit wirklich sehr zufrieden und glücklich , das nun Geräte sauber in homee integriert werden können.

Hier habe ich ein Profil einer Aeon rgb zwave Bulb genommen und es als virtuelles Gerät angelegt.
Dieses steuert nun meine Zigbee Lampen an der Hue Bridge. Ich stelle damit die Farben , die Helligkeit und die Farbtemperatur ein.

Ich bringe damit auch meine Verbrauchswerte (Strom ) eines B-Control EM300 als HEM in den homee.

Mein Projekt Enocean Simulation hat sich damit erledigt.

Nochmal ein herzlichen Dank an @stfnhmplr und @Tobias.

VG Micha

24 „Gefällt mir“

Danke an Euch beide, Jungs. Das beste ist es wohl Beispielprojekte jetzt wirklich konsequent als Flows auf der Node-Red-Plattform mit dem Stichwort homee zu veröffentlichen, damit Wissen und Erfolge effektiv geshared werden können.

@Tobias - hat ja leider etwas gedauert (mehr als einen Monat nach dem ersten Commit) bis wir dieses Freizeitprojekt von Dir zufällig auf GitHub entdeckt haben :wink: Ein kurzer Hinweis per PN an die üblichen Verdächtigen hätte das durchaus beschleunigt… Trotzdem danke - das ist/war eine geniale Idee und lässt/liess den Release der homee-in-homee-Funktion plötzlich in einem ganz neuen Licht erscheinen. Wenn da ein Masterplan dahintersteckt, dann bin ich jetzt schon auf die nächsten Schritte gespannt…

8 „Gefällt mir“

Du hast uns ja erst den Hinweis auf homeejs gegeben. :+1::grinning:

1 „Gefällt mir“

Ihr seid die Besten… vielen, vielen Dank für euer unermüdliches Engagement!!! Die Community-Projekte die so entstehen sind echt gigantisch!

3 „Gefällt mir“

Wow, vielen Dank für die tolle Arbeit.

3 „Gefällt mir“

Ihr seid einfach nur Hammer und wir können nur Danke sagen, dass ihr eure Erfolge so mit uns teilt! :heart:

2 „Gefällt mir“

find es sich nur GIGANTISCH!!! @stfnhmplr @Tobias @Micha danke für eure tolle Arbeit!

Die HueBridge ist drin :slight_smile:

5 „Gefällt mir“

@fisch
Könntest du vielleicht einen Beispiel Flow zur Verfügung stellen… das wäre toll.

1 „Gefällt mir“

Brauchts dafür unbedingt node Red oder liesse sich das auch einfach über iobroker anbinden?

Da gibt es ja auch einen Homee Adapter.

1 „Gefällt mir“

Du kannst node red auch in iobroker als Adapter installieren.
:coffee:

1 „Gefällt mir“

@medicus07
Der Flow und die Funktionen sind nicht von mir…der ist von @Micha…DANKE @Micha!!! Habs nur für mich angepasst :slight_smile:

Funktioniert alles bis auf die Rückmeldung der Farbe, wenn in hue App geändert wird.

[{"id":"f0814f37.fff96","type":"homeeDevice","z":"9794c480.ea90d8","homee-sim":"c7073da5.2d1028","name":"Sofalampe","nodeId":"40","profile":"1002","attributes":"[{\"id\":40,\"node_id\":40,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":1,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":41,\"node_id\":40,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"%25\",\"step_value\":1,\"editable\":1,\"type\":2,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":42,\"node_id\":40,\"instance\":0,\"minimum\":153,\"maximum\":500,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"K\",\"step_value\":1,\"editable\":1,\"type\":42,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":43,\"node_id\":40,\"instance\":0,\"minimum\":0,\"maximum\":16777215,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":23,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"7001020%3B16419669%3B12026363%3B16525995\"}]","x":230,"y":500,"wires":[["34666423.1e6014"]]},{"id":"e6fceb06.45376","type":"homeeDevice","z":"9794c480.ea90d8","homee-sim":"c7073da5.2d1028","name":"Kugellampe","nodeId":"50","profile":"1002","attributes":"[{\"id\":50,\"node_id\":50,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":1,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":51,\"node_id\":50,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"%25\",\"step_value\":1,\"editable\":1,\"type\":2,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":52,\"node_id\":50,\"instance\":0,\"minimum\":153,\"maximum\":500,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"K\",\"step_value\":1,\"editable\":1,\"type\":42,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":53,\"node_id\":50,\"instance\":0,\"minimum\":0,\"maximum\":16777215,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":23,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"7001020%3B16419669%3B12026363%3B16525995\"}]","x":230,"y":640,"wires":[["d18e0ee9.3f1b2"]]},{"id":"40fda84c.d1e11","type":"hue-light","z":"9794c480.ea90d8","name":"Sofalampe","bridge":"7206028e.714fdc","lightid":"3","colornamer":true,"x":610,"y":500,"wires":[["16dc427d.cf48e6"]]},{"id":"34666423.1e6014","type":"function","z":"9794c480.ea90d8","name":"RGB Funktion","func":"if (msg.payload.attributeId === 43){\nvar zahl= msg.payload.targetValue;\nvar ausgabe =\"\";\nrest(i = zahl%16);\nzahl6 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl5 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl4 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl3 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl2 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl);\nzahl1 = ausgabe;\n\nausgabe2 = zahl1+zahl2+zahl3+zahl4+zahl5+zahl6;\n    node.send({payload:{\"hex\":ausgabe2}});\n}\n\nfunction rest(){\n    switch(i)\n\t\t{\n\t\t    \n\t\tcase 1: ausgabe =\"1\";break;\n\t\tcase 2: ausgabe =\"2\";break;\n\t\tcase 3: ausgabe = \"3\";break;\n\t\tcase 4: ausgabe= \"4\";break;\n\t\tcase 5: ausgabe= \"5\";break;\n\t\tcase 6: ausgabe = \"6\";break;\n\t\tcase 7: ausgabe =\"7\";break;   \n\t\tcase 8: ausgabe = \"8\";break;\n\t\tcase 9: ausgabe = \"9\";break;\n\t\tcase 10: ausgabe =\"A\"; break;\n\t\tcase 11: ausgabe = \"B\"; break;\n\t\tcase 12: ausgabe  = \"C\"; break;\n\t\tcase 13: ausgabe =\"D\"; break;\n\t\tcase 14: ausgabe =\"E\"; break;\n\t\tcase 15: ausgabe =\"F\"; break;\n}}\n\nif (msg.payload.attributeId === 40){node.send({payload:{\"on\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 41){node.send({payload:{\"brightness\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 42){node.send({payload:{\"colorTemp\":msg.payload.targetValue}})}\n","outputs":1,"noerr":0,"x":400,"y":500,"wires":[["40fda84c.d1e11"]]},{"id":"16dc427d.cf48e6","type":"function","z":"9794c480.ea90d8","name":"Rückkanal on off","func":"if (msg.payload.on === true ){msg.payload.on =1}else msg.payload.on=0; \nnode.send({payload:{\"id\":40,\"value\":msg.payload.on}}),\nnode.send({payload:{\"id\":41,\"value\":msg.payload.brightness}})\n//node.send({payload:{\"id\":42,\"value\":msg.payload.colorTemp}})","outputs":1,"noerr":0,"x":830,"y":500,"wires":[["f0814f37.fff96","61be40a.56d8a4"]]},{"id":"61be40a.56d8a4","type":"debug","z":"9794c480.ea90d8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1050,"y":500,"wires":[]},{"id":"c26c73fe.b179a8","type":"hue-light","z":"9794c480.ea90d8","name":"Kugellampe","bridge":"7206028e.714fdc","lightid":"6","colornamer":true,"x":630,"y":640,"wires":[["eb009b6.1647ce8"]]},{"id":"d18e0ee9.3f1b2","type":"function","z":"9794c480.ea90d8","name":"RGB Funktion","func":"if (msg.payload.attributeId === 53){\nvar zahl= msg.payload.targetValue;\nvar ausgabe =\"\";\nrest(i = zahl%16);\nzahl6 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl5 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl4 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl3 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl2 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl);\nzahl1 = ausgabe;\n\nausgabe2 = zahl1+zahl2+zahl3+zahl4+zahl5+zahl6;\n    node.send({payload:{\"hex\":ausgabe2}});\n}\n\nfunction rest(){\n    switch(i)\n\t\t{\n\t\t    \n\t\tcase 1: ausgabe =\"1\";break;\n\t\tcase 2: ausgabe =\"2\";break;\n\t\tcase 3: ausgabe = \"3\";break;\n\t\tcase 4: ausgabe= \"4\";break;\n\t\tcase 5: ausgabe= \"5\";break;\n\t\tcase 6: ausgabe = \"6\";break;\n\t\tcase 7: ausgabe =\"7\";break;   \n\t\tcase 8: ausgabe = \"8\";break;\n\t\tcase 9: ausgabe = \"9\";break;\n\t\tcase 10: ausgabe =\"A\"; break;\n\t\tcase 11: ausgabe = \"B\"; break;\n\t\tcase 12: ausgabe  = \"C\"; break;\n\t\tcase 13: ausgabe =\"D\"; break;\n\t\tcase 14: ausgabe =\"E\"; break;\n\t\tcase 15: ausgabe =\"F\"; break;\n}}\n\nif (msg.payload.attributeId === 50){node.send({payload:{\"on\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 51){node.send({payload:{\"brightness\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 52){node.send({payload:{\"colorTemp\":msg.payload.targetValue}})}\n","outputs":1,"noerr":0,"x":420,"y":640,"wires":[["c26c73fe.b179a8"]]},{"id":"eb009b6.1647ce8","type":"function","z":"9794c480.ea90d8","name":"Rückkanal on off","func":"if (msg.payload.on === true ){msg.payload.on =1}else msg.payload.on=0; \nnode.send({payload:{\"id\":50,\"value\":msg.payload.on}}),\nnode.send({payload:{\"id\":51,\"value\":msg.payload.brightness}})\n//node.send({payload:{\"id\":42,\"value\":msg.payload.colorTemp}})","outputs":1,"noerr":0,"x":850,"y":640,"wires":[["e6fceb06.45376","94f1b736.187b6"]]},{"id":"94f1b736.187b6","type":"debug","z":"9794c480.ea90d8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1070,"y":600,"wires":[]},{"id":"5201b159.38cd38","type":"homeeDevice","z":"9794c480.ea90d8","homee-sim":"c7073da5.2d1028","name":"HueGo Pfanze","nodeId":"60","profile":"1002","attributes":"[{\"id\":60,\"node_id\":60,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":1,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":61,\"node_id\":60,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"%25\",\"step_value\":1,\"editable\":1,\"type\":2,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":62,\"node_id\":60,\"instance\":0,\"minimum\":153,\"maximum\":500,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"K\",\"step_value\":1,\"editable\":1,\"type\":42,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":63,\"node_id\":60,\"instance\":0,\"minimum\":0,\"maximum\":16777215,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":23,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"7001020%3B16419669%3B12026363%3B16525995\"}]","x":240,"y":760,"wires":[["b8d5561d.a93b78"]]},{"id":"1c8ca28f.a634ed","type":"function","z":"9794c480.ea90d8","name":"Rückkanal on off","func":"if (msg.payload.on === true ){msg.payload.on =1}else msg.payload.on=0; \nnode.send({payload:{\"id\":60,\"value\":msg.payload.on}}),\nnode.send({payload:{\"id\":61,\"value\":msg.payload.brightness}})\n//node.send({payload:{\"id\":42,\"value\":msg.payload.colorTemp}})","outputs":1,"noerr":0,"x":850,"y":760,"wires":[["5201b159.38cd38","3dd96b27.bac9bc"]]},{"id":"3dd96b27.bac9bc","type":"debug","z":"9794c480.ea90d8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1070,"y":720,"wires":[]},{"id":"b8d5561d.a93b78","type":"function","z":"9794c480.ea90d8","name":"RGB Funktion","func":"if (msg.payload.attributeId === 63){\nvar zahl= msg.payload.targetValue;\nvar ausgabe =\"\";\nrest(i = zahl%16);\nzahl6 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl5 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl4 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl3 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl2 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl);\nzahl1 = ausgabe;\n\nausgabe2 = zahl1+zahl2+zahl3+zahl4+zahl5+zahl6;\n    node.send({payload:{\"hex\":ausgabe2}});\n}\n\nfunction rest(){\n    switch(i)\n\t\t{\n\t\t    \n\t\tcase 1: ausgabe =\"1\";break;\n\t\tcase 2: ausgabe =\"2\";break;\n\t\tcase 3: ausgabe = \"3\";break;\n\t\tcase 4: ausgabe= \"4\";break;\n\t\tcase 5: ausgabe= \"5\";break;\n\t\tcase 6: ausgabe = \"6\";break;\n\t\tcase 7: ausgabe =\"7\";break;   \n\t\tcase 8: ausgabe = \"8\";break;\n\t\tcase 9: ausgabe = \"9\";break;\n\t\tcase 10: ausgabe =\"A\"; break;\n\t\tcase 11: ausgabe = \"B\"; break;\n\t\tcase 12: ausgabe  = \"C\"; break;\n\t\tcase 13: ausgabe =\"D\"; break;\n\t\tcase 14: ausgabe =\"E\"; break;\n\t\tcase 15: ausgabe =\"F\"; break;\n}}\n\nif (msg.payload.attributeId === 60){node.send({payload:{\"on\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 61){node.send({payload:{\"brightness\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 62){node.send({payload:{\"colorTemp\":msg.payload.targetValue}})}\n","outputs":1,"noerr":0,"x":440,"y":760,"wires":[["ee920c63.33d078"]]},{"id":"6dd18a3.4a6a0f4","type":"homeeDevice","z":"9794c480.ea90d8","homee-sim":"c7073da5.2d1028","name":"HueGo TV","nodeId":"70","profile":"1002","attributes":"[{\"id\":70,\"node_id\":70,\"instance\":0,\"minimum\":0,\"maximum\":1,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":1,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":71,\"node_id\":70,\"instance\":0,\"minimum\":0,\"maximum\":100,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"%25\",\"step_value\":1,\"editable\":1,\"type\":2,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":72,\"node_id\":70,\"instance\":0,\"minimum\":153,\"maximum\":500,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"K\",\"step_value\":1,\"editable\":1,\"type\":42,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":73,\"node_id\":70,\"instance\":0,\"minimum\":0,\"maximum\":16777215,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"\",\"step_value\":1,\"editable\":1,\"type\":23,\"state\":1,\"last_changed\":12345555,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"7001020%3B16419669%3B12026363%3B16525995\"}]","x":250,"y":860,"wires":[["57bf900f.57a508"]]},{"id":"1d8b2045.0810c","type":"hue-light","z":"9794c480.ea90d8","name":"HueGo TV","bridge":"7206028e.714fdc","lightid":"11","colornamer":true,"x":650,"y":860,"wires":[["78969f4b.74f2d"]]},{"id":"78969f4b.74f2d","type":"function","z":"9794c480.ea90d8","name":"Rückkanal on off","func":"if (msg.payload.on === true ){msg.payload.on =1}else msg.payload.on=0; \nnode.send({payload:{\"id\":70,\"value\":msg.payload.on}}),\nnode.send({payload:{\"id\":71,\"value\":msg.payload.brightness}})\n//node.send({payload:{\"id\":42,\"value\":msg.payload.colorTemp}})","outputs":1,"noerr":0,"x":870,"y":860,"wires":[["6dd18a3.4a6a0f4","37973b7f.90e564"]]},{"id":"37973b7f.90e564","type":"debug","z":"9794c480.ea90d8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1090,"y":820,"wires":[]},{"id":"57bf900f.57a508","type":"function","z":"9794c480.ea90d8","name":"RGB Funktion","func":"if (msg.payload.attributeId === 73){\nvar zahl= msg.payload.targetValue;\nvar ausgabe =\"\";\nrest(i = zahl%16);\nzahl6 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl5 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl4 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl3 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl%16);\nzahl2 = ausgabe;\nzahl = Math.floor(zahl/16);\nrest(i = zahl);\nzahl1 = ausgabe;\n\nausgabe2 = zahl1+zahl2+zahl3+zahl4+zahl5+zahl6;\n    node.send({payload:{\"hex\":ausgabe2}});\n}\n\nfunction rest(){\n    switch(i)\n\t\t{\n\t\t    \n\t\tcase 1: ausgabe =\"1\";break;\n\t\tcase 2: ausgabe =\"2\";break;\n\t\tcase 3: ausgabe = \"3\";break;\n\t\tcase 4: ausgabe= \"4\";break;\n\t\tcase 5: ausgabe= \"5\";break;\n\t\tcase 6: ausgabe = \"6\";break;\n\t\tcase 7: ausgabe =\"7\";break;   \n\t\tcase 8: ausgabe = \"8\";break;\n\t\tcase 9: ausgabe = \"9\";break;\n\t\tcase 10: ausgabe =\"A\"; break;\n\t\tcase 11: ausgabe = \"B\"; break;\n\t\tcase 12: ausgabe  = \"C\"; break;\n\t\tcase 13: ausgabe =\"D\"; break;\n\t\tcase 14: ausgabe =\"E\"; break;\n\t\tcase 15: ausgabe =\"F\"; break;\n}}\n\nif (msg.payload.attributeId === 70){node.send({payload:{\"on\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 71){node.send({payload:{\"brightness\":msg.payload.targetValue}})}\nif (msg.payload.attributeId === 72){node.send({payload:{\"colorTemp\":msg.payload.targetValue}})}\n","outputs":1,"noerr":0,"x":460,"y":860,"wires":[["1d8b2045.0810c"]]},{"id":"ee920c63.33d078","type":"hue-light","z":"9794c480.ea90d8","name":"HueGo Pfanze","bridge":"7206028e.714fdc","lightid":"10","colornamer":true,"x":640,"y":760,"wires":[["1c8ca28f.a634ed"]]},{"id":"c7073da5.2d1028","type":"virtualHomee","z":"","name":"5ABC"},{"id":"7206028e.714fdc","type":"hue-bridge","z":"","name":"Philips hue","bridge":"192.168.178.102","key":"ceMSOh1lIrucnl49y22L0Fih-NlwIHr93Mv8HfFp","interval":"3000"}]

Habe mal mehrer Lampen angehangen…ich erhöhe bei jeder Lampe den Wert um id und node id ums 10…

5 „Gefällt mir“

Perfekt… ich schaue es mir dann am Montag an… freu mich schon. Danke dir…:+1:t2:

2 „Gefällt mir“

nicht mir danken !!! :slight_smile: habe ja nichts dazu beigetragen :slight_smile:

1 „Gefällt mir“

Da war die Community mal wieder schneller als ich . Finde die homee-in-homee Funktion ist ein echter Segen :smiley:.

Dadurch stehen uns nun so viele Möglichkeiten offen, Habe z.B. vor ein paar Wochen darüber meine Ökofen Pelletheizung in homee integriert.


Ich bin sehr gespannt welche neuen Projekte sich daraus entwickeln werden!

4 „Gefällt mir“

:tophat: ab und Respekt an alle Beteiligte!!
So wie ich das verstehe, geht das Ganze ja weit über virtuelle Geräte hinaus, oder nicht?

Alles was mit Node red kompatibel ist, kann jetzt an homee angebunden werden in dem die homee in homee Schnittstelle genutzt wird. D.h. das macht ja auch jeden Zusatz Würfel überflüssig, oder nicht?!

Warum soll ich jetzt noch einen Z-Wave Würfel mit all seinen Einschränkungen verwenden, wenn ich für ein Bruchteil des Preises einen Z-Wave Stick am Raspberry Pi einsetzen kann.
Das gleiche gilt dann ja auch für den ZigBee Würfel, die Hue Bridge ist hier mehr als ein vollwertiger Ersatz.

Mit dem neuen Node Red Plugin wird homee nun wirklich zur einer Multiprotokoll Zentrale und der Turm lässt sich auf einen Würfel reduzieren! :smile::scream:

1 „Gefällt mir“
  1. Habt ihr einen guten Starter Guide für node? Ich werd mich da jetzt mal ransetzen. Mein 3D gedruckter Einschub für mein 19" Rack ist ja jetzt unterwegs, dann kann ich den ersten PIE auch in den Schrank verbannen.
  2. kriege ich via nodered dann auch einen JSON Feed mit Daten (Habe einen gebastelten Counter der den gas + wasserzähler ausliest und die Daten per WLAN abrufbar im json Format macht). Jemand erfahrung damit?

Frage an die Pie-Experten: Habt ihr den schon erfolgreich an einem USB Mehrfach-Netzteil betrieben?

Grüße
Simon

Das kommt darauf an. Man darf den Aufwand nicht unterschätzen. Es ist deutlich weniger Arbeit ein passendes Gerät an einen der Würfel anzulernen. Also zwangsläufig alles auszulagern würde ich persönlich nicht machen wollen.

https://nodered.org/docs/getting-started/
Ansonsten findest du auf meiner Seite (Link im ersten Beitrag) auch den ein oder anderen (hoffentlich) hilfreichen Beitrag.

Ja, das ist problemlos machbar.

Du musst eigentlich nur drauf achten, dass pro Ausgang genug A da sind. 2A sind minimum, viele liefern 2.4A. Dann ist das möglich.

5 „Gefällt mir“

Stimmt. Habe bei einigen aber auch festgestellt, dass die Stromstärke bei manchen nicht stabil bei 2,4A steht, wenn die Geräte voll belegt sind.

:coffee:

Gibt es welche die zu empfehlen sind?

@stfnhmplr RPI3 reicht oder lieber den RPI4? WIe hardwarehungrig ist NodeRed?

Noch irgendwelche Tips von den alten hasen? Ich habe homebridge und andere auf den Pis laufen, da gibt es ja doch immer das eine oder andere über das man zwangsläufig stolpert.