Comment by eternityforest
8 days ago
You need to track individual subscribers at that point, which uses lots of ram and could use lots of airtime, heuristics like resending until you get 1 reply like Meshtastic don't work well.
If there's receive window timing issues you can't assume two nodes right next two each other will get the same subset of packets most of the time.
My solution is just to resend every message four times, and not bother with protocol layer reliability for BLE at all, the packet rate is low and all the acknowledgements use airtime anyway.
There are scalable reliable multicast protocol designs that don't require publishers to track subscriber lists, but you're right that the approach I suggested above would require that.