Just a quick update, but I just wanted to say that I have added full P-persistent CSMA to the KISS version of the MicroAPRS firmware, which means, that MicroAPRS will now adhere to the P and SlotTime parameters set by the controlling software. CSMA, or Carrier Sense Multiple Access, is a collision avoidance scheme used to minimise packet collisions on networks such as APRS. The functionality of CSMA is very simple, here's how it works:
- Assume that PĀ is a predeterminedĀ number between 0 and 255, and SlotTime is a number of milliseconds
- If there is another station transmitting, wait until the medium becomes idle
- When there is no other transmitting stations, a random number R between 0 and 255 is picked
- If R < P, the packet is transmitted. If R > P, the modem waits for SlotTime and goes to step 2
Implementing this simple technique, the amount of collisions can be reduced significantly.
P is a set of numbers between 0 and 255
R is a random number picked from that set
how R > P or R < P for god sake
how the hell you compare a number with a set
I can't find a damn resource for this p csma
I can understand your confusion, but you got some of the details wrong. P is a number that is chosen, and must be between 0 and 255. It’s not a set of numbers. That should make it a bit more clear.