/usr/bin/env: node: Datei oder Verzeichnis nicht gefunden npm WARN This failure might be due to the use of legacy binary "node" npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian
/bin/sh: 1: node: not found gyp: Call to 'node -e "require('nan')"' returned exit status 127. while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:344:16) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:809:12) gyp ERR! System Linux 3.16.0-4-686-pae gyp ERR! command "nodejs" "/usr/bin/node-gyp" "rebuild" gyp ERR! cwd /tmp/node_modules/openbci-ganglion/node_modules/noble/node_modules/bluetooth-hci-socket gyp ERR! node -v v0.10.29 gyp ERR! node-gyp -v v0.12.2 gyp ERR! not ok npm WARN This failure might be due to the use of legacy binary "node" npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian
Error opening on port /dev/ttyUSB0 Error opening on port /dev/ttyUSB1 Error opening on port /dev/ttyUSB2 Error opening on port /dev/ttyUSB3 Error opening on port /dev/ttyUSB4 Error opening on port /dev/ttyUSB5 Error opening on port /dev/ttyUSB6 Error opening on port /dev/ttyUSB7 Error opening on port /dev/ttyUSB8 Error opening on port /dev/ttyUSB9 Error opening on port /dev/ttyUSB10 Error opening on port /dev/ttyUSB11 Error opening on port /dev/ttyUSB12 Error opening on port /dev/ttyUSB13 Error opening on port /dev/ttyUSB14 Error opening on port /dev/ttyUSB15 Error opening on port /dev/ttyUSB16 Error opening on port /dev/ttyUSB17 Error opening on port /dev/ttyUSB18 Error opening on port /dev/ttyUSB19 Error opening on port /dev/ttyUSB20 Error opening on port /dev/ttyUSB21 Error opening on port /dev/ttyUSB22 Error opening on port /dev/ttyUSB23 Error opening on port /dev/ttyUSB24 Error opening on port /dev/ttyUSB25 Error opening on port /dev/ttyUSB26 Error opening on port /dev/ttyUSB27 Error opening on port /dev/ttyUSB28 Error opening on port /dev/ttyUSB29 Error opening on port /dev/ttyUSB30 Error opening on port /dev/ttyUSB31 Error opening on port /dev/ttyUSB32
AJ will see your post better there. It's possible you have misconfigured it. It's also possible you have hit some kind of Linux or CSR or laptop hardware bug. But thanks again for your debug printouts, it does appear CSR is enumerating.
I'm running Fedora 25 on my laptop and Windows 7 on my desktop computer. However, the Ganglion doesn't work on either of them.
On Fedora 25 I get this in dmesg:
[ 2556.065343] usb 3-2: new full-speed USB device number 5 using xhci_hcd [ 2556.352331] usb 3-2: New USB device found, idVendor=0a12, idProduct=0001 [ 2556.352337] usb 3-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0 [ 2556.352341] usb 3-2: Product: CSR8510 A10
But nothing shows up in the GUI, neither trying with the nodejs example. Also, the dongle isn't blinking..
On WIndows 7 it is blinking, but still nothing in the GUI.
Please help. Thanks!!
EDIT:
I made some progress! On the Fedora I made the connection using hcitool:
hcitool lescan -> for listing the devices hcitool lecc --random [DONGLE MAC ADDRESS] gatttool -b [DONGLE MAC ADDRESS] -I --addr-type=random connect
I'm working with the C library on linux as of today with the Ganglion, I was able to get the Bled112 dongle to work and start a data stream by supplying /dev/ttyACM0 to set_port(). However I can't seem to locate the CSR dongle in linux. I've tried COM1 and the various /dev/ttysxx with no success.
Has anyone gotten the CSR dongle working with the C library? If so what should we be using as the port?
CSR dongle IS NOT a serial port. BLED112 does create a serial port. The only way to communicate with the CSR, is via Bluetooth Low Energy libraries, such as those used by the Hub.
Also see the OpenBCI_Python repo for example code in Python.
Thank you for clarifying! I misunderstood, I'll start digging in to see if I can cobble a working implementation with the CSR together Thanks again for the response and for continuing to support us in the forums!
The BLED112 should solve the buffering issues reported for some OSes. Such as Android OS in that last link. But the CSR is known to work with Python (with Linux) and the Hub (Windows, Linux, Mac), so laptop OSes don't seem to have the latency limitations of Android (and possibly iOS).
Just a tip for anyone arriving here: make sure to try sudo ./OpenBCI_GUI for running from command line if you're having trouble finding the BLED112 dongle in the GUI under linux/ubuntu.
Sudo usage is mentioned in the docs, but it would be useful to update them to call out that sudo might be important for finding the dongle (I don't think it's always necessary, because some users might already be in user group that allows access to the hardware or somesuch)
Comments
I can connect from command line, but the GUI V2 does not find it.
Any help would be appreciated.
P.S. Is there a ganglion tutorial for Linux?
========================================
root@pc:/tmp# usb-devices
...
T: Bus=05 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
P: Vendor=0a12 ProdID=0001 Rev=88.91
S: Product=CSR8510 A10
C: #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
..
root@pc:/tmp# lsusb
...
Bus 005 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
root@pc:/tmp# ps aux | grep lue
root 513 0.0 0.1 5476 2564 ? Ss 09:31 0:00 /usr/lib/bluetooth/bluetoothd
root 5359 0.0 0.1 4584 2156 pts/4 S+ 11:48 0:00 grep lue
root@pc:/tmp# /usr/local/bin/gatttool -b FA:7A:73:E5:A5:D7 -I -t random
[FA:7A:73:E5:A5:D7][LE]> connect
Attempting to connect to FA:7A:73:E5:A5:D7
Connection successful
[FA:7A:73:E5:A5:D7][LE]> primary
attr handle: 0x0001, end grp handle: 0x0007 uuid: 00001800-0000-1000-8000-00805f9b34fb
attr handle: 0x0008, end grp handle: 0x000b uuid: 00001801-0000-1000-8000-00805f9b34fb
attr handle: 0x000c, end grp handle: 0x0016 uuid: 0000180a-0000-1000-8000-00805f9b34fb
attr handle: 0x0017, end grp handle: 0x001e uuid: 0000fe84-0000-1000-8000-00805f9b34fb
attr handle: 0x001f, end grp handle: 0xffff uuid: 00001530-1212-efde-1523-785feabcd123
[FA:7A:73:E5:A5:D7][LE]>
root@pc:/tmp# uname -a
Linux pc 3.16.0-4-686-pae #1 SMP Debian 3.16.39-1 (2016-12-30) i686 GNU/Linux
root@pc:/tmp# hcitool lescan
LE Scan ...
FA:7A:73:E5:A5:D7 Ganglion-[...]
FA:7A:73:E5:A5:D7 (unknown)
========= Node.js SDK =========
root@pc:/tmp# npm install openbci-ganglion
npm WARN engine [email protected]: wanted: {"node":"4 | 5 | 6"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm WARN engine [email protected]: wanted: {"node":">=4.0.0"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm WARN engine [email protected]: wanted: {"node":">=4.0.0"} (current: {"node":"0.10.29","npm":"1.4.21"})
npm WARN optional dep failed, continuing [email protected]
npm WARN engine [email protected]: wanted: {"node":">=0.12.x"} (current: {"node":"0.10.29","npm":"1.4.21"})
/
> [email protected] install /tmp/node_modules/openbci-ganglion/node_modules/noble/node_modules/bluetooth-hci-socket/node_modules/usb
> node-pre-gyp install --fallback-to-build
/usr/bin/env: node: Datei oder Verzeichnis nicht gefunden
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian
npm WARN optional dep failed, continuing [email protected]
> [email protected] install /tmp/node_modules/openbci-ganglion/node_modules/noble/node_modules/bluetooth-hci-socket
> node-gyp rebuild
/bin/sh: 1: node: not found
gyp: Call to 'node -e "require('nan')"' returned exit status 127. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:344:16)
gyp ERR! stack at ChildProcess.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:809:12)
gyp ERR! System Linux 3.16.0-4-686-pae
gyp ERR! command "nodejs" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /tmp/node_modules/openbci-ganglion/node_modules/noble/node_modules/bluetooth-hci-socket
gyp ERR! node -v v0.10.29
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian
npm WARN optional dep failed, continuing [email protected]
[email protected] node_modules/openbci-ganglion
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected])
========= C Library =========
~/OpenBCI_C$ ./test
Error opening on port /dev/ttyUSB0
Error opening on port /dev/ttyUSB1
Error opening on port /dev/ttyUSB2
Error opening on port /dev/ttyUSB3
Error opening on port /dev/ttyUSB4
Error opening on port /dev/ttyUSB5
Error opening on port /dev/ttyUSB6
Error opening on port /dev/ttyUSB7
Error opening on port /dev/ttyUSB8
Error opening on port /dev/ttyUSB9
Error opening on port /dev/ttyUSB10
Error opening on port /dev/ttyUSB11
Error opening on port /dev/ttyUSB12
Error opening on port /dev/ttyUSB13
Error opening on port /dev/ttyUSB14
Error opening on port /dev/ttyUSB15
Error opening on port /dev/ttyUSB16
Error opening on port /dev/ttyUSB17
Error opening on port /dev/ttyUSB18
Error opening on port /dev/ttyUSB19
Error opening on port /dev/ttyUSB20
Error opening on port /dev/ttyUSB21
Error opening on port /dev/ttyUSB22
Error opening on port /dev/ttyUSB23
Error opening on port /dev/ttyUSB24
Error opening on port /dev/ttyUSB25
Error opening on port /dev/ttyUSB26
Error opening on port /dev/ttyUSB27
Error opening on port /dev/ttyUSB28
Error opening on port /dev/ttyUSB29
Error opening on port /dev/ttyUSB30
Error opening on port /dev/ttyUSB31
Error opening on port /dev/ttyUSB32
https://github.com/OpenBCI/OpenBCI_NodeJS/issues
AJ will see your post better there. It's possible you have misconfigured it. It's also possible you have hit some kind of Linux or CSR or laptop hardware bug. But thanks again for your debug printouts, it does appear CSR is enumerating.
I'm running Fedora 25 on my laptop and Windows 7 on my desktop computer. However, the Ganglion doesn't work on either of them.
On Fedora 25 I get this in dmesg:
[ 2556.065343] usb 3-2: new full-speed USB device number 5 using xhci_hcd
[ 2556.352331] usb 3-2: New USB device found, idVendor=0a12, idProduct=0001
[ 2556.352337] usb 3-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 2556.352341] usb 3-2: Product: CSR8510 A10
But nothing shows up in the GUI, neither trying with the nodejs example. Also, the dongle isn't blinking..
On WIndows 7 it is blinking, but still nothing in the GUI.
Please help. Thanks!!
EDIT:
I made some progress! On the Fedora I made the connection using hcitool:
hcitool lescan -> for listing the devices
hcitool lecc --random [DONGLE MAC ADDRESS]
gatttool -b [DONGLE MAC ADDRESS] -I --addr-type=random
connect
However, in the nodejs example I'm still not having a connection. With the GUI something happened and I get this error:
Cannot run sketch without a display. Read this for possible solutions:
https://github.com/processing/processing/wiki/Running-without-a-Display
.....
I merged your Linux question into this existing thread on Linux. Windows 7 does work if you follow the tips in,
http://openbci.com/forum/index.php?p=/discussion/918/ganglion-and-windows-7#latest
Feel free to add further comments on the Node issue,
https://github.com/OpenBCI/OpenBCI_NodeJS_Ganglion/issues/21
Just a tip for anyone arriving here: make sure to try sudo ./OpenBCI_GUI for running from command line if you're having trouble finding the BLED112 dongle in the GUI under linux/ubuntu.
Sudo usage is mentioned in the docs, but it would be useful to update them to call out that sudo might be important for finding the dongle (I don't think it's always necessary, because some users might already be in user group that allows access to the hardware or somesuch)
Thellertik, thanks.
Other posts mention the 'dialout' user group tip.
https://www.google.com/search?as_q=dialout&as_sitesearch=openbci.com
Regards, William