Hello,
I would like to test the absolute maximum data transaction speeds over Bluetooth.
To do this I want the chip to immediately send out data that it receives.
它可以生成中断吗s when the chip receives data over Bluetooth. If so, within the interrupt I would like to copy the data from the received buffer directly into the transmit buffer and then notify the client that data is ready. How could I go about implementing this?
Also, on a slightly different note, can using the notifications feature slow down data transaction rates? I currently have a server that notifies the client whenever data is ready and a client that waits to be notified. Could I get better data transmission rates if I synchronized the client and server and didn't use notifications.
Thank you,
-jamartin
Hi jamartin,
You wont be able to create a loopback if that is what you want, the way that the 580 works will allow you to send the data back after at least one connection interval but that depends on the connection interval that you have. Also to check if i got this straight, you would like to override the BLE stack (all the protocol layers GAP, GATT, L2CAP etc in the ROM code) and target only the payload of each packet on the rx buffers and copy it straight to tx buffer whenever you get a BLE Rx interrupt ?
I dont get the second question what kind of syncronization you mean, the only way for the server to send data is through notifications or indications (indications are slower since the
peripheral has to wait in order for the central to send the confirmation that he received that data). As far as i can undertand in your project you notify the client that data is ready so
that the client can start reading data, i dont see why you have to notify the client that data is ready from the server side, the server can send the data to the central directly whenever the data
are ready via notifications, you are losing connection intervals by using this kind of scheme.
Thanks MT_dialog