Created
December 11, 2014 21:11
-
-
Save stayradiated/aae221738fd61ed13d79 to your computer and use it in GitHub Desktop.
Debugging noble and bleno
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var noble = require('noble'); | |
noble.on('stateChange', function (state) { | |
console.log('state:', state); | |
if (state === 'poweredOn') { | |
console.log('scanning...'); | |
noble.startScanning(); | |
} else { | |
noble.stopScanning(); | |
} | |
}); | |
noble.on('discover', function (p) { | |
noble.stopScanning(); | |
console.log('found:', p.advertisement); | |
p.on('disconnect', function () { | |
console.log('disconnected'); | |
process.exit(0); | |
}); | |
p.connect(function (err) { | |
if (err) { | |
console.log(err); | |
return; | |
} | |
console.log('connected'); | |
var sIDs = [ | |
'13333333333333333333333333333337', | |
]; | |
var cIDs = [ | |
'13333333333333333333333333330001', | |
'13333333333333333333333333330002', | |
'13333333333333333333333333330003', | |
]; | |
p.discoverServices(sIDs, function (err, services) { | |
if (err) { | |
console.log(err); | |
return; | |
} | |
var service = services[0]; | |
console.log('service:', service.uuid); | |
service.discoverCharacteristics(cIDs, function (err, chars) { | |
console.log(arguments); | |
}); | |
}); | |
}); | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
hci-ble hciBle = /home/george/projects/bluecar/node_modules/noble/lib/linux/../../build/Release/hci-ble | |
hci-ble buffer = "adapterState poweredOn\n" | |
hci-ble line = adapterState poweredOn | |
hci-ble adapterState = poweredOn | |
noble stateChange poweredOn | |
state: poweredOn | |
scanning... | |
noble scanStart | |
hci-ble buffer = "event 00:15:83:CE:A3:56,public,020105110637333333333333333333333333333313,-3\n" | |
hci-ble line = event 00:15:83:CE:A3:56,public,020105110637333333333333333333333333333313,-3 | |
hci-ble address = 00:15:83:CE:A3:56 | |
hci-ble addressType = public | |
hci-ble eir = 020105110637333333333333333333333333333313 | |
hci-ble rssi = -3 | |
hci-ble advertisement = {"serviceData":[],"serviceUuids":["13333333333333333333333333333337"]} | |
hci-ble buffer = "event 00:15:83:CE:A3:56,public,020105110637333333333333333333333333333313,-3\n" | |
hci-ble line = event 00:15:83:CE:A3:56,public,020105110637333333333333333333333333333313,-3 | |
hci-ble address = 00:15:83:CE:A3:56 | |
hci-ble addressType = public | |
hci-ble eir = 020105110637333333333333333333333333333313 | |
hci-ble rssi = -3 | |
hci-ble advertisement = {"serviceData":[],"serviceUuids":["13333333333333333333333333333337"]} | |
noble scanStop | |
found: { localName: undefined, | |
txPowerLevel: undefined, | |
manufacturerData: undefined, | |
serviceData: [], | |
serviceUuids: [ '13333333333333333333333333333337' ] } | |
l2cap-ble 00:15:83:CE:A3:56: l2capBle = /home/george/projects/bluecar/node_modules/noble/lib/linux/../../build/Release/l2cap-ble | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "bind success\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = bind success | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "connect success\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = connect success | |
l2cap-ble 00:15:83:CE:A3:56: write: 020001 | |
connected | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "data " | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "data 030001\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = data 030001 | |
l2cap-ble 00:15:83:CE:A3:56: new MTU is 256 | |
l2cap-ble 00:15:83:CE:A3:56: write: 100100ffff0028 | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "data 1106010005000018\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = data 1106010005000018 | |
l2cap-ble 00:15:83:CE:A3:56: write: 100600ffff0028 | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "data 11140600100037333333333333333333333333333313\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = data 11140600100037333333333333333333333333333313 | |
l2cap-ble 00:15:83:CE:A3:56: write: 101100ffff0028 | |
l2cap-ble 00:15:83:CE:A3:56: buffer = "data 011011000a\n" | |
l2cap-ble 00:15:83:CE:A3:56: line = data 011011000a | |
service: 13333333333333333333333333333337 | |
l2cap-ble 00:15:83:CE:A3:56: write: 08060010000328 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
hci-ble hciBle = /home/george/projects/bluecar/node_modules/bleno/lib/linux/../../build/Release/hci-ble | |
l2cap-ble l2capBle = /home/george/projects/bluecar/node_modules/bleno/lib/linux/../../build/Release/l2cap-ble | |
l2cap-ble handles = [ | |
{}, | |
{ | |
"type": "service", | |
"uuid": "1800", | |
"startHandle": 1, | |
"endHandle": 5 | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "2a00", | |
"properties": 2, | |
"secure": 0, | |
"startHandle": 2, | |
"valueHandle": 3 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 3, | |
"value": "Buffer('7562756e7475', 'hex')" | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "2a01", | |
"properties": 2, | |
"secure": 0, | |
"startHandle": 4, | |
"valueHandle": 5 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 5, | |
"value": "Buffer('8000', 'hex')" | |
} | |
] | |
l2cap-ble buffer = "bind success\nlisten success\n" | |
l2cap-ble line = bind success | |
l2cap-ble line = listen success | |
hci-ble buffer = "adapterState poweredOn\n" | |
hci-ble line = adapterState poweredOn | |
hci-ble adapterState = poweredOn | |
bleno stateChange poweredOn | |
hci-ble startAdvertising: name = PizzaSquat, serviceUuids = [ | |
"13333333333333333333333333333337" | |
] | |
hci-ble startAdvertisingWithEIRData: advertisement data = 020105110637333333333333333333333333333313, scan data = 0b0850697a7a615371756174 | |
bleno advertisingStart: null | |
advertising... | |
l2cap-ble handles = [ | |
{}, | |
{ | |
"type": "service", | |
"uuid": "1800", | |
"startHandle": 1, | |
"endHandle": 5 | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "2a00", | |
"properties": 2, | |
"secure": 0, | |
"startHandle": 2, | |
"valueHandle": 3 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 3, | |
"value": "Buffer('7562756e7475', 'hex')" | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "2a01", | |
"properties": 2, | |
"secure": 0, | |
"startHandle": 4, | |
"valueHandle": 5 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 5, | |
"value": "Buffer('8000', 'hex')" | |
}, | |
{ | |
"type": "service", | |
"uuid": "13333333333333333333333333333337", | |
"startHandle": 6, | |
"endHandle": 16 | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "13333333333333333333333333330001", | |
"properties": 10, | |
"secure": 0, | |
"startHandle": 7, | |
"valueHandle": 8 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 8, | |
"value": null | |
}, | |
{ | |
"type": "descriptor", | |
"handle": 9, | |
"uuid": "2901", | |
"properties": 2, | |
"secure": 0, | |
"value": "Gets or sets the type of pizza crust." | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "13333333333333333333333333330002", | |
"properties": 10, | |
"secure": 0, | |
"startHandle": 10, | |
"valueHandle": 11 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 11, | |
"value": null | |
}, | |
{ | |
"type": "descriptor", | |
"handle": 12, | |
"uuid": "2901", | |
"properties": 2, | |
"secure": 0, | |
"value": "Gets or sets the pizza toppings." | |
}, | |
{ | |
"type": "characteristic", | |
"uuid": "13333333333333333333333333330003", | |
"properties": 24, | |
"secure": 0, | |
"startHandle": 13, | |
"valueHandle": 14 | |
}, | |
{ | |
"type": "characteristicValue", | |
"handle": 14, | |
"value": null | |
}, | |
{ | |
"type": "descriptor", | |
"handle": 15, | |
"uuid": "2902", | |
"properties": 10, | |
"secure": 0, | |
"value": "Buffer('0000', 'hex')" | |
}, | |
{ | |
"type": "descriptor", | |
"handle": 16, | |
"uuid": "2901", | |
"properties": 2, | |
"secure": 0, | |
"value": "Bakes the pizza and notifies when done baking." | |
} | |
] | |
bleno servicesSet | |
l2cap-ble buffer = "accept 00:15:83:CE:A3:91\n" | |
l2cap-ble line = accept 00:15:83:CE:A3:91 | |
bindings accept 00:15:83:CE:A3:91 | |
bleno accept 00:15:83:CE:A3:91 | |
l2cap-ble buffer = "security low\ndata 020001\n" | |
l2cap-ble line = security low | |
l2cap-ble line = data 020001 | |
l2cap-ble handing request: 020001 | |
l2cap-ble response: 030001 | |
l2cap-ble send: 030001 | |
l2cap-ble buffer = "data 100100ffff0028\n" | |
l2cap-ble line = data 100100ffff0028 | |
l2cap-ble handing request: 100100ffff0028 | |
l2cap-ble read by group: startHandle = 0x1, endHandle = 0xffff, uuid = 0x2800 | |
l2cap-ble response: 1106010005000018 | |
l2cap-ble send: 1106010005000018 | |
l2cap-ble buffer = "data 100600ffff0028\n" | |
l2cap-ble line = data 100600ffff0028 | |
l2cap-ble handing request: 100600ffff0028 | |
l2cap-ble read by group: startHandle = 0x6, endHandle = 0xffff, uuid = 0x2800 | |
l2cap-ble response: 11140600100037333333333333333333333333333313 | |
l2cap-ble send: 11140600100037333333333333333333333333333313 | |
l2cap-ble buffer = "data 101100ffff0028\n" | |
l2cap-ble line = data 101100ffff0028 | |
l2cap-ble handing request: 101100ffff0028 | |
l2cap-ble read by group: startHandle = 0x11, endHandle = 0xffff, uuid = 0x2800 | |
l2cap-ble response: 011011000a | |
l2cap-ble send: 011011000a | |
l2cap-ble buffer = "data 08060010000328\n" | |
l2cap-ble line = data 08060010000328 | |
l2cap-ble handing request: 08060010000328 | |
l2cap-ble read by type: startHandle = 0x6, endHandle = 0x10, uuid = 0x2803 | |
l2cap-ble response: 091507000a0800010033333333333333333333333333130a000a0b00020033333333333333333333333333130d00180e0003003333333333333333333333333313 | |
l2cap-ble send: 091507000a0800010033333333333333333333333333130a000a0b00020033333333333333333333333333130d00180e0003003333333333333333333333333313 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment