Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

ChannelEventHandler Event Buffering

Rank

Total Posts: 19

Joined 0

PM

My ChannelEventCallback class that implements IAntChannelEventHandler is not being passed events in the way I expect.

The channel I'm monitoring is receiving ANT packets at approx 20hz but is buffering these packets and then repeatedly calling the onReceiveMessage function.

Some part of the system buffers 2 seconds worth of packets (in my set-up this is 40 packets) and then passes them on within a very short period. It then buffers another 40 packets over 2 seconds and repeats.

In the log extract below, you can see that the first block of messages ends at 07-22 22:51:31.441. Almost 2 seconds elapses before at 07-22 22:51:33.401 another block of messages is received. Obviously I haven't shown all 40 messages before and after this pause. You can see that other parts of the app continue to run during this 2 second break.

I have a PC app that monitors the same device and the packets are received continuously as expected so I know the problem is with the Android app rather than the packet source.

Any ideas as to what is going on here?


07-22 22:51:31.431 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.431 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.431 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.431 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.441 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.441 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.441 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.441 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:31.681 16818-16818/nz.org.hpsnz.multiview D/ManageChannels: Timer process.
07-22 22:51:32.181 16818-16818/nz.org.hpsnz.multiview D/ManageChannels: Timer process.
07-22 22:51:32.681 16818-16818/nz.org.hpsnz.multiview D/ManageChannels: Timer process.
07-22 22:51:33.181 16818-16818/nz.org.hpsnz.multiview D/ManageChannels: Timer process.
07-22 22:51:33.401 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:33.401 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:33.401 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:33.411 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:33.411 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
07-22 22:51:33.411 16818-16913/nz.org.hpsnz.multiview D/ChannelController: Rx: 0x4E:[00][02][29][CF][1C][50][C9][25][24][C0][E8][03][13][05][20][C4][80]
     
Rank

Total Posts: 19

Joined 0

PM

Anyone else seen this problem? It's still occurring.....      
Rank

Total Posts: 19

Joined 0

PM

I'm using the ANT SDK (i.e not the ANT+ SDK).

If I generate HR ANT+ data I can see via various ANT+ HR apps that the data isn't being buffered.

Is it possible that this is only a problem with the ANT SDK?      
Rank

Total Posts: 19

Joined 0

PM

Calling disableEventBuffer on the AntChannel object fixes the problem!

Events are now being received in realtime.