This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

BLE high bandwidth bulk transfer from Client to Server

I am developing an application that will transmit a lot (say 100kB) of data from client (scanner) to server (advertiser). 

Using cccd, notification, and hvx works well for large data transfer from server to client, as illustrated in the ble_app_att_mtu_throughput example. However, that's the opposite direction from what I would like to do. 

What would be advised for bulk transfer from client to server?

Parents
  • In BLE the role of Client and Server are separate from the roles of Scanner/Master and Advertiser/Peripheral, in other words, a Peripheral can just as well be a client. See this where it is explained as well. So the mechanism used by the Peripheral to notify its Client in the example you mention can just as well be used by the Master. This means that the Peripheral discovers the service and relevant characteristic at the Master and registers for the notification.

Reply
  • In BLE the role of Client and Server are separate from the roles of Scanner/Master and Advertiser/Peripheral, in other words, a Peripheral can just as well be a client. See this where it is explained as well. So the mechanism used by the Peripheral to notify its Client in the example you mention can just as well be used by the Master. This means that the Peripheral discovers the service and relevant characteristic at the Master and registers for the notification.

Children
Related