Android connects to PSoC BLE4.2. Question about packet loss.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

We have an application to send a big chunk of data from peripheral to a station in real time via BLE 4.2. We have built a BLE 4.2 pair by Cypress PSoC4, runs fine at 4KB/s. To maximize the throughput, we send data via notification mode (send once ready). Though we have the mechanism to maintain data transmission reliability on APP layer, we notice there is no packet loss in this setup. Now we try to migrate the central to an android pad (with up to date chipset to support BLE 4.2). Then we have continuous packet loss happening. We try to debug and ask for help.

   

The time interval (7.5ms) and MTU (<512Byte) size are set to the same between Android and PSoC4. When the payload is set to 380 byte per packet, We see 60% packet loss rate while if we send more than 2 packets per second. Packet loss rate decrease after that. It seems can be loss-free if we send 1 packet per second in this condition.

   

Please give some guideline to debug the root cause.

   

Also we don`t see a lot of articles about the BLE setting on Android. Very appreciated if anyone can share his/her experience.

0 Likes
1 Reply
Anonymous
Not applicable

To clarify your question: You started with a PSoC transmitting to a PSoC with no data loss, then when switching to a PSoC transmitting to an Android Pad you started seeing 60% data loss for packet rates higher than 2 per second?

   

If that is the case, then it must be something related to how the Android device is handling the BLE radio, what the CPU is doing, etc.

0 Likes