Reduce read (characteristic) timeout for BLE

24 views (last 30 days)
Joris Lambrecht
Joris Lambrecht on 5 Feb 2021
Answered: Rohit Pappu on 9 Feb 2021
b = ble(...)
c = charachteristic(...)
read(c, 'oldest')
% read(c, 'latest')
If there is no data, read will wait for 10s and then issue error message:
Device has not sent new data. If device is disconnected, then clear existing ble object and recreate it.
Is there a way to reduce the timeout from 10s? The serialport object for example has a Timeout property.
Alternatively, is there a way to check if there is data available to read without actually calling read?

Answers (1)

Rohit Pappu
Rohit Pappu on 9 Feb 2021
  • As of the current release, the default timeout of read cannot be configured.
  • If a given characteristic supports 'Notify' attribute, subscribe method can be used to check if data is available. Documentation about it can be found here.




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!