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

Co-channel collision

Hello,

I am designing a custom protocol using the radio as a peripheral. The protocol has the chance for two nodes to transmit at the same time on the same channel. My understanding is that if one is much quieter than the other (e.g. because it is further away or using lower transmit power) then the louder packet will be received if the transmissions occur at exactly the same time.

But what if the first node starts transmitting a packet a little before the second node, but the second node is louder (closer/more transmit power)? Would the second packet be received, or the first? I know if the first packet is received then it is likely with errors because of the second packet being transmitted more loudly etc. My question is, is it likely for the second packet to be received without errors if the address of the first packet has not yet been matched.

I imagine that it will depend on whether the address completed being matched from the first transmission. If the first transmission's address is matched then the second packet will be seen as part of the first and the CRC will likely have errors.

If the first packet's address is not yet matched when the second packet starts arriving, then could the second packet's address be matched? Is there something to prevent the radio from immediately picking up a preamble and address out of what would otherwise look like noise?

Also, how long does the radio transmit "1's" before starting to transmit the preamble in a transmission? I suppose all those 1's from the second node would stomp all over the first packet.

  • Hi,

    These questions are somewhat hard to answer without knowledge about what your protocol is designed to do.

    Essentially the unwanted transmitter on the same channel will increase the noise level significantly, you normally guard against this behaviour by only reusing frequencies after a certain number of cells. This is commonly illustrated by the figure below (this is extremely common in cellular networks).

    image description

    The radio uses the preamble to lock the receiver on the signal and starts comparing bits at the end of the preamble. It's pretty much the same as what's known as synch words.

    This preamble is always one byte long, 8 bits.

    Best regards,

    Øyvind

Related