Reduce read (characteristic) timeout for BLE

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?

回答 (1 件)

Rohit Pappu
Rohit Pappu 2021 年 2 月 9 日

0 投票

  • 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.

製品

リリース

R2020b

質問済み:

2021 年 2 月 5 日

回答済み:

2021 年 2 月 9 日

Community Treasure Hunt

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

Start Hunting!

Translated by