ARMmbed / ble-nrf51822

Nordic stack and drivers for the mbed BLE_API
Other
46 stars 51 forks source link

service discovery should be able to match against long UUIDs #18

Closed rgrover closed 8 years ago

rgrover commented 9 years ago

Currently we've tested it only for short UUIDs. When a long UUID is discovered, it needs to be added to the Nordic stack.

rainierwolfcastle commented 9 years ago

ARM Internal Ref: IOTSFW-1029

ghost commented 8 years ago

added to the nordic stack where?

rgrover commented 8 years ago

The nordic stack likes to deal with UUIDs using a short internal representation. https://github.com/ARMmbed/ble-nrf51822/blob/master/source/btle/custom/custom_helper.cpp#L82 When a long UUID is discovered during service discovery, it is represented as an invalid type (or a user-defined type; I forget which). The long UUID needs to be fetched explicitly and added to the ble stack before it can be represented again using the short form. https://github.com/ARMmbed/ble-nrf51822/blob/master/source/btle/custom/custom_helper.cpp#L82

pan- commented 8 years ago

This is fixed with latest versions of nrf51822. It even discover 128 bits UUID descriptors.