I'm implementing an android app to communicate with a third-party ant-fs device.
I already have a linux program working, so I sort of know that the device works fine and which sequence of messages should take place.
I'm porting the program to android, using the ant+ api and a usb stick + a tablet (I'm using a garmin usb2 stick).
So far, I managed to connect to the watch, get the ant-fs beacon, put it into link mode, then auth mode, and then send the AUTH command with a serial number request. Following that, I'm expecting the AUTH response, which should come as a burst receive. However, I just get a short sequence of timeout packets, and that's it.
I'm writing this prototype based on your AntPlusDemo (with some changes to use the ANT-FS channel etc). What I see is that you basically don't handle AntMesg.MESG_BURST_DATA_ID inside the broadcast receiver. Of course I added code there, but it's never reached.
Honestly, it's hard to develop a product using your services, because there seems to be no way to see what is going on at the lower level (raw packets sent and received). So it either works or not, and we're just developing blindfolded. Just having an API to instruct your service to dump raw packets on the logcat would help, guys. Having access to the source code would help even more. There is no secret there, we know the protocol.
Having no access to the source code, the real question is: is burst receive implemented in android when using a USB stick? Anyone succeeded using burst receive (not send)? Any sample code available anywhere?