Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

You are here: Forum Home → ANT+ Forums → ANT+ Bike Power → Thread

   

Accumulated values on coasting codition

Rank

Total Posts: 4

Joined 0

PM

Hello,

I have a couple of questions related to the accumulated values for the standard crank torque bike profile.

1) Should the accumulated values on a coasting or 0 cadence event be reset to 0, or should the values be maintained and allowed to roll over without intervention?

2) When the accumulated values roll over, should the accumulated value be set to 0 or the difference between the previous and current value? I.E.

if(65535 - accumulatedValue < currentValue){
val = currentValue - (65535 - accumulatedValue );
} else {
val = accumulatedValue + currentValue;
}

3) Finally, I am unsure which is the best method to indicate a coasting or 0 cadence event. The bike power profile document states that the display will interpret repeat messages as a coasting or 0 cadence event and will display zero, but it also states that the power meter should indicated when a coasting or 0 cadence event occurs. I have been using the former and this seems to work, but was looking for an absolute answer.

---

We are getting random wattage spikes out in the field and are trying to determine the root cause. They are occurring after a zero or coasting event (see attachment). Unfortunately I'm not able to reproduce in the lab and unable to record the actual ANT+ data packets coming from the device.

Related to this post : Wattage Spike

Any support would be great. Thanks,      
Avatar
RankRankRankRank

Total Posts: 745

Joined 2012-09-14

PM

Hi,

1) Accumulated values should only every move upward gradually and should never "reset" so yes the values should be maintained and allowed to roll without intervention.

2) The new value should be simply the difference between the old and new values less the rollover point. For example, if the rollover value is one byte (255), our previous value is 250 and we're adding 9 to it, then the new value will be 4. In C this is relatively easy to do as you may assign variables as "unsigned" bytes, shorts, etc.

3) This is a difference between event based and time based power meters. Time based power meters will update the event count at a regular interval, even if the crank is not moving. Display devices may then simply run their regular power calculation with every message. However, if it's an event based power meter, the event count will stop and the data should also stop updating. At this point, if the display doesn't see the data update for a few seconds, then it is safe to assume the cyclist has stopped pedalling at that point and the diplay may show 0.

It is also possible that wattage spikes may occur by RF dropouts. If the RF channel is lost for too long, the accumulator can no longer account for missing data packets and it will be the responsibility of the display to account for this.

Cheers