-
Notifications
You must be signed in to change notification settings - Fork 404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve latency performance with better retransmittion mechanism #1925
Comments
The connection event is terminated if one packet is lost or two consecutive packets are received with an invalid CRC (vol 6, part B, 4.5.6). We cannot reply to a packet that we did not receive. |
We do accept single CRC error in a connection event: mynewt-nimble/nimble/controller/src/ble_ll_conn.c Line 3735 in 284b784
Not sure which line in the code you point to since I don't know the exact revision of mynewt-nimble repo you use. |
The Line 3735 is correct. But the the question is in the
|
Ok, now it's clear. This should fix the issue: #1926 |
Hi!
I think there is a possible method to improve the uploading (Peripheral to Central) transmission latency.
BLE specification set if there are two continue packet loss then the connection event should be terminated.
However, consider that while the Peripheral sending multiple PDUs to the Central while the Central has no data to transit.
If one packet (expect the last one) is lost, the Central will not reply an empty PDU and terminate the connection event. (
Line 3741 in ble_ll_conn.c
), which can cause a larger transmission latency.So, I think this can be easily improved. Specifically, the Central can still transmit an empty PDU to ask the Peripheral to immediately retransmit the packet.
The text was updated successfully, but these errors were encountered: