Specifying 128-bit UUIDs for Custom Service and Characteristics ESP32C6

taimoor.naveed
Posts: 1
Joined: Wed Sep 25, 2024 11:13 am

Specifying 128-bit UUIDs for Custom Service and Characteristics ESP32C6

Postby taimoor.naveed » Wed Sep 25, 2024 11:40 am

We are encountering an issue when trying to specify 128-bit UUIDs for custom BLE services using the ESP32C6 with AT firmware version 4.0.0.0. Despite following the same approach we’ve successfully implemented on the ESP32C3, the desired services are not discovered correctly on the ESP32C6.

Here is the content of our gatts_data.csv file:
  1. # index,uuid_len,uuid,perm,max_len,cur_len,value
  2. 0,16,0x2800,0x01,16,16,6E400001B5A3F393E0A9E50E24DCCA9E
  3. 1,16,0x2803,0x01,1,1,04
  4. 2,128,0x6E400002B5A3F393E0A9E50E24DCCA9E,0x10,512,1,00
  5. 3,16,0x2803,0x01,1,1,10
  6. 4,128,0x6E400003B5A3F393E0A9E50E24DCCA9E,0x01,512,1,00
  7. 5,16,0x2902,0x11,2,2,0000
When using this configuration on the ESP32C6, the services discovered on a mobile device differ from our expectations. Below is a screenshot showing the results:
gatt_c6.jpeg
gatt_c6.jpeg (59.45 KiB) Viewed 424 times
The same configuration, however, works perfectly on the ESP32C3 with AT firmware version 3.3.0.0, as shown in the following screenshot:
gatt_c3.jpeg
gatt_c3.jpeg (71.66 KiB) Viewed 424 times
From the screenshots, we can see that the issue is related to the 128-bit UUIDs, as only the last 16 bits of the UUIDs are being recognized on ESP32C6

There hasn’t been any change in the official documentation for customizing BLE services between the ESP32C3 and ESP32C6, so we are uncertain why this difference in behavior occurs.

Who is online

Users browsing this forum: No registered users and 18 guests