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

Transmission of Multiple Packets (ESB)

The nRF52832 datasheet refers to a transmission of multiple packets in Figure 37. I have attempted to load multiple packets to the radio FIFO using nrf_esb_write_payload() and start the transaction, but it seems like the ramp-up is still occurring for the subsequent transmissions.

Can anyone provide an example?

  • I don't know how it works in newest SDK, but I have used micro-esb implementation available on github which i assume current implementation is based on. There was ramp-up after each transmission by default. What I did was manually editing the library, so there was no ramp-up (i got really nice almost 1.9mbps throughput then!).

    Check the library if it provides such an option - if not, editing the library should not be that hard, just change transition between states...

  • Hi

    Normally an ACK is expected after each transmitted packet, and the radio will disable after each transmission in order to turn on the RX (if needed).

    The micro_esb implementation on github had a legacy Shockburst mode that didn't support ACK, and I believe this mode allowed you to send packets back to pack without disabling the radio in between. Unfortunately this mode was removed when the library was put into the SDK, because we didn't have the resources to test this properly (the libraries on github don't require any formal testing).

    In other words, I would recommend trying the github library and configure it in SB (shockburst) mode.

    As a side note, keep in mind that you can also increase the payload size significantly, to reduce the impact of the startup time on the overall transfer speed. With a 255 byte payload the overhead is significantly lower compared to a 32 byte payload (which was the maximum in earlier Shockburst implementations).

    Best regards
    Torbjørn

  • I got my results using configuration that Torbjørn described here :). legacy shockburst, big payload. Also, nRF52 supports fast ramp-up if you need it.

Related