Go Back  Bike Forums > Bike Forums > Electronics, Lighting, & Gadgets
Reload this Page >

Any software/computer engineers here?

Notices
Electronics, Lighting, & Gadgets HRM, GPS, MP3, HID. Whether it's got an acronym or not, here's where you'll find discussions on all sorts of tools, toys and gadgets.

Any software/computer engineers here?

Old 01-30-20, 11:06 AM
  #1  
ChrisAlbertson
Senior Member
Thread Starter
 
Join Date: Dec 2019
Location: Southern California
Posts: 148

Bikes: 70's frame, newer parts

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 80 Post(s)
Likes: 0
Liked 32 Times in 23 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?
ChrisAlbertson is offline  
Old 01-30-20, 06:06 PM
  #2  
Oso Polar
Senior Member
 
Join Date: Mar 2018
Location: Westchester County, NY
Posts: 201

Bikes: Trek 3500, Jamis Renegade Escapade

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 114 Post(s)
Liked 15 Times in 14 Posts
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.
Oso Polar is offline  
Likes For Oso Polar:
Old 02-02-20, 10:33 PM
  #3  
nealcollins
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.
nealcollins is offline  
Old 02-02-20, 11:25 PM
  #4  
Seattle Forrest
Senior Member
 
Seattle Forrest's Avatar
 
Join Date: Mar 2010
Location: Seattle, WA
Posts: 20,397
Mentioned: 61 Post(s)
Tagged: 0 Thread(s)
Quoted: 10570 Post(s)
Liked 1,751 Times in 1,048 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!
Seattle Forrest is offline  
Old 02-03-20, 12:13 AM
  #5  
ChrisAlbertson
Senior Member
Thread Starter
 
Join Date: Dec 2019
Location: Southern California
Posts: 148

Bikes: 70's frame, newer parts

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 80 Post(s)
Likes: 0
Liked 32 Times in 23 Posts
Originally Posted by Seattle Forrest View Post
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!
In the worst case, a user could manually align the data. Like in a video edit app where you have recorded sound using a separate.

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.
ChrisAlbertson is offline  
Old 02-03-20, 03:41 PM
  #6  
adamrice
mosquito rancher
 
adamrice's Avatar
 
Join Date: Oct 2009
Location: Austin TX USA
Posts: 473

Bikes: Bob Jackson 853 Arrowhead; Felt VR30

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 39 Post(s)
Likes: 0
Liked 12 Times in 8 Posts
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.
adamrice is offline  
Old 02-04-20, 01:22 PM
  #7  
Oso Polar
Senior Member
 
Join Date: Mar 2018
Location: Westchester County, NY
Posts: 201

Bikes: Trek 3500, Jamis Renegade Escapade

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 114 Post(s)
Liked 15 Times in 14 Posts
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.
Oso Polar is offline  
Old 02-04-20, 02:38 PM
  #8  
adamrice
mosquito rancher
 
adamrice's Avatar
 
Join Date: Oct 2009
Location: Austin TX USA
Posts: 473

Bikes: Bob Jackson 853 Arrowhead; Felt VR30

Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 39 Post(s)
Likes: 0
Liked 12 Times in 8 Posts
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.
adamrice is offline  
Old 02-09-20, 10:02 PM
  #9  
spelger
Senior Member
 
spelger's Avatar
 
Join Date: Jul 2015
Location: reno, nv
Posts: 227

Bikes: yes, i have one

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 114 Post(s)
Liked 66 Times in 39 Posts
Originally Posted by ChrisAlbertson View Post
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?
yes. but i do not know much about FitBit, just that i had one a few years ago and hated it. i just could not get used to wearing something on my wrist. after a week i never used it again.

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
spelger is offline  
Old 02-10-20, 12:13 AM
  #10  
ChrisAlbertson
Senior Member
Thread Starter
 
Join Date: Dec 2019
Location: Southern California
Posts: 148

Bikes: 70's frame, newer parts

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 80 Post(s)
Likes: 0
Liked 32 Times in 23 Posts
Originally Posted by spelger View Post
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
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.
ChrisAlbertson is offline  
Old 02-10-20, 09:05 PM
  #11  
spelger
Senior Member
 
spelger's Avatar
 
Join Date: Jul 2015
Location: reno, nv
Posts: 227

Bikes: yes, i have one

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 114 Post(s)
Liked 66 Times in 39 Posts
Originally Posted by ChrisAlbertson View Post
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.
You are right of course. I was thinking Zwift.
spelger is offline  
Old 02-20-20, 02:06 AM
  #12  
ChrisAlbertson
Senior Member
Thread Starter
 
Join Date: Dec 2019
Location: Southern California
Posts: 148

Bikes: 70's frame, newer parts

Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 80 Post(s)
Likes: 0
Liked 32 Times in 23 Posts
Originally Posted by adamrice View Post
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.
Cost is never the justification for an Open Source project. Yu do the project because you want to see it get done. But later it can be cost justified if it is distributed to 50,000 people and each of them saves the cost of a $70 HRM.

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.
ChrisAlbertson is offline  
Old 02-20-20, 03:24 AM
  #13  
CliffordK
Senior Member
 
CliffordK's Avatar
 
Join Date: Nov 2014
Location: Eugene, Oregon, USA
Posts: 24,137
Mentioned: 191 Post(s)
Tagged: 0 Thread(s)
Quoted: 10703 Post(s)
Liked 585 Times in 468 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.
CliffordK is offline  
Old 02-21-20, 04:49 AM
  #14  
atwl77
Kamen Rider
 
atwl77's Avatar
 
Join Date: Aug 2017
Location: KL, MY
Posts: 683

Bikes: Fuji Transonic Elite, Marechal Soul Ultimate, Dahon Dash Altena

Mentioned: 11 Post(s)
Tagged: 0 Thread(s)
Quoted: 234 Post(s)
Liked 52 Times in 35 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?
atwl77 is offline  
Old 02-24-20, 09:03 PM
  #15  
zacster
Senior Member
 
Join Date: Jul 2004
Location: Brooklyn NY
Posts: 6,574
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 106 Times in 84 Posts
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.
zacster is offline  

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Thread Tools
Search this Thread

Contact Us - Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service - Do Not Sell My Personal Information

Copyright 2018 MH Sub I, LLC dba Internet Brands. All rights reserved. Use of this site indicates your consent to the Terms of Use.