Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

3-15 second intervals between receiving data from GC10 SPD/CAD sensor

Rank

Total Posts: 2

Joined 0

PM

I'm configuring my USB2 stick with the parameters specified in the Device Profile document for a combo speed/cadence device. I'm using a standard Garmin GC-10 as the sending unit. I then open a channel and am expecting 4.05 messages per second of data, but only receive a packets sporadically. Here is my log, along with a time for each broadcast event received:

ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[9e],[05],[dd],[c6]
ANT : 7.3sec passed RPM: 65.5 MPH: 5.27
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[2a],[35],[ef],[c6]
ANT : 12.2sec passed RPM: 88.7 MPH: 7.13
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[75],[42],[f6],[c6]
ANT : 3.4sec passed RPM: 123.4 MPH: 9.92
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[c4],[4e],[fc],[c6]
ANT : 3.2sec passed RPM: 114.2 MPH: 9.18
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[17],[5c],[02],[c7]
ANT : 3.4sec passed RPM: 105.5 MPH: 8.48
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[f3],[77],[0d],[c7]
ANT : 7.1sec passed RPM: 92.5 MPH: 7.44
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[af],[89],[13],[c7]
ANT : 4.5sec passed RPM: 79.3 MPH: 6.37
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH
ANT : Chan: 3 0x0000009a EVENT_RX_BROADCAST
ANT : [03],[62],[5f],[73],[e3],[96],[17],[c7]
ANT : 3.4sec passed RPM: 71.0 MPH: 5.70
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000002 EVENT_RX_FAIL
ANT : Chan: 3 0x00000008 EVENT_RX_FAIL_GO_TO_SEARCH


As you can see, sometimes I get a message every 3 seconds, sometimes its 7, sometimes 12. It's very random. The bike wheel is spinning this whole time, and the data I do receive is correct. I'd like to receive valid data as often as the GC10 sends it, which I have to believe is more often than this.

Is this expected behavior? I expected to see valid data much more often than this. No other messages are received in my callback other than those posted.

Init code looks like this (not necessarily in this order):
ANT_SetChannelId(SPEEDCADENCE_CHANNEL, myDeviceID, SPEEDCADENCE_DEVICETYPE, 0);
...
ANT_SetChannelRFFreq(SPEEDCADENCE_CHANNEL, 57);
...
ANT_SetChannelPeriod(SPEEDCADENCE_CHANNEL, 8086);
...
ANT_AssignChannel(SPEEDCADENCE_CHANNEL, 0, 0);
...
ANT_SetChannelSearchTimeout(SPEEDCADENCE_CHANNEL, 255);
...
ANT_OpenChannel(SPEEDCADENCE_CHANNEL);      
RankRankRankRank

Total Posts: 116

Joined 2008-11-21

PM

can you please tell me the value of SPEEDCADENCE_DEVICETYPE?      
RankRankRankRank

Total Posts: 116

Joined 2008-11-21

PM

we also recommend you test your code against the ANT+ simulator before try to get it to work with products.

the ANT+ simulator can be downloaded from the ANT+ Adopter Zone, you can also download the ANT+ simulator source code and use this as a reference.      
Rank

Total Posts: 2

Joined 0

PM

The device type is 121.

Is it correct to assume I should get datapackets at ~4hz, or is it perfectly valid for the hardware to send data whenever it wants?

For whatever it is worth, I have the exact same issue with HR straps, device type 120. A packet of data will show up semi-randomly. HR changes so infrequently that I hadn't been as concerned with that issue.

I'll look into the simulator this week.      
Rank

Total Posts: 2

Joined 0

PM

Grabbed the simulator+code, stepped through the whole init process and found that one of the ANT functions (the one that sets period) was not getting called when I thought it was.

I'd figured the simulator was just for devkits so I hadn't checked it out. I had no idea it would be of any use to me. Thanks for the help, things are working nicely now.

Jon      
RankRankRankRank

Total Posts: 116

Joined 2008-11-21

PM

Glad you got it sorted out.

The ANT+ simulators are very useful tools for any ANT+ developer!