maxnowack / homebridge-eq3ble

Homebridge plugin to control EQ3 bluetooth thermostats
GNU General Public License v3.0
21 stars 8 forks source link

EQ3-Thermostat not registered #26

Open serverpaul opened 3 years ago

serverpaul commented 3 years ago

At first I installed the plugin and then I inserted { "accessory": "EQ3-Thermostat", "name": "Thermostat", "address": "00:1a:22:07:48:77" } into the config.json using copy+paste. After a restart of Homebridge, I got this:

[10/19/2020, 10:35:48 AM] Error: The requested accessory 'EQ3-Thermostat' was not registered by any plugin. at PluginManager.getPluginForAccessory (/usr/local/lib/node_modules/homebridge/src/pluginManager.ts:198:15) at /usr/local/lib/node_modules/homebridge/src/server.ts:347:37 at Array.forEach (<anonymous>) at Server._loadAccessories (/usr/local/lib/node_modules/homebridge/src/server.ts:330:29) at Server.start (/usr/local/lib/node_modules/homebridge/src/server.ts:156:12) at cli (/usr/local/lib/node_modules/homebridge/src/cli.ts:80:10) at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22) at Module._compile (internal/modules/cjs/loader.js:1015:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1035:10) at Module.load (internal/modules/cjs/loader.js:879:32)

maxnowack commented 3 years ago

Looks like homebridge didn't find the plugin. How did you install the plugin?

serverpaul commented 3 years ago

I searched for "eq3" in Homebridge (web interface) and clicked "Install"

maxnowack commented 3 years ago

Do you get any output if you install it via the web interface? Have you tried installing it via terminal (npm i -g homebridge-eq3ble)?

serverpaul commented 3 years ago

I've tried installing it via terminal and it says: `npm WARN deprecated core-js@2.6.11: core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.

xpc-connection@0.1.4 install /usr/local/lib/node_modules/homebridge-eq3ble/node_modules/xpc-connection node-gyp rebuild

No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.

No receipt for 'com.apple.pkg.DeveloperToolsCLILeo' found at '/'.

No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'.

gyp: No Xcode or CLT version detected! gyp ERR! configure error gyp ERR! stack Error: gyp failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16) gyp ERR! stack at ChildProcess.emit (events.js:314:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12) gyp ERR! System Darwin 20.1.0 gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /usr/local/lib/node_modules/homebridge-eq3ble/node_modules/xpc-connection gyp ERR! node -v v12.19.0 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok

core-js@2.6.11 postinstall /usr/local/lib/node_modules/homebridge-eq3ble/node_modules/core-js node -e "try{require('./postinstall')}catch(e){}"

Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!

The project needs your help! Please consider supporting of core-js on Open Collective or Patreon:

https://opencollective.com/core-js https://www.patreon.com/zloirock

Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@^0.5.1 (node_modules/homebridge-eq3ble/node_modules/noble/node_modules/bluetooth-hci-socket): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for bluetooth-hci-socket@0.5.1: wanted {"os":"linux,android,win32","arch":"any"} (current: {"os":"darwin","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@0.1.4 (node_modules/homebridge-eq3ble/node_modules/xpc-connection): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@0.1.4 install: node-gyp rebuild npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

After that, a new windows opens and aksks to install a new software. I clicked "Install", accepted the license and it searched for the software. After 2/3 seconds it says that it can't find the software because it currently not available on the update server. Then I clicked "OK". But I think this is normal, i get this error every time installing any plugin (I've tried installing 2 others). When I install it vie web interface it's pretty much the same, I just don't get so many details like in terminal

maxnowack commented 3 years ago

gyp: No Xcode or CLT version detected! This is the error. It seems that you don't have the command line tools installed properly. There are some guides in the web, here one link for example https://www.godo.dev/tutorials/xcode-command-line-tools-installation-faq/ This plugin only works, if the command line tools are installed

serverpaul commented 3 years ago

Yes, that might be the problem I can't find a folder named "Developer" in "Library" I'll try to install it properly then

Src-dk commented 3 years ago

Having a similer issue on raspberry pi zero w. Did the same as serverpaul, when installing through ssh i get:

pi@homebridge:/usr/local/lib/node_modules $ sudo npm i -g homebridge-eq3ble npm ERR! prepareGitDep 1> npm ERR! prepareGitDep > curve25519-n@1.5.0 install /usr/local/lib/node_modules/ homebridge-eq3ble/node_modules/curve25519-n npm ERR! prepareGitDep > node-gyp rebuild npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! prepareGitDep 2> npm WARN install Usage of the --dev option is deprec ated. Use --also=dev instead. npm ERR! prepareGitDep npm WARN deprecated babel-preset-es2015@6.18.0: 🙌 Thank s for using Babel: we recommend using babel-preset-env now: please read https:// babeljs.io/env to update! npm ERR! prepareGitDep npm WARN deprecated chokidar@1.7.0: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. npm ERR! prepareGitDep npm WARN deprecated fsevents@1.2.13: fsevents 1 will brea k on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. npm ERR! prepareGitDep npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdi rp are no longer supported. Please update to mkdirp 1.x. (Note that the API surf ace has changed to use Promises in 1.x.) npm ERR! prepareGitDep npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor. npm ERR! prepareGitDep npm WARN deprecated resolve-url@0.2.1: https://github.com /lydell/resolve-url#deprecated npm ERR! prepareGitDep npm WARN deprecated urix@0.1.0: Please see https://github .com/lydell/urix#deprecated npm ERR! prepareGitDep gyp WARN EACCES current user ("pi") does not have permiss ion to access the dev dir "/root/.cache/node-gyp/14.15.1" npm ERR! prepareGitDep gyp WARN EACCES attempting to reinstall using temporary d ev dir "/usr/local/lib/node_modules/homebridge-eq3ble/node_modules/curve25519-n/ .node-gyp" npm ERR! prepareGitDep gyp WARN install got an error, rolling back install npm ERR! prepareGitDep gyp WARN install got an error, rolling back install npm ERR! prepareGitDep gyp ERR! configure error npm ERR! prepareGitDep gyp ERR! stack Error: EACCES: permission denied, mkdir '/ usr/local/lib/node_modules/homebridge-eq3ble/node_modules/curve25519-n/.node-gyp ' npm ERR! prepareGitDep gyp ERR! System Linux 5.4.72+ npm ERR! prepareGitDep gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/no de_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" npm ERR! prepareGitDep gyp ERR! cwd /usr/local/lib/node_modules/homebridge-eq3bl e/node_modules/curve25519-n npm ERR! prepareGitDep gyp ERR! node -v v14.15.1 npm ERR! prepareGitDep gyp ERR! node-gyp -v v5.1.0 npm ERR! prepareGitDep gyp ERR! not ok npm ERR! prepareGitDep npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-conne ction@~0.1.4 (node_modules/noble/node_modules/xpc-connection): npm ERR! prepareGitDep npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current : {"os":"linux","arch":"arm"}) npm ERR! prepareGitDep npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@ ^1.0.0 (node_modules/chokidar/node_modules/fsevents): npm ERR! prepareGitDep npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"o s":"linux","arch":"arm"}) npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! code ELIFECYCLE npm ERR! prepareGitDep npm ERR! errno 1 npm ERR! prepareGitDep npm ERR! curve25519-n@1.5.0 install: node-gyp rebuild npm ERR! prepareGitDep npm ERR! Exit status 1 npm ERR! prepareGitDep npm ERR! npm ERR! prepareGitDep npm ERR! Failed at the curve25519-n@1.5.0 install script. npm ERR! prepareGitDep npm ERR! This is probably not a problem with npm. There i s likely additional logging output above. npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! A complete log of this run can be found in: npm ERR! prepareGitDep npm ERR! /root/.npm/_logs/2020-12-02T14_17_07_608Z-de bug.log npm ERR! prepareGitDep npm ERR! prepareGitDep 1> npm ERR! prepareGitDep > curve25519-n@1.5.0 install /usr/local/lib/node_modules/ homebridge-eq3ble/node_modules/curve25519-n npm ERR! prepareGitDep > node-gyp rebuild npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! prepareGitDep 2> npm WARN install Usage of the --dev option is deprec ated. Use --also=dev instead. npm ERR! prepareGitDep npm WARN deprecated fsevents@1.2.13: fsevents 1 will brea k on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. npm ERR! prepareGitDep gyp WARN EACCES current user ("pi") does not have permiss ion to access the dev dir "/root/.cache/node-gyp/14.15.1" npm ERR! prepareGitDep gyp WARN EACCES attempting to reinstall using temporary d ev dir "/usr/local/lib/node_modules/homebridge-eq3ble/node_modules/curve25519-n/ .node-gyp" npm ERR! prepareGitDep gyp WARN install got an error, rolling back install npm ERR! prepareGitDep gyp WARN install got an error, rolling back install npm ERR! prepareGitDep gyp ERR! configure error npm ERR! prepareGitDep gyp ERR! stack Error: EACCES: permission denied, mkdir '/ usr/local/lib/node_modules/homebridge-eq3ble/node_modules/curve25519-n/.node-gyp ' npm ERR! prepareGitDep gyp ERR! System Linux 5.4.72+ npm ERR! prepareGitDep gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/no de_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" npm ERR! prepareGitDep gyp ERR! cwd /usr/local/lib/node_modules/homebridge-eq3bl e/node_modules/curve25519-n npm ERR! prepareGitDep gyp ERR! node -v v14.15.1 npm ERR! prepareGitDep gyp ERR! node-gyp -v v5.1.0 npm ERR! prepareGitDep gyp ERR! not ok npm ERR! prepareGitDep npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-conne ction@~0.1.4 (node_modules/noble/node_modules/xpc-connection): npm ERR! prepareGitDep npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current : {"os":"linux","arch":"arm"}) npm ERR! prepareGitDep npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@ ^1.0.0 (node_modules/chokidar/node_modules/fsevents): npm ERR! prepareGitDep npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"o s":"linux","arch":"arm"}) npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! code ELIFECYCLE npm ERR! prepareGitDep npm ERR! errno 1 npm ERR! prepareGitDep npm ERR! curve25519-n@1.5.0 install: node-gyp rebuild npm ERR! prepareGitDep npm ERR! Exit status 1 npm ERR! prepareGitDep npm ERR! npm ERR! prepareGitDep npm ERR! Failed at the curve25519-n@1.5.0 install script. npm ERR! prepareGitDep npm ERR! This is probably not a problem with npm. There i s likely additional logging output above. npm ERR! prepareGitDep npm ERR! prepareGitDep npm ERR! A complete log of this run can be found in: npm ERR! prepareGitDep npm ERR! /root/.npm/_logs/2020-12-02T14_22_07_397Z-de bug.log npm ERR! prepareGitDep npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modu les/homebridge-eq3ble/node_modules/noble/node_modules/xpc-connection): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-conne ction@0.1.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch": "arm"})

npm ERR! code 1 npm ERR! null: npm exited with code 1 while attempting to build [object Object]. Clone the repository manually and run 'npm install' in it for more information.

npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2020-12-02T14_22_24_311Z-debug.log

log: [02/12/2020, 15:47:40] ==================== [02/12/2020, 15:47:41] ERROR LOADING PLUGIN homebridge-eq3ble: [02/12/2020, 15:47:41] Error: Cannot find module '../build/Release/binding.node' Require stack:

kjyv commented 3 years ago

The original issue means that there was an issue loading the plugin, there will be another error above it. @Src-dk you need to run sudo npm i -g homebridge-eq3ble --unsafe-perm It will however fail to install because it can't build the module bluetooth-hci-socket on newer versions of nodejs.

Src-dk commented 3 years ago

The original issue means that there was an issue loading the plugin, there will be another error above it. @Src-dk you need to run sudo npm i -g homebridge-eq3ble --unsafe-perm It will however fail to install because it can't build the module bluetooth-hci-socket on newer versions of nodejs.

OK, THX, So i have to revert the nodejs to make it run? remember seing af node 8.0.0 guide somewhere! Merry christmas if your into that..;0)

kjyv commented 3 years ago

Might work, but I've basically given up on this plugin because even after getting it to not throw errors anymore in homebridge (by manually copying over some dependencies that work with node 12), it still didn't manage to connect, no messages about stuff etc. It is also using way too many dependencies and those seem to not even use system bluetooth tools on linux but roll their own stuff. It might work better with node 9 (I think I saw that reported as last working) but even then it might be unreliable.

I'll probably try making a new much simpler plugin soon that uses https://github.com/Heckie75/eQ-3-radiator-thermostat which works fine for me already on the command line.

And also: thanks and merry christmas to you too ;)