What is the maximum number of simultaneous broadcasts supported by the Bluetooth module?

Using wireless sensors with nRF54L15, the sensors do not need to be connected, only broadcast a small amount of information. There will be 50-60 thousand nodes, and they are very dense. Will this cause channel congestion? Will the number of devices simultaneously in broadcast mode differ when using 1M PHY, 2M PHY, CODEC PHY? If it is not possible to support so many broadcasts at the same time, what solutions are available to solve this problem?

  • Hi,

    50 000 to 60 000 are large numbers. Assuming BLE advertising, there will be a broadcast on all three advertising channels, every advertising event. Most likely 2M packets is the best, since they will spend the least time to broadcast, but 2M also has the shortest range.

    For 1 Mbps, one advertising event lasts from 128 us (no payload) to 376 us (31 bytes payload) TX time on each advertising channel. For 2 Mbps the times are halved, and for Coded PHY the times are multiples longer (up to 8x). This leaves more than 2660 maximum size packets impossible on 1M; more than 5320 maximum size packets impossible on 2M.

    In practice actual maximum values are much lower, since advertisers are not synchronized. You will inevitably get packet collision. Amount of collision can be calculated using probability and statistics. Assume advertisers with the same interval but random timing offsets relative to each other. You must either accept packet loss, or resend the data in order to statistically increase the chance of reception to an acceptable level. This will add to congestion, however, so you will need to find a balance for your particular use case.

    If you have large amounts of data to send, then extended advertising might be an option. Then an initial advertising is broadcast on the normal advertising channels, but data channels are used for the rest of the transmission.

    In the end, the number of concurrent broadcasters depend on the throughput needs. With 50 000 to 60 000 devices I would expect each device to be able to broadcast maybe around one advertisement (with 31 bytes payload) per minute at a maximum, even using 2 Mbps. However please note that this number is only an assumption, and it heavily depends on e.g. tolerable packet loss.

    Regards,
    Terje

  • Thank you very much for your reply. In fact, my usage scenario allows for successful data transmission every 30 minutes, but I am concerned that with so many nodes, each broadcast attempt will result in collisions, causing all devices to fail to complete the broadcast.

Related