NEWS
Tradfri Tutorial
-
Also ehrlich gesagt, keine Ahnung! :mrgreen:
Evtl. sind im Admin Adapter infos der über Github getätigten Installation der 2.0 geblieben? :roll:
Aber wie dem auch sei,
irgendein Tip, wie ich den 1.4.1 jetzt zum Laufen bekomme?
Ulrich
-
Keine Ahnung, die Meldung ist nichtssagend. Am besten wirfst du den Adapter mal komplett runter (inkl Deinstallation in der Adapterliste) und installierst ihn dann neu (1.4.1, nicht von Github)
Gesendet von unterwegs
-
Habe Adapter komplett deinstalliert und von der Konsole neu installiert.
Im log erscheint:
! host.iobrokerBosaca 2018-06-27 22:53:01.240 error instance system.adapter.tradfri.0 terminated with code 1 ()
! Caught 2018-06-27 22:53:01.239 error by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/index.js:4:15)
! Caught 2018-06-27 22:53:01.238 error by controller[0]: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v48-linux-x64/node_aead_crypto.
! host.iobrokerBosaca 2018-06-27 22:53:00.428 info instance system.adapter.tradfri.0 started with pid 4027
! host.iobrokerBosaca 2018-06-27 22:53:00.407 info "system.adapter.tradfri.0" enabled</anonymous> -
Hast du mit dem Befehl installiert, den ich oben geschrieben habe?
sudo npm install iobroker.tradfri --unsafe-perm
Wenn nicht, dann tue folgendes:
cd /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto sudo npm install --production --unsafe-perm
-
Hatte ich genauso gemacht, nur ohne sudo (da ich auf der Synology immer admin bin).
Habe inzwischen npm upgedatet auf 6.1.0
Weiter habe ich die Hilfestellungen vom März dieses Jahres weiter oben nochmals durchgearbeitet.
Wenn ich
node_modules/.bin/node-pre-gyp reinstall --build-from-source
eingebe (was beim letzten Mal den Durchbruch brachte) bekomme ich
! root@iobrokerBosaca:/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/
! node-aead-crypto# node_modules/.bin/node-pre-gyp reinstall –build-from-source
! node-pre-gyp info it worked if it ends with ok
! node-pre-gyp info using node-pre-gyp@0.9.1
! node-pre-gyp info using node@6.14.3 | linux | x64
! node-pre-gyp ERR! UNCAUGHT EXCEPTION
! node-pre-gyp ERR! stack TypeError: napi.get_best_napi_version is not a function
! node-pre-gyp ERR! stack at rebuild (/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-
! client/node_modules/node-aead-crypto/node_modules/node-pre-gyp/lib/reinstall.js:13:33)
! node-pre-gyp ERR! stack at Object.self.commands.(anonymous function) [as reinstall] (/opt/iobroker/node
! _modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/node_modules/node-pre
! -gyp/lib/node-pre-gyp.js:52:37)
! node-pre-gyp ERR! stack at run (/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-clie
! nt/node_modules/node-aead-crypto/node_modules/node-pre-gyp/bin/node-pre-gyp:82:30)
! node-pre-gyp ERR! stack at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.tradfri/node_modules
! /node-dtls-client/node_modules/node-aead-crypto/node_modules/node-pre-gyp/bin/node-pre-gyp:134:1)
! node-pre-gyp ERR! stack at Module._compile (module.js:577:32)
! node-pre-gyp ERR! stack at Object.Module._extensions..js (module.js:586:10)
! node-pre-gyp ERR! stack at Module.load (module.js:494:32)
! node-pre-gyp ERR! stack at tryModuleLoad (module.js:453:12)
! node-pre-gyp ERR! stack at Function.Module._load (module.js:445:3)
! node-pre-gyp ERR! stack at Module.runMain (module.js:611:10)
! node-pre-gyp ERR! System Linux 3.10.105
! node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dt
! ls-client/node_modules/node-aead-crypto/node_modules/.bin/node-pre-gyp" "reinstall" "–build-from-source"
! node-pre-gyp ERR! cwd /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_module
! s/node-aead-crypto
! node-pre-gyp ERR! node -v v6.14.3
! node-pre-gyp ERR! node-pre-gyp -v v0.9.1
! node-pre-gyp ERR! This is a bug innode-pre-gyp
.
! node-pre-gyp ERR! Try to update node-pre-gyp and file an issue if it does not help:
! node-pre-gyp ERR! <https://github.com/mapbox/node-pre-gyp/issues></anonymous>log ist weiterhin unverändert
! host.iobrokerBosaca 2018-06-28 13:07:42.051 error instance system.adapter.tradfri.0 terminated with code 1 ()
! Caught 2018-06-28 13:07:42.046 error by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/index.js:4:15)
! Caught 2018-06-28 13:07:42.045 error by controller[0]: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v48-linux-x64/node_aead_crypto.
! host.iobrokerBosaca 2018-06-28 13:07:41.260 info instance system.adapter.tradfri.0 started with pid 17535</anonymous>Weitere Ideen/Vorschläge?
Ulrich
-
Dass es nicht läuft, wenn die Kompilierung fehlschlägt, ist logisch. Ich frage mich aber warum node-pre-gyp auf N-API zurückgreifen will.
Eigentlich sollte es auch vorkompilierte Module geben, außer in der Kiste werkelt ein ARMv6. Die Aufrufe des richtigen Befehls sollte aber
npm install --production
bereits für dich erledigen. Kannst du das bitte nochmal machen und bei Fehlschlag hier den Log posten?
Alternativ benutze mal
node_modules/.bin/node-pre-gyp install --build-from-source
also mit "install" statt "reinstall".
Edit: Dein Fehler ist anscheinend ein Bug in node-pre-gyp, der bereits behoben ist.
https://github.com/mapbox/node-pre-gyp/ … OG.md#0102
Aufgrund der schwierigen Abhängigkeiten habe ich die Version aber gepinnt, sodass diese Fehlerbehebung noch nicht drin ist. Ich werde heute abend mal eine neue Version zum Testen bereitstellen.
-
Ahh ok,
dann warte ich mal darauf.
Vielen Dank schon mal für die Unterstützung!
Ulrich
-
1.1.4 hab ich gerade veröffentlicht.
cd /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client npm install node-aead-crypto
-
OK hab ich installiert im Terminal.
! root@iobrokerBosaca:/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client# npm install
! node-aead-crypto
! npm WARN deprecated github@0.2.4: 'github' has been renamed to '@octokit/rest' (https://git.io/vNB11)
! > node-aead-crypto@1.1.4 install /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/
! node_modules/node-aead-crypto
! > node lib/install.js
! running default installation script
! > node-aead-crypto@1.1.4 install:default /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls
! -client/node_modules/node-aead-crypto
! > node-pre-gyp install –fallback-to-build
! node-pre-gyp WARN Tried to download(404): https://github.com/AlCalzone/node-aead- ... download/v
! 1.1.4/node-v59-linux-x64.tar.gz
! node-pre-gyp WARN Pre-built binaries not found for node-aead-crypto@1.1.4 and node@9.8.0 (node-v59 ABI, gli
! bc) (falling back to source compile with node-gyp)
! make: Verzeichnis „/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/
! node-aead-crypto/build“ wird betreten
! CXX(target) Release/obj.target/node_aead_crypto/src/node-aes-ccm.o
! CXX(target) Release/obj.target/node_aead_crypto/src/node-aes-gcm.o
! CXX(target) Release/obj.target/node_aead_crypto/src/addon.o
! SOLINK_MODULE(target) Release/obj.target/node_aead_crypto.node
! COPY Release/node_aead_crypto.node
! COPY /opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-cry
! pto/build/Release/node-v59-linux-x64/node_aead_crypto.node
! TOUCH Release/obj.target/action_after_build.stamp
! make: Verzeichnis „/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/
! node-aead-crypto/build“ wird verlassen
! + node-aead-crypto@1.1.4
! updated 1 package and audited 101 packages in 21.01s
! found 0 vulnerabilities
Lief offensichtlich ohne Fehler durch.Jetzt einfach Adapter neu starten oder neue Instanz oder wie weiter?
Ulrich
-
Wenn du schon eine Instanz hast musst du sie eigentlich nur noch (neu) starten.
-
Hmm, immer noch der selbe Fehler oder?
! host.iobrokerBosaca 2018-06-28 21:44:12.854 error instance system.adapter.tradfri.0 terminated with code 1 ()
! Caught 2018-06-28 21:44:12.853 error by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/index.js:4:15)
! Caught 2018-06-28 21:44:12.852 error by controller[0]: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v48-linux-x64/node_aead_crypto.
! host.iobrokerBosaca 2018-06-28 21:44:12.118 info instance system.adapter.tradfri.0 started with pid 26240
! host.iobrokerBosaca 2018-06-28 21:44:12.100 info object change system.adapter.tradfri.0
! host.iobrokerBosaca 2018-06-28 21:44:06.528 info Restart adapter system.adapter.tradfri.0 because enabled</anonymous>Edit: Nach Neustart ioBroker im log:
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error instance system.adapter.tradfri.0 terminated with code 1 ()
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error Caught by controller[0]: at Function.Module._load (module.js:445:3)
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error Caught by controller[0]: at tryModuleLoad (module.js:453:12)
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error Caught by controller[0]: at Module.load (module.js:494:32)
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error Caught by controller[0]: at Object.Module._extensions..js (module.js:586:10)
! host.iobrokerBosaca 2018-06-28 21:57:09.826 error Caught by controller[0]: at Module._compile (module.js:577:32)
! host.iobrokerBosaca 2018-06-28 21:57:09.825 error Caught by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/index.js:4:15)
! host.iobrokerBosaca 2018-06-28 21:57:09.825 error Caught by controller[0]: at require (internal/module.js:20:19)
! host.iobrokerBosaca 2018-06-28 21:57:09.825 error Caught by controller[0]: at Module.require (module.js:504:17)
! host.iobrokerBosaca 2018-06-28 21:57:09.825 error Caught by controller[0]: at Function.Module._load (module.js:424:25)
! host.iobrokerBosaca 2018-06-28 21:57:09.825 error Caught by controller[0]: at Function.Module._resolveFilename (module.js:476:15)
! host.iobrokerBosaca 2018-06-28 21:57:09.824 error Caught by controller[0]: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.tradfri/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v48-linux-x64/node_aead_c
! host.iobrokerBosaca 2018-06-28 21:57:09.824 error Caught by controller[0]: ^
! host.iobrokerBosaca 2018-06-28 21:57:09.824 error Caught by controller[0]: throw err;
! host.iobrokerBosaca 2018-06-28 21:57:09.824 error Caught by controller[0]: module.js:478
! host.iobrokerBosaca 2018-06-28 21:57:09.082 info instance system.adapter.tradfri.0 started with pid 411</anonymous> -
Ahh, hast du vor kurzem ein NodeJS-Upgrade gemacht? Beim Kompilieren wird eine v59 erstellt (dürfte Node 10 sein?), beim Ausführen aber eine v48 gesucht.
Ich glaube da hilft nur noch die Holzhammermethode…
aus /opt/iobroker/node_modules/ die folgenden Ordner komplett löschen, wenn sie existieren:
iobroker.tradfri node-tradfri-client node-coap-client node-dtls-client node-aead-crypto
Und danach den Adapter installieren, in deinem Fall am besten direkt über die Konsole
cd /opt/iobroker npm install iobroker.tradfri --unsafe-perm
-
Habe kein node update gemacht
! root@iobrokerBosaca:/opt/iobroker# node -v
! v6.14.3Step by step nach Deiner Anweisung die Ordner gelöscht, von der Konsole neu installiert
! root@iobrokerBosaca:/opt/iobroker# npm install iobroker.tradfri –unsafe-perm
! > node-dtls-client@0.5.4 install /opt/iobroker/node_modules/node-dtls-client
! > node install/postinstall.js
! node-dtls-client: testing NodeJS version
! Version < 10, installing node-aead-crypto...
! npm WARN deprecated github@0.2.4: 'github' has been renamed to '@octokit/rest' (https://git.io/vNB11)
! > node-aead-crypto@1.1.4 install /opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto
! > node lib/install.js
! running default installation script
! > node-aead-crypto@1.1.4 install:default /opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead
! -crypto
! > node-pre-gyp install --fallback-to-build
! node-pre-gyp WARN Tried to download(404): https://github.com/AlCalzone/node-aead- ... download/v
! 1.1.4/node-v59-linux-x64.tar.gz
! node-pre-gyp WARN Pre-built binaries not found for node-aead-crypto@1.1.4 and node@9.8.0 (node-v59 ABI, gli
! bc) (falling back to source compile with node-gyp)
! make: Verzeichnis „/opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto/build“ wird b
! etreten
! CXX(target) Release/obj.target/node_aead_crypto/src/node-aes-ccm.o
! CXX(target) Release/obj.target/node_aead_crypto/src/node-aes-gcm.o
! CXX(target) Release/obj.target/node_aead_crypto/src/addon.o
! SOLINK_MODULE(target) Release/obj.target/node_aead_crypto.node
! COPY Release/node_aead_crypto.node
! COPY /opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v59-lin
! ux-x64/node_aead_crypto.node
! TOUCH Release/obj.target/action_after_build.stamp
! make: Verzeichnis „/opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto/build“ wird v
! erlassen
! npm notice created a lockfile as package-lock.json. You should commit this file.
! + node-aead-crypto@1.1.4
! added 73 packages from 41 contributors and audited 103 packages in 23.899s
! found 0 vulnerabilities
! + iobroker.tradfri@1.4.1
! added 7 packages from 6 contributors and audited 4084 packages in 90.886s
! found 83 vulnerabilities (43 low, 29 moderate, 11 high)
! runnpm audit fix
to fix them, ornpm audit
for detailsDas log zeigt
! host.iobrokerBosaca 2018-06-29 16:33:45.649 error instance system.adapter.tradfri.0 terminated with code 1 ()
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Function.Module._load (module.js:445:3)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at tryModuleLoad (module.js:453:12)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Module.load (module.js:494:32)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Object.Module._extensions..js (module.js:586:10)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Module._compile (module.js:577:32)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto/index.js:4:15)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at require (internal/module.js:20:19)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Module.require (module.js:504:17)
! Caught 2018-06-29 16:33:45.648 error by controller[0]: at Function.Module._load (module.js:424:25)
! Caught 2018-06-29 16:33:45.647 error by controller[0]: at Function.Module._resolveFilename (module.js:476:15)
! Caught 2018-06-29 16:33:45.647 error by controller[0]: Error: Cannot find module '/opt/iobroker/node_modules/node-dtls-client/node_modules/node-aead-crypto/build/Release/node-v48-linux-x64/node_aead_crypto.node'
! Caught 2018-06-29 16:33:45.647 error by controller[0]: ^
! Caught 2018-06-29 16:33:45.647 error by controller[0]: throw err;
! Caught 2018-06-29 16:33:45.647 error by controller[0]: module.js:478
! host.iobrokerBosaca 2018-06-29 16:33:44.915 info instance system.adapter.tradfri.0 started with pid 17958</anonymous>Ich hoffe Du bist nicht genauso gefrustet wie ich
Ulrich
Edit: nach Neustart des Docker Containers im log:
! host.iobrokerBosaca 2018-06-29 18:05:02.698 error instance system.adapter.tradfri.0 terminated with code 1 ()
! host.iobrokerBosaca 2018-06-29 18:05:01.959 info instance system.adapter.tradfri.0 started with pid 1569
! host.iobrokerBosaca 2018-06-29 18:05:01.941 info object change system.adapter.tradfri.0
! host.iobrokerBosaca 2018-06-29 18:05:00.603 info Restart adapter system.adapter.tradfri.0 because enabled -
Pre-built binaries not found for node-aead-crypto@1.1.4 and node@9.8.0
Dann verstehe ich diesen Log-Output nicht. Sicher, dass du da nicht doch irgendwie NodeJS 9 eingeschleust hast, welches Reste hinterlassen hat?
-
Wie kann ich das feststellen/beseitigen?
wenn ich versuche upzudaten kommt
! root@iobrokerBosaca:/opt/iobroker# apt-get install -y nodejs
! Paketlisten werden gelesen… Fertig
! Abhängigkeitsbaum wird aufgebaut.
! Statusinformationen werden eingelesen.... Fertig
! nodejs ist schon die neueste Version (6.14.3-1nodesource1).
! 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 3 nicht aktualisiert. -
Es sollte erst einmal festgestellt werden, wo welche Version von node.js installiert ist.
ls -l /usr/bin/node* /usr/bin/node -v ls -l /usr/local/bin/node* /usr/local/bin/node -v
und mit welcher Version ioBroker beim Boot automatisch gestartet wird: Datei /etc/init.d/iobroker.sh, Zeile 13 so ?
NODECMD=/usr/bin/node
-
Ich freue mich total, dass ich noch einen Tip bekomme.
Diese Woche bin ich ortsabwesend und kann daher erst nach meiner Rückkehr Deine Hinweise abarbeiten, dann aber sehr gerne!
Ich melde mich dann.
Ulrich
Gesendet von meinem T1-A21L mit Tapatalk
-
Hallo zusammen,
ich hätte eine Verständnisfrage oder besser gesagt ein kleines Problem mit folgender Konstellation:
-
Raspi 3 mit ioBroker und VIS sowie Cloudadapter für Alexa
-
Tradfri Gateway mit mehreren Tradfri Lampen sowie normalen Gruppen (aus der App) bzw Virtuellen Gruppen
-
dazu einen Echo Plus sowie einen Echo Show.
Wenn ich nun mittels Alexa oder VIS die Gruppen ausschalte und sie anschließend wieder normal mit dem Schalter einschalten will werden sie immer auf eine Brightness von 0,4% gestellt. Das wieder einschalten per Schalter ist einmal normal ausschalten (Tradfri Stromlos) und anschließend wieder auf ein und mit Strom versorgen. Gibt es hier irgendwo eine Definition welche Brightness die Lampen haben, wenn sie wieder normal mit Strom versorgt werden?
Bin ehrlich gesagt ein wenig ratlos. Wenn ich das Licht mittels VIS oder Alexa normal Einschalte ohne es zuvor am Schalter auszuschalten funktioniert alles wie es soll wobei hier der Cloudadapter bei "An" automatisch eine Brightness von 100% definiert. Das Problem besteht wirklich nur sobald das Licht über den Schalter wieder eingeschaltet werden soll und vorher über VIS bzw Alexa ausgeschaltet wurde.
Vielen Dank für Eure Hilfe
-
-
Die Tradfri sollten NIE stromlos sein, sondern nur über die Fernbedienung oder das Gateway geschaltet werden.
Nach stromlos einschalten befinden die sich im bootmodus eingeschaltet (also auch nach Stromausfall gehen die Lampen bei Stromwiederkehr an).
Ulrich
Gesendet von meinem SM-J700H mit Tapatalk
-
Mir ist das ja bewusst allerdings den kleinen Damen im Hause nicht. Hier wird halt leider immernoch benötigt das die Lampen auch mit einem normalen Wippenschalter ein und ausgeschaltet werden können, was auch ohne weiteres geht solang die Brightness zuvor nicht per Alexa oder VIS auf 0% geregelt wird.