New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LBLECentral read/write characteristic occasionally fails #82
Comments
The symptom here is that This issue does not happen when there are only 16-bit UUIDs, e.g. the Example sketch. |
The root cause here is that However, the implementation of |
Fix #80 by handling CCCD for all characteristics Some BLE implementation requires the presence of CCCD(Client Characteristic Configuration Descriptor) to propery "subscribe" to notifications and indications. By default we allow notification/indication of all characteristics, so we add CCCD to all characteristics and corresponding read/write callbacks. Note that this increases the callback table usage, since 1 characteristics now requires 2 callback functions. Therefore, the number of statically allocated callback table is doubled from 30 to 60 entires. * Fix #82 by fixing UUID comparison between 16-bit and 128-bit UUIDs In some cases where both 16-bit UUID and 128-bit UUID characteristics present, the implementation of UUID comparison is incorrect. This leads to incorrect retrieval of the characteristic GATT database handles. Therefore the remote peripheral device won't be able to update the correct characteristics. * Re-format files * TxPower should be signed * Add LBLE keywords * Fix build warnings
In the following code snippet, the read operation succeeds, while the write operation fails - even the UUID attribute is indeed having a WRITABLE permission.
The text was updated successfully, but these errors were encountered: