Use the Bluetooth_Base_UUID as the base of 128 bit UUID

Hi Team

Customer want to use Bluetooth_Base_UUID (00000000-0000-1000-8000-00805F9B34FB) as 128 bit UUID base. They can use any other 128 bit UUID base but this one. When they set the base 128 bit UUID to Bluetooth_Base_UUID in their customized service, our softdevice treat it as 16 bit UUID. So do we have any method to use Bluetooth_Base_UUID as 128 bit UUID base? I can re-produce this issue in nRF5 SDK 17.1.0.

Regards

Victor

Parents
  • Hello Victor,

    The reason it behaves like it was a 16bit UUID is that this is the exact way that the 16 bit UUIDs are treated, and this is what the radio packets look like on the air. 

    I would not say that this is an issue. The customer is not allowed to use the Bluetooth_Base_UUID unless they have actually registered the 16bit UUID. So even if I don't know exactly what you mean by "our softdevice treat it as 16 bit UUID", it doesn't really matter. If they want to use a 128bit UUID, they should not use the same as the one that is used in the 16 bit UUIDs by Bluetooth.

    Best regards,

    Edvin

  • Hi Edvin

    I test it in nRF5 SDK example examples\ble_peripheral\ble_app_blinky.

    • I force the uuid_type to BLE_UUID_TYPE_VENDOR_BEGIN in ble_lbs_init as below.
    • when I use orignal LBS_UUID_BASE value. It can show the 128 bit UUID as below in nRF Connect APP

    • when I change LBS_UUID_BASE to Bluetooth_Base_UUID (00000000-0000-1000-8000-00805F9B34FB), it can only show the 16 bit UUID, even I have set the uuid_type to BLE_UUID_TYPE_VENDOR_BEGIN.

        

    • So do we have any method to make the lbs service show 128 bit uuid in nrf connect APP, which use Bluetooth_Base_UUID?
  • No. It is not possible. On air it actually uses the entire UUID, but it is the nRF Connect app that strips it down to 16bit. 

    I still don't understand what you are trying to do here. And to be clear, if the customer wants to use a 16bit UUID, they need to register it with Bluetooth SIG.

  • Hi Edvin

    • The customer previously designed a mobile app through a third party. This APP use 128 bit uuid, and the uuid base was set to base Bluetooth_Base_UUID. their orignal device can support it. When they change to our nRF52. They don't want to spend additional cost to re-design their APP. So they require us to support full 128 bit Bluetooth_Base_UUID in nRF52
    • I use the ellisys to capture the air packet. I change the uuid_type to BLE_UUID_TYPE_VENDOR_BEGIN in ble_lbs_init. The only different is one byte in LBS_UUID_BASE. when I change this byte to 0x01, it can send 128 bit uuid in air packets. When I change It to 0x10 as Bluetooth_Base_UUID, It use 16 bit uuid in  air packets.

    • So I guess that our SD has made special treatment for this Bluetooth_Base_UUID. Could you help to confirm it?

    16bit_uuid.btt

    128bit_uuid.btt

    Regard

    Victor

Reply
  • Hi Edvin

    • The customer previously designed a mobile app through a third party. This APP use 128 bit uuid, and the uuid base was set to base Bluetooth_Base_UUID. their orignal device can support it. When they change to our nRF52. They don't want to spend additional cost to re-design their APP. So they require us to support full 128 bit Bluetooth_Base_UUID in nRF52
    • I use the ellisys to capture the air packet. I change the uuid_type to BLE_UUID_TYPE_VENDOR_BEGIN in ble_lbs_init. The only different is one byte in LBS_UUID_BASE. when I change this byte to 0x01, it can send 128 bit uuid in air packets. When I change It to 0x10 as Bluetooth_Base_UUID, It use 16 bit uuid in  air packets.

    • So I guess that our SD has made special treatment for this Bluetooth_Base_UUID. Could you help to confirm it?

    16bit_uuid.btt

    128bit_uuid.btt

    Regard

    Victor

Children
Related