krusty said:
On the tech side, the advantage of ANT is that it lets devices pair and talk to multiple controller/displays. The disadvantage (based on my brief investigation) is that the device definitions seem inflexible so to do anything beyond basic data relay you'd have to tack on the "ANT FS" file sharing protocol. I'm thinking in particular about how to allow for changing arbitrary settings in the motor controller by the display (and ideally allow for remote firmware updates). But, at least for me, an even bigger disadvantage is that my phone (Pixel 4) doesn't support ANT! It seems that older Android devices used to have it but over time it has been disappearing, though Samsung phones still have it.
Also, from my perspective it doesn't make a lot of sense to use a dedicated device like those Garmin units, at least not at the prices they charge. I think a throwaway Android phone gives you a whole lot more for the money: better display, processor and the ability to run any app you want. To be honest I'm surprised Garmin is still in business, but their stock has been shooting up so I guess their products must sell. For my part I'd rather stick to general purpose devices running a relatively open OS.
BTW I noticed a bit of convergent evolution: your man-in-the-middle unit has the same guts as my Nano33 BLE (Nordic nRF52840). That device also supports IEEE 802.15.4, which means it can do Zigbee and a few other protocols. Since I'm souring on Bluetooth due to its licensing I'm thinking I might rewrite my stuff to use something open source for the radio carrier layer. Any interest in collaborating on the man-in-the-middle piece to come up with a cross platform device + app? I was thinking it would be really fun to use this module and have a sweet little display right on the unit: https://www.makerfabs.com/makepython-nrf52840.html
I think the EBikes uses ANT+ LEV to follow a standard but any specific manufacturer configuration or data is sent by Bluetooth. We are just doing that on TSDZ2, configurations using a mobile app (Bluetooth) and ANT+ LEV for the displays that support it.
Yes, Garmin devices are very expensive but include advanced features and metrics for cycling. Anyway, with our EBike wireless controller, the user can use our mobile app and optionally an ANT+ LEV cycling display as there are few brands, not only Garmin, still I think we developers only have Garmins.
Note that Garmin cycling GPS displays are very popular on the cycling because they do develop very specific hardware and software (fitness metric algorithms) for cycling. There are very high tech and expensive sensors, like pedal power meters with costs over 500 euros, or even ANT+ tire pressure sensors.
I am not very experienced to be able to structure and start a big project as you mention. Also I do not believe on our own display, for the same reasons you did mention, like phones are more powerful and much easier ans faster to develop for.
Developing for a Garmin device is much faster, but the costs is then passed to user because the devices are expensive. Anyway, why would I be developing so much, taking a lot of my life, just to save money to final user while he would pay nothing for it??
Also the Garmin devices has important features that I would never be able to implement, like GPS map navigation. The true is that EBike brands like Bosch are developing their own GPS navigation displays (very expensive!!) but we will never be able to do that, so, better to join Garmin and let the user pay the fair price for all the advance features. For the users not wanting the advanced feature, then the basic mobile app is free and easy to have it working.
Good luck on your project but I am not experienced enough and I do not have energy for such project.