Retry mechanism on some BLE stack errors
See original GitHub issueSummary
This is a proposed enhancement for discussion.
Today, RxAndroidBle does not support retry mechanism, meaning it has to be handled by upper layer from the application.
An interesting enhancement would be to expose an interface that could be implemented by upper layer if some retry should be applied on conditions.
This could be applied mostly for write operations, and especially long write.
Example: It could be possible that on some tiny embedded devices, that incoming messages are not handled as fast as it is sent by the smartphone. Embedded device will then respond with a GATT_INSUF_RESOURCE 0x11
and instead of just failing the all payload, a simple retry would be good enough to have it working.
Library version
1.4.3
Actual result
Today, the request is canceled, and for a long write, you will have to retry and mostly facing the same issue next time. Thus, the payload can’t be sent.
Expected result
Upper layer implement a retry interface, and check if for example, BLE stack error code is worth a retry.
Issue Analytics
- State:
- Created 6 years ago
- Comments:9 (6 by maintainers)
Top GitHub Comments
I suppose tomorrow 😃 We’re getting close to a release od RxJava2. FYI, we have gitter for chats 😃 https://gitter.im/RxBLELibraries/RxAndroidBle
It took some time but we have finally merged #357 — should be available in
1.5.0-SNAPSHOT
already and in1.5.0
in the upcoming days. 🎉 Thank you for your effort 👍