# Node-red-contrib-generic-ble

**URL:** <https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418>\
**Category:** General\
**Created:** [5 January 2019 10:32 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418 "2019-01-05T10:32:36Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [5 January 2019 10:32 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/1 "2019-01-05T10:32:36Z")

</div>

Hello,

I hope someone can help. Firstly I am a complete novice where Node-red is concerned 🙂

I would like to build a project that scans for particular BLE information (probably "localName") and then trigger a relay, this will be to open gates.

I have loaded Node-Red v 0.19.5 and then npm install node-red-contrib-generic-ble. When I log onto my Node-red page- LAN IP address:1880 and open pallets I can see the "contrib-generic-ble" node, but it has a red warning triangle with a ! inside and does not appear on the left hand side node listing.

Any assistance as to overcome this would be greatly appreciated.

Peter!

node%20red%20error|659x177

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [5 January 2019 10:47 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/2 "2019-01-05T10:47:57Z")

</div>

> [@ttquattroman](#):
>
> node-red-contrib-generic-ble

if you installed from the command line, what did the logs say?  
When you restart node-red what messages are displayed in the log on startup?

You also don't mention what platform you are installing Node-RED on.

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [5 January 2019 11:03 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/3 "2019-01-05T11:03:31Z")

</div>

Sorry, I should have said that this is running on a raspberry Pi 3B. This is what I get when I start node-red;

pi@raspberrypi:~ $ node-red-start

Start Node-RED

Once Node-RED has started, point a browser at [http://192.168.1.133:1880](http://192.168.1.133:1880)  
On Pi Node-RED works better with the Firefox or Chrome browser

Use node-red-stop to stop Node-RED  
Use node-red-start to start Node-RED again  
Use node-red-log to view the recent log output  
Use sudo systemctl enable nodered.service to autostart Node-RED at every boot  
Use sudo systemctl disable nodered.service to disable autostart on boot

To find more nodes and example flows - go to [http://flows.nodered.org](http://flows.nodered.org)

# Starting as a systemd service. Started Node-RED graphical event wiring tool. 5 Jan 10:59:02 - [info] Welcome to Node-RED

## 5 Jan 10:59:02 - [info] Node-RED version: v0.19.5 5 Jan 10:59:02 - [info] Node.js version: v10.15.0 5 Jan 10:59:02 - [info] Linux 4.14.79-v7+ arm LE 5 Jan 10:59:03 - [info] Loading palette nodes 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [warn] [node-red-contrib-generic-ble/generic-ble] Error: Cannot find module 'bluetooth-hci-socket' 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [info] Settings file : /home/pi/.node-red/settings.js 5 Jan 10:59:06 - [info] Context store : 'default' [module=memory] 5 Jan 10:59:06 - [info] User directory : /home/pi/.node-red 5 Jan 10:59:06 - [warn] Projects disabled : editorTheme.projects.enabled=false 5 Jan 10:59:06 - [info] Flows file : /home/pi/.node-red/flows\_raspberrypi.json 5 Jan 10:59:06 - [info] Creating new flow file 5 Jan 10:59:06 - [warn]

## Your flow credentials file is encrypted using a system-generated key. If the system-generated key is lost for any reason, your credentials file will not be recoverable, you will have to delete it and re-enter your credentials. You should set your own key using the 'credentialSecret' option in your settings file. Node-RED will then re-encrypt your credentials file using your chosen key the next time you deploy a change.

5 Jan 10:59:06 - [info] Starting flows  
5 Jan 10:59:06 - [info] Started flows  
5 Jan 10:59:06 - [info] Server now running at [http://127.0.0.1:1880/](http://127.0.0.1:1880/)  
pi@raspberrypi:~ $ node-red-start

Start Node-RED

Once Node-RED has started, point a browser at [http://192.168.1.133:1880](http://192.168.1.133:1880)  
On Pi Node-RED works better with the Firefox or Chrome browser

Use node-red-stop to stop Node-RED  
Use node-red-start to start Node-RED again  
Use node-red-log to view the recent log output  
Use sudo systemctl enable nodered.service to autostart Node-RED at every boot  
Use sudo systemctl disable nodered.service to disable autostart on boot

To find more nodes and example flows - go to [http://flows.nodered.org](http://flows.nodered.org)

# Starting as a systemd service. Started Node-RED graphical event wiring tool. 5 Jan 10:59:02 - [info] Welcome to Node-RED

## 5 Jan 10:59:02 - [info] Node-RED version: v0.19.5 5 Jan 10:59:02 - [info] Node.js version: v10.15.0 5 Jan 10:59:02 - [info] Linux 4.14.79-v7+ arm LE 5 Jan 10:59:03 - [info] Loading palette nodes 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [warn] [node-red-contrib-generic-ble/generic-ble] Error: Cannot find module 'bluetooth-hci-socket' 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [info] Settings file : /home/pi/.node-red/settings.js 5 Jan 10:59:06 - [info] Context store : 'default' [module=memory] 5 Jan 10:59:06 - [info] User directory : /home/pi/.node-red 5 Jan 10:59:06 - [warn] Projects disabled : editorTheme.projects.enabled=false 5 Jan 10:59:06 - [info] Flows file : /home/pi/.node-red/flows\_raspberrypi.json 5 Jan 10:59:06 - [info] Creating new flow file 5 Jan 10:59:06 - [warn]

## Your flow credentials file is encrypted using a system-generated key. If the system-generated key is lost for any reason, your credentials file will not be recoverable, you will have to delete it and re-enter your credentials. You should set your own key using the 'credentialSecret' option in your settings file. Node-RED will then re-encrypt your credentials file using your chosen key the next time you deploy a change.

5 Jan 10:59:06 - [info] Starting flows  
5 Jan 10:59:06 - [info] Started flows  
5 Jan 10:59:06 - [info] Server now running at [http://127.0.0.1:1880/](http://127.0.0.1:1880/)

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [5 January 2019 11:07 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/4 "2019-01-05T11:07:11Z")

</div>

> [@ttquattroman](#):
>
> 5 Jan 10:59:06 - [warn] [node-red-contrib-generic-ble/generic-ble] Error: Cannot find module 'bluetooth-hci-socket'

explains why it is not showing up in the left handside list.

Try reinstalling it on the command line and copy the messages here (after reading the readme)

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [5 January 2019 11:17 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/5 "2019-01-05T11:17:26Z")

</div>

Ok, so this is what I get with I run the install again;

pi@raspberrypi:~ $ node-red-start

Start Node-RED

Once Node-RED has started, point a browser at [http://192.168.1.133:1880](http://192.168.1.133:1880)  
On Pi Node-RED works better with the Firefox or Chrome browser

Use node-red-stop to stop Node-RED  
Use node-red-start to start Node-RED again  
Use node-red-log to view the recent log output  
Use sudo systemctl enable nodered.service to autostart Node-RED at every boot  
Use sudo systemctl disable nodered.service to disable autostart on boot

To find more nodes and example flows - go to [http://flows.nodered.org](http://flows.nodered.org)

# Starting as a systemd service. Started Node-RED graphical event wiring tool. 5 Jan 10:59:02 - [info] Welcome to Node-RED

## 5 Jan 10:59:02 - [info] Node-RED version: v0.19.5 5 Jan 10:59:02 - [info] Node.js version: v10.15.0 5 Jan 10:59:02 - [info] Linux 4.14.79-v7+ arm LE 5 Jan 10:59:03 - [info] Loading palette nodes 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [warn] [node-red-contrib-generic-ble/generic-ble] Error: Cannot find module 'bluetooth-hci-socket' 5 Jan 10:59:06 - [warn] ------------------------------------------------------ 5 Jan 10:59:06 - [info] Settings file : /home/pi/.node-red/settings.js 5 Jan 10:59:06 - [info] Context store : 'default' [module=memory] 5 Jan 10:59:06 - [info] User directory : /home/pi/.node-red 5 Jan 10:59:06 - [warn] Projects disabled : editorTheme.projects.enabled=false 5 Jan 10:59:06 - [info] Flows file : /home/pi/.node-red/flows\_raspberrypi.json 5 Jan 10:59:06 - [info] Creating new flow file 5 Jan 10:59:06 - [warn]

## Your flow credentials file is encrypted using a system-generated key. If the system-generated key is lost for any reason, your credentials file will not be recoverable, you will have to delete it and re-enter your credentials. You should set your own key using the 'credentialSecret' option in your settings file. Node-RED will then re-encrypt your credentials file using your chosen key the next time you deploy a change.

5 Jan 10:59:06 - [info] Starting flows  
5 Jan 10:59:06 - [info] Started flows  
5 Jan 10:59:06 - [info] Server now running at [http://127.0.0.1:1880/](http://127.0.0.1:1880/)

^C  
pi@raspberrypi:~ $ node-red-stop

Stop Node-RED

Use node-red-start to start Node-RED again

pi@raspberrypi:~ $ [node-red-contrib-generic-ble/generic-ble] Error: Cannot find module 'bluetooth-hci-socket'  
-bash: [node-red-contrib-generic-ble/generic-ble]: No such file or directory  
pi@raspberrypi:~ $ cd ~/.node-red  
pi@raspberrypi:~/.node-red $ clear  
pi@raspberrypi:~/.node-red $ sudo npm install node-red-contrib-generic-ble

> usb@1.5.0 install /home/pi/.node-red/node\_modules/usb  
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using needle for node-pre-gyp https download  
node-pre-gyp WARN Tried to download(404): [https://github.com/tessel/node-usb/releases/download/1.5.0/usb\_bindings-v1.5.0-node-v64-linux-arm.tar.gz](https://github.com/tessel/node-usb/releases/download/1.5.0/usb_bindings-v1.5.0-node-v64-linux-arm.tar.gz)  
node-pre-gyp WARN Pre-built binaries not found for usb@1.5.0 and node@10.15.0 (node-v64 ABI, glibc) (falling back to source compile with node-gyp)  
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/10.15.0"  
gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"  
gyp ERR! configure error  
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/pi/.node-red/node\_modules/usb/build'  
gyp ERR! System Linux 4.14.79-v7+  
gyp ERR! command "/usr/bin/node" "/usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node" "--module\_name=usb\_bindings" "--module\_path=/home/pi/.node-red/node\_modules/usb/src/binding" "--napi\_version=3" "--node\_abi\_napi=napi" "--napi\_build\_version=0" "--node\_napi\_label=node-v64"  
gyp ERR! cwd /home/pi/.node-red/node\_modules/usb  
gyp ERR! node -v v10.15.0  
gyp ERR! node-gyp -v v3.8.0  
gyp ERR! not ok  
node-pre-gyp ERR! build error  
node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node --module\_name=usb\_bindings --module\_path=/home/pi/.node-red/node\_modules/usb/src/binding --napi\_version=3 --node\_abi\_napi=napi --napi\_build\_version=0 --node\_napi\_label=node-v64' (1)  
node-pre-gyp ERR! stack at ChildProcess. (/home/pi/.node-red/node\_modules/node-pre-gyp/lib/util/compile.js:83:29)  
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:182:13)  
node-pre-gyp ERR! stack at maybeClose (internal/child\_process.js:962:16)  
node-pre-gyp ERR! stack at Process.ChildProcess.\_handle.onexit (internal/child\_process.js:251:5)  
node-pre-gyp ERR! System Linux 4.14.79-v7+  
node-pre-gyp ERR! command "/usr/bin/node" "/home/pi/.node-red/node\_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"  
node-pre-gyp ERR! cwd /home/pi/.node-red/node\_modules/usb  
node-pre-gyp ERR! node -v v10.15.0  
node-pre-gyp ERR! node-pre-gyp -v v0.11.0  
node-pre-gyp ERR! not ok  
Failed to execute '/usr/bin/node /usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node --module\_name=usb\_bindings --module\_path=/home/pi/.node-red/node\_modules/usb/src/binding --napi\_version=3 --node\_abi\_napi=napi --napi\_build\_version=0 --node\_napi\_label=node-v64' (1)

> bluetooth-hci-socket@0.5.1 install /home/pi/.node-red/node\_modules/bluetooth-hci-socket  
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/10.15.0"  
gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"  
gyp ERR! configure error  
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/pi/.node-red/node\_modules/bluetooth-hci-socket/build'  
gyp ERR! System Linux 4.14.79-v7+  
gyp ERR! command "/usr/bin/node" "/usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js" "rebuild"  
gyp ERR! cwd /home/pi/.node-red/node\_modules/bluetooth-hci-socket  
gyp ERR! node -v v10.15.0  
gyp ERR! node-gyp -v v3.8.0  
gyp ERR! not ok  
npm WARN node-red-project@0.0.1 No repository field.  
npm WARN node-red-project@0.0.1 No license field.  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@0.1.4 (node\_modules/xpc-connection):  
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 WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.5.0 (node\_modules/usb):  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: usb@1.5.0 install: `node-pre-gyp install --fallback-to-build`  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 (node\_modules/bluetooth-hci-socket):  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 install: `node-gyp rebuild`  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

- node-red-contrib-generic-ble@3.0.0  
updated 1 package and audited 970 packages in 26.004s  
found 1 low severity vulnerability  
run `npm audit fix` to fix them, or `npm audit` for details  
pi@raspberrypi:~/.node-red $

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [5 January 2019 11:28 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/6 "2019-01-05T11:28:25Z")

</div>

You aren't using the correct command to install the module. Try reading the README again and follow the suggested command.

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [5 January 2019 11:42 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/7 "2019-01-05T11:42:09Z")

</div>

Hi,

Ok, I give in, I have followed the process in the README and still the node does not appear.

I am very very new to this, so it would be appreciated if you could point me to the process you recommend I follow.

I do appreciate your help, but as I said I am new to this and finding my feet.

Thanks

Peter

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [5 January 2019 12:03 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/8 "2019-01-05T12:03:08Z")

</div>

Taken from the nodes README

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/f/feede2a223be727a2e0e8791a30e13c72d89ba62.png)

This is not the command you ran. At least some of the issues are caused by the command you used.

But you are also using node v10 which may or may not be causing other issues. ( the recommended version is as per [https://nodered.org/docs/getting-started/installation](https://nodered.org/docs/getting-started/installation)

If you are very new to this I would suggest starting again and follow the installation instructions on the raspberry pi page [https://nodered.org/docs/hardware/raspberrypi](https://nodered.org/docs/hardware/raspberrypi) which will probably save you more pain later.

and never use sudo unless the instructions say you need to.

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [5 January 2019 17:17 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/9 "2019-01-05T17:17:54Z")

</div>

Ok,

I did a complete reinstall following the README instructions to the letter. Unfortunately the problem still exits. I am at a loss as to what to do next ☹

Peter

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [5 January 2019 17:40 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/10 "2019-01-05T17:40:21Z")

</div>

Then post the log you get when you try to install the node (including the command you used) and the startup log when you restart Node-RED.

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [6 January 2019 10:41 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/11 "2019-01-06T10:41:11Z")

</div>

So I have done a complete rebuild, as below;

Loaded 2018-06-27 Raspian Lite   
Ran - sudo apt-get update   
Ran - Sudo apt-get upgrade   
Followed instructions on - [https://nodered.org/docs/hardware/raspberrypi](https://nodered.org/docs/hardware/raspberrypi)  
Ran - bash \<(curl -sL [https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered](https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered))   
Ran - node -v (confirmed V10.15.0 loaded)   
Ran - npm -v (confirmed v 6.5.0 loaded)   
Ran - cd ~/.node-red   
Ran - npm rebuild   
Ran - npm ls --depth=0   
Ran - cd ~/.node-red   
Ran - npm install node-red-contrib-generic-ble

The output from loading nodejs and node red is;

spbian-deb-package/master/resources/update-nodejs-and-nodered)

Stop Node-RED ✔  
Remove old version of Node-RED ✔  
Remove old version of Node.js ✔  
Install Node.js LTS ✔ Node v10.15.0 Npm 6.5.0  
Clean npm cache ✔  
Install Node-RED core ✔ 0.19.5  
Move global nodes to local -  
Install extra Pi nodes ✔  
Npm rebuild existing nodes -  
Add shortcut commands ✔  
Update systemd script ✔

Any errors will be logged to /var/log/nodered-install.log

All done.  
You can now start Node-RED with the command node-red-start  
or using the icon under Menu / Programming / Node-RED  
Then point your browser to localhost:1880 or http://{your\_pi\_ip-address}:1880

Started Sun 6 Jan 09:48:11 UTC 2019 - Finished Sun 6 Jan 09:51:45 UTC 2019

pi@raspberrypi:~ $ Running Node-RED install for user pi at /home/pi

The output is;  
kind-of@6.0.2 /home/pi/.node-red/node\_modules/is-accessor-descriptor/node\_modules/kind-of

is-data-descriptor@1.0.0 /home/pi/.node-red/node\_modules/is-data-descriptor

kind-of@6.0.2 /home/pi/.node-red/node\_modules/is-data-descriptor/node\_modules/kind-of

kind-of@6.0.2 /home/pi/.node-red/node\_modules/is-descriptor/node\_modules/kind-of

kind-of@5.1.0 /home/pi/.node-red/node\_modules/prompt-question/node\_modules/kind-of

prompt-choices@4.1.0 /home/pi/.node-red/node\_modules/prompt-choices

arr-flatten@1.1.0 /home/pi/.node-red/node\_modules/arr-flatten

arr-swap@1.0.1 /home/pi/.node-red/node\_modules/arr-swap

is-number@3.0.0 /home/pi/.node-red/node\_modules/arr-swap/node\_modules/is-number

choices-separator@2.0.0 /home/pi/.node-red/node\_modules/choices-separator

debug@2.6.9 /home/pi/.node-red/node\_modules/choices-separator/node\_modules/debug

ms@2.0.0 /home/pi/.node-red/node\_modules/choices-separator/node\_modules/ms

strip-color@0.1.0 /home/pi/.node-red/node\_modules/strip-color

clone-deep@4.0.1 /home/pi/.node-red/node\_modules/prompt-choices/node\_modules/clone-deep

kind-of@6.0.2 /home/pi/.node-red/node\_modules/prompt-choices/node\_modules/kind-of

shallow-clone@3.0.0 /home/pi/.node-red/node\_modules/prompt-choices/node\_modules/shallow-clone

collection-visit@1.0.0 /home/pi/.node-red/node\_modules/collection-visit

map-visit@1.0.0 /home/pi/.node-red/node\_modules/map-visit

object-visit@1.0.1 /home/pi/.node-red/node\_modules/object-visit

define-property@2.0.2 /home/pi/.node-red/node\_modules/prompt-choices/node\_modules/define-property

is-number@6.0.0 /home/pi/.node-red/node\_modules/is-number

pointer-symbol@1.0.0 /home/pi/.node-red/node\_modules/pointer-symbol

radio-symbol@2.0.0 /home/pi/.node-red/node\_modules/radio-symbol

set-value@3.0.0 /home/pi/.node-red/node\_modules/set-value

terminal-paginator@2.0.2 /home/pi/.node-red/node\_modules/terminal-paginator

debug@2.6.9 /home/pi/.node-red/node\_modules/terminal-paginator/node\_modules/debug

ms@2.0.0 /home/pi/.node-red/node\_modules/terminal-paginator/node\_modules/ms

extend-shallow@2.0.1 /home/pi/.node-red/node\_modules/extend-shallow

toggle-array@1.0.1 /home/pi/.node-red/node\_modules/toggle-array

readline-ui@2.2.3 /home/pi/.node-red/node\_modules/readline-ui

debug@2.6.9 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/debug

ms@2.0.0 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/ms

readline-utils@2.2.3 /home/pi/.node-red/node\_modules/readline-utils

is-number@3.0.0 /home/pi/.node-red/node\_modules/readline-utils/node\_modules/is-number

mute-stream@0.0.7 /home/pi/.node-red/node\_modules/mute-stream

window-size@1.1.1 /home/pi/.node-red/node\_modules/window-size

is-number@3.0.0 /home/pi/.node-red/node\_modules/window-size/node\_modules/is-number

string-width@2.1.1 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/string-width

is-fullwidth-code-point@2.0.0 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/is-fullwidth-code-point

strip-ansi@4.0.0 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/strip-ansi

ansi-regex@3.0.0 /home/pi/.node-red/node\_modules/readline-ui/node\_modules/ansi-regex

static-extend@0.1.2 /home/pi/.node-red/node\_modules/static-extend

define-property@0.2.5 /home/pi/.node-red/node\_modules/static-extend/node\_modules/define-property

is-descriptor@0.1.6 /home/pi/.node-red/node\_modules/static-extend/node\_modules/is-descriptor

is-accessor-descriptor@0.1.6 /home/pi/.node-red/node\_modules/static-extend/node\_modules/is-accessor-descriptor

kind-of@3.2.2 /home/pi/.node-red/node\_modules/static-extend/node\_modules/is-accessor-descriptor/node\_modules/kind-of

is-data-descriptor@0.1.4 /home/pi/.node-red/node\_modules/static-extend/node\_modules/is-data-descriptor

kind-of@3.2.2 /home/pi/.node-red/node\_modules/static-extend/node\_modules/is-data-descriptor/node\_modules/kind-of

kind-of@5.1.0 /home/pi/.node-red/node\_modules/static-extend/node\_modules/kind-of

object-copy@0.1.0 /home/pi/.node-red/node\_modules/object-copy

The output from running npm install node-red-contrib-generic-ble is;

\> usb@1.5.0 install /home/pi/.node-red/node\_modules/usb

\> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using needle for node-pre-gyp https download

node-pre-gyp WARN Tried to download(404): [https://github.com/tessel/node-usb/releases/download/1.5.0/usb\_bindings-v1.5.0-node-v64-linux-arm.tar.gz](https://github.com/tessel/node-usb/releases/download/1.5.0/usb_bindings-v1.5.0-node-v64-linux-arm.tar.gz)

node-pre-gyp WARN Pre-built binaries not found for usb@1.5.0 and node@10.15.0 (node-v64 ABI, glibc) (falling back to source compile with node-gyp)

make: Entering directory '/home/pi/.node-red/node\_modules/usb/build'

CC(target) Release/obj.target/libusb/libusb/libusb/core.o

CC(target) Release/obj.target/libusb/libusb/libusb/descriptor.o

CC(target) Release/obj.target/libusb/libusb/libusb/hotplug.o

CC(target) Release/obj.target/libusb/libusb/libusb/io.o

CC(target) Release/obj.target/libusb/libusb/libusb/strerror.o

CC(target) Release/obj.target/libusb/libusb/libusb/sync.o

CC(target) Release/obj.target/libusb/libusb/libusb/os/poll\_posix.o

CC(target) Release/obj.target/libusb/libusb/libusb/os/threads\_posix.o

CC(target) Release/obj.target/libusb/libusb/libusb/os/linux\_usbfs.o

CC(target) Release/obj.target/libusb/libusb/libusb/os/linux\_udev.o

../libusb/libusb/os/linux\_udev.c:40:21: fatal error: libudev.h: No such file or directory

#include \<libudev.h\>

^

compilation terminated.

libusb.target.mk:138: recipe for target 'Release/obj.target/libusb/libusb/libusb/os/linux\_udev.o' failed

make: \*\*\* [Release/obj.target/libusb/libusb/libusb/os/linux\_udev.o] Error 1

make: Leaving directory '/home/pi/.node-red/node\_modules/usb/build'

gyp ERR! build error

gyp ERR! stack Error: `make` failed with exit code: 2

gyp ERR! stack at ChildProcess.onExit (/usr/lib/node\_modules/npm/node\_modules/node-gyp/lib/build.js:262:23)

gyp ERR! stack at ChildProcess.emit (events.js:182:13)

gyp ERR! stack at Process.ChildProcess.\_handle.onexit (internal/child\_process.js:240:12)

gyp ERR! System Linux 4.14.50-v7+

gyp ERR! command "/usr/bin/node" "/usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node" "--module\_name=usb\_bindings" "--module\_path=/home/pi/.node-red/node\_modules/usb/src/binding" "--napi\_version=3" "--node\_abi\_napi=napi" "--napi\_build\_version=0" "--node\_napi\_label=node-v64"

gyp ERR! cwd /home/pi/.node-red/node\_modules/usb

gyp ERR! node -v v10.15.0

gyp ERR! node-gyp -v v3.8.0

gyp ERR! not ok

node-pre-gyp ERR! build error

node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node --module\_name=usb\_bindings --module\_path=/home/pi/.node-red/node\_modules/usb/src/binding --napi\_version=3 --node\_abi\_napi=napi --napi\_build\_version=0 --node\_napi\_label=node-v64' (1)

node-pre-gyp ERR! stack at ChildProcess.\<anonymous\> (/home/pi/.no

I suspect the problem lie with the version of nodejs being used, do you agree.

Thanks

Peter

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [6 January 2019 10:54 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/12 "2019-01-06T10:54:56Z")

</div>

Hi @ttquattroman

The ble node depends on the `usb` npm module, which in turn needs some additional dependencies to be installed outside of npm's control.

Run

```auto
sudo apt-get install build-essential libudev-dev

```

To get the missing library, then retry the npm install.

---

<div class="post-metadata">

**Author:** ![ttquattroman](https://avatars.discourse-cdn.com/v4/letter/t/8c91f0/32.png) [@ttquattroman](https://discourse.nodered.org/u/ttquattroman)\
**Post date:** [6 January 2019 11:21 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/13 "2019-01-06T11:21:58Z")

</div>

hi,

Thanks for the update, I did as you suggest, still the problem remains

Peter

---

<div class="post-metadata">

**Author:** ![krambriw](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/krambriw/32/5429_2.png) [@krambriw](https://discourse.nodered.org/u/krambriw)\
**Post date:** [6 January 2019 11:25 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/14 "2019-01-06T11:25:16Z")

</div>

To save you a lot of trouble and to achieve a reliable solution, check this, my shared solution

[https://discourse.nodered.org/t/presence-monitoring-using-bluetooth/5369](https://discourse.nodered.org/t/presence-monitoring-using-bluetooth/5369)

---

<div class="post-metadata">

**Author:** ![debouttek](https://avatars.discourse-cdn.com/v4/letter/d/848f3c/32.png) [@debouttek](https://discourse.nodered.org/u/debouttek)\
**Post date:** [13 January 2019 14:29 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/15 "2019-01-13T14:29:38Z")

</div>

I have the same problem.  
Running RPI 3B+

Had not found a solution yet.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [13 January 2019 14:55 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/16 "2019-01-13T14:55:21Z")

</div>

> [@debouttek](#):
>
> I have the same problem.

To make sure there is no confusion tell us exactly what the problem you are seeing is.

---

<div class="post-metadata">

**Author:** ![debouttek](https://avatars.discourse-cdn.com/v4/letter/d/848f3c/32.png) [@debouttek](https://discourse.nodered.org/u/debouttek)\
**Post date:** [13 January 2019 16:07 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/17 "2019-01-13T16:07:11Z")

</div>

When I install it in MANAGE PALETTE node-red-contrib-generic-ble there is going something wrong:

 ![contrib_ble](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/e/e9497cbe5cacb9ffb6bd705e47330dd2281337df.png)

Even if I follow the readme ([https://flows.nodered.org/node/node-red-contrib-generic-ble](https://flows.nodered.org/node/node-red-contrib-generic-ble)) and install manually I can not use the module.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [13 January 2019 16:16 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/18 "2019-01-13T16:16:07Z")

</div>

Copy/paste what you see when you install manually. You can copy from the terminal using Ctrl-Shift-C

---

<div class="post-metadata">

**Author:** ![debouttek](https://avatars.discourse-cdn.com/v4/letter/d/848f3c/32.png) [@debouttek](https://discourse.nodered.org/u/debouttek)\
**Post date:** [13 January 2019 16:24 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/19 "2019-01-13T16:24:56Z")

</div>

13 Jan 17:19:12 - [info] Node-RED version: v0.19.5  
13 Jan 17:19:12 - [info] Node.js version: v10.14.1  
13 Jan 17:19:12 - [info] Linux 4.14.79-v7+ arm LE

These are the versions that I think are up to date.

pi@raspberrypi:~ $ cd ~/.node-red  
pi@raspberrypi:~/.node-red $ npm install node-red-contrib-generic-ble

> usb@1.5.0 install /home/pi/.node-red/node\_modules/usb  
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using request for node-pre-gyp https download  
node-pre-gyp WARN Tried to download(404): [https://github.com/tessel/node-usb/releases/download/1.5.0/usb\_bindings-v1.5.0-node-v64-linux-arm.tar.gz](https://github.com/tessel/node-usb/releases/download/1.5.0/usb_bindings-v1.5.0-node-v64-linux-arm.tar.gz)  
node-pre-gyp WARN Pre-built binaries not found for usb@1.5.0 and node@10.14.1 (node-v64 ABI, glibc) (falling back to source compile with node-gyp)  
make: Map '/home/pi/.node-red/node\_modules/usb/build' wordt binnengegaan  
CC(target) Release/obj.target/libusb/libusb/libusb/core.o  
CC(target) Release/obj.target/libusb/libusb/libusb/descriptor.o  
CC(target) Release/obj.target/libusb/libusb/libusb/hotplug.o  
CC(target) Release/obj.target/libusb/libusb/libusb/io.o  
CC(target) Release/obj.target/libusb/libusb/libusb/strerror.o  
CC(target) Release/obj.target/libusb/libusb/libusb/sync.o  
CC(target) Release/obj.target/libusb/libusb/libusb/os/poll\_posix.o  
CC(target) Release/obj.target/libusb/libusb/libusb/os/threads\_posix.o  
CC(target) Release/obj.target/libusb/libusb/libusb/os/linux\_usbfs.o  
CC(target) Release/obj.target/libusb/libusb/libusb/os/linux\_udev.o  
AR(target) Release/obj.target/usb.a  
COPY Release/usb.a  
CXX(target) Release/obj.target/usb\_bindings/src/node\_usb.o  
In file included from ../../nan/nan\_new.h:189:0,  
from ../../nan/nan.h:222,  
from ../src/helpers.h:3,  
from ../src/node\_usb.h:21,  
from ../src/node\_usb.cc:1:  
../../nan/nan\_implementation\_12\_inl.h: In static member function ‘static Nan:👿:FactoryBasev8::StringObject::return\_t Nan:👿:Factoryv8::StringObject::New(v8::Localv8::String)’:  
../../nan/nan\_implementation\_12\_inl.h:340:37: warning: ‘static v8::Localv8::Value v8::StringObject::New(v8::Localv8::String)’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
return v8::StringObject::New(value).Asv8::StringObject();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:5053:37: note: declared here  
static Local New(Local value));  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/node\_usb.cc:1:  
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Localv8::Value)’:  
../../nan/nan.h:1066:53: warning: ‘v8::Localv8::String v8::Value::ToString() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
v8::Localv8::String string = from-\>ToString();  
^  
In file included from ../src/node\_usb.h:12:0,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10040:15: note: declared here  
Local Value::ToString() const {  
^ ~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/node\_usb.cc:1:  
../../nan/nan.h:1080:74: warning: ‘int v8::String::WriteUtf8(char\*, int, int\*, int) const’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
length\_ = string-\>WriteUtf8(str\_, static\_cast(len), 0, flags);  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2659:21: note: declared here  
int WriteUtf8(char\* buffer, int length = -1,  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/node\_usb.cc: In function ‘Nan::NAN\_METHOD\_RETURN\_TYPE SetDebugLevel(Nan::NAN\_METHOD\_ARGS\_TYPE)’:  
../src/node\_usb.cc:99:73: warning: ‘uint32\_t v8::Value::Uint32Value() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
if (info.Length() != 1 || !info[0]-\>IsUint32() || info[0]-\>Uint32Value() \> 4) {  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2477:47: note: declared here  
V8\_DEPRECATED("Use maybe version", uint32\_t Uint32Value() const);  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/node\_usb.cc:103:53: warning: ‘uint32\_t v8::Value::Uint32Value() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
libusb\_set\_debug(usb\_context, info[0]-\>Uint32Value());  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2477:47: note: declared here  
V8\_DEPRECATED("Use maybe version", uint32\_t Uint32Value() const);  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/node\_usb.cc: In function ‘void handleHotplug(std::pair\<libusb\_device\*, libusb\_hotplug\_event\>)’:  
../src/node\_usb.cc:151:58: warning: ‘v8::Localv8::Value Nan::MakeCallback(v8::Localv8::Object, const char\*, int, v8::Localv8::Value_)’ is deprecated [-Wdeprecated-declarations]  
Nan::MakeCallback(Nan::New(hotplugThis), "emit", 2, argv);  
^  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/node\_usb.cc:1:  
../../nan/nan.h:1000:46: note: declared here  
NAN\_DEPRECATED inline v8::Localv8::Value MakeCallback(  
^ ~~~~~~~~~~~  
../src/node\_usb.cc: In function ‘v8::Localv8::Value libusbException(int)’:  
../src/node\_usb.cc:301:14: warning: ‘v8::Localv8::Object v8::Value::ToObject() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
e-\>ToObject()-\>Set(Nan::New("errno").ToLocalChecked(), Nan::New(errorno));  
^  
In file included from ../src/node\_usb.h:12:0,  
from ../src/node\_usb.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10046:15: note: declared here  
Local Value::ToObject() const {  
^ ~~~~  
CXX(target) Release/obj.target/usb\_bindings/src/device.o  
In file included from ../../nan/nan\_new.h:189:0,  
from ../../nan/nan.h:222,  
from ../src/helpers.h:3,  
from ../src/node\_usb.h:21,  
from ../src/device.cc:1:  
../../nan/nan\_implementation\_12\_inl.h: In static member function ‘static Nan:👿:FactoryBasev8::StringObject::return\_t Nan:👿:Factoryv8::StringObject::New(v8::Localv8::String)’:  
../../nan/nan\_implementation\_12\_inl.h:340:37: warning: ‘static v8::Localv8::Value v8::StringObject::New(v8::Localv8::String)’ is deprecated: Use Isolate_ version [-Wdeprecated-declarations]  
return v8::StringObject::New(value).Asv8::StringObject();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/device.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:5053:37: note: declared here  
static Local New(Local value));  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/device.cc:1:  
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Localv8::Value)’:  
../../nan/nan.h:1066:53: warning: ‘v8::Localv8::String v8::Value::ToString() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
v8::Localv8::String string = from-\>ToString();  
^  
In file included from ../src/node\_usb.h:12:0,  
from ../src/device.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10040:15: note: declared here  
Local Value::ToString() const {  
^ ~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/device.cc:1:  
../../nan/nan.h:1080:74: warning: ‘int v8::String::WriteUtf8(char\*, int, int\*, int) const’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
length\_ = string-\>WriteUtf8(str\_, static\_cast(len), 0, flags);  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/device.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2659:21: note: declared here  
int WriteUtf8(char\* buffer, int length = -1,  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/device.cc: In static member function ‘static void Req::default\_after(uv\_work\_t\*)’:  
../src/device.cc:237:64: warning: ‘v8::Localv8::Value Nan::MakeCallback(v8::Localv8::Object, v8::Localv8::Function, int, v8::Localv8::Value_)’ is deprecated [-Wdeprecated-declarations]  
Nan::MakeCallback(device, Nan::New(baton-\>callback), 1, argv);  
^  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/device.cc:1:  
../../nan/nan.h:958:46: note: declared here  
NAN\_DEPRECATED inline v8::Localv8::Value MakeCallback(  
^ ~~~~~~~~~~~  
CXX(target) Release/obj.target/usb\_bindings/src/transfer.o  
In file included from ../../nan/nan\_new.h:189:0,  
from ../../nan/nan.h:222,  
from ../src/helpers.h:3,  
from ../src/node\_usb.h:21,  
from ../src/transfer.cc:1:  
../../nan/nan\_implementation\_12\_inl.h: In static member function ‘static Nan:👿:FactoryBasev8::StringObject::return\_t Nan:👿:Factoryv8::StringObject::New(v8::Localv8::String)’:  
../../nan/nan\_implementation\_12\_inl.h:340:37: warning: ‘static v8::Localv8::Value v8::StringObject::New(v8::Localv8::String)’ is deprecated: Use Isolate_ version [-Wdeprecated-declarations]  
return v8::StringObject::New(value).Asv8::StringObject();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/transfer.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:5053:37: note: declared here  
static Local New(Local value));  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/transfer.cc:1:  
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Localv8::Value)’:  
../../nan/nan.h:1066:53: warning: ‘v8::Localv8::String v8::Value::ToString() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
v8::Localv8::String string = from-\>ToString();  
^  
In file included from ../src/node\_usb.h:12:0,  
from ../src/transfer.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10040:15: note: declared here  
Local Value::ToString() const {  
^ ~~~~  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/transfer.cc:1:  
../../nan/nan.h:1080:74: warning: ‘int v8::String::WriteUtf8(char\*, int, int\*, int) const’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
length\_ = string-\>WriteUtf8(str\_, static\_cast(len), 0, flags);  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from ../src/node\_usb.h:12,  
from ../src/transfer.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2659:21: note: declared here  
int WriteUtf8(char\* buffer, int length = -1,  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/transfer.cc: In function ‘Nan::NAN\_METHOD\_RETURN\_TYPE Transfer\_Submit(Nan::NAN\_METHOD\_ARGS\_TYPE)’:  
../src/transfer.cc:58:47: warning: ‘v8::Localv8::Object v8::Value::ToObject() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
Local buffer\_obj = info[0]-\>ToObject();  
^  
In file included from ../src/node\_usb.h:12:0,  
from ../src/transfer.cc:1:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10046:15: note: declared here  
Local Value::ToObject() const {  
^ ~~~~  
../src/transfer.cc: In function ‘void handleCompletion(Transfer\*)’:  
../src/transfer.cc:126:72: warning: ‘v8::Localv8::Value Nan::MakeCallback(v8::Localv8::Object, v8::Localv8::Function, int, v8::Localv8::Value\*)’ is deprecated [-Wdeprecated-declarations]  
Nan::MakeCallback(self-\>handle(), Nan::New(self-\>v8callback), 3, argv);  
^  
In file included from ../src/helpers.h:3:0,  
from ../src/node\_usb.h:21,  
from ../src/transfer.cc:1:  
../../nan/nan.h:958:46: note: declared here  
NAN\_DEPRECATED inline v8::Localv8::Value MakeCallback(  
^ ~~~~~~~~~~~  
SOLINK\_MODULE(target) Release/obj.target/usb\_bindings.node  
COPY Release/usb\_bindings.node  
COPY /home/pi/.node-red/node\_modules/usb/src/binding/usb\_bindings.node  
TOUCH Release/obj.target/action\_after\_build.stamp  
make: Map '/home/pi/.node-red/node\_modules/usb/build' wordt verlaten

> bluetooth-hci-socket@0.5.1 install /home/pi/.node-red/node\_modules/bluetooth-hci-socket  
> node-gyp rebuild

make: Map '/home/pi/.node-red/node\_modules/bluetooth-hci-socket/build' wordt binnengegaan  
CXX(target) Release/obj.target/binding/src/BluetoothHciSocket.o  
In file included from ../../nan/nan\_new.h:189:0,  
from ../../nan/nan.h:222,  
from ../src/BluetoothHciSocket.cpp:8:  
../../nan/nan\_implementation\_12\_inl.h: In static member function ‘static Nan:👿:FactoryBasev8::StringObject::return\_t Nan:👿:Factoryv8::StringObject::New(v8::Localv8::String)’:  
../../nan/nan\_implementation\_12\_inl.h:340:37: warning: ‘static v8::Localv8::Value v8::StringObject::New(v8::Localv8::String)’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
return v8::StringObject::New(value).Asv8::StringObject();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node.h:63,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:5053:37: note: declared here  
static Local New(Local value));  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
In file included from ../src/BluetoothHciSocket.cpp:8:0:  
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Localv8::Value)’:  
../../nan/nan.h:1066:53: warning: ‘v8::Localv8::String v8::Value::ToString() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
v8::Localv8::String string = from-\>ToString();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/node.h:63:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:10040:15: note: declared here  
Local Value::ToString() const {  
^ ~~~~  
In file included from ../src/BluetoothHciSocket.cpp:8:0:  
../../nan/nan.h:1080:74: warning: ‘int v8::String::WriteUtf8(char\*, int, int\*, int) const’ is deprecated: Use Isolate\* version [-Wdeprecated-declarations]  
length\_ = string-\>WriteUtf8(str\_, static\_cast(len), 0, flags);  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node.h:63,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2659:21: note: declared here  
int WriteUtf8(char\* buffer, int length = -1,  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/BluetoothHciSocket.cpp: In member function ‘void BluetoothHciSocket::poll()’:  
../src/BluetoothHciSocket.cpp:251:95: warning: ‘v8::Localv8::Value Nan::MakeCallback(v8::Localv8::Object, v8::Localv8::String, int, v8::Localv8::Value_)’ is deprecated [-Wdeprecated-declarations]  
back(Nan::New(this-\>This), Nan::New("emit").ToLocalChecked(), 2, argv);  
^  
In file included from ../src/BluetoothHciSocket.cpp:8:0:  
../../nan/nan.h:979:46: note: declared here  
NAN\_DEPRECATED inline v8::Localv8::Value MakeCallback(  
^ ~~~~~~~~~~~  
../src/BluetoothHciSocket.cpp: In member function ‘void BluetoothHciSocket::emitErrnoError()’:  
../src/BluetoothHciSocket.cpp:275:72: error: no matching function for call to ‘v8::Function::NewInstance(int, v8::Localv8::Value [1])’  
Local error = errorConstructor-\>NewInstance(1, constructorArgs);  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/node.h:63:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:3993:44: note: candidate: v8::MaybeLocalv8::Object v8::Function::NewInstance(v8::Localv8::Context, int, v8::Localv8::Value_) const  
V8\_WARN\_UNUSED\_RESULT MaybeLocal NewInstance(  
^ ~~~~~~~~~~  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:3993:44: note: candidate expects 3 arguments, 2 provided  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:3996:44: note: candidate: v8::MaybeLocalv8::Object v8::Function::NewInstance(v8::Localv8::Context) const  
V8\_WARN\_UNUSED\_RESULT MaybeLocal NewInstance(  
^ ~~~~~~~~~~  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:3996:44: note: candidate expects 1 argument, 2 provided  
../src/BluetoothHciSocket.cpp:282:93: warning: ‘v8::Localv8::Value Nan::MakeCallback(v8::Localv8::Object, v8::Localv8::String, int, v8::Localv8::Value\*)’ is deprecated [-Wdeprecated-declarations]  
back(Nan::New(this-\>This), Nan::New("emit").ToLocalChecked(), 2, argv);  
^  
In file included from ../src/BluetoothHciSocket.cpp:8:0:  
../../nan/nan.h:979:46: note: declared here  
NAN\_DEPRECATED inline v8::Localv8::Value MakeCallback(  
^ ~~~~~~~~~~~  
../src/BluetoothHciSocket.cpp: In static member function ‘static Nan::NAN\_METHOD\_RETURN\_TYPE BluetoothHciSocket::BindRaw(Nan::NAN\_METHOD\_ARGS\_TYPE)’:  
../src/BluetoothHciSocket.cpp:395:34: warning: ‘int64\_t v8::Value::IntegerValue() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
devId = arg0-\>IntegerValue();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node.h:63,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2476:46: note: declared here  
V8\_DEPRECATED("Use maybe version", int64\_t IntegerValue() const);  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
../src/BluetoothHciSocket.cpp: In static member function ‘static Nan::NAN\_METHOD\_RETURN\_TYPE BluetoothHciSocket::BindUser(Nan::NAN\_METHOD\_ARGS\_TYPE)’:  
../src/BluetoothHciSocket.cpp:417:34: warning: ‘int64\_t v8::Value::IntegerValue() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]  
devId = arg0-\>IntegerValue();  
^  
In file included from /home/pi/.node-gyp/10.14.1/include/node/v8.h:26:0,  
from /home/pi/.node-gyp/10.14.1/include/node/node.h:63,  
from /home/pi/.node-gyp/10.14.1/include/node/node\_buffer.h:25,  
from ../src/BluetoothHciSocket.cpp:7:  
/home/pi/.node-gyp/10.14.1/include/node/v8.h:2476:46: note: declared here  
V8\_DEPRECATED("Use maybe version", int64\_t IntegerValue() const);  
^  
/home/pi/.node-gyp/10.14.1/include/node/v8config.h:324:3: note: in definition of macro ‘V8\_DEPRECATED’  
declarator **attribute** ((deprecated(message)))  
^ ~~~~~~~~~  
binding.target.mk:99: recept voor doel 'Release/obj.target/binding/src/BluetoothHciSocket.o' is mislukt  
make: \*\*\* [Release/obj.target/binding/src/BluetoothHciSocket.o] Fout 1  
make: Map '/home/pi/.node-red/node\_modules/bluetooth-hci-socket/build' wordt verlaten  
gyp ERR! build error  
gyp ERR! stack Error: `make` failed with exit code: 2  
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node\_modules/npm/node\_modules/node-gyp/lib/build.js:262:23)  
gyp ERR! stack at ChildProcess.emit (events.js:182:13)  
gyp ERR! stack at Process.ChildProcess.\_handle.onexit (internal/child\_process.js:240:12)  
gyp ERR! System Linux 4.14.79-v7+  
gyp ERR! command "/usr/bin/node" "/usr/lib/node\_modules/npm/node\_modules/node-gyp/bin/node-gyp.js" "rebuild"  
gyp ERR! cwd /home/pi/.node-red/node\_modules/bluetooth-hci-socket  
gyp ERR! node -v v10.14.1  
gyp ERR! node-gyp -v v3.8.0  
gyp ERR! not ok  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@0.1.4 (node\_modules/xpc-connection):  
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 WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 (node\_modules/bluetooth-hci-socket):  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 install: `node-gyp rebuild`  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

- node-red-contrib-generic-ble@3.0.0  
added 9 packages from 64 contributors and audited 3508 packages in 71.874s  
found 2 low severity vulnerabilities  
run `npm audit fix` to fix them, or `npm audit` for details

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [13 January 2019 16:34 UTC](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418/20 "2019-01-13T16:34:00Z")

</div>

> [@debouttek](#):
>
> binding.target.mk:99: recept voor doel 'Release/obj.target/binding/src/BluetoothHciSocket.o' is mislukt

Looking at this [1] it seems that the node is not compatible with node.js 10 yet. There are some workarounds in that thread or you can downgrade to node 8. I don't think node 10 is recommended for node-RED yet.

[1] [Cannot install on node 10 · Issue #84 · noble/node-bluetooth-hci-socket · GitHub](https://github.com/noble/node-bluetooth-hci-socket/issues/84)

[Next page](https://discourse.nodered.org/t/node-red-contrib-generic-ble/6418.md?page=2)
