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

Channel Collision

We are planning to use a synchronous independent channel, that senses whether there are any slaves or not using acknowledged data type.

More than one slave could have paired with the master since before and there may be a risk that they are trying to connect to the same channel at the same time. How can this be avoided? I can't see that the open or assign calls to the SD would give any errors if someone is already using the channel when trying to open it.

Regards, Peter

Parents
  • If I understand your setup correctly, you are planning to setup one master, and this master will use acknowledged data type to verify that there is a slave actually receiving the data. As you write, a potential problem can be that multiple slaves will acknowledge this packet, this can cause an collision on air, possible corrupting the acknowledge data packet to be received by the master.

    One way to avoid collision is to use the bidirectional data feature of the ANT channel, so the master will not use acknowledge data type, but instead a slave will periodically send a broadcast data type on the reverse channel to inform it's "alive". This broadcast data from the slave can be sent either at random intervals, or have some message in the broadcast packet from the master, that the application on the slave will interpret to transmit broadcast data.

    Hope that was of help, Kenneth

Reply
  • If I understand your setup correctly, you are planning to setup one master, and this master will use acknowledged data type to verify that there is a slave actually receiving the data. As you write, a potential problem can be that multiple slaves will acknowledge this packet, this can cause an collision on air, possible corrupting the acknowledge data packet to be received by the master.

    One way to avoid collision is to use the bidirectional data feature of the ANT channel, so the master will not use acknowledge data type, but instead a slave will periodically send a broadcast data type on the reverse channel to inform it's "alive". This broadcast data from the slave can be sent either at random intervals, or have some message in the broadcast packet from the master, that the application on the slave will interpret to transmit broadcast data.

    Hope that was of help, Kenneth

Children
No Data
Related