throughput issues with a simple notification on MAC/Iphone

Hi

I have a simple application which is comprised of a notification from peripheral to central , and a write without reponse from Central to peripheral.

In windows every thing works fine. But on MAC the throughput is much lower. I switched the PHY on MAC to 2M PHY. It gave me just a slight improvement.

At the moment I have no means to measure the throuput. I just see that when I connect to MAC, on the NRF52833 the FIFO gets filled and I have to drop new packets, as they are not sent our quick enough.

Could some one have a look at my traces from windows and mac? is it easy to see what is going wrong on mac?

Below a wiresharc trace of mac versus windows.

8357.windows.pcapng2475.mac.pcapng

Parents
  • Hi,

    From the sniffer captures it appears that the transfer rate is pretty high in both cases, but it is difficult to see the exact transfer speed in wireshark. Please try the project below and see if you get similar results. This sample uses a timer instance to monitor the throughput locally. To test it, just connect to it with a central device, enable notifications, then press button 1 on the board to start the test.

    The throughput will vary between different centrals. I haven't tested throughut with macOS, but I've seen that iOS caps the data rate by limiting the connection event lengths.

    throughput_test.zip

    Best regards,

    Vidar

  • Hi

    I got your example running. I get a throughput of about 600 kbps, which is similar to what I see in your screenshot above.

    I ported your prj.conf settings to my project and there I have a proper bandwidth as well.

    But: Since my device and the Phone are close close to each other I would have expected to see some thing close to 700 kbps(1M phy) or 1.4 mbps (2M phy).

    Any exaplanation?

Reply
  • Hi

    I got your example running. I get a throughput of about 600 kbps, which is similar to what I see in your screenshot above.

    I ported your prj.conf settings to my project and there I have a proper bandwidth as well.

    But: Since my device and the Phone are close close to each other I would have expected to see some thing close to 700 kbps(1M phy) or 1.4 mbps (2M phy).

    Any exaplanation?

Children
Related