jasongin / noble-uwp Goto Github PK
View Code? Open in Web Editor NEWNoble (Node.js Bluetooth LE) with Windows 10 UWP bindings
License: MIT License
Noble (Node.js Bluetooth LE) with Windows 10 UWP bindings
License: MIT License
I've tested noble-uwp disconnecting
static void Close()
wrapper->_instance->Dispose();
delete wrapper->_instance;
wrapper->_instance = nullptr;
return;
Unfortunately nothings helped :(.
The connection and characteristic discovery are working and I'm assigning the discovered characteristic to a variable to do the reading. The first read using the snippet below is returning the correct value but every subsequent read returns immediately with the same value as the first read. I've verified what the read should return with Bluetooth LE Explorer: https://github.com/Microsoft/BluetoothLEExplorer.
Thanks
export async function readCharacteristic(id) {
if (!botIsConnected() || gattIsBusy) {
return false;
}
let charac = bleCharacFromID(id);
if (!charac) {
console.log('Invalid BLE characteristic on write');
return false;
}
gattIsBusy = true;
let retVal = await readCharAsync(charac);
gattIsBusy = false;
console.log('retVal: ' + retVal);
return retVal.readUInt8(0);
}
async function readCharAsync(charac) {
return await new Promise(function(resolve,reject){
charac.read(function(err, data) {
if(err !== null) return reject(err);
resolve(data);
});
});
}
Update: I found the bluetooth characteristic read call that didn't have the uncached flag set. The pull request fixes the issue for me. I'm not sure if caching is the desired behaviour and maybe there is another way to force an update.
Any suggestion to solve the following error?
PS D:\noble-uwp-master> npm install
[email protected] install D:\noble-uwp-master
install.cmd
Installing NodeRT UWP adapter for Windows.Foundation
node-pre-gyp ERR! Tried to download(404): https://github.com/jasongin/noble-uwp/releases/download/windows_foundation_0.15063.1/binding-v0.15063.1-node-v59-win32-x64.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v59 ABI, unknown) (falling back to source compile with node-gyp)
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
D:\noble-uwp-master\uwp\windows.foundation\build\binding.vcxproj(20,3): error MSB4019: The imported project "D:\Microsoft.Cpp.Default.props" was
not found. Confirm that the path in the declaration is correct, and that the file exists on disk.
gyp ERR! build error
gyp ERR! stack Error: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe
failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\berec\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:258:23)
gyp ERR! stack at ChildProcess.emit (events.js:160:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
gyp ERR! System Windows_NT 10.0.16299
gyp ERR! command "D:\Program Files\nodejs\node.exe" "C:\Users\berec\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "build" "--fallback-to-build" "--msvs_version=2015" "--module=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64\binding.node" "--module_name=binding" "--module_path=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64"
gyp ERR! cwd D:\noble-uwp-master\uwp\windows.foundation
gyp ERR! node -v v9.4.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'D:\Program Files\nodejs\node.exe C:\Users\berec\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --msvs_version=2015 --module=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64\binding.node --module_name=binding --module_path=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64' (1)
node-pre-gyp ERR! stack at ChildProcess. (D:\noble-uwp-master\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:160:13)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:943:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:220:5)
node-pre-gyp ERR! System Windows_NT 10.0.16299
node-pre-gyp ERR! command "D:\Program Files\nodejs\node.exe" "D:\noble-uwp-master\node_modules\node-pre-gyp\bin\node-pre-gyp" "install" "--fallback-to-build" "--msvs_version=2015"
node-pre-gyp ERR! cwd D:\noble-uwp-master\uwp\windows.foundation
node-pre-gyp ERR! node -v v9.4.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.39
node-pre-gyp ERR! not ok
Failed to execute 'D:\Program Files\nodejs\node.exe C:\Users\berec\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --msvs_version=2015 --module=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64\binding.node --module_name=binding --module_path=D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64' (1)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: install.cmd
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\berec\AppData\Roaming\npm-cache_logs\2018-01-14T19_45_47_119Z-debug.log
When i try to run something:
PS D:\noble-uwp-master> node test.js
D:\noble-uwp-master\uwp\windows.foundation\lib\main.js:23
throw e;
^
Error: Cannot find module 'D:\noble-uwp-master\uwp\windows.foundation\binding\node-v59-win32-x64\binding.node'
at Function.Module._resolveFilename (module.js:555:15)
at Function.Module._load (module.js:482:25)
at Module.require (module.js:604:17)
at require (internal/module.js:11:18)
at Object. (D:\noble-uwp-master\uwp\windows.foundation\lib\main.js:19:20)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
I attach the debug log.
2018-01-14T19_45_47_119Z-debug.log
When I make calls to peripheral.discoverAllServicesAndCharacteristics([callback])
the callback is not always called. It seems that if I put the call to discoverAllServicesAndCharacteristics
in a setTimeout I can get the callback to be called more frequently, but the callback is still mostly never called.
Can i fix the code style to match noble? Noble uses 2 space indents, not tabs.
When installing Noble-UWP I get a couple of the same errors: error C2011: 'timespec': 'struct'. Not sure how to solve this.
When I'm scanning devices, but get advertisement data without localName like this:
advertisement: {
localName: null,
txPowerLevel: null,
manufacturerData: undefined,
serviceUuids: [ '1803', '1804' ],
serviceData: [ {} ]
}
Do I have any workaround for this?
Thanks.
I'm somewhat conflicted about this project's usage of NodeRT, that enables calling WinRT APIs from Node.js JavaScript.
I originally started using NodeRT because it allowed me to easily port an earlier (unpublished) version of this project that had used Node-Chakra WinRT projections. At least, it was supposed to be easy. In practice, I've encountered a number of issues/drawbacks with the use of NodeRT:
As an alternative, this package could be written using a more ordinary Node.js native module, with C++ code calling WinRT APIs directly and implementing most of the logic, and a thin JavaScript adapter for the noble bindings.
But since it's working as it is, I don't have the time or motivation to rewrite it all now. Maybe someday there will be a better way of calling WinRT APIs from Node.js JavaScript.
With the latest nodejs, noble-uwp
crashes every time
It works with the same test on 6.x.
Could you update the uwp projects for node 7.x ?
I think it might solve the issue.
Thanks
noble
on -> stateChange: poweredOn
on -> discover: undefined null
on -> discover: undefined NeOse Pro Backup 1.3.35
on -> discover: undefined NeOse Dev Martin
Stacktrace (bbbbbbbb-bbbbbbbb) 00000109134038B9 0000000000000000:
==== JS stack trace =========================================
Security context: 00000109134266A1 <JS Object>#0#
1: checkCommunicationResult(aka checkCommunicationResult) [C:\dev\noble-uwp\lib\bindings.js:746] [pc=000000106CEBA220](this=0000024244802311 <undefined>,deviceUuid=000002894B1AACB1 <String[12]: 001bdc06cbed>,result=00000109134038B9 <FixedArray[189]>#1#)
2: /* anonymous */(aka /* anonymous */) [C:\dev\noble-uwp\lib\bindings.js:170] [pc=000000106CEB9F01](this=0000024244802311 <undefined>,result=00000109134038B9 <FixedArray[189]>#1#)
3: PromiseHandle(aka PromiseHandle) [native promise.js:1] [pc=000000106CEA8B42](this=0000024244802311 <undefined>,F=00000109134038B9 <FixedArray[189]>#1#,J=000002894B1B1309 <JS Function rt.promisify.then.result (SharedFunctionInfo 000001204D1957B9)>#2#,K=000002894B1B14F9 <an Object with map 0000001ECCAAE1A9>#3#)
4: /* anonymous */(aka /* anonymous */) [native promise.js:1] [pc=000000106CEA87EA](this=0000024244802311 <undefined>)
==== Details ================================================
[1]: checkCommunicationResult(aka checkCommunicationResult) [C:\dev\noble-uwp\lib\bindings.js:746] [pc=000000106CEBA220](this=0000024244802311 <undefined>,deviceUuid=000002894B1AACB1 <String[12]: 001bdc06cbed>,result=00000109134038B9 <FixedArray[189]>#1#) {
// expression stack (top to bottom)
[03] : 000001204D196271 <FixedArray[20]>#4#
[02] : 2
[01] : 0000010913403501 <String[6]: status>
[00] : 00000109134038B9 <FixedArray[189]>#1#
--------- s o u r c e c o d e ---------
function checkCommunicationResult(deviceUuid, result) {\x0d\x0a\x09if (result.status === GattCommunicationStatus.unreachable) {\x0d\x0a\x09\x09throw new Error('Device unreachable: ' + deviceUuid);\x0d\x0a\x09} else if (result.status === GattCommunicationStatus.protocolError) {\x0d\x0a\x09\x09throw new Error('Protocol error communicating with device: ' + deviceUuid);\x0d\x0a\x09}\x0d\x0a}
-----------------------------------------
}
[2]: /* anonymous */(aka /* anonymous */) [C:\dev\noble-uwp\lib\bindings.js:170] [pc=000000106CEB9F01](this=0000024244802311 <undefined>,result=00000109134038B9 <FixedArray[189]>#1#) {
// stack-allocated locals
var services = 0000024244802351 <the hole>
var serviceUuids = 0000024244802351 <the hole>
// expression stack (top to bottom)
[05] : 00000109134038B9 <FixedArray[189]>#1#
[04] : 000002894B1AACB1 <String[12]: 001bdc06cbed>
[03] : 0000024244802311 <undefined>
[02] : 0000026E92F233D9 <JS Function checkCommunicationResult (SharedFunctionInfo 000001998EE5D299)>#5#
--------- s o u r c e c o d e ---------
function result => {\x0d\x0a\x09\x09checkCommunicationResult(deviceUuid, result);\x0d\x0a\x0d\x0a\x09\x09let services = rt.toArray(result.services);\x0d\x0a\x09\x09let serviceUuids = services.map(s => formatUuid(s.uuid))\x0d\x0a\x09\x09\x09.filter(filterUuids(filterServiceUuids));\x0d\x0a\x0d\x0a\x09\x09debug(deviceUuid + ' services: %o', serviceUuids);\x0d\x0a\x09\x09this.emit('servicesDiscov...
-----------------------------------------
}
[3]: PromiseHandle(aka PromiseHandle) [native promise.js:1] [pc=000000106CEA8B42](this=0000024244802311 <undefined>,F=00000109134038B9 <FixedArray[189]>#1#,J=000002894B1B1309 <JS Function rt.promisify.then.result (SharedFunctionInfo 000001204D1957B9)>#2#,K=000002894B1B14F9 <an Object with map 0000001ECCAAE1A9>#3#) {
// stack-allocated locals
var D = 0000024244802421 <false>
var L = 0000024244802311 <undefined>
// expression stack (top to bottom)
[06] : 00000109134038B9 <FixedArray[189]>#1#
[05] : 0000024244802311 <undefined>
[04] : 000002894B1B1309 <JS Function rt.promisify.then.result (SharedFunctionInfo 000001204D1957B9)>#2#
[03] : 000001091341ADE1 <FixedArray[45]>#6#
[02] : 000001091341ADE1 <FixedArray[45]>#6#
--------- s o u r c e c o d e ---------
function PromiseHandle(F,J,K){\x0avar D=(%_DebugIsActive()!=0);\x0atry{\x0aif(D)%DebugPushPromise(K.promise);\x0avar L=J(F);\x0aK.resolve(L);\x0a}%catch(exception){\x0atry{K.reject(exception);}catch(e){}\x0a}finally{\x0aif(D)%DebugPopPromise();\x0a}\x0a}
-----------------------------------------
}
[4]: /* anonymous */(aka /* anonymous */) [native promise.js:1] [pc=000000106CEA87EA](this=0000024244802311 <undefined>) {
// stack-allocated locals
var P = 0000024244802311 <undefined>
// expression stack (top to bottom)
[05] : 000002894B1B14F9 <an Object with map 0000001ECCAAE1A9>#3#
[04] : 000002894B1B1309 <JS Function rt.promisify.then.result (SharedFunctionInfo 000001204D1957B9)>#2#
[03] : 00000109134038B9 <FixedArray[189]>#1#
[02] : 0000024244802311 <undefined>
[01] : 000001091341B489 <JS Function PromiseHandle (SharedFunctionInfo 0000024244822939)>#7#
--------- s o u r c e c o d e ---------
function (){\x0aif(O){\x0a%DebugAsyncTaskEvent({type:"willHandle",id:M,name:N});\x0a}\x0aif((%_IsArray(H))){\x0afor(var P=0;P<H.length;P+=2){\x0aPromiseHandle(F,H[P],H[P+1]);\x0a}\x0a}else{\x0aPromiseHandle(F,H,I);\x0a}\x0aif(O){\x0a%DebugAsyncTaskEvent({type:"didHandle",id:M,name:N});\x0a}\x0a}
-----------------------------------------
}
==== Key ============================================
#0# 00000109134266A1: 00000109134266A1 <JS Object>
#1# 00000109134038B9: 00000109134038B9 <FixedArray[189]>
0: 0000010913403EB1 <JS Function (SharedFunctionInfo 0000024244807FB1)>#8#
1: 0
2: 00000109134266A1 <JS Object>#0#
3: 00000109134038B9 <FixedArray[189]>#1#
4: 000003F31E2A0159 <JS Global Object>#9#
5: 000003F31E2A0371 <FixedArray[33]>#10#
6: 0000036566585F31 <Map(FAST_HOLEY_ELEMENTS)>#11#
7: 0000024244802311 <undefined>
8: 0000010913408C81 <JS Function ArrayBuffer (SharedFunctionInfo 00000242448449A1)>#12#
9: 00000365665830C9 <Map(FAST_HOLEY_SMI_ELEMENTS)>#13#
...
#2# 000002894B1B1309: 000002894B1B1309 <JS Function rt.promisify.then.result (SharedFunctionInfo 000001204D1957B9)>
#3# 000002894B1B14F9: 000002894B1B14F9 <an Object with map 0000001ECCAAE1A9>
promise: 000002894B1B1389 <a Promise with map 0000001ECCAAE201>#14#
resolve: 000002894B1B1431 <JS Function y (SharedFunctionInfo 0000026E92F6EC61)>#15#
reject: 000002894B1B1479 <JS Function z (SharedFunctionInfo 0000026E92F6ED29)>#16#
#4# 000001204D196271: 000001204D196271 <FixedArray[20]>
0: 000001204D196121 <FixedArray[5]>#17#
1: 1
2: 00000242448049F9 <Symbol: uninitialized_symbol>#18#
3: 00000242448049F9 <Symbol: uninitialized_symbol>#18#
4: 00000242448049F9 <Symbol: uninitialized_symbol>#18#
5: 00000242448049F9 <Symbol: uninitialized_symbol>#18#
6: 0
7: 00000242448049F9 <Symbol: uninitialized_symbol>#18#
8: 0
9: 0000024244802559 WeakCell for 0#19#
...
#5# 0000026E92F233D9: 0000026E92F233D9 <JS Function checkCommunicationResult (SharedFunctionInfo 000001998EE5D299)>
#6# 000001091341ADE1: 000001091341ADE1 <FixedArray[45]>
0: 000001091341AF59 <JS Function (SharedFunctionInfo 0000024244821B49)>#20#
1: 00000109134038B9 <FixedArray[189]>#1#
3: 00000109134038B9 <FixedArray[189]>#1#
4: 0000010913406891 <JS Function InternalArray (SharedFunctionInfo 0000024244848981)>#21#
5: 0000024244804429 <Symbol: promise_async_stack_id_symbol>#22#
6: 00000242448045F1 <Symbol: promise_handled_by_symbol>#23#
7: 0000024244804539 <Symbol: promise_forwarding_handler_symbol>#24#
8: 00000242448046A1 <Symbol: promise_has_handler_symbol>#25#
9: 0000024244804749 <Symbol: promise_reject_reactions_symbol>#26#
...
#7# 000001091341B489: 000001091341B489 <JS Function PromiseHandle (SharedFunctionInfo 0000024244822939)>
#8# 0000010913403EB1: 0000010913403EB1 <JS Function (SharedFunctionInfo 0000024244807FB1)>
#9# 000003F31E2A0159: 000003F31E2A0159 <JS Global Object>
#10# 000003F31E2A0371: 000003F31E2A0371 <FixedArray[33]>
0: 0000024244802311 <undefined>
1: 0000024244802311 <undefined>
2: 0000024244802311 <undefined>
3: 0000024244802311 <undefined>
4: 0000024244802311 <undefined>
5: 0000024244802311 <undefined>
6: 0000024244802311 <undefined>
7: 0000024244802311 <undefined>
8: 0000024244802311 <undefined>
9: 0000024244802311 <undefined>
...
#11# 0000036566585F31: 0000036566585F31 <Map(FAST_HOLEY_ELEMENTS)>
#12# 0000010913408C81: 0000010913408C81 <JS Function ArrayBuffer (SharedFunctionInfo 00000242448449A1)>
#13# 00000365665830C9: 00000365665830C9 <Map(FAST_HOLEY_SMI_ELEMENTS)>
#14# 000002894B1B1389: 000002894B1B1389 <a Promise with map 0000001ECCAAE201>
#15# 000002894B1B1431: 000002894B1B1431 <JS Function y (SharedFunctionInfo 0000026E92F6EC61)>
#16# 000002894B1B1479: 000002894B1B1479 <JS Function z (SharedFunctionInfo 0000026E92F6ED29)>
#17# 000001204D196121: 000001204D196121 <FixedArray[5]>
0: 18
1: 000001204D196159 <FixedArray[11]>#27#
2: 41945090
3: 2326624
4: 234921986
#18# 00000242448049F9: 00000242448049F9 <Symbol: uninitialized_symbol>
#19# 0000024244802559: 0000024244802559 WeakCell for 0
#20# 000001091341AF59: 000001091341AF59 <JS Function (SharedFunctionInfo 0000024244821B49)>
#21# 0000010913406891: 0000010913406891 <JS Function InternalArray (SharedFunctionInfo 0000024244848981)>
#22# 0000024244804429: 0000024244804429 <Symbol: promise_async_stack_id_symbol>
#23# 00000242448045F1: 00000242448045F1 <Symbol: promise_handled_by_symbol>
#24# 0000024244804539: 0000024244804539 <Symbol: promise_forwarding_handler_symbol>
#25# 00000242448046A1: 00000242448046A1 <Symbol: promise_has_handler_symbol>
#26# 0000024244804749: 0000024244804749 <Symbol: promise_reject_reactions_symbol>
#27# 000001204D196159: 000001204D196159 <FixedArray[11]>
0: 1
1: 0
2: 4
3: 7
4: 0000024244802D19 <String[5]: Error>
5: 0000024244802311 <undefined>
6: 0000024244802311 <undefined>
7: 0000024244802311 <undefined>
8: 0000024244802311 <undefined>
9: 0000024244802311 <undefined>
...
=====================
I'm now trying on this module rebuild for electron. But some error occured when rebuiling or running modules. Any help would be greatly appreciated.
Please see this issue too. -> #17
Hello,
when I try installing noble-uwp via npm as root on Windows 10, I get a multitude of errors. They probably go back to the first one, which is a failed download of https://github.com/tessel/node-usb/releases/download/1.2.0/usb_bindings-v1.2.0-node-v57-win32-x64.tar.gz.
This makes sense, because when I enter the address in my browser, I get a 404.
If it helps, here's the output I get: Link to Gist
Thank You!
Nopony
Using the advertisment-discovery.js
script from examples enabling allowDuplicates
in startScanning
i get results between say 5 and 12 seconds for a device that advertises once every 500ms. I get much quicker responses when using the hci-socket binding.
I'm using a BCM20702A based dongle and node 10.6.0
Can anybody else replicate this sort of behavior?
Hi,
I was trying to simple try some another devices according to bug #24, and while using LightBlue Explorer on my iPhone to create Virtual Periperals I got this as a value (sic!) on .read() some of the characteristics
Protocol error communicating with device
Seemed pretty strange for me so I tried same code on macOS & noble and got proper value.
Best, JH
Thank your for this module!
Everything works for me on windows, I can discover and connect the device and send
commands to the device.
However, when I try to subscribe for notification characteristic, I don't get any data.
This code works with noble on Mac, but the callback in on('data')
is not called on Windows.
Any hints what I might be doing wrong? Thank you in advance!
let readChar = device.characteristics[readCharacteristicUUID];
readChar.on('data', (data, isNotification) => {
console.log('data');
console.log(data);
});
readChar.subscribe((err) => {
if (err) console.log(err);
console.log('Notification started');
});
Sorry for the big dump below, but I'm trying to install noble-uwp and it gives me a bunch of errors. It looks like there is a problem with the Bluetooth. May it have something to do with me running the latest version of Windows (15063) instead of the preview version? Also I'm running the latest NodeJS on my system.
I noticed it builds all the NodeRT stuff, while it only needs the Bluetooth ones right?
I'm planning on using it in my Electron application. Any help is greatly appreciated!
C:\Projects\Diagnoptics>npm install noble-uwp
[email protected] install C:\Projects\Diagnoptics\node_modules\usb
node-pre-gyp install --fallback-to-build
[usb] Success: "C:\Projects\Diagnoptics\node_modules\usb\src\binding\usb_bindings.node" is installed via remote
[email protected] install C:\Projects\Diagnoptics\node_modules\bluetooth-hci-socket
node-gyp rebuild
C:\Projects\Diagnoptics\node_modules\bluetooth-hci-socket>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
win_delay_load_hook.cc
Generating code
Finished generating code
binding.vcxproj -> C:\Projects\Diagnoptics\node_modules\bluetooth-hci-socket\build\Release\binding.node
[email protected] install C:\Projects\Diagnoptics\node_modules\noble-uwp
build.cmd
Building NodeRT UWP adapter for Windows.Foundation
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
_nodert_generated.cpp
NodeRtUtils.cpp
OpaqueWrapper.cpp
CollectionsConverterUtils.cpp
win_delay_load_hook.cc
Creating library C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.foundation\build\Release\binding.lib and object C:\Projects\Di
agnoptics\node_modules\noble-uwp\uwp\windows.foundation\build\Release\binding.exp
Generating code
Finished generating code
binding.vcxproj -> C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.foundation\build\Release\binding.node
Building NodeRT UWP adapter for Windows.Storage.Streams
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
_nodert_generated.cpp
NodeRtUtils.cpp
OpaqueWrapper.cpp
CollectionsConverterUtils.cpp
win_delay_load_hook.cc
Creating library C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.storage.streams\build\Release\binding.lib and object C:\Projec
ts\Diagnoptics\node_modules\noble-uwp\uwp\windows.storage.streams\build\Release\binding.exp
Generating code
Finished generating code
binding.vcxproj -> C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.storage.streams\build\Release\binding.node
Building NodeRT UWP adapter for Windows.Devices.Bluetooth
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
nodert_generated.cpp
NodeRtUtils.cpp
OpaqueWrapper.cpp
.._nodert_generated.cpp(64): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_m
odules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(64): error C2065: 'BluetoothAdapter': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\window
s.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(64): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(65): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_m
odules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(65): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(65): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(65): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(65): note: compiler replacing '^' with '*' to continue parsing
.._nodert_generated.cpp(67): error C2039: 'BluetoothDeviceId': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(67): error C2065: 'BluetoothDeviceId': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windo
ws.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(67): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(68): error C2039: 'BluetoothDeviceId': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(68): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(68): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(68): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(68): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(70): error C2039: 'BluetoothUuidHelper': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\nod
e_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(70): error C2065: 'BluetoothUuidHelper': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\win
dows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(70): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(71): error C2039: 'BluetoothUuidHelper': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\nod
e_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(71): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(71): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(71): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(71): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(79): error C2039: 'BluetoothLEAppearanceCategories': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Dia
gnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(79): error C2065: 'BluetoothLEAppearanceCategories': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble
-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(79): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(80): error C2039: 'BluetoothLEAppearanceCategories': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Dia
gnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(80): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(80): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(80): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(80): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(82): error C2039: 'BluetoothLEAppearanceSubcategories': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects
Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(82): error C2065: 'BluetoothLEAppearanceSubcategories': undeclared identifier [C:\Projects\Diagnoptics\node_modules\no
ble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(82): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(83): error C2039: 'BluetoothLEAppearanceSubcategories': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects
Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(83): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(83): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(83): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(83): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(85): error C2039: 'BluetoothLEAppearance': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\n
ode_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(85): error C2065: 'BluetoothLEAppearance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(85): error C2065: 'wintRtInstance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.
devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(86): error C2039: 'BluetoothLEAppearance': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\n
ode_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(86): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.dev
ices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(86): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\Projects\Diagnoptic
s\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(86): error C3699: '^': cannot use this indirection on type 'int' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\w
indows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(86): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(249): error C2838: 'DisabledByUser': illegal qualified name in member declaration [C:\Projects\Diagnoptics\node_module
s\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(249): error C2065: 'DisabledByUser': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows
.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(249): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(250): error C2838: 'ConsentRequired': illegal qualified name in member declaration [C:\Projects\Diagnoptics\node_modul
es\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(250): error C2065: 'ConsentRequired': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\window
s.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(250): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(251): error C2838: 'TransportNotSupported': illegal qualified name in member declaration [C:\Projects\Diagnoptics\node
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(251): error C2065: 'TransportNotSupported': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp
windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(251): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(261): error C3083: 'BluetoothAddressType': the symbol to the left of a '::' must be a type [C:\Projects\Diagnoptics\no
de_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(261): error C2039: 'Public': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_modules\no
ble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(261): error C2065: 'Public': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices
.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(261): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(262): error C3083: 'BluetoothAddressType': the symbol to the left of a '::' must be a type [C:\Projects\Diagnoptics\no
de_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(262): error C2039: 'Random': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_modules\no
ble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(262): error C2065: 'Random': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices
.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(262): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(263): error C3083: 'BluetoothAddressType': the symbol to the left of a '::' must be a type [C:\Projects\Diagnoptics\no
de_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(263): error C2039: 'Unspecified': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_modul
es\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(263): error C2065: 'Unspecified': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.de
vices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(263): error C2661: 'Nan::Set': no overloaded function takes 2 arguments [C:\Projects\Diagnoptics\node_modules\noble-uw
p\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(315): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(315): error C2061: syntax error: identifier 'BluetoothAdapter' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\win
dows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(854): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(854): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.de
vices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(854): error C2461: 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter': constructor syntax missing formal paramete
rs [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(854): error C2238: unexpected token(s) preceding ';' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devic
es.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(857): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(857): error C2061: syntax error: identifier 'BluetoothAdapter' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\win
dows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(857): error C2365: 'NodeRT::Windows::Devices::Bluetooth::WrapBluetoothAdapter': redefinition; previous definition was
'data variable' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(64): note: see declaration of 'NodeRT::Windows::Devices::Bluetooth::WrapBluetoothAdapter'
.._nodert_generated.cpp(858): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(858): error C2143: syntax error: missing ';' before '^' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.de
vices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(858): error C2433: 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter': 'friend' not permitted on data declaration
s [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(858): error C2238: unexpected token(s) preceding ';' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devic
es.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(310): error C2065: '_instance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devi
ces.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(317): error C2065: 'instance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devi
ces.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(317): error C2065: 'instance': undeclared identifier [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devic
es.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(360): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(360): error C3699: '^': cannot use this indirection on type 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter' [C
:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(360): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(364): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(364): error C2059: syntax error: '>' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(364): error C2783: 'bool NodeRT::Utils::IsWinRtWrapperOf(v8::Localv8::Value)': could not deduce template argument fo
r 'T' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
c:\projects\diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\NodeRtUtils.h(60): note: see declaration of 'NodeRT::Utils::IsWi
nRtWrapperOf'
.._nodert_generated.cpp(368): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(368): error C2059: syntax error: ')' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(384): error C2664: 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter::BluetoothAdapter(const NodeRT::Windows::Dev
ices::Bluetooth::BluetoothAdapter &)': cannot convert argument 1 from 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter *' to 'const NodeR
T::Windows::Devices::Bluetooth::BluetoothAdapter &' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding
.vcxproj]
.._nodert_generated.cpp(384): note: Reason: cannot convert from 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter ' to 'const NodeRT::
Windows::Devices::Bluetooth::BluetoothAdapter'
.._nodert_generated.cpp(384): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot b
e called
.._nodert_generated.cpp(395): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(395): error C2059: syntax error: '>' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(395): error C2783: 'bool NodeRT::Utils::IsWinRtWrapperOf(v8::Localv8::Value)': could not deduce template argument fo
r 'T' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
c:\projects\diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\NodeRtUtils.h(60): note: see declaration of 'NodeRT::Utils::IsWi
nRtWrapperOf'
.._nodert_generated.cpp(401): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(401): error C3699: '^': cannot use this indirection on type 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter' [C
:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(401): note: compiler replacing '^' with '' to continue parsing
.._nodert_generated.cpp(404): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(404): error C2059: syntax error: ')' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(412): error C2064: term does not evaluate to a function taking 1 arguments [C:\Projects\Diagnoptics\node_modules\noble
-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(420): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(420): error C2059: syntax error: '>' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(420): error C2783: 'bool NodeRT::Utils::IsWinRtWrapperOf(v8::Localv8::Value)': could not deduce template argument fo
r 'T' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
c:\projects\diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\NodeRtUtils.h(60): note: see declaration of 'NodeRT::Utils::IsWi
nRtWrapperOf'
.._nodert_generated.cpp(440): error C2039: 'instance': is not a member of 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter' [C:\Project
s\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(269): note: see declaration of 'NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter'
.._nodert_generated.cpp(440): error C2227: left of '->GetRadioAsync' must point to class/struct/union/generic type [C:\Projects\Diagnoptics\no
de_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(511): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node
modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(511): error C2059: syntax error: '>' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\bui
ld\binding.vcxproj]
.._nodert_generated.cpp(511): error C2976: 'Windows::Foundation::IAsyncOperation': too few generic arguments [C:\Projects\Diagnoptics\node_mod
ules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(511): error C2955: 'Windows::Foundation::IAsyncOperation': use of class generic requires generic argument list [C:\Pro
jects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(521): error C3083: 'BluetoothAdapter': the symbol to the left of a '::' must be a type [C:\Projects\Diagnoptics\node_m
odules\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(521): error C2039: 'FromIdAsync': is not a member of 'Windows::Devices::Bluetooth' [C:\Projects\Diagnoptics\node_modul
es\noble-uwp\uwp\windows.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(521): error C2664: 'void NodeRT::Windows::Devices::Bluetooth::BluetoothAdapter::FromIdAsync(Nan::NAN_METHOD_ARGS_TYPE)
': cannot convert argument 1 from 'Platform::String ^' to 'Nan::NAN_METHOD_ARGS_TYPE' [C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windo
ws.devices.bluetooth\build\binding.vcxproj]
.._nodert_generated.cpp(521): fatal error C1003: error count exceeds 100; stopping compilation [C:\Projects\Diagnoptics\node_modules\noble-uwp
\uwp\windows.devices.bluetooth\build\binding.vcxproj]
CollectionsConverterUtils.cpp
win_delay_load_hook.cc
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe
failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.15063
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild" "--msvs_version=2015"
gyp ERR! cwd C:\Projects\Diagnoptics\node_modules\noble-uwp\uwp\windows.devices.bluetooth
gyp ERR! node -v v6.10.2
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
[email protected] node_modules\noble-uwp\node_modules\noble\node_modules\bplist-parser -> node_modules\bplist-parser
[email protected] node_modules\noble-uwp\node_modules\debug\node_modules\ms -> node_modules\ms
[email protected] node_modules\noble-uwp\node_modules\debug -> node_modules\debug
[email protected] node_modules\noble-uwp\node_modules\noble\node_modules\bluetooth-hci-socket\node_modules\nan -> node_modules\nan
[email protected] node_modules\noble-uwp\node_modules\noble\node_modules\debug\node_modules\ms -> node_modules\noble-uwp\node_modules\ms
npm ERR! [email protected] install: build.cmd
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'build.cmd'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the noble-uwp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! build.cmd
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs noble-uwp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls noble-uwp
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! C:\Projects\Diagnoptics\npm-debug.log
Hello,
I recently started using noble-uwp in place of noble in my electron app. My Windows 10 machine is at update 1709 - Fall creators update. I am seeing two problems.
First of all I do not see the scan UUID being used as a filter. Currently, I removed all the filters and started looking for all the devices.
Second problem is more critical. When I trigger "connect" to my device, no callback is triggered. In the bindings.js file, I could trace the flow up to the call to fromBluetoothAddressAsync. Neither did the promise resolve, nor was it rejected.
I normally do keep the scan running periodically. I also tried to stop scan forever before triggering the connection request. This did not result in any change in behavior.
Is this a known issue with Windows/ noble-uwp or can this issue be seen due to any mistakes in the setup?
Thanks
On some windows 10 computers we are facing issues with noble-uwp
the computer is running windows 10 creators update but with a very simple npm project with only noble-uwp i get this:
PS D:\Users\aryballe\test> node .\node_modules\noble-uwp\test.js
D:\Users\aryballe\test\node_modules\noble-uwp\uwp\windows.foundation\lib\main.js:23
throw e;
^
Error: Le module spécifié est introuvable.
\\?\D:\Users\aryballe\test\node_modules\noble-uwp\uwp\windows.foundation\binding\node-v57-win32-x64\binding.node
at Object.Module._extensions..node (module.js:672:18)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)
at Function.Module._load (module.js:491:3)
at Module.require (module.js:587:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (D:\Users\aryballe\test\node_modules\noble-uwp\uwp\windows.foundation\lib\main.js:19:20)
at Module._compile (module.js:643:30)
at Object.Module._extensions..js (module.js:654:10)
at Module.load (module.js:556:32)
PS D:\Users\aryballe\test>
The file is there just it won't load and i think it's related to something not beeing found.
In case you see something obvious... Maybe it needs some redistributable? but i have never seen the need for it
Thanks
Scenario:
It seems noble-uwp caches the listener attached to a subscription and do not call the nodert library to subscribe to it again, but doesn't clear this cache once a device is disconnected.
I executed following codes with noble-uwp
.
const noble = require('noble-uwp');
noble.on('scanStart', () => {
console.log('scanStart');
});
noble.startScanning();
But I couldn't handle scanStart
event.
Can I get scanStart
/ scanStop
events with noble-uwp
?
On the other hand, I could get events with same codes with noble
which has scanStart
/ scanStop
events,
Hi,
I am trying your module.
I have win 10 Insider 10.0.15042.0 with the SDK.
Though it won't build:
..\_nodert_generated.cpp(64): error C2039: 'BluetoothAdapter': is not a member of 'Windows::Devices::Bluetooth' [C:\Users\mguillon\dev\aryballe\noble-uwp\uwp\windows.devices .bluetooth\build\binding.vcxproj]
I guess this is because it actually builds with VC14 and not VC17.
How did you get node-gyp to use VC17?
BTW i forked your repo and already refactored the gyp files to prevent duplicate and to make it easier to update the win SDK version. I can make a PR if you want
Reported at noble/noble#646 (comment)
charREAD.on('read', function(data, err) {
console.log('>>> charREAD notify', data, err);
});
charREAD.subscribe()
This code simply stopped working when upgrading from 0.3.2 to 0.4.4 :(.
Hi,
very simple case, I connect to the device and try to updateRssi, but the function always return non-errors but value 0.
Best, JH
It looks like there is slight mismatch about required OS version between README and code.
The README says Windows 10 build 10.0.15063 or later
is required while index.js checks if OS version is 10.0.15014 or later.
Has anyone manage to get this to work under version 1709 of Windows 10?
I have run npm install --global --production windows-build-tools
Rebooted. Then npm install node-uwp
I get the following error snippet
..\OpaqueWrapper.cpp : fatal error C1107: could not find assembly 'Windows.winmd': please specify the assembly search path using /AI or by setting the LIBPATH environment variable
Is it because NodeRT doesn't yet support it?
Hi,
I'm trying to connect to some bluetooth devices, however I randomly get the error Device is not connectable: 00:01:cc:94:16:0fNobleBindings.connect
. The error points to
if (!deviceRecord.connectable) {
throw new Error("Device is not connectable: " + deviceRecord.formattedAddress);
}
https://github.com/jasongin/noble-uwp/blob/master/lib/bindings.js#L99-L101
It doesn't always happen, and sometimes I can connect to up to 10 devices without error. However, when the issue occurs it is usually after the 3rd device being connected (but I have seen it happen on the one 2nd also). It is also usually after the 2nd attempt of connecting a bunch of devices, after a clean restart, so I'm wondering if it is some caching issue - maybe with advertisementType
?
Doing some console.log'ing, it appears that the peripheral is in a connecting
state internally, if that helps.
Any ideas?
Thanks!
I am working on a 64 bit Windows, but I'm making an Electron app that is supposed to work on 32 bit systems as well. Therefore I'm making ia32 builds, that run fine on 32 and 64 systems.
Now I'm trying to make noble-uwp work here. It builds and runs with no errors. However the bluetooth state keeps being 'unsupported'. It looks like it's not discovering any bluetooth adapters.
It works fine in x64 Electron builds but not in ia32 builds. Anyone have any idea what the problem may be?
Hi, as I see in source code the option about allowDuplicates isn't interpreted in any way.
Is this because of lack of setting this in Windows 10 Bluetooth API (can't find anything about this in documentation) or I should configure this in other place?
I'm using this to detect disconnection of BT device, in noble this way works well but transfer to -uwp causes this kind of problems.
Hi,
I'm trying to do electron-rebuild (as well as node-gyp rebuild which is the part of electron-rebuild) noble-uwp and after installing Windows SDK (matching version) and VS 2015 Express and also windows-build-tools i got this error
Any ideas?
I've never messed with any flags, neither in system settings nor in noble-uwp configuration files.
There is an issue with the way you load and name bindings in the modules. You always use "binding.node".
Let me explain:
npm rebuild --runtime=electron --target=1.7.5 --arch=x64 --rebuild --update-binary
)./lib/binding/binding.node
so it thinks it's good and tells you it does not need to rebuildBut you end up with bindings built for the wrong version of node.
The issue is that in your modules package.json
in the binary
section, you dont use node_abi
here is a working example:
https://github.com/peterbraden/node-opencv/blob/master/package.json
Trying to run a script that works on noble on OS X/linux, that uses the discoverCharacteristics([uuids, ...], callback()) format. The uuids are formatted without -'s and using lower case for hex, while it looks like windows is returning uuids with -'s and upper case hex. Should probably clean up uuid format in the filteruuid function before comparison?
I now got it work and it is already discovering a lot of devices !
Now about the device that i am interested in. The advertisment data is always empty
{ localName: null,
txPowerLevel: null,
manufacturerData: null,
serviceUuids: [],
serviceData: [] }
I see this in my log before i get the 'discover'
event:
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp watcher received: 5c:7e:e3:ca:4e:09
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp address type: public
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp advertisement type: connectableUndirected
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp data section: flags
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp data section: manufacturerSpecificData
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp flags: 6
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp watcher received: 5c:7e:e3:ca:4e:09
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp address type: public
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp advertisement type: scanResponse
Mon, 10 Apr 2017 14:28:13 GMT noble-uwp flags: undefined
Maybe advertisment is not already implemented?
It would be nice to publish pre-built binaries using node-pre-gyp
so that most people don't have to build all the NodeRT C++ code when installing the noble-uwp
package.
I don't have any experience with node-pre-gyp
personally. And this project is a little more complex than most since there are several DLLs that need to be built/published. (Perhaps the solution would involve breaking them out into dependent packages.) If anyone can help with this, it would be appreciated. Otherwise I'll find time to look into it eventually.
Notifications didn't seem to work on my and my colleague's computer using noble-uwp in an x64 Electron build. Scanning and connecting works though.
Turns out there apparently is an issue in Windows that is causing this. Regular UWP apps work fine but the problem is specific with 'external' use like dlls.
Supposedly there is a Windows Update that fixes this, but probably only people in the fast ring have this (which I'm not).
There is a topic that addresses this issue:
Fortunately the regedit fix that is proposed here does work for me and my colleague. However this is not really a realistic solution for my customers of course. So I'm wondering if it's possible that one of the solutions mentioned in the link can be integrated in node-uwp somehow?
I have a device running using bleno on Pi/Edison
I use noble-uwp on windows and noble on Mac/Linux.
I recently found an issue with noble-uwp.
If i shut down my bleno app genlty, which calls disconnect, the noble-uwp client gets the disconnect event. And i see nothing in the debug console (with DEBUG=*
)
Now if i hard shutdown my bleno device, the noble-uwp client still think it's connected.
Noble on mac/linux does get the event.
I think it should be very easy to reproduce with a bleno/noble-uwp setup
I am not where this might come from. There is also a heartbeat on windows? I mean does BLE on Windows regularly "ping" the connected devices?
If so it should see that the device is not there anymore. Maybe it s a timeout duration issue
I will investigate that but as you know windows bluetooth a lot better than i do, i think you could understand it better.
When subscribing to a characteristic, noble-uwp writes the configuration in the descriptor for notifications, whether the characteristic supports it or not.
This causes features like setting a nordic chip into DFU mode without button.
Using the descriptors, it should be possible to choose notify or indicate automatically in the bindings
Before using noble i'm checking if noble.state
is one of the following state: "resetting", "poweredOff", "poweredOn" which is fine with noble
.
With noble-uwp
, noble.state returns undefined.
It's not very important but as the documentation says it can be used as the same way as noble
, it may be an issue.
https://github.com/jasongin/noble-uwp/blob/master/package.json#L10
Package.json is setup to make sure the platform is windows, however the readme states:
On non-Windows platforms, the benavior is unchanged from noble, while on Windows the UWP bindings are used instead of noble's Bluetooth HCI bindings.
Would you be open to removing the os line? We have multiplatform support in our app and we want to avoid having to check the os and switch between noble and noble-uwp
First, I really appreciate that I no longer have to replace WinUSB and BTHUSB with noble-uwp.
I could use typescript syntax including import clause, testing "noble" by installing types/noble.
But, I couldn't do the same with noble-uwp.
To be honest, I am not that good at nodejs.
Would there be a way to solve this?
And I wonder whether on Windows OS as client side, this(kind of electron using noble) can mimic android apps having on/off toggle buttons to write 0 or 1 to things like arduino BLE LED diode to turn on and off the light.
I mean, should the client have to install visual studio, python and so on to install BLE app?
Thank you for reading.
I use this library in my electron app. And from this issue( #17 ), I try to run build.cmd
.
But I cannot find that file.
Where can I find this command?
I just tried to build for the very latest electron 1.8.2
i fails with a lot of errors like
noble-uwp\uwp\windows.foundation\node-async.h(286): error C2665: 'Nan::MakeCallback': none of
the 3 overloads could convert all the argument types (compiling source file ..\_nodert_generated.cpp) [noble-uwp\uwp\windows.foundation\build\binding.vcxproj]
I think the sources need to be regenerated.
I cant remember how you do that.
Can you guide me?
Thanks
Hello!
I am currently using noble-uwp as a replacement for noble on Windows 10 Fall Creators update, and I must say I am impressed how decent it works compared to the bluetooth-hci-socket implementation. Great work!
Currently we are investigating an issue with some of our custom-built BLE devices, where after almost exactly 30 seconds the device is disconnected from the PC. This happens on every connect, but weirdly only affects some devices. We have tested those devices with Noble on MacOS High Sierra and have encountered no issues whatsoever. Our device debug logs indicate that the device is disconnected by the PC, suggesting that the issue is either related to noble-uwp or the Windows Bluetooth API.
I have included both the logs from both our Electron app and the device. When trying to write to a characteristic, Noble will throw an error (failed to write characteristic for device e9b98f92883e: Error: The object has been closed.
), if the write happens more than 30 seconds after connecting.
Device Logs
0> Hello World! Let's go
0> ACC gevonden!
0> DEBUG: Orientatie veranderd, update BLE (4)
0> Orientatie verandering doorgevoerd
0> DEBUG: BLE connection started
0> DEBUG: Orientation reset
0> DEBUG: Orientatie veranderd na reset, update BLE (4)
0> Orientatie verandering doorgevoerd
0> Bluetooth write!
0> 1
0> Bluetooth FLASH write!
0> Bluetooth write!
0> 2
0> Bluetooth write!
0> 2
0> DEBUG: BLE connection disconnected
0> Reason disconnect: 13
Console Log
14:53:28.097 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp flags: undefined +0ms
14:53:28.097 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp service UUID: {8BB30001-7113-2B9C-C649-C9AD5A461F3B} +1ms
14:53:28.160 C:\Users\Lei\Documents\Github\iMO-Connect\js\mdm.js:81 Connecting to device e9b98f92883e, attempt #1
14:53:28.165 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp stopScanning() +67ms
14:53:28.165 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp keepAlive(false) => 0 +1ms
14:53:28.166 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp connect(e9b98f92883e) +0ms
14:53:28.170 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp watcher stopped +4ms
14:53:28.196 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp got bluetooth device: iMO MDM (5) +27ms
14:53:28.198 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp discoverServices(e9b98f92883e, 8bb3152371132b9cc649c9ad5a461f3b) +1ms
14:53:28.886 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp e9b98f92883e services: Array(1) +688ms
14:53:28.889 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp discoverCharacteristics(e9b98f92883e, 8bb3152371132b9cc649c9ad5a461f3b, 8bb3accc71132b9cc649c9ad5a461f3b,8bb3152571132b9cc649c9ad5a461f3b,8bb3a3e171132b9cc649c9ad5a461f3b,8bb3c01071132b9cc649c9ad5a461f3b +3ms
14:53:29.568 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp e9b98f92883e 8bb3152371132b9cc649c9ad5a461f3b characteristics: Array(4) +679ms
14:53:29.570 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp write(e9b98f92883e, 8bb3152371132b9cc649c9ad5a461f3b, 8bb3152571132b9cc649c9ad5a461f3b, (data), false) +2ms
14:53:29.804 C:\Users\Lei\Documents\Github\iMO-Connect\js\mdm.js:159 Flash was sent for device e9b98f92883e
14:53:29.805 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp notify(e9b98f92883e, 8bb3152371132b9cc649c9ad5a461f3b, 8bb3accc71132b9cc649c9ad5a461f3b, true) +235ms
14:53:30.283 C:\Users\Lei\Documents\Github\iMO-Connect\node_modules\noble\node_modules\noble-uwp\node_modules\de…:123 noble-uwp keepAlive(true) => 1 +479ms
14:53:30.284 C:\Users\Lei\Documents\Github\iMO-Connect\js\mdm.js:172 Device e9b98f92883e was successfully connected
[Question] - I am new to this technology stack. Does noble-uwp bypass the issue of UWP apps not allowing loopback IPC, either with Electron or without? My intention is to implement a noble-uwp server app and control BLE devices through a client on the same machine, with the client implemented as a JS React app (maybe with Electron) or through a Java client.
or an external Bluetooth 4.0 USB adapter is needed?
See item number 1 from noble/noble#646 (comment)
I tried to rebuild modules by npm run install --build-from-source
but failed with next log.
> [email protected] install C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp
> install.cmd
Installing NodeRT UWP adapter for Windows.Foundation
このソリューション内のプロジェクトを 1 度に 1 つずつビルドします。並行ビルドを有効にするには、"/m" スイッチを追加してく ださい。
_nodert_generated.cpp
NodeRtUtils.cpp
OpaqueWrapper.cpp
CollectionsConverterUtils.cpp
..\_nodert_generated.cpp : fatal error C1107: could not find assembly 'Windows.winmd': please specify the assembly sear
ch path using /AI or by setting the LIBPATH environment variable [C:\Users\itome\Projects\MaBeeeElectron\node_modules\n
oble-uwp\uwp\windows.foundation\build\binding.vcxproj]
..\NodeRtUtils.cpp : fatal error C1107: could not find assembly 'Windows.winmd': please specify the assembly search pat
h using /AI or by setting the LIBPATH environment variable [C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-u
wp\uwp\windows.foundation\build\binding.vcxproj]
..\CollectionsConverterUtils.cpp : fatal error C1107: could not find assembly 'Windows.winmd': please specify the assem
bly search path using /AI or by setting the LIBPATH environment variable [C:\Users\itome\Projects\MaBeeeElectron\node_m
odules\noble-uwp\uwp\windows.foundation\build\binding.vcxproj]
..\OpaqueWrapper.cpp : fatal error C1107: could not find assembly 'Windows.winmd': please specify the assembly search p
ath using /AI or by setting the LIBPATH environment variable [C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble
-uwp\uwp\windows.foundation\build\binding.vcxproj]
win_delay_load_hook.cc
C:\Users\itome\Projects\MaBeeeElectron\node_modules\node-gyp\src\win_delay_load_hook.cc : fatal error C1107: could not
find assembly 'Windows.winmd': please specify the assembly search path using /AI or by setting the LIBPATH environment
variable [C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation\build\binding.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\itome\Projects\MaBeeeElectron\node_modules\node-gyp\lib\build.js:258:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.15063
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\itome\\Projects\\MaBeeeElectron\\node_modules\\node-gyp\\bin\\node-gyp.js" "build" "--fallback-to-build" "--msvs_version=2015" "--module=C:\\Users\\itome\\Projects\\MaBeeeElectron\\node_modules\\noble-uwp\\uwp\\windows.foundation\\binding\\node-v48-win32-x64\\binding.node" "--module_name=binding" "--module_path=C:\\Users\\itome\\Projects\\MaBeeeElectron\\node_modules\\noble-uwp\\uwp\\windows.foundation\\binding\\node-v48-win32-x64"
gyp ERR! cwd C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation
gyp ERR! node -v v6.11.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\itome\Projects\MaBeeeElectron\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --msvs_version=2015 --module=C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation\binding\node-v48-win32-x64\binding.node --module_name=binding --module_path=C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation\binding\node-v48-win32-x64' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
node-pre-gyp ERR! stack at emitTwo (events.js:106:13)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:191:7)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:891:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
node-pre-gyp ERR! System Windows_NT 10.0.15063
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\itome\\Projects\\MaBeeeElectron\\node_modules\\noble-uwp\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" "--msvs_version=2015"
node-pre-gyp ERR! cwd C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation
node-pre-gyp ERR! node -v v6.11.2
node-pre-gyp ERR! node-pre-gyp -v v0.6.36
node-pre-gyp ERR! not ok
Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\itome\Projects\MaBeeeElectron\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --msvs_version=2015 --module=C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation\binding\node-v48-win32-x64\binding.node --module_name=binding --module_path=C:\Users\itome\Projects\MaBeeeElectron\node_modules\noble-uwp\uwp\windows.foundation\binding\node-v48-win32-x64' (1)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: `install.cmd`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\itome\AppData\Roaming\npm-cache\_logs\2017-08-20T03_16_02_323Z-debug.log
Any ideas about this?
Hi @jasongin !
This module is very useful because I no longer have to change a ble driver on Windows10.
I want to develop a software including noble + bleno.
But maybe noble-uwp doesn't work with bleno because each module require different driver.
Is there a way to use this with bleno ?
or do you have a plan to develop 'bleno-uwp' ?
See items 2 and 3 from noble/noble#646 (comment)
Currently the advertised service UUIDs are reported as 128-bit uppercase GUIDs with hyphens and braces. The expected format is no hyphens or braces and all lowercase, with 16-bit UUIDs in short form.
It seems my bluetooth device (BCM4331) isn't supported (Bootcamp). Using a BLE explorer app from the Microsoft store works.
venId: 05ac
devId: 828b
Anything I can do to make this work?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.