Node Red Zugriff auf RaspberryMatic

Node-RED als CCU3/RaspberryMatic Addon, WebApp, HomeKit, ...

Moderator: Co-Administratoren

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 15.03.2021, 22:09

Hallo zusammen!

Ich habe eine RaspberryMatic mit dem RedMatic Addon laufen, das funktioniert wunderbar. In RedMatic werden die HmIP Geräte ja über node-red-contrib-ccu verwaltet.

Als Spielwiese habe ich einen separaten Raspberry. Dort habe ich Node Red installiert und node-red-contrib-ccu. Ich hänge aber etwas an der Konfiguration. Ich bin mir recht sicher, dass der Config Node richtig eingestellt ist, denn es kommen keine Fehlermeldungen auf der Konsole. Die Authentifizierung ist ausgeschaltet.
Ich kann aber bei einem value-Knoten nur das Interface auswählen. Die Felder channel und datapoint werden nicht, wie von der RedMatic gewohnt, durch Auto-Vervollständigung vorgeschlagen. Ein Klick auf die Lupe neben dem Interface zeigt mir "Räume/Gewerke/Geräte". Klappe ich die Räume auf, dann erscheinen alle meine definierten Räume. Klappe ich diese aber wieder auf, dann erscheint nichts mehr. In RedMatic erscheinen die von mir definierten Kanalnamen.

So weit, so problematisch. Gebe ich nun die bekannten Werte (channel: 00111A490A0841:4, datapoint: LEVEL) ein, drücke auf fertig, mache ein Deploy und öffne den Knoten wieder, dann sind die Felder wieder leer. Da scheint also etwas nicht zu klappen. Folglich können im Betrieb auch keine Werte geschrieben oder gelesen werden

Code: Alles auswählen

15 Mar 21:55:06 - [error] [ccu-connection:192.168.30.10]     < HmIP-RF setValue Error: XML-RPC fault: Invalid parameter or value
15 Mar 21:55:06 - [error] [ccu-connection:192.168.30.10] rpc > HmIP-RF setValue ["00111A490A0841:4","LEVEL","0.2"] < Error: XML-RPC fault: Invalid parameter or value
Das eigentlich sonderbare an der Sache ist, dass in der Datei ~/.node-red/ccu_rega_192.168.30.10.json alle Geräte mit den Kanalnamen richtig drinstehen. Tatsächlich stehen auch in ~/.node-red/ccu_values_192.168.30.10.json die richtigen Werte, zum Beispiel die Behanghöhe. Ändere ich die Behanghöhe direkt am Rollladen, dann wird die Datei zwar nicht upgedatet, aber nach einem Restart der Flows steht zumindest wieder der richtige Wert drin.

Hat irgendjemand einen hilfreichen Tipp für mich, an welcher Schraube ich drehen könnte, damit es funktioniert? Vielen Dank im Voraus!
Zuletzt geändert von Roland M. am 15.03.2021, 22:42, insgesamt 1-mal geändert.
Grund: Thema verschoben

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 16.03.2021, 09:29

Hallo!

So, jetzt wurde das Thema in das RedMatic Subforum verschoben, obwohl es damit eigentlich nicht wirklich etwas zu tun hat (okay, ich habe im ersten Satz "RedMatic" geschrieben, aber das war nur zur Verdeutlichung). Eigentlich geht es um einen Zugriff auf die RaspberryMatic von einem externen Node Red.

Gefunden habe ich inzwischen noch diesen Beitrag: https://github.com/rdmtc/node-red-contr ... issues/119 Das könnte ein ähnliches Problem sein...

qwertz
Beiträge: 266
Registriert: 15.02.2012, 19:35
Hat sich bedankt: 6 Mal
Danksagung erhalten: 16 Mal

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von qwertz » 16.03.2021, 20:05

Hi !

Bei mir läuft node-red auch extern. In meinem Fall als Docker-Container auf synology.
node-red-contrib-ccu 3.4.1 und node-red v.1.2.9
Das war anfangs auch problematisch, aber nachdem ich die IPs und Ports wie auf dem Foto eingetragen und neugestartet habe läufts.
IP.40 ist CCU. IP.31 ist Synology-Docker-Host

Wenn ich in das Feld Channel klicke werde die Kanäle aufgelistet. s.Fotos.
Bildschirmfoto 2021-03-16 um 20.01.20.png
Bildschirmfoto 2021-03-16 um 20.01.14.png

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 17.03.2021, 10:25

Danke für deine Antwort!

Bei mir habe ich die IPs ähnlich eingetragen, nur dass ich keinen Docker-Host mit Container habe, sondern einen physikalischen Raspberry. Also hatte ich dessen IP genommen.

Tatsächlich hatte ich bei den Ports andere genommen. die 2047/2048 sind schon in RedMatic auf der RaspberryMatic verwendet, deshalb war ich davon ausgegangen, dass ich auf dem externen Node Red andere bräuchte. Könnte das ein Fehler gewesen sein? Müsste ich heute Abend mal testen.

Was hast du bei der Authentifizierung angegeben? Und was hast du in den Firewall-Einstellungen der RaspberryMatic stehen? Ich glaube ja nicht, dass es daran liegt, aber sicher ist sicher :D

ptweety
Beiträge: 522
Registriert: 07.01.2017, 16:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 48 Mal
Danksagung erhalten: 66 Mal

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von ptweety » 17.03.2021, 12:20

Hast du dir denn mal die Doku von node-red-contrib-ccu angeschaut? Dort gibt es doch einige Beispiele, welche m.E. alles erklären sollten.

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 17.03.2021, 12:35

Ja, hatte ich mir angesehen. Und ich bin mir auch recht sicher, dass die Kommunikation prinzipiell auch klappt. Um mich mal selbst zu zitieren:
SimondP hat geschrieben:
15.03.2021, 22:09
Das eigentlich sonderbare an der Sache ist, dass in der Datei ~/.node-red/ccu_rega_192.168.30.10.json alle Geräte mit den Kanalnamen richtig drinstehen. Tatsächlich stehen auch in ~/.node-red/ccu_values_192.168.30.10.json die richtigen Werte, zum Beispiel die Behanghöhe. Ändere ich die Behanghöhe direkt am Rollladen, dann wird die Datei zwar nicht upgedatet, aber nach einem Restart der Flows steht zumindest wieder der richtige Wert drin.
Das bedeutet für mich, dass sich das externe Node Red eigentlich alles richtig von der CCU holt, aber es einerseits bei der Node-Konfiguration nicht anzeigen mag und andererseits set-Befehle nicht richtig verarbeitet. Wobei ich gerade nochmal die oben gepostete Fehlermeldung gesehen hatte:

Code: Alles auswählen

15 Mar 21:55:06 - [error] [ccu-connection:192.168.30.10]     < HmIP-RF setValue Error: XML-RPC fault: Invalid parameter or value
15 Mar 21:55:06 - [error] [ccu-connection:192.168.30.10] rpc > HmIP-RF setValue ["00111A490A0841:4","LEVEL","0.2"] < Error: XML-RPC fault: Invalid parameter or value
Laut viewtopic.php?t=4827#p29572 könnte das Problem eventuell am Wert "0.2" (zweite Zeile) liegen? Das sollte ja kein String, sondern eigentlich ein float sein... Kann ich denn irgendwie sehen, was der funktionierende Node in RedMatic beim Setzen sendet? Dann könnte ich das vergleichen

ptweety
Beiträge: 522
Registriert: 07.01.2017, 16:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 48 Mal
Danksagung erhalten: 66 Mal

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von ptweety » 17.03.2021, 13:53

Hm, um welches Gerät geht es eigentlich? HmIP-eTRV oder was anderes?

Und zeige doch zur Sicherheit mal Screenshots deiner config vom ccu-connection node und die Firewall-Einstellungen der CCU (inkl. eigener IP)

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 17.03.2021, 14:06

Es ist ein HmIP-BROLL

Screenshots kann ich heute Abend mal machen, aber wie bekomme ich die denn hier eingefügt? Über die Zwischenablage scheint es nicht zu gehen, oder? Dann bleibt nur als Dateianhang. Oder sehe ich irgendwas nicht?

ptweety
Beiträge: 522
Registriert: 07.01.2017, 16:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 48 Mal
Danksagung erhalten: 66 Mal

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von ptweety » 17.03.2021, 15:13

cmd.png

SimondP
Beiträge: 8
Registriert: 21.12.2019, 11:03

Re: Node Red Zugriff auf RaspberryMatic

Beitrag von SimondP » 17.03.2021, 19:56

So, die Screenshots:
2021-03-17 17_06_37-Node-RED _ homematic.local.png
2021-03-17 17_19_45-Node-RED _ automation.local.png
2021-03-172021-03-17 19_44_35-HomeMatic WebUI.png
2021-03-172021-03-17 19_44_48-HomeMatic WebUI.png
2021-03-172021-03-17 19_44_48-HomeMatic WebUI.png (10.75 KiB) 3057 mal betrachtet
Da ist meiner Meinung nach alles okay.

Was mir aufgefallen ist:
Setze ich über das Dashboard auf der RaspberryMatic den Rollladen auf 20%, also 0.2, dann steht im Log

Code: Alles auswählen

Mar 17 19:40:00 homematic daemon.debug node-red[19460]: [ccu-connection:localhost] rpc > HmIP-RF setValue ["00111A499A0840:4","LEVEL",{"explicitDouble":0.2}]
Mar 17 19:40:00 homematic daemon.debug node-red[19460]: [ccu-connection:localhost]     < HmIP-RF setValue ""
Versuche ich von dem externen Node-Red den Rollladen auf 20% zu setzen, dann sagt das Log

Code: Alles auswählen

17 Mar 19:47:24 - [warn] [ccu-connection:192.168.30.10] unknown paramsetDescription   LEVEL
17 Mar 19:47:44 - [error] [ccu-connection:192.168.30.10]     < HmIP-RF setValue Error: XML-RPC fault: Generic error
17 Mar 19:47:44 - [error] [ccu-connection:192.168.30.10] rpc > HmIP-RF setValue ["00111A499A0840:4","LEVEL","0.2"] < Error: XML-RPC fault: Generic error
Da stimmt doch was nicht! Liegt es vielleicht am String "0.2"? Das einzig Auffällige, was ich noch finde, ist die node.js Version. Auf der RaspberryMatic ist

Code: Alles auswählen

{
   "ccu": {
      "VERSION": "3.55.10.20210213",
      "PRODUCT": "raspmatic_rpi3",
      "PLATFORM": "rpi3-aarch64",
      "deviceTypes": [
         "HM-RCV-50",
         "HmIP-BDT",
         "HmIP-BROLL",
         "HmIP-BSM",
         "HMIP-PS",
         "HmIP-RCV-50",
         "HmIP-SMI",
         "HmIP-SPI",
         "HmIP-STHO",
         "HmIP-WRC6",
         "HmIP-WRCC2"
      ]
   },
   "redmatic": "7.2.1",
   "nodejs": "14.16.0",
   "@node-red-contrib-themes/midnight-red": "1.4.7",
   "ain2": "3.0.0",
   "node-red": "1.2.9",
   "npm": "7.6.3",
   "node-red-contrib-ccu": "3.4.2",
   "node-red-contrib-combine": "1.8.1",
   "node-red-contrib-sun-position": "1.2.4",
   "node-red-contrib-ui-level": "0.1.40",
   "node-red-dashboard": "2.28.1",
   "node-red-node-email": "1.8.3",
   "node-red-node-openweathermap": "0.4.0",
   "node-red-node-rbe": "0.4.0",
   "node-red-node-ui-table": "0.3.10",
   "redmatic-led": "1.1.0",
   "redmatic-webapp": "0.3.1"
}
Auf dem externen Node Red

Code: Alles auswählen

Willkommen bei Node-RED!
===================

17 Mar 19:51:59 - [info] Node-RED Version: v1.2.9
17 Mar 19:51:59 - [info] Node.js  Version: v12.21.0
17 Mar 19:51:59 - [info] Linux 5.10.17-v7+ arm LE
17 Mar 19:52:00 - [info] Paletten-Nodes werden geladen
17 Mar 19:52:02 - [info] node-red-contrib-ccu version: 3.4.2
17 Mar 19:52:03 - [info] Dashboard version 2.28.1 started at /ui
17 Mar 19:52:03 - [info] Einstellungsdatei: /home/pi/.node-red/settings.js
17 Mar 19:52:03 - [info] Kontextspeicher: 'default' [ module=memory]
17 Mar 19:52:03 - [info] Benutzerverzeichnis: /home/pi/.node-red
17 Mar 19:52:03 - [warn] Projekte inaktiviert: editorTheme.projects.enabled=false
17 Mar 19:52:03 - [info] Flow-Datei: /home/pi/.node-red/flows_automation.json
17 Mar 19:52:03 - [info] Server wird jetzt auf http://127.0.0.1:1880/ ausgeführt.
Jetzt müsste ich mal sehen, wie ich die node.js Version anpassen könnte...

Antworten

Zurück zu „RedMatic“