Summary
BLE MIDI transport frequently loses packets during multi-chunk Property Exchange (PE) transactions (e.g., ResourceList). A ~90% failure rate has been observed on iPad (iOS 18).
Details
- Physical MTU limits and lack of guaranteed delivery in BLE MIDI cause chunk loss.
- Discovery and single-chunk messages usually work, but multi-chunk ResourceList fails frequently.
- is a partial workaround but doesn't solve the packet loss.
Recommended Fix
- Implement a more robust chunk recovery mechanism.
- Add support for partial response caching and targeted re-request of missing chunks if possible.
- Improve error reporting specifically for BLE packet loss scenarios.
Ref: Section 4.2.