Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

Interfering message frequencies

Avatar
Rank

Total Posts: 1

Joined 2008-12-12

PM

Hi all,

I`m working on a project with a nrf24ap1.
I`m using all 4 channels, 3 slave 1 master at different message frequency (8.00Hz, 4,00 Hz, ~4.05Hz(powersensor) , ~4.06Hz(heartrate)).

Because of the small differents between message frequencies, the incomming messages overlap at some point. This effect last about 4 seconds. During this periode the incomming message stop.

My problem is not so mutch that I`m missing data, but the time it takes to determine that a device is not sending any more instead of suffering from message overlap.

Is there way to fix or minimize this effect.
Or do I have to life with it and accept take it is a 'feature' of ANT+.

Thanks in advance.

Dries      
RankRank

Total Posts: 47

Joined 2010-07-08

PM

Hi Dries,

In a scenario such as yours that utilizes multiple channels with frequencies that can overlap, what is known as "channel collision" is a known and expected event.

At the physical layer, ANT only has a single radio. ANT channels are a higher layer construction that allows the physical layer to be shared by multiple, independent connections (4 channels for the AP1, 8 channels for the AP2). Channel collision does not occur at the physical / RF level, but rather happens within the ANT device, which must select one of the colliding channels that will get access to the radio during a collision event. You can minimize channel collision though careful selection of your message frequencies, but in your case you are using ANT+ profiles and cannot adjust these.

What I find strange is that you say this effect lasts for 4 seconds. This seems far too long. I don't know your exact configuration, but channel collision should be a momentary impact (one or two missed messages) and should not be enough to cause the channel to drop into search. Can you explain this "4 seconds" further, or possibly provide message logs and channel configuration details?

Also it should be pointed out that the AP1 is not ideal for handling multiple slave channels like you are attempting. I would strongly suggest that you consider using the newer AP2 chip / module in your application. There are several enhancements that directly address handling multiple channels that you could take advantage of. Some of these are:
- "EVENT_CHANNEL_COLLISION" message: the AP2 will send an event_channel_collision message when a channel collision occurs (AP1 does not send this message). You could explicitly listen for this message and take appropriate actions.
- Search priority - The AP1 only has a single search priority that will impact the other channels if one of your channels happens to go into search mode. The AP2 has a "low priority" search mode that is better suited for multiple channel use.
- Background scanning channel - could be used to continually search for devices in the background. The other good thing about background scan is that it can be used to search for multiple devices in the same RF space (same RF frequency and network key) using a single channel.      
Rank

Total Posts: 6

Joined 2010-10-26

PM

Please can you explain or provide some examples of what the appropriate action to take on an EVENT_CHANNEL_COLLISION can be. Can the channel be forced to drift?      
Avatar
RankRankRankRank

Total Posts: 662

Joined 2012-10-09

PM

Please refer to the AN15 Multi Channel Design Considerations application note for more information on channel collisions.
http://www.thisisant.com/pages/developer-zone/ant-application-notes

You cannot force the channels to drift. When receiving the EVENT_CHANNEL_COLLISION message your application would just need to be aware that it is missing data, and deal with it as with normal RF losses