You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
adapter.js adds vendor specific UUIDs to the SoftDevice on the BLE_GATTC_EVT_READ_RSP SoftDevice event.
The issue is that these UUIDs are not removed from the SoftDevice after use, making the SD run of of memory (NRF_ERROR_NO_MEM).
I think the following operations should remove the VS UUIDs automatically:
peripheral/central containing VS UUID disconnects
service change on VS UUID
VS UUIDs already registered with the device should not be added. But I'm not sure if the SoftDevice maps the UUIDs to handles (connection or GATT, ...)...
Here is the function that adds VS UUIDs to the SoftDevice:
One underlying issue is that pc-ble-driver-js uses an softdevice attribute discovery procedure that requires vendor specific UUIDs to be stored on the device. When performing attribute discovery on a device that uses many VS UUIDs, the reserved memory will quickly run out.
The best solution would probably be to use a different service discovery procedure, one that does not require storing VS UUIDs (i.e. using SD_BLE_GATTC_ATTR_INFO_DISCOVER procedure)
adapter.js adds vendor specific UUIDs to the SoftDevice on the BLE_GATTC_EVT_READ_RSP SoftDevice event.
The issue is that these UUIDs are not removed from the SoftDevice after use, making the SD run of of memory (NRF_ERROR_NO_MEM).
I think the following operations should remove the VS UUIDs automatically:
VS UUIDs already registered with the device should not be added. But I'm not sure if the SoftDevice maps the UUIDs to handles (connection or GATT, ...)...
Here is the function that adds VS UUIDs to the SoftDevice:
pc-ble-driver-js/api/adapter.js
Line 1366 in 02ecb0e
The text was updated successfully, but these errors were encountered: