According to the GATT documentation the function GATT_DiscCharsByUUID is used to discover characteristic values depending on the given UUID's. However, in the original SimpleBLEcentral project it is done by a GATT_ReadUsingCharUUID call, and once a response received, the handle is stored.
Is there any difference between the two ways?
I am working on a project where 4 charvs should be discovered, however, at the first step an error is received which says "No attribute found within the given attribute handle range". I think the UUID and the GATT profile are correct, and trying to figure out the reason of the error.
This sub-procedure is used to read a Characteristic Value from a server when the client only knows the characteristic UUID and does not know the handle of the characteristic.
This sub-procedure is used by a client to discover service characteristics on a server when only the service handle ranges are known and the characteristic UUID is known.The specific service may exist multiple times on a server.The characteristic being discovered is identified by the characteristic UUID.
In a quick way, I use to match the word "read" to "handle" and the word "discover" to "char".
I hope it works for you :) Bye.
Please click the Verify Answer button on a post if it answers your question! :)
I've read the documentation, I just wanted to figure out, what's the reason of using GATT_ReadUsingCharUUID in the sample projects.
Because in a real implementation you wouldn't know the handles of the peripheral, I guess. This is just an example what to do, you can choose either way :)
OK, I see.
Since we don't know the handles of the peripheral in a real implementation, how can we use the function GATT_WriteCharValue( simpleBLEConnHandle, &reqw, simpleBLETaskId ); because we need to define the reqw.handle?
I'm trying to write data to multiple characteristics.
Thanks in advance for your help
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.