Welcome Guest,Register Now
Log In

ANT Forum

Welcome guest, please Login or Register

   

Is anybody out there developing ANT+ for Android ?

Rank

Total Posts: 4

Joined 2022-01-07

PM

Hi,

I've just registered in the hope of getting more up to date and better documentation for the ANT+ Android API, I'm wanting to write an app for my phone to talk to my bike sensors but am having some serious problems getting all of this to work.

The documentation is non-existent, the API is in Java and hasn't been updated for several years, there is no mention of Kotlin anywhere, the API appears to be using Eclipse project format which hasn't been the preferred IDE of choice of the ADK since forever. Even the comments in the Java samples are wrong ('Subscribe to all the heart rate events' for instance when actually trying to connect to a cadence sensor...). The sticky FAQ post 'Getting Started with Development of ANT+ Android Apps ' here has broken links in it, I tried following documentation links and get 'The URI you submitted has disallowed characters.' responses from the server...

All I want is a Connect to the ANT service using call X, set up event listener using Y, list the detected devices using Z, and that should be it.

I'm beginning to wonder if the best thing to do would be to just bin the whole Garmin/ANT kit and start afresh with low energy Bluetooth.

There's not a lot of activity here and that is also worrying.

What is the real state of ANT+ on Android and is anybody actually doing any new development for Android ?

Perhaps this should be what is the real state of ANT+ ?


Regards.


JAPH
     
Rank

Total Posts: 4

Joined 2020-10-27

PM

There are multiple Android-based bike computers using ANT/ANT+. The choice of whether to use ANT+ or BLE in your app is less about the app-side effort and more about what sensors your app should support. If you want ANT/ANT+ sensors then the existing libraries do the job, even if they haven't been updated for years and have their limitations/issues. Yes, they use Java. Yes, the sample projects are for Eclipse. That doesn't stop them being loaded into Android Studio, configured as a Gradle build and called with Kotlin.      
Rank

Total Posts: 4

Joined 2022-01-07

PM

You missed the point. I don't want to simply cut and paste the sample (singular) app into studio and chop it about to get something working.

I want to be able to add a dependency on the JAR, stick the relevant imports at the top of my activity and write the code myself and there is no documentation that I can find that says 'here's how to talk to ANT+ on Android' apart from some pretty much uncommented, poorly documented and complex java code samples in what could charitably be called a legacy environment. It's almost 7 years (March 2015) since any updates were made to the API. Android was at version 5 Lollipop, we're currently at 12 (Snow Cone) which is seven releases since (more if you count minor releases...) and ANT haven't updated the API in all that time...

After initially posting this I realised that I didn't actually need to talk to ANT devices, the sensors I have are dual ANT/BLE so I can use BLE.

I went off to the android developer site, grepped for BLE and found the guide. 45 minutes later I was reading the data from my BLE cadence sensor. This is 45 minutes from deciding I want to try something that I've never done before and it's all due to the quality of the documentation and samples that are provided by the Android development team.

The demo code is not released for this app as some people were taking the source, rebreanding it and putting it on the play store. We hope for a higher quality app experience than that from developers and don't need a bunch of clones all over the play store.


This is a direct quote (including spelling mistakes) from Sample/README.md from the downloaded ANT+ SDK. I would argue that instead of creating that text, the ANT people should have asked themselves, why developers are just cutting pasting and rebranding rather than developing their own apps.

It could be that all developers are lazy cut and paste merchants just out there for an easy ride and want to get their name on something so they will rip the code off or it could just be that the developers couldn't quite get their heads round how all this worked and just used what they found at hand to make the best of a bad job. I'd like to think it's the latter.

ANT is losing(has lost) the battle with BLE, it may be the Betamax of wearable BUT lack of support and clear documentation and an arrogant attitude from ANT just isn't endearing developers to the project. If ANT want more takeup, they need to offer better support than they are doing otherwise developers are just going to do what I did, take the path of least resistance which is BLE.

     
Rank

Total Posts: 4

Joined 2020-10-27

PM

You missed my point. There are consumer products using these libraries. They have not simply copy-pasted example code. Meanwhile, there are apps of every kind on the Play Store where someone has simply copy-pasted example code so I don't see your point about mentioning that this occurs.

Add the libraries to your app, consult the samples, refer to the API docs (included in the download or https://www.thisisant.com/developer/resources/api-documentation/), and ask questions here if needed. I have wanted the SDKs to updated and redesigned to be nicer to use for years, but this is what we have and they have been made to work.

If your question should be "is the ANT+ for Android SDK actively being maintained?", then your post already answers that. It is also clear that if you want to talk to ANT+/BLE combo sensors from a phone, you would use BLE as that is the predominant protocol on mobile (and the only option on the majority of devices). If there is a reason you want ANT+ from Android, then the available libraries are your only option and what everyone doing that is using.

You're mostly dependent on community support here so it may not be fast (and you're not currently doing yourself any favours to encourage someone to give up their time), but good luck.      
Rank

Total Posts: 4

Joined 2022-01-07

PM

Hi @ST,

apologies if I upset you, it wasn't intended. I'm not looking for support or help, I'm perfectly capable of pulling the stuff in and working with it, I just don't want to pull old cruft, then spend ages working round old code to see what I can remove because its irrelevant to my particular application.

All I want (and it's probably too late now) is an up to date release of the library (nobody believes that 7 year old code is bug free or incapable of improvement) and a decent set of documentation - 45 minutes from 0 to something I can build on with BLE - ANT+ should be capable of putting out a document that makes it that easy to use their product.

I asked the question originally to see if anybody was doing development and (apart from you, nobody has replied and only 40 reads) it doesn't appear that anybody's using the forum let alone developing the library or developing with the library...

I'd have liked to add the ANT+ stuff but in reality, it's not going to happen - no matter how good you tell me it is grin Once I realised I had BLE capable sensors, the need for ANT+ became less important and it's now only there for intellectual curiosity. It's a shame, but as you commented coming here and finding only community support (and not very active community support at that) doesn't fill me with confidence that there is a future in the product and I'd rather be riding my bike than faffing about with Java.

     
RankRankRankRank

Total Posts: 118

Joined 2010-10-25

PM

I still work with thye ANT API's but then my app is getting on for 10 years old so the current API's are the new ones for me. Technically ANT has some capabilities that are not in BLE notable dealing with multiple head unit devices concurently. The ANT Api's also allow for concurent Apps with the same sesnors which is not on option with BLE as far as I am aware. From the end user point of view I still recomend ANT to my users if they have a device giving them the choice. It's still the more reliable than I have managed with BLE which all gets a bit dodgy once you try and deal with multiple sensors concurently on some devices.      
Rank

Total Posts: 4

Joined 2022-01-07

PM

Hi Matthew,

No, I changed tack and went down the BLE route. After spending hours digging through the ANT API I realised it was going to need a lot more effort than I wanted to put in for a simple app that was just to make my life easier. BLE does everything I need and was better documented.

It's a shame because I think ANT+ is a better technology but the entry level was too high to justify for my simple needs. If I was going to roll something for sale/general use I'd probably invest a bit more time in it.

Regards,


JAPH