This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Advertisement packet loss in Coded PHY vs 1 Mb PHY

Using the following:

Rigado BMD-360 nRF52811 development board.

Softdevice S140 7.0.1

SDK 16.0

Using two development boards inches apart, one development board sends a single advertising event every 12 seconds.  The other development board is continuously scanning (interval and window = 7s).  The packets have 30 bytes of data including a sequence number.  I calculated packet loss based on the missing sequence numbers.

Sending and scanning using the 1 MB/s PHY, in a test of approx. 20 minutes  I get 100% reception of packets.

Sending and scanning using the Coded PHY, in the same test I get ~43% reception of packets, ~57% packet loss.

Is this expected behavior, or could I be configuring something wrong when advertising using Coded PHY?

Another behavior I've seen is for the above condition using the Coded PHY to have a repeating pattern of receiving 3 and missing 2.

  • Does this apply to both the custom board and the UBlox BMD-360? It might be that the buffer fills up before the SPI/UART is able to pass it on on longer scan intervals, or are you positive that the data is lost on air?

    Does this central application switch between scanning or advertising? If so, it might be that the longer scan intervals/windows are interfered by the device advertising (or trying to).

    Best regards,

    Simon

  • I haven't had a chance to test the longer interval on the dev board, but I did verify that it was being lost on air and not in the SPI.

    In this application the central only scans and for this testing was only scanning the coded PHY.

  • Could you provide any details as to how you confirmed the packets were lost on air? You could also try using SPI for transmission on the DK as well, just to make sure that it provides the same output as the UART.

    If it is indeed on the air I think I'll have to see your hardware files to make sure the antenna matching, etc. all look good. Please let me know if you'd like me to set this case to private before you share any files and I'll do so.

    Please note that we're entering the summer vacation period here in Norway, so delays must be expected as we are low on staff for the month of July. Sorry about the inconvenience!

    Best regards,

    Simon

  • Simon,

    To verify the packets were lost on air, I simultaneously debugged the BLE application through SWD printing what was received, and monitored the output from the host processor.  When the host processor showed a missing packet, the debugger output also showed a missing packet.

    Delays are not an issue at this point.  I don't see using a shorter scan interval as an issue, although I am curious as to why it would make a difference.

  • Hi Kurtis

    When you're increasing the scan interval and scan window, that also increases the time of how long you scan on each channel, so that might cause the packet loss you're seeing. See the picture below for reference (note that this is for "regular" BLE scanning, but it should be similar for Coded PHY as well AFAIK):

    The only other thing I can think of is that your custom HW's antenna layout isn't optimal, and that causes the radio to drift and lose more packets when it is scanning for a longer amount of time. 

    Best regards,

    Simon

Related