NEWS
{gelöst} Maxcul Adapter veraltet, bitte aktualisieren.
-
@haus-automatisierung sagte in Test Adapter Awtrix-Light (Awtrix 3):
Naja die letzten 3 Winter haben den Adapter auch nicht weiter gebracht
Da war aber nodejs@20 noch nicht die empfohlene Version und der Adapter lief.
-
@thomas-braun , ich sehe mich aber nicht animiert, mir 10 Thermostate und Fensterkontakte neu zu kaufen.
-
Dann sieh dich animiert den Adapter anzupassen oder jemanden zu finden, den du animiert bekommst sich um den Adapter zu kümmern.
-
Gern einen neuen Thread dafür aufmachen - gehört hier ja gerade eh nicht hin
-
@thomas-braun , eine issue besteht schon seit 25.5.24. Was soll ich denn da noch machen.
Ausser deinen Belehrungen wüsste ich nichts.
Ich habe echt keine Lust mehr hier...... -
@esp8266 sagte in Test Adapter Awtrix-Light (Awtrix 3):
Ausser deinen Belehrungen wüsste ich nichts.
Ich habe echt keine Lust mehr hier......Das ist keine Belehrung, das sind zwei Optionen, die du verfolgen kannst.
-
@esp8266 sagte in Test Adapter Awtrix-Light (Awtrix 3):
Ausser deinen Belehrungen wüsste ich nichts.
Wahrscheinlich reicht erstmal ein einfaches Update der Dependencies (aktuell ist serialport 12.x). Das Problem ist wohl, dass die Schnittmenge an Entwicklern und Nutzern von den (abgekündigten?) MAX!-Geräten sehr gering sein wird. Ich kann z.B. schlecht "ins Blaue entwickeln" und einfach eine neue Version freigeben, weil ich nix testen kann.
@Homoran würdest Du die Offtopic-Diskussion zu MAX! hier bitte abtrennen?
-
@haus-automatisierung sagte in Maxcul Adapter veraltet:
würdest Du die Offtopic-Diskussion zu MAX! hier bitte abtrennen?
erledigt!
@ESP8266 bitte provisorischen Threadtitel anpassen.
-
@homoran , erledigt
-
Zumindest installieren kann man den Adapter.
Testen kann ich es mangels Hardware nicht.$ iobroker add maxcul auto --host chet --debug NPM version: 10.8.2 Installing iobroker.maxcul@1.3.1... (System call) > @serialport/bindings@9.2.8 install> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild prebuild-install warn install No prebuilt binaries found (target=22.5.1 runtime=node arch=arm64 libc= platform=linux) gyp info using node@22.5.1 | linux | arm64 gyp info find Python using Python version 3.12.4 found at "/usr/bin/python3" gyp info spawn args '-f', gyp info spawn args 'make', gyp info spawn args '-I', gyp info spawn args '/opt/iobroker/node_modules/@serialport/bindings/build/config.gypi', gyp info spawn args '-I', gyp info spawn args '/opt/iobroker/node_modules/node-gyp/addon.gypi', gyp info spawn args '-I', gyp info spawn args '/home/iobroker/.cache/node-gyp/22.5.1/include/node/common.gypi', gyp info spawn args '-Dlibrary=shared_library', gyp info spawn args '-Dvisibility=default', gyp info spawn args '-Dnode_root_dir=/home/iobroker/.cache/node-gyp/22.5.1', gyp info spawn args '-Dnode_gyp_dir=/opt/iobroker/node_modules/node-gyp', gyp info spawn args '-Dnode_lib_file=/home/iobroker/.cache/node-gyp/22.5.1/<(target_arch)/node.lib', gyp info spawn args '-Dmodule_root_dir=/opt/iobroker/node_modules/@serialport/bindings', gyp info spawn args '-Dnode_engine=v8',gyp info spawn args '--depth=.', gyp info spawn args '--no-parallel', gyp info spawn args '--generator-output', gyp info spawn args 'build', gyp info spawn args '-Goutput_dir=.' gyp info spawn args ] gyp info spawn make gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]make: Entering directory '/opt/iobroker/node_modules/@serialport/bindings/build' CXX(target) Release/obj.target/bindings/src/serialport.o from /home/iobroker/.cache/node-gyp/22.5.1/include/node/v8.h:24, from /home/iobroker/.cache/node-gyp/22.5.1/include/node/node.h:73, from ../../../nan/nan.h:62, from ../src/./serialport.h:13, from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 401 | V8_INLINE explicit Local<T>(const LocalBase<T>& other) | ^/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: note: remove the ‘< >’ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:412:52: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type] 412 | uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/serialport.cpp: At global scope:../src/serialport.cpp:433:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses] 433 | SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~../src/serialport.cpp:433:28: note: remove parentheses /home/iobroker/.cache/node-gyp/22.5.1/include/node/node.h:1232:7: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type] 1232 | (node::addon_register_func) (regfunc), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/home/iobroker/.cache/node-gyp/22.5.1/include/node/node.h:1266:3: note: in expansion of macro ‘NODE_MODULE_X’ 1266 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) | ^~~~~~~~~~~~~../src/serialport.cpp:486:1: note: in expansion of macro ‘NODE_MODULE’ 486 | NODE_MODULE(serialport, init); | ^~~~~~~~~~~ CXX(target) Release/obj.target/bindings/src/serialport_unix.o from ../../../nan/nan.h:62, from ../src/serialport.h:13, from ../src/serialport_unix.cpp:2:/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 401 | V8_INLINE explicit Local<T>(const LocalBase<T>& other) | ^/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: note: remove the ‘< >’ ../src/serialport_unix.cpp: In function ‘void EIO_Open(uv_work_t*)’:../src/serialport_unix.cpp:89:84: warning: ‘%s’ directive output may be truncated writing up to 1023 bytes into a region of size 1003 [-Wformat-truncation=] 89 | snprintf(data->errorString, sizeof(data->errorString), "Error: %s, cannot open %s", strerror(errno), data->path); | ^~../src/serialport_unix.cpp:89:13: note: ‘snprintf’ output 22 or more bytes (assuming 1045) into a destination of size 1024 89 | snprintf(data->errorString, sizeof(data->errorString), "Error: %s, cannot open %s", strerror(errno), data->path); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CXX(target) Release/obj.target/bindings/src/poller.o from /home/iobroker/.cache/node-gyp/22.5.1/include/node/node.h:73, from ../../../nan/nan.h:62, from ../src/poller.cpp:1:/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] 401 | V8_INLINE explicit Local<T>(const LocalBase<T>& other) | ^/home/iobroker/.cache/node-gyp/22.5.1/include/node/v8-local-handle.h:401:30: note: remove the ‘< >’ CXX(target) Release/obj.target/bindings/src/serialport_linux.o SOLINK_MODULE(target) Release/obj.target/bindings.node COPY Release/bindings.node make: Leaving directory '/opt/iobroker/node_modules/@serialport/bindings/build' gyp info ok host.chet install adapter maxcul upload [3] maxcul.admin /opt/iobroker/node_modules/iobroker.maxcul/admin/index.html index.html text/html upload [2] maxcul.admin /opt/iobroker/node_modules/iobroker.maxcul/admin/index_m.html index_m.html text/html upload [1] maxcul.admin /opt/iobroker/node_modules/iobroker.maxcul/admin/maxcul.png maxcul.png image/png upload [0] maxcul.admin /opt/iobroker/node_modules/iobroker.maxcul/admin/words.js words.js application/javascript host.chet object system.adapter.maxcul created/updated host.chet create instance maxcul host.chet object system.adapter.maxcul.0.alive created host.chet object system.adapter.maxcul.0.connected created host.chet object system.adapter.maxcul.0.compactMode created host.chet object system.adapter.maxcul.0.cpu created host.chet object system.adapter.maxcul.0.cputime created host.chet object system.adapter.maxcul.0.memHeapUsed created host.chet object system.adapter.maxcul.0.memHeapTotal created host.chet object system.adapter.maxcul.0.memRss created host.chet object system.adapter.maxcul.0.uptime created host.chet object system.adapter.maxcul.0.inputCount created host.chet object system.adapter.maxcul.0.outputCount created host.chet object system.adapter.maxcul.0.eventLoopLag created host.chet object system.adapter.maxcul.0.sigKill created host.chet object system.adapter.maxcul.0.logLevel created host.chet object maxcul.0.info created host.chet object maxcul.0.info.connection created host.chet object maxcul.0.info.enablePairingMode created host.chet object maxcul.0.info.limitOverflow created host.chet object maxcul.0.info.quota created host.chet object maxcul.0.info.version created host.chet Set default value of maxcul.0.info.connection: false host.chet Set default value of maxcul.0.info.enablePairingMode: false host.chet Set default value of maxcul.0.info.limitOverflow: false host.chet object system.adapter.maxcul.0 created Process exited with code 0
Adapterstart:
2024-07-27 20:32:39.139 - info: maxcul.0 (7228) starting. Version 1.3.1 in /opt/iobroker/node_modules/iobroker.maxcul, node: v22.5.1, js-controller: 6.0.9 2024-07-27 20:32:39.342 - info: maxcul.0 (7228) using serial device /dev/ttyS0@38400 2024-07-27 20:32:39.357 - info: maxcul.0 (7228) serialPort /dev/ttyS0 is open! 2024-07-27 20:33:09.360 - info: maxcul.0 (7228) Timeout on CUL connect, cul is available but not responding
Sieht erstmal gut aus.
Wobei der serialport durchaus mal gebumpt werden könnte:echad@chet:/opt/iobroker $ npm ls serialport iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.maxcul@1.3.1 │ └── serialport@9.2.8 └─┬ iobroker.zigbee@1.10.3 └── serialport@12.0.0
-
@thomas-braun , ist da schon was geändert worden? Dann teste ich ihn morgen. Er ist ja aktiv bei mir. Ein neue installation würde für mich eine Menge Arbeit bedeuten. Die ganzen Week Profile wären weg und die abgeglichen Werte der Ventile auch. Bei 10 Thermostaten eine menge Holz.
-
@esp8266 sagte in Maxcul Adapter veraltet, bitte aktualisieren.:
ist da schon was geändert worden?
Nein, das ist eine ganz normale Installation, aus dem Beta-Repository.
-
@thomas-braun , ok. Wenn ich den Node.js hoch ziehe kommt es zur Ausgabe wie in dem Issue beschrieben und ist rot. Er motzt wohl nur wegen den Serialport.
-
@esp8266 sagte in Maxcul Adapter veraltet, bitte aktualisieren.:
Wenn ich den Node.js hoch ziehe kommt es zur Ausgabe wie in dem Issue beschrieben und ist rot.
Ja, weil serialport erst noch gegen das aktuelle nodejs gebaut werden muss.
-
Ich hab jetzt mein System auf nodejs@18 gedrückt, maxcul installiert, dann nodejs@20 installiert und maxcul hat sich automatisch selber neugebaut. Es kamen zwar zunächst Meldungen wie
2024-07-27 22:07:04.394 - info: maxcul.0 (21557) starting. Version 1.3.1 in /opt/iobroker/node_modules/iobroker.maxcul, node: v20.16.0, js-controller: 6.0.9 2024-07-27 22:07:04.974 - error: maxcul.0 (21557) uncaught exception: Could not locate the bindings file. Tried: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/compiled/20.16.0/linux/arm64/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v115-linux-arm64/bindings.node 2024-07-27 22:07:04.980 - error: maxcul.0 (21557) Error: Could not locate the bindings file. Tried: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/compiled/20.16.0/linux/arm64/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v115-linux-arm64/bindings.node at bindings (/opt/iobroker/node_modules/bindings/bindings.js:126:9) at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:2:36) at Module._compile (node:internal/modules/cjs/loader:1358:14) at Module._extensions..js (node:internal/modules/cjs/loader:1416:10) at Module.load (node:internal/modules/cjs/loader:1208:32) at Module._load (node:internal/modules/cjs/loader:1024:12) at Module.require (node:internal/modules/cjs/loader:1233:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22) at Module._compile (node:internal/modules/cjs/loader:1358:14) at Module._extensions..js (node:internal/modules/cjs/loader:1416:10) at Module.load (node:internal/modules/cjs/loader:1208:32) at Module._load (node:internal/modules/cjs/loader:1024:12) at Module.require (node:internal/modules/cjs/loader:1233:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.maxcul/node_modules/serialport/lib/index.js:2:17) 2024-07-27 22:07:04.984 - error: maxcul.0 (21557) Could not locate the bindings file. Tried: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/compiled/20.16.0/linux/arm64/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v115-linux-arm64/bindings.node 2024-07-27 22:07:04.998 - info: maxcul.0 (21557) terminating 2024-07-27 22:07:05.001 - warn: maxcul.0 (21557) Terminated (UNCAUGHT_EXCEPTION): Without reason 2024-07-27 22:07:05.504 - info: maxcul.0 (21557) terminating 2024-07-27 22:07:05.706 - error: host.chet Caught by controller[0]: Cannot load serialport module 2024-07-27 22:07:05.709 - error: host.chet instance system.adapter.maxcul.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2024-07-27 22:07:41.498 - info: maxcul.0 (21900) starting. Version 1.3.1 in /opt/iobroker/node_modules/iobroker.maxcul, node: v20.16.0, js-controller: 6.0.9 2024-07-27 22:07:41.982 - info: maxcul.0 (21900) using serial device /dev/ttyS0@38400 2024-07-27 22:07:42.018 - info: maxcul.0 (21900) serialPort /dev/ttyS0 is open! 2024-07-27 22:08:12.031 - info: maxcul.0 (21900) Timeout on CUL connect, cul is available but not responding 2024-07-27 22:09:21.327 - warn: maxcul.0 (21900) Module serialport is not available 2024-07-27 22:10:31.444 - error: host.chet iobroker npm-rebuild: Rebuilding native modules failed
rein, da einfach ein paar Minuten abwarten, am Ende kommt dann aber:
2024-07-27 22:14:19.035 - info: maxcul.0 (22993) starting. Version 1.3.1 in /opt/iobroker/node_modules/iobroker.maxcul, node: v20.16.0, js-controller: 6.0.9 2024-07-27 22:14:19.321 - info: maxcul.0 (22993) using serial device /dev/ttyS0@38400 2024-07-27 22:14:19.336 - info: maxcul.0 (22993) serialPort /dev/ttyS0 is open! 2024-07-27 22:14:26.978 - info: maxcul.0 (22993) List of port: [{"manufacturer":"Silicon Labs","serialNumber":"00_12_4B_00_23_93_2C_A8","pnpId":"usb-Silicon_Labs_slae.sh_cc2652rb_stick_-_slaesh_s_iot_stuff_00_12_4B_00_23_93_2C_A8-if00-port0","vendorId":"10c4","productId":"ea60","path":"/dev/ttyUSB0"},{"path":"/dev/ttyS0"}] 2024-07-27 22:14:49.340 - info: maxcul.0 (22993) Timeout on CUL connect, cul is available but not responding 2024-07-27 22:15:33.136 - info: maxcul.0 (22993) List of port: [{"manufacturer":"Silicon Labs","serialNumber":"00_12_4B_00_23_93_2C_A8","pnpId":"usb-Silicon_Labs_slae.sh_cc2652rb_stick_-_slaesh_s_iot_stuff_00_12_4B_00_23_93_2C_A8-if00-port0","vendorId":"10c4","productId":"ea60","path":"/dev/ttyUSB0"},{"path":"/dev/ttyS0"}]
und die Instanz startet.
-
@thomas-braun , Hmh, wie kann ich bei einer neu Installation umgehen, dass die Datenpunkte gelöscht werden?
-
Werden sie nicht.
-
@thomas-braun said in Maxcul Adapter veraltet, bitte aktualisieren.:
Werden sie nicht.
Ähmm - bei der Installation nicht. Aber bei der DEinstallation. Oder versteh ich da was falsch?
-
Man muss den Adapter ja nicht deinstallieren, einfach nur rebuilden lassen. Funktioniert wie oben gestestet automatisch. Man muss nur abwarten.
-
@thomas-braun , erklär mal. Ich lösche den Adapter und die Daten bleiben.
Ich nehme mal an, löschen unter den Instanzen, richtig. Dann sollten die Datenpunkte erhalten werden. Ich frage nur zur Sicherheit. Zur Not kann ich dann auch ein Restore noch einspielen.
Aber dann bleibt der Adapter so wie er ist.