Smart Trainer Application
#1
Senior Member
Thread Starter
Join Date: Jul 2015
Location: reno, nv
Posts: 2,299
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1136 Post(s)
Liked 1,182 Times
in
687 Posts
Smart Trainer Application
Hi all,
Last year I got a smart trainer and after the Zwift season ended i still wanted to be able to control it myself to use when the weather or timing was bad so that i could still ride. I ended up with a program that runs on a Windows PC. I would like to get a feel for what interest there might be in the BF community...to see if anyone is interested in using it. There is no catch, I do not plan on selling it, just giving it away, i am not asking for anything and don't want anything aside from suggestions and/or constructive criticism to just make it better. hell, you can bash it too for all i care.
i am not a software developer but i am a firmware engineer so although i have a good grasp regarding the coding aspect the UI itself is a bit rudimentary. but it does what i want it to do: power level based intervals, heart rate based intervals, custom grade, and what i really wrote this for: re-riding a past ride. completed rides can be saved and uploaded to strava (mostly works for me at least). there are a few things i need to work out yet but these are minor (so he says).
i'll answer more if there is any interest.
-scott
Last year I got a smart trainer and after the Zwift season ended i still wanted to be able to control it myself to use when the weather or timing was bad so that i could still ride. I ended up with a program that runs on a Windows PC. I would like to get a feel for what interest there might be in the BF community...to see if anyone is interested in using it. There is no catch, I do not plan on selling it, just giving it away, i am not asking for anything and don't want anything aside from suggestions and/or constructive criticism to just make it better. hell, you can bash it too for all i care.
i am not a software developer but i am a firmware engineer so although i have a good grasp regarding the coding aspect the UI itself is a bit rudimentary. but it does what i want it to do: power level based intervals, heart rate based intervals, custom grade, and what i really wrote this for: re-riding a past ride. completed rides can be saved and uploaded to strava (mostly works for me at least). there are a few things i need to work out yet but these are minor (so he says).
i'll answer more if there is any interest.
-scott
#2
Senior Member
Although I have never tried it, I am pretty sure that with my Wahoo Elemnt and KickR Snap I can re-ride a past ride. No way I would spend hours in the saddle, but I'd like to do some of the hills.
What you seek may already be out there.
What you seek may already be out there.
#3
Randomhead
Join Date: Aug 2008
Location: Happy Valley, Pennsylvania
Posts: 24,396
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 4 Post(s)
Liked 3,696 Times
in
2,517 Posts
is it on github? What language?
#4
Forum Moderator
Join Date: Jul 2007
Location: Kalamazoo MI
Posts: 20,650
Bikes: Fuji SL2.1 Carbon Di2 Cannondale Synapse Alloy 4 Trek Checkpoint ALR-5 Viscount Aerospace Pro Colnago Classic Rabobank Schwinn Waterford PMount Raleigh C50 Cromoly Hybrid Legnano Tipo Roma Pista
Mentioned: 58 Post(s)
Tagged: 0 Thread(s)
Quoted: 3090 Post(s)
Liked 6,593 Times
in
3,781 Posts
Thread moved from General Cycling forum to Indoor Cycling forum.
__________________
#5
Senior Member
Join Date: Sep 2014
Location: Northeastern MA, USA
Posts: 1,678
Bikes: Garmin/Tacx Bike Smart
Mentioned: 3 Post(s)
Tagged: 0 Thread(s)
Quoted: 646 Post(s)
Liked 289 Times
in
191 Posts
If you ride a Wahoo trainer, there's some choices here: https://www.wahoofitness.com/fitness-apps
#6
Senior Member
Thread Starter
Join Date: Jul 2015
Location: reno, nv
Posts: 2,299
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1136 Post(s)
Liked 1,182 Times
in
687 Posts
it is on GitHub but the repository is private for the moment. most is done in c# with some c++. for a firmware guy it was definitely a learning experience.
i think what i am going to do is create another repository just for the Release bits and make that public.
i think what i am going to do is create another repository just for the Release bits and make that public.
#7
Senior Member
Join Date: Jul 2018
Location: USA
Posts: 2,190
Bikes: Ti, Mn Cr Ni Mo Nb, Al, C
Mentioned: 22 Post(s)
Tagged: 0 Thread(s)
Quoted: 942 Post(s)
Liked 527 Times
in
349 Posts
Maybe it works better on Wahoo trainers. It didn't work well (elevation and resistance only...all other data fields work fine) on my non Wahoo smart trainer.
#8
Senior Member
Thread Starter
Join Date: Jul 2015
Location: reno, nv
Posts: 2,299
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1136 Post(s)
Liked 1,182 Times
in
687 Posts
ok, for what it is worth i created a release repository and put the application here if anyone wants to use it:
https://github.com/spelger2/SycleRelease
https://github.com/spelger2/SycleRelease
Likes For spelger:
#9
Senior Member
Join Date: Oct 2013
Location: Highlands Ranch, CO
Posts: 1,221
Bikes: '13 Diamondback Hybrid Commuter, '17 Spec Roubaix Di2, '17 Spec Camber 29'er, '19 CDale Topstone Gravel
Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 590 Post(s)
Liked 445 Times
in
260 Posts
ok, for what it is worth i created a release repository and put the application here if anyone wants to use it:
https://github.com/spelger2/SycleRelease
https://github.com/spelger2/SycleRelease
I'll give your program a try this weekend, I like utilitarian interfaces.
BTW I used to use the BKOOL free software 5-6 years ago, and they had very similar features to yours, such as loading an existing .FIT or .GPX file, and then riding that route.
#10
Junior Member
Join Date: Jan 2009
Location: UK
Posts: 24
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 3 Post(s)
Liked 0 Times
in
0 Posts
I've just downloaded it from Github and will have a play around with it this week with my Tacx Neo. A quick look through the readme and it looks good though.
One thing I'd like, is the option to pair more than one trainer at the same time? I often ride side by side with my dad, both of us on a Neo. I'll try running two versions of your software, with one Sandboxed, but would be cool if you could implement an option to pair multiple trainers simultaneously.
Edit - I guess i won't have to use a Sandbox, it seems i can launch more than one instance of Sycle. Will see if pairing two trainers causes any issues, will report back here once I've used it. Looks great though.
One thing I'd like, is the option to pair more than one trainer at the same time? I often ride side by side with my dad, both of us on a Neo. I'll try running two versions of your software, with one Sandboxed, but would be cool if you could implement an option to pair multiple trainers simultaneously.
Edit - I guess i won't have to use a Sandbox, it seems i can launch more than one instance of Sycle. Will see if pairing two trainers causes any issues, will report back here once I've used it. Looks great though.
Last edited by mcr23; 12-07-20 at 10:31 AM.
#11
Senior Member
Thread Starter
Join Date: Jul 2015
Location: reno, nv
Posts: 2,299
Bikes: yes, i have one
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
Quoted: 1136 Post(s)
Liked 1,182 Times
in
687 Posts
I've just downloaded it from Github and will have a play around with it this week with my Tacx Neo. A quick look through the readme and it looks good though.
One thing I'd like, is the option to pair more than one trainer at the same time? I often ride side by side with my dad, both of us on a Neo. I'll try running two versions of your software, with one Sandboxed, but would be cool if you could implement an option to pair multiple trainers simultaneously.
Edit - I guess i won't have to use a Sandbox, it seems i can launch more than one instance of Sycle. Will see if pairing two trainers causes any issues, will report back here once I've used it. Looks great though.
One thing I'd like, is the option to pair more than one trainer at the same time? I often ride side by side with my dad, both of us on a Neo. I'll try running two versions of your software, with one Sandboxed, but would be cool if you could implement an option to pair multiple trainers simultaneously.
Edit - I guess i won't have to use a Sandbox, it seems i can launch more than one instance of Sycle. Will see if pairing two trainers causes any issues, will report back here once I've used it. Looks great though.
-scott
EDIT: i misunderstood what you were asking. two Ant+ dongles...not sure why i was thinking that. anyway, the pairing dialog shows the first found. i *presume* it shows the first found that is not paired. so for two trainers i would assume that the first found will show up in one instance and then the other trainer would show up in the other instance, i really don't know since i only have one trainer. i also only have one HRM and cadence sensor. if this is the case then one instance could start and pair up the things that have power applied and are alive, then the other instance can be started and pair whatever is found, might work in the short term.
what i will need to do is change the pairing dialog to allow picking and choosing.
Last edited by spelger; 12-07-20 at 02:16 PM.
#12
Junior Member
Join Date: Jan 2009
Location: UK
Posts: 24
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 3 Post(s)
Liked 0 Times
in
0 Posts
since i only have one Ant+ dongle i've only tested with one. i am pretty sure you won't be able to run two instances on the same machine and get the Ant+ pairing working properly. i'd need to take a look to see what it would take. it can be done, i just don't know what it would take at teh moment. i'll have a look at lunch today and see what it might involve.
-scott
EDIT: i misunderstood what you were asking. two Ant+ dongles...not sure why i was thinking that. anyway, the pairing dialog shows the first found. i *presume* it shows the first found that is not paired. so for two trainers i would assume that the first found will show up in one instance and then the other trainer would show up in the other instance, i really don't know since i only have one trainer. i also only have one HRM and cadence sensor. if this is the case then one instance could start and pair up the things that have power applied and are alive, then the other instance can be started and pair whatever is found, might work in the short term.
what i will need to do is change the pairing dialog to allow picking and choosing.
-scott
EDIT: i misunderstood what you were asking. two Ant+ dongles...not sure why i was thinking that. anyway, the pairing dialog shows the first found. i *presume* it shows the first found that is not paired. so for two trainers i would assume that the first found will show up in one instance and then the other trainer would show up in the other instance, i really don't know since i only have one trainer. i also only have one HRM and cadence sensor. if this is the case then one instance could start and pair up the things that have power applied and are alive, then the other instance can be started and pair whatever is found, might work in the short term.
what i will need to do is change the pairing dialog to allow picking and choosing.
#13
Junior Member
Join Date: Jan 2009
Location: UK
Posts: 24
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 3 Post(s)
Liked 0 Times
in
0 Posts
Sorry for the delay - i got around to testing it last night, and two at the same time worked using Sandboxie to isolate the second instance of the program. I had to use my main PC, as the laptop I use in the garage is only running 32 bit windows 10 and kept giving an error about the ANT+ layer and closing when the program opened. Will try and get a screengrab of the error message.
The program itself is great, haven't tested the Strava link yet, but will do.
Managed to grab a screenshot of the error, and i was wrong - the laptop is running 64 bit windows 10, so that doesn't seem to be the issue.
The program itself is great, haven't tested the Strava link yet, but will do.
Managed to grab a screenshot of the error, and i was wrong - the laptop is running 64 bit windows 10, so that doesn't seem to be the issue.
Last edited by mcr23; 12-12-20 at 10:06 AM.