Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

Console & power crank issue

Rank

Total Posts: 2

Joined 2023-01-04

PM

We are using Hardware: Nordic 52832 、 SodtDevice: ANT_s332_nrf52_7.0.1.hex

Our question now is: when I open a channel (ant_bpwr) receiving function, it will occassionlly not receive the data around 20 minutes.
For example: 10 channels, turn on ant_bpwr , ant_hrm receiving function, it isn't easily receive the data and it's not receiving data for avg. 5 minutes per one time, the longest time for this situation is for 17 seconds.

We do receive others suggestion feedback which is we can use Dithering, Channel period, but we still have some questions of them.
1. How do we integrate the Dithering? Can you provide some example codes?
2. How do the integrate the channel period adjustment method? Can you provide some example codes?

Thank you and sincerely.      
RankRankRankRank

Total Posts: 370

Joined 2012-06-27

PM

There are typically two causes of missing data:
1. When you have sensors of different types in the same area: These will interfere for short amounts of time as the channel period differences cause the sensor transmission timings to slide across each other.
2. When you have many sensors of the same type in the same area: These will interfere for long amounts of time as the sensor transmission timings slide across each other at a slow rate as the result of clock errors between the different sensors.

Can you clarify the situation a bit more:
- "10 channels" and " turn on ant_bpwr , ant_hrm receiving function": Are you saying you have 5 bike power channels open and 5 HRM channels open?
- "it's not receiving data for avg. 5 minutes per one time, the longest time for this situation is for 17 seconds.": Can you explain this a bit more? If the longest is 17 seconds without data, then I don't understand how the average could be 5 minutes. Depending on how the data outage is described this could be different issues.17 second outages would be more likely to be explained by cause 1 and 5 minute outages by cause 2.
- Are you seeing EVENT_CHANNEL_COLLISION events (refer to ANT Message Protocol and Usage document)?

Refer to https://www.thisisant.com/resources/frequency-diversity-in-ant-rev1.0/ for more info about the second case. Dithering is described there. Note however that this problem cannot be solved by a display alone. The sensors must support the strategies documented. The solution described is intended for highly crowded spaces such as a gym where receivers are usually able to support asynchronous channels through the use of continuous scan channels. Sections 6.2 and 6.3 are strategies which could be implemented by sensors implementing just a single channel for the profile (referred to in the document as a base channel) and not implementing the frequency diversity pages and multiple channel support.      

Signature

Ian Haigh

RankRankRankRank

Total Posts: 370

Joined 2012-06-27

PM

Additional clarification: "The sensors must support the strategies documented." A display cannot implement dithering, the sensor must implement it.      

Signature

Ian Haigh

Rank

Total Posts: 2

Joined 2023-01-04

PM

Hello,

I think that I write down specific question for you, please check out the following describtion and the attachment file.

1、 Some information of engineering process:
a. We are using the module with the nRF52832 chip, the SDK package is :nRF5_SDK_15.3.0
b. Softdevice Dive: ANT_s332_nrf52832_6.1.1.hex
c. Reference file:examples\ant\ant_multi_channels\rx\pca10040\s212\arm5_no_packs和
\examples\ant\ant_plus\ant_bpwr\bpwr_rx\pca10040\s212\arm5_no_packs

2、The current problem is:(Receiving is :Console, Transferring is:ANT Power crank)
When ANT open one channel ant_bpwr receiving function, sometimes causes randomly not receiving data in a 20 minutes workout. When we open the multiple channels, for example, 10 channels, open ant_bpwr receiving function, it is easier to not receiving data, average for 5 minutes drop out for once, the longest for not getting data is 17 seconds, and the minimum is 2~3 seconds. What is the reason for causing so easily not receiving data?


Below picture is our initially engineering parameters:(Reference file are:examples\ant\ant_multi_channels\rx\pca10040\s212\arm5_no_packs\
&
examples\ant\ant_plus\ant_bpwr\bpwr_rx\pca10040\s212\arm5_no_packs



**我們用正確的方式了**We are using the correct method.
**建議不要用這個方式**The recommendation for us is not using this method. 

Event report processing:





a. When the issue is happened, we start to deal with and find some explaining documents on ANT website. About some Dithering, Channel period message, can you please guide me if my direction is right?

If it’s right direction, I would like to ask two questions:
1. How to integrate the Dithering? Can we have some sample code for reference?

2. How to integrate or adjust the channel period? Can we have some sample code for reference?



b. Then we found some ANT document, the content file describes: when the process of the ANT communicate, the data drop out too much then will dynamically adjust the fail,.
IS it a specific method in ANT protocol? Which side should do this method? Is it ANT protocol or the API usage?

The attachment is what we print the log, please check for us:

**事件觸發後,410797-402821=9976ms=10s才能收到數據? 信號是一直有發的
**The event 410797-402821=9976ms=10s, then the console can receive the data, but the signal seems it always been sent.
     

File Attachments

RankRankRankRank

Total Posts: 370

Joined 2012-06-27

PM

To your 2, please see my prior post

Can you clarify the situation a bit more:
- "10 channels" and " turn on ant_bpwr , ant_hrm receiving function": Are you saying you have 5 bike power channels open and 5 HRM channels open?
- "it's not receiving data for avg. 5 minutes per one time, the longest time for this situation is for 17 seconds.": Can you explain this a bit more? If the longest is 17 seconds without data, then I don't understand how the average could be 5 minutes. Depending on how the data outage is described this could be different issues.17 second outages would be more likely to be explained by cause 1 and 5 minute outages by cause 2.
- Are you seeing EVENT_CHANNEL_COLLISION events (refer to ANT Message Protocol and Usage document)?



How to integrate the Dithering? Can we have some sample code for reference?

Dithering is a solution, described in the document I referred to (https://www.thisisant.com/resources/frequency-diversity-in-ant-rev1.0/), for the problem I describe as #2 ("When you have many sensors of the same type in the same area"). It is unclear if your problem is #1 or #2 based on your description (please see my questions prior and repeated above in this message). Dithering is not a solution you can implement as a display (ANT slave). The sensor (ANT master) must implement it. They may do so for a single channel implementation without any interaction from your display, or allow you to request to open extra channels through the design documented by https://www.thisisant.com/resources/frequency-diversity-in-ant-rev1.0/ You w.ould need to coordinate with the sensor manufacturer to understand if they are doing either. As an ANT+ sensor they are not required to and we are not managing any list of devices that do. There is no sample code available.

How to integrate or adjust the channel period? Can we have some sample code for reference?

Any changes to channel period which are not dithering would make a sensor not ANT+ compliant unless they are done on alternate channels as defined by https://www.thisisant.com/resources/frequency-diversity-in-ant-rev1.0 If th.e display changes its channel period from the ANT+ profile spec (regardless of dithering by the sensor), other than on an alternate channel as defined by https://www.thisisant.com/resources/frequency-diversity-in-ant-rev1.0 then ,it is not ANT+ compliant and will not connect to ANT+ sensors.

Then we found some ANT document, the content file describes: when the process of the ANT communicate, the data drop out too much then will dynamically adjust the fail,.
IS it a specific method in ANT protocol? Which side should do this method? Is it ANT protocol or the API usage?

This is built into the ANT chip. Nothing for you to do.      

Signature

Ian Haigh