Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

Android ANT+ SDK - onNewManufacturerSpecificData not being called

Rank

Total Posts: 2

Joined 2015-11-10

PM

Hi,

I'm using the Android ANT+ SDK and I'm trying to receive a manufacturer specific data page (0xF1) from an AntPlusWeightScalePcc instance. I've added a listener using subscribeManufacturerSpecificDataEvent (which returns true), but onNewManufacturerSpecificData is never called (I do receive the weight, though).

I have verified using ANTware II that the device is indeed transmitting the 0xF1 data page.

Is there something else I have to set to receive this data page?

Thanks for any help!      
Rank

Total Posts: 1

Joined 2017-06-19

PM

I'd really be interested in the answer to this too! Or if there is some other way to read the manufacturer specific pages ...

Please, can someone help?
     
Rank

Total Posts: 2

Joined 2015-11-10

PM

For anyone else experiencing this issue, it does appear to be a bug.

onNewManufacturerSpecificData is called unless requestBasicMeasurement or requestAdvancedMeasurement in AntPlusWightScalePcc have been called. Once the measurement has been completed (scale sends at least one 0xFFFF weight), onNewManufacturerSpecificData will resume being called. (This appears to be because when a measurement is requested the ANT+ Plugins Service internally starts using ChannelTask_BasicMeasurement or ChannelTask_AdvancedMeasurement to process received data, and they don't handle manufacturer specific data pages).

As you can imagine this behaviour is rather useless, as the manufacturer specific data for this weight scale is sent only during a measurement. From taking a quick look at the other plugins I think this might only affect weight scales, as most of the other plugins don't appear to use custom AntChannelTask objects to the same extent the weight scale plugin does.

Unfortunately I can't see a way to work around it until it's fixed in the ANT+ Plugins Service.      
Rank

Total Posts: 1

Joined 2010-02-22

PM

Just starting to research using ANT+ in an Android app and also need to do manufacturer specific pages. It doesn't look the the API has been updated since this thread began so I'm assuming the bug is still there.

Sounds like the ANT+ one handles the low level communication but is it possible to use the ANT (not ANT+) SDK to do this instead and then have access to all the pages? I already have code to do all the ANT+ low level protocol anyway (in a few different languages) so doing one more isn't that big a deal.

Robert