BLE Generic service name and UUID

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
SuMa_296631
Level 5
Level 5
50 replies posted 25 replies posted 10 replies posted

I'm wanting to create a BLE generic service (PSoC 6, latest version of the BLE component) but give it a meaningful name that will display on any client but I'm struggling to get this to work the way I want it to.

I've followed AN91162 as exactly as possible (given that it is for PSoC 4 and I'm using PSoC 6 dual CPU configuration - is there a better Application Note?) including using the UUIDs that are explicit mentioned *BUT* renaming the generic service to be "Solar Panel" instead of "RED LED". However using CySmart, the service still shows as "RED LED"!

Am I right in assuming that the UUID should really be called a "well known ID" in that, somewhere other than in my app, it is associated with the "RED LED" name? I did a text search of the project and I can't find "RED LED" anywhere so I suspect it comes from elsewhere.

Is there a list of these "well known" UUIDs?

What do I need to do to have the name I want associated with the generated UUID? (I feel I should use a generated UUID so that it does not conflict with any other products UUIDs.)

Susan

0 Likes
1 Solution
Yugandhar
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 5 likes given

Hello Susan,

1. The application note AN91162 is enough for getting started with creating a BLE Custom profile for both PSoC4 and PSoC6 BLE devices.

2. Cypress defines the UUID 0003CBBB-0000-1000-8000-00805F9B0131 for the RGB LED service. The CySmart app uses this UUID to display the RGB LED in the smartphone. Manufactures or application developers have their different custom services with different UUIDs and add the custom service information in their designed app so that they can be recognized in their App.

3. Are you using the Cysmart app or your own app for defining custom service? In order to define the custom service name, you have to define that custom service information in your own app.

4. Please refer to this link for list of BLE standard services.

Thanks,

P  Yugandhar.

View solution in original post

0 Likes
3 Replies
Yugandhar
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 5 likes given

Hello Susan,

1. The application note AN91162 is enough for getting started with creating a BLE Custom profile for both PSoC4 and PSoC6 BLE devices.

2. Cypress defines the UUID 0003CBBB-0000-1000-8000-00805F9B0131 for the RGB LED service. The CySmart app uses this UUID to display the RGB LED in the smartphone. Manufactures or application developers have their different custom services with different UUIDs and add the custom service information in their designed app so that they can be recognized in their App.

3. Are you using the Cysmart app or your own app for defining custom service? In order to define the custom service name, you have to define that custom service information in your own app.

4. Please refer to this link for list of BLE standard services.

Thanks,

P  Yugandhar.

0 Likes

Thank you for replying but I must disagree strongly with your first point.

The PSOC 4 seems to use macros and structures that begin CYBLE_  and functions that begin CyBle_.

On the other hand, PSoC 6 uses macros and structures with names that start cy_ble_ or cy_stc_ble_ and functions with names that begin Cy_BLE_ etc..

To make matters worse there does not seem to be any rational method of converting one naming convention to the other. For example I can't find the equivalent to  CYBLE_GATTS_HANDLE_VALUE_NTF_T (from AN91162 rev D, Appendix A, Page 41).

What I could find is the github code from the (ever valuable) Alan Hawse (from https://iotexpert.com/2017/11/09/lesson-5-psoc-6-introduction-bluetooth-low-energy/ ) which is equivalent code but uses a completely different method.

I really would like to see Cypress update the application notes with the PSoC 6 naming convention and update the code to the latest suggested ways.

Susan

0 Likes

Hello Susan,

Yes, for PSoC4 and PSoC6 BLE macros, structures, APIs will differ. Please refer to the PSoC6 BLE project "CE220167_BLE_UI" in the PSoC Creator code examples which has custom profile RGB LED and Capsense, also refer the project "CE220331_BLE_UI_RTOS" which has FreeRTOS.

Thanks,

P Yugandhar.