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

NRF51822 RSSI for CSMA/CA

Hello,

is it possible to use the RSSI value of the NRF51822 for collision avoidance? How long does an RSSI measurement take?

I'm trying to implement a discovery protocol based on ESB or Gazell:

  1. All nodes are in receive mode (PRX / Host)
  2. Node A starts discovery process (now PTX / Device), sends broadcast with discovery request datagramm on broadcast address
  3. Node B,C,D,.. receives datagramm (PRX / Host)
  4. Node B,C,D,.. switches to transfer mode (PTX / Device) und sends discovery response datagramm <- collisions

My idea at the moment for collision avoidance: Before sending, the transmitter should wait a random time, then checking RSSI, and if free, starts to transmit. This process should be repeated N times, to be sure Node A get the response of all nodes.

Because the nodes are unknown and anonymous, i don't know the addresses (and can't set them for example in gazell to use different rf frequencies).

Thanks!

Best regards, Kevin

Parents
  • One difficulty to implement CSMA/CA on radio is that we don't know if there is a collision when we are transmitting.

    The idea here is just simply use random delay for device B, C, D. We won't be guaranteed that A get response from all nodes. If you want you can implement a protocol that after A receive the response, it can send an ACK telling which device it already get the ping.

    You should use a common RF address for all packets. But add ID of each device in the payload of the packet.

    Also you should consider transmitting in different RF channels not just one, since relying on a single channel is risky. Each device should transmit several packets on each channel.

  • Simply listen to all signals on a RF channel will just bring you heaps of noise. The radio need to have an address that it would look for . I guess you can find equipment with capability of sniffing all packets over a (or multiple) channel, but it's not possible with our chip.

Reply Children
No Data
Related