Normally to recognize the custom services and characteristics, you can use the Characteristic User descriptor for that characteristic in a service. It exposes a human readable string to the connected device which can be used to recognize the characteristic. This can be added for any characteristic in the BLE component.
Do note that Services/Characteristics are modeled by the spec to be be recognized by UUID (either 16-bits, 32-bits or 128-bits). So the spec does not necessitates in adding a way for user to recognize these by strings. You have to either design the Client in such a way that it recognizes the Standard/Custom services/characteristics or use some method like what I mentioned above.
Thanks for your reply. Yes, I have used the Characteristic User Descriptor and characteristic name is shown correctly in the CySmart app. It's the service name that is shown as Unknown in that App. So can I assume that it is upto the client designer how he/she going to display service names? Right?
1 of 1 people found this helpful
As you would know, there are set of BLE defined services (and corresponding UUIDs) that the whole world knows. The list can be found at https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx . As all know these services, most of the manufacturers design the App to recognize the standard services.
But as Custom services are different deal, because all manufacturers or application developers have their own, they need to add the information in their designed app so that they can be recongized. Cypress does three custom services (Capsense, RGB LED control and OTA) and have defined then in the CySmart App.