Hello everyone, i have a task where i need to transfer 50-100kB of data from ble peripheral to a central device. I have read many posts here and i have a pretty good idea how to do it using notifications (there is plenty of information on the forum here). But there are a few things which are not really clear to me, so i want to ask few questions:
- Do i have to add a cccd attribute to
a characteristic in orded to be able
to turn on notifications for that
characteristic? To be more specific, can i use
sd_ble_gatts_hvx(p_gld->conn_handle, &hvx_params);
even if i haven't
configured my characteristic to have cccd attribute? Or that will not
work? - After i enable notifications and receive all the data with the central device, how to force ble_peripheral to stop sending notifications? I have read somewhere, that only central device can enable/disable notifications on the peripheral side (i don't know how to do this in case central is Android device). Is this true? Can't the peripheral disable notifications by itself after sending all the data?
- I didn't exactly find anywhere, after writing descriptor to the peripheral so notifications are enabled, do we get any callback or something which would signal that notifications are enabled and the device will start to send out the data?