Any software/computer engineers here?
#1
Senior Member
Thread Starter
Join Date: Dec 2019
Location: Southern California
Posts: 158
Bikes: 70's frame, newer parts
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 92 Post(s)
Likes: 0
Liked 38 Times
in
27 Posts
Any software/computer engineers here?
Are there any other software/computer engineers on this list? I'm looking at an Open Source solution for fitness tracking interoperability. For example, one should be able to take heart rate data from a Fitbit and use it with Wahoo on Strava. Or combine multiple-step sensors for better step data. Lots of little things no manufacturer seems motivated to provide. I want this to be free for anyone to use.
This should not be rocket science. What's needed is to build some bridges and make a good user interface. The idea is to capture or pull the data, time-align it then put combined data on any of the strava-like sites.
I've worked in embedded software for a long time but need to come up to speed on the standards used by these trackers. Anyone got pointers?
This should not be rocket science. What's needed is to build some bridges and make a good user interface. The idea is to capture or pull the data, time-align it then put combined data on any of the strava-like sites.
I've worked in embedded software for a long time but need to come up to speed on the standards used by these trackers. Anyone got pointers?
#2
Senior Member
Many individual services (Fitbit, Garmin, Strava etc.) have their APIs but I'm not aware of any open source solution that integrates them all together.
https://www.fitnesssyncer.com/ - this service does exactly what you want but it is not open source. A bit of functionality they offer for free, if you'll need more, you'll need to pay.
https://www.fitnesssyncer.com/ - this service does exactly what you want but it is not open source. A bit of functionality they offer for free, if you'll need more, you'll need to pay.
Likes For Oso Polar:
#3
Member
Join Date: Aug 2016
Location: Melbourne
Posts: 30
Bikes: Giant TCR Advanced Pro 1, Trek Cobia, Vivente Deccan
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 3 Post(s)
Likes: 0
Liked 1 Time
in
1 Post
You could have a look at GoldenCheetah (https://github.com/GoldenCheetah/GoldenCheetah) - it's open source and seems to be able to read from various cycling computers, etc.
#4
Senior Member
Join Date: Mar 2010
Location: Seattle, WA
Posts: 23,208
Mentioned: 89 Post(s)
Tagged: 0 Thread(s)
Quoted: 18883 Post(s)
Liked 10,646 Times
in
6,054 Posts
What you're describing isn't very difficult in theory, but the devil is always in the details. A Garmin or Wahoo has to have the right time while it's using GPS. A Fitbit could have the wrong time, and then not sync properly. I guess you could build an offset capability. As mentioned already, look at the available APIs.
Web interface is changing so quickly these days!
Web interface is changing so quickly these days!
#5
Senior Member
Thread Starter
Join Date: Dec 2019
Location: Southern California
Posts: 158
Bikes: 70's frame, newer parts
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 92 Post(s)
Likes: 0
Liked 38 Times
in
27 Posts
What you're describing isn't very difficult in theory, but the devil is always in the details. A Garmin or Wahoo has to have the right time while it's using GPS. A Fitbit could have the wrong time, and then not sync properly. I guess you could build an offset capability. As mentioned already, look at the available APIs.
Web interface is changing so quickly these days!
Web interface is changing so quickly these days!
I'm looking at "Golden Cheetah" now. It looks good. They took the approach to "do it right" even if it adds a steep learning curve for the user. For most commercial software I think thy worry a lot about users and try not to do anything that would generate a lot of support issues
What got me started was that I was very annoyed that I have a Wahoo cadence sensor on my bike and Fitbit heart rate sensors on my wrist and I can not get the data from the Fitbit onto the bike computer and have to buy a second heart rate sensor for my other wrist. Golden Cheetah seems to have the best analytics I've seen by far but it is not for real-time use as it runs on a PC (Linux, Mac, and Windows)
For real-time monitoring, I need to learn ANT+ and Bluetooth fitness-related standards and do some prototyping.
My thinking now is that there are three parts (1) sensors, (2) data storage and communication and (3) display and analytics. I think we should be able to mix and match.
It is going to take me a while to understand Cheetah. It is a very high-end cycling analytics. It even allows users to write Python and R methods to use the data.
#6
mosquito rancher
Fitbit is very much about keeping you inside their walled garden (not sure how this will change under Google's acquisition). I've seen software for getting data out of Fitbit-land, but the more expedient approach is to get a different HRM. I can guarantee that a new HRM will cost you less in money than extracting data from Fitbits will cost you in time.
__________________
Adam Rice
Adam Rice
#7
Senior Member
Hmm, not really. Fitbit exposes APi to get all the data from it (and upload third party data to Fitbit as well). https://www.fitnesssyncer.com/, that I already mentioned, have absolutely no problems fetching everything from Fitbit. What Fitbit doesn't do, it doesn't create (for the most part) such export/import tools itself - they believe that if Strava, Garmin, Google etc. want to import data from Fitbit to their service then it is Strava, Garmin, Google etc. who should create such tools for their respective services - all APIs are in place for this.
#8
mosquito rancher
I don't disagree that this is possible, simply that it's not very cost-effective. A heart-rate monitor costs $50-80. That would scarcely buy one hour of a developer's time.
Also, if one wants to capture fitbit data in real time, I don't think the API will do that.
Also, if one wants to capture fitbit data in real time, I don't think the API will do that.
__________________
Adam Rice
Adam Rice
#9
Senior Member
Join Date: Jul 2015
Location: reno, nv
Posts: 2,301
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1138 Post(s)
Liked 1,182 Times
in
687 Posts
Are there any other software/computer engineers on this list? I'm looking at an Open Source solution for fitness tracking interoperability. For example, one should be able to take heart rate data from a Fitbit and use it with Wahoo on Strava. Or combine multiple-step sensors for better step data. Lots of little things no manufacturer seems motivated to provide. I want this to be free for anyone to use.
This should not be rocket science. What's needed is to build some bridges and make a good user interface. The idea is to capture or pull the data, time-align it then put combined data on any of the strava-like sites.
I've worked in embedded software for a long time but need to come up to speed on the standards used by these trackers. Anyone got pointers?
This should not be rocket science. What's needed is to build some bridges and make a good user interface. The idea is to capture or pull the data, time-align it then put combined data on any of the strava-like sites.
I've worked in embedded software for a long time but need to come up to speed on the standards used by these trackers. Anyone got pointers?
if FitBit supports Ant+ then you probably have all you need to tie things together. Strava and Wahoo both operate on Ant+. maybe blue tooth?
-scott
#10
Senior Member
Thread Starter
Join Date: Dec 2019
Location: Southern California
Posts: 158
Bikes: 70's frame, newer parts
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 92 Post(s)
Likes: 0
Liked 38 Times
in
27 Posts
Wahoo computers use ANT+ but on the Element Mini, the data is logged not by the compute but by your phone using Blue Tooth. The "Mini reads ANT+ but they've rigged it to ONLY read Wahoo ANT+ sensors. The Mini s intentionally crippled.
#11
Senior Member
Join Date: Jul 2015
Location: reno, nv
Posts: 2,301
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1138 Post(s)
Liked 1,182 Times
in
687 Posts
As it turns out Stava doesnot read sensors at all. You can only upload data to it. So Stava is not using ANT+, except that the data may have been from an ANT+ sensors (or not)
Wahoo computers use ANT+ but on the Element Mini, the data is logged not by the compute but by your phone using Blue Tooth. The "Mini reads ANT+ but they've rigged it to ONLY read Wahoo ANT+ sensors. The Mini s intentionally crippled.
Wahoo computers use ANT+ but on the Element Mini, the data is logged not by the compute but by your phone using Blue Tooth. The "Mini reads ANT+ but they've rigged it to ONLY read Wahoo ANT+ sensors. The Mini s intentionally crippled.
#12
Senior Member
Thread Starter
Join Date: Dec 2019
Location: Southern California
Posts: 158
Bikes: 70's frame, newer parts
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 92 Post(s)
Likes: 0
Liked 38 Times
in
27 Posts
I looked at the FitBit real-time API. You can capture HR data and send it to a companion app that runs on a phone. The companion app would have to serve as a bridge and re-send the data using BLE or somehow using ANT+. There is a non-real-time API yo pull data
I think I might buy an ANT+ and a BLE development board. They are not expensive. The first step is to learn how it works.
I'm thinking also about how I'd build a low cost power meter. It might be possible to measure chain tension or to glue strain gages on the seat and chain stays. Both would generate VERY noisy data. If the stain gages were put on at the frame factory it woud add very little cost to the bike.
#13
Senior Member
Join Date: Nov 2014
Location: Eugene, Oregon, USA
Posts: 27,547
Mentioned: 217 Post(s)
Tagged: 0 Thread(s)
Quoted: 18378 Post(s)
Liked 4,512 Times
in
3,354 Posts
One thing, if you do decide to write your API, there is OpenStreetMap that should be a big help.
I think RideWithGPS uses OSM as part of their application.
I think RideWithGPS uses OSM as part of their application.
#14
Kamen Rider
Join Date: Aug 2017
Location: KL, MY
Posts: 1,071
Bikes: Fuji Transonic Elite, Marechal Soul Ultimate, Dahon Dash Altena
Mentioned: 11 Post(s)
Tagged: 0 Thread(s)
Quoted: 351 Post(s)
Liked 277 Times
in
164 Posts
From my understanding of the conversation so far, what you are looking for isn't about integration. It's about whether the hardware supports real-time transmission of data or not. ANT+ (and to a limited extent, Bluetooth) are pretty much the standard that devices support. However, Fitbit does not broadcast heart rate data so no amount of fiddling is going to get your Wahoo, etc to receive heart rate data in real-time from the watch -- that's why you need a separate heart rate strap that broadcasts such data.
Now if we're talking post-ride stuff, on the other hand, there are already tools that let you merge data from multiple devices, such as the Gotoes website. In this case, the data format is also pretty much standard (either a FIT file, or a TCX file) which, as long as your device allows you to export the data to the standard format, lets you combine stuff without needing to code new tools.
Or am I wrong about the OP's intent?
Now if we're talking post-ride stuff, on the other hand, there are already tools that let you merge data from multiple devices, such as the Gotoes website. In this case, the data format is also pretty much standard (either a FIT file, or a TCX file) which, as long as your device allows you to export the data to the standard format, lets you combine stuff without needing to code new tools.
Or am I wrong about the OP's intent?
#15
Senior Member
Between ANT+, BT, and the file standards it shouldn't be hard, unless Fitbit doesn't adhere to them. This is what it sounds like just reading through this thread. I had a Fitbit that I wore for a corporate health contest and as soon as that was over the novelty had worn off. You had the runners that would win these things every time, yet I was cycling and not getting anywhere on the fitbit and doing as much work. I don't know what Fitbit is capable of these days but after being the hot wearable device they lost out to the Apple Watch.
In the meantime, I've basically standardized on the Wahoo products myself and they all inter-operate with each other, Zwift, The Sufferfest, RidewithGPS, Strava, and every other training or tracking program. I took the bike out today for the first time in a while and everything just recorded as normal without having to do anything more than turn it on.
In the meantime, I've basically standardized on the Wahoo products myself and they all inter-operate with each other, Zwift, The Sufferfest, RidewithGPS, Strava, and every other training or tracking program. I took the bike out today for the first time in a while and everything just recorded as normal without having to do anything more than turn it on.