Closed ghost closed 7 years ago
Testing parsing of advertisement data by comparing results on iOS and Android. On iOS advertisement data are parsed by native iOS functions, on Android by JavaScript code in EasyBLE and in the extended BLE plugin API. Two independent BLE scanning apps were also used to verify advertisement data (LightBlue and TI SensorTag app).
As BLE device the TI SensorTag CC2650 was used.
On iOS advertisement data looks like this:
{"kCBAdvDataLocalName":"CC2650 SensorTag",
"kCBAdvDataServiceUUIDs":["0000aa10-0000-1000-8000-00805f9b34fb"],
"kCBAdvDataTxPowerLevel":0,
"kCBAdvDataIsConnectable":true}
And on Android:
{"kCBAdvDataLocalName":"CC2650 SensorTag",
"kCBAdvDataTxPowerLevel":0,
"kCBAdvDataServiceUUIDs":["0000aa10-0000-1000-8000-00805f9b34fb"]}
The advertised service UUIDs are the same on iOS and Android.
Is is possible to get the bleno code to do futher testing?
The line "string += evothings.util.toHexString(array[offset-k], 1);" is "offset+k" in easyble.js and not "offset-k". But I don't see how this would explain the reversed order of the UUID.
Status is that I have not been able to reproduce the problem. Let me know if this problem persists. Will leave the issue open for some time, then close if inactive.
Closing this issue, let me know if there are any problems and I will reopen.
It has been reported that service UUIDs in the advertisement data record are not parsed correctly. This applies to EasyBLE and to the extended BLE plugin API in this pull request: https://github.com/evothings/cordova-ble/pull/118