rdmtc / RedMatic

Node-RED packaged as Addon for the Homematic CCU3 and RaspberryMatic 🤹‍♂️
Apache License 2.0
533 stars 47 forks source link

Die neue Schaltsteckdose "hmip-ps-2 9ym" funktioniert nicht mit Homekit #587

Open Lowlanders opened 9 months ago

Lowlanders commented 9 months ago

Hallo, ich habe versucht die neue Schaltsteckdose "hmip-ps-2 9ym" (ja mit Space im Namen) in den Homekit Node von Redmatic zu bringen. Dazu habe ich die "hmip-ps-2 9ym.js" in /usr/local/addons/redmatic/lib/node_modules/redmatic-homekit/homematic-devices/ mit folgender Codezeile angelegt.

module.exports = require('./hmip-ps');

Leider wird nun im Node nur das Device als "hmip-ps-2 9ym" gelistet. Ein Channel mit der Schaltfunktion fehlt aber. Beim Homekit auf dem iPhone ist das Device nicht sichtbar.

Woran könnte das liegen? Kann das jemand bestätigen? Ist eventuell die Leerstelle im Namen das Problem und irgendwo im Code liegt der Fehler?

ptweety commented 9 months ago

hmip-ps-2 9ym.js

ich denke, es muss hmip-ps-2_9ym.js heißen.

Lowlanders commented 9 months ago

Nein leider nicht. Mit Underscore statt Space taucht es überhaupt nicht mehr im Node als Device auf.

Lowlanders commented 9 months ago

Auszug aus Debug Log { "ccu": "{\"VERSION\":\"3.73.9\",\"PRODUCT\":\"ccu3\",\"PLATFORM\":\"rpi3-armv7l\",\"deviceTypes\":[\"HM-LC-Sw4-DR\",\"HM-RCV-50\",\"HmIP-ASIR-2\",\"HmIP-BBL\",\"HmIP-BROLL\",\"HmIP-BROLL-2\",\"HmIP-BSL\",\"HmIP-CCU3\",\"HmIP-eTRV-B\",\"HMIP-PS\",\"HmIP-PS-2", "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", "redmatic-homekit": "3.3.0", "node-red-contrib-ccu": "3.4.2", "node-red-contrib-combine": "1.8.1", "node-red-contrib-netatmo": "0.2.0", "node-red-contrib-sonos-plus": "4.1.0", "node-red-contrib-sun-position": "1.2.4", "node-red-dashboard": "2.28.1", "node-red-node-email": "1.8.3", "node-red-node-rbe": "0.4.0", "redmatic-led": "1.1.0", "redmatic-webapp": "0.3.1" } Argument `9YM","HmIP-RCV-50","HmIP-SMI","HmIP-SWSD"]}' is neither k=v nor k@v

Lowlanders commented 9 months ago

Ich habe es nun hinbekommen. Im File /usr/local/addons/redmatic/lib/node_modules/redmatic-homekit/nodes/redmatic-homekit-homematic-devices.html

in Funktion "function addDevice" bei case 'hmip-ps' die entsprechende Zeile mit "case 'hmip-ps-2 9ym':" eingefügt:

                        case 'hmip-ps':
                        case 'hmip-ps-2 9ym':
                        case 'hmip-psm':
                            addChannels(addr, 3, 3, {type: outletTypes});
                            break;

und im File /usr/local/addons/redmatic/lib/node_modules/redmatic-homekit/nodes/redmatic-homekit-homematic-devices.js

in Funktion "function createHomematicDevice"

die Zeile type = type.toLowerCase().replace(/ /g, '_'); in
type = type.toLowerCase();

geändert.
So gehts. Da das nun das erste und bis dato das einzige Homematic-Device mit einer Leerstelle im Devicename ist, gehe ich davon aus, dass das replace sowieso nicht benötigt wird.

Wird der Homekit-Teil von Redmatic eigentlich überhaupt noch gewartet? Man könnte ja mal die ganzen neuen Komponenten (BROLL-2, HMIP-PS-2, HMIP-PS-2 9ym) einpflegen und eine neue Version veröffentlichen.

Tscherno commented 9 months ago

Wird der Homekit-Teil von Redmatic eigentlich überhaupt noch gewartet? Man könnte ja mal die ganzen neuen Komponenten (BROLL-2, HMIP-PS-2, HMIP-PS-2 9ym) einpflegen und eine neue Version veröffentlichen.

Leider nein. Ein Fork wäre aber natürlich immer möglich.