rdmtc / node-red-contrib-ccu

Node-RED Nodes for the Homematic CCU
https://flows.nodered.org/node/node-red-contrib-ccu
MIT License
70 stars 13 forks source link

Zugriff von MEHREREN Node Red Instanzen aus auf EINE CCU #174

Closed KasimirGuenter1259 closed 1 year ago

KasimirGuenter1259 commented 1 year ago

Hi, Node Red Projekte wachsen im Laufe der Zeit und eine Reengineering wird notwendig. Nun habe ich

Nun wollte ich zwecks schrittweiser Portierung (und Erweiterung) eine zweiten Raspberry, ebenfalls mit einer weiteren Node Red Instanz (Version 3.0.2) in Betrieb nehmen.

Meine Erwartung war, dass Events von Homematic Geräten (rpc-events) von beiden Node Red Instanzen "aufgefangen" werden. Nach meiner bisherigen Beobachtung werden die events allerdings nur von der einen oder der anderen Node Red Instanz empfangen. Anscheinend willkürlich mal bei Instanz A, mal bei Instanz B.

In beiden Node Red Instanzen werden keine Fehler gemeldet. In beiden Instanzen wird mir bei den "rpc event" Knoten mit grünem Signal und "connected"-Meldung eine Verbindung angezeigt.

Wo könnten die Probleme liegen? Funktioniert das grundätzlich / oder grundsätzlich nicht? Ich bin um jede Hilfe dankbar!

andesse commented 1 year ago

@KasimirGuenter1259

Möchtest Du zwei Node-RED Instanzen haben? Ich denke Dein use-case ist relativ einzigartig.

Wenn zwei NR laufen sollen, nutze CCU nur auf einer.

NR 2.1.3 hört sich irgendwie nach RedMatic an, das ist leider komplett veraltet und unterstützt viele Funktionen nicht mehr.

Mein Vorschlag wäre (und das ist ja anscheinend Dein Ansatz), einen PI mit Raspberrymatic, den zweiten PI ausschließlich für Node-RED. Dann hast Du NR immer auf dem neusten Stand.

Wenn Du eine auf die andere Portieren möchtest, dann mache ein komplettes Flow Backup in der Redmatic und spiele es einfach in das neue Node-RED ein. Du musst vorher alle contribs installieren. Bevor du deployst, stoppst Du die Flows auf dem alten System.

Dann sollte alles direkt laufen.

Gruß

KasimirGuenter1259 commented 1 year ago

@andesse

Ja, ich möchte zwei Node Red Instanzen haben. Ich denke auch, dass der use case nicht weit verbeitet ist. Ich habe im Netz zumindest nichts dazu gefunden :-(

Dein Vorschlag ist mit schon klar. Klappt aber in meinem use case nicht, da ich Node Red auch dazu nutze unterschiedliche Techniken zu nutzen. Nur ein Beispiel: ich habe inzwischen auch umfangreich Shelly Geräte im Einsatz. In der "alten" Node Red Instanz habe ich Version node-red-contrib-shelly 2.1.1 am Laufen und in der "neuen" Version 10.12.0. (Riesensprung in der Versionsnummer, obwohl da nicht viel Zeit dazwischen liegt.)

Auf jeden Fall gibt es da neue/andere Knoten, die sich auch teilweise anders verhalten. Das aktuelle Node Red verweigert, den Flow zu aktivieren, wenn ich nicht vorhandene Knoten importiere. Dann läuft auch alles andere nicht. Und wenn ich trotzdem importiere verhält sich das Zeug anders .....

Na ja, auf jeden Fall hätte ich vorgehabt, Flow für Flow sukzessive neu aufzusetzen. Teilweise weil ich inzwischen viele Dinge geschickter lösen möchte, teilweise, weil sich Lebensumstände verändert haben, teilweise, weil einfach komplett neue und viel schönere Dinge/Lösungen möglich sind.

Wäre einfach schick, wenn ich von zwei Node Red Instanzen aus arbeiten könnte! (auc weil ich dann sowieso zwei Node Red Instanzen für unterschiedliche Ausfgaben einetzen wollte.)

andesse commented 1 year ago

@KasimirGuenter1259

Wenn es an der Shelly contrib liegt, würde ich mir die Arbeit machen diese auf die neue Version umzubauen. Sprich, die Daten aus den veralteten Nodes in die neue Version einpflegen. Dann alles andere importieren.

Es macht wenig Sinn zwei NR Instanzen im System zu haben. Ist die alte RedMatic? Davon würde ich ohnehin direkt Abstand nehmen. Falls es so ist und diese entfernt wird, hat die Raspi eine höhere Performance.

Ich denke nicht das die contrib-ccu auf deinen use-case hin angepasst werden wird. Da bleibt Dir ohnehin keine andere Wahl.

ptweety commented 1 year ago

Hi @KasimirGuenter1259,

wenn du jetzt eh alles neu aufbauen willst, dann kannst du auch ein paar neue Wege einschlagen.

Die Integration deiner Shellies kannst du z.B. auch über den CCU-Jack erreichen. Damit kannst du deine Shellies dann direkt als Geräte in der CCU haben.

Und die wiederum kannst du denn entweder über meinen Fork https://github.com/ptweety/node-red-contrib-ccu konsumieren oder vielleicht gleich auf die fast fertige https://github.com/ptweety/node-red-contrib-ccu-jack gehen.

KasimirGuenter1259 commented 1 year ago

Hi @andesse,

ja ich denke, ich werde anders vorgehen müssen. Ich habe soeben über den o.g. CCU-Jack bzw. die CCU-Jack-Bridge "drüber gelesen". Hört sich auf jeden Fall interessant an, ich werde eigene Versuche damit machen.

Nur der Vollständigkeit halber: ich habe kein Redmatic im Einsatz. Ich bevorzuge, getrennte Dinge auch getrennt zu machen. Auf einem Raspberry läuft eine Raspberrymatic-Instanz, auf einem anderen Raspberry eine Node Red Instanz. Letztlich wird Raspberrymatic nur noch als ganz dummes Funk-Gateway zu den vorhandenen Homematic-Geräten genutzt.