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

High PER at 2Mbps

Hi,

Scenario:

Two nRF52832DK boards on a table, approx 20 cm from each other, +4dBm output power.

Payload length is ~60bytes.

Running at 1Mbps gives me less than 0.1% PER, running at 2Mbps gives about 25% PER. (everything else kept identical)

Is this expected, or is there something at play here?

Parents Reply Children
  • BLE is FSK so IMD in the receiver shouldn't be an issue. What software are you using to measure PER?

    Also is highly dependent on how you load the channel, hence the software question. The raw rate is 2Mbps but does not include all the BLE overhead. So actual rate is less. If you just try to shove 2Mbps through the pipe you will always see a high packet loss due to the overhead.

  • Expected throughput is irrelevant in this topic... This has simply nothing to do with throughput at all actually...

    I donated know what's confusing with the question... And where did BLE overhead come in to the question?

    Let me clarify the question again so that we please could leave throughput and BLE overhead out of it since it's irrelevant... I'm not even using the soft device... And throughput and packet error rate is two completely different things, even though PER can influence the throughput...

    1. Prerequisite: no (or at least extremely low levels (approx -100 dBm noise floor)) external RF, no WiFi, no nothing (I live in the middle of nowhere).
    2. Node A is set up in nRF proprietary mode to listen on a channel, lets call it F.
    3. Node A is set up to restart RX again immediately after a received packet.
    4. Node B is set up in nRF proprietary mode with the same channel, F.
    5. Node B is set up to transmit a packet (approx 60 bytes of payload) every 100ms.
    6. Node A increases a reception pointer for each received packet.
    7. After 1000 transmitted packets (so after 100 seconds) node B stops transmitting
    8. 150 seconds (to have some margin) after the first received packet Node A will print its received packet counter

    If using 1Mbps the counter is always in the range 999-1000, if using 2Mbps it's always in the range 700-800. This is regardless of what channel F I'm running on.

  • Sorry I referenced throughput. Most people test PER in respect to throughput. This is a requirement during ETSI testing and often is brought up in this forum.

    What you are describing then is really lost packets and not PER since you are counting the number of received packets and not a ratio of CRC good vs. CRC bad packets. With your test setup it would be impossible to tell the difference between packet not sent, packet sent but not received (ie, lost) and packet received but bad and CRC error. You should improve the robustness of your test method by including counters on both ends and not just assuming the timing works out. Also on the receiver you should catalog CRC good vs. CRC bad events.

    Another thought is in the mode you are testing you can do BLE2Mbps and Nordic Proprietary 2Mbps. The options show up in the enumerations for the mode register. There are minor differences in the gaussian indices for the GFSK and I believe that is it. It would be interesting if there was a difference.

    Finally, even though you are convinced it is RF quiet in your local you should try outside of the ISM band just to be sure. The nRF52 operates from 2360 to 2500 MHz.

    There are a lot of discussions on PER testing on this blog. Here are some good links: devzone.nordicsemi.com/.../ And a link to DTM PER testing: infocenter.nordicsemi.com/index.jsp

    Please post back your final conclusion on the issue. It would be interesting to know what caused the problem.

Related