BLE Concepts | Cypress Semiconductor
I've been trying to wrap my head around how the different roles interact so here goes my interpretation. The GAP roles manage the connection. The central role typically manages connections to one to many peripheral roles.
The client role initiates data transfer from/to the servers. Typically, the client and server will be on different machines so a read or write of the data will result in a transfer over the radio with the application level protocol defined by GATT profiles. The servers store/retrieve data based on the Gatt profiles. The GUI implies that one physical machine can play the role of client and server. In this case, the transfer would not occur over the radio.
I kept looking for APIs that would transfer data over the physical connection. But it's the read/write by the client that causes the transfer - an abstraction that has not been clear to me.
Is this a reasonable interpretation?