Tacx Fortius power output accuracy in Train mode.

942 views
Skip to first unread message

Evan Walpole

unread,
Jul 21, 2017, 11:34:39 AM7/21/17
to golden-cheetah-users
The recorded power output of my Tacx Fortius trainer in Golden Cheetah train mode is suspiciously high. Was wondering if anyone else with a Fortius trainer using GC is getting similar results?

My Fortius unit tracks a user set target power in manual erg mode just fine. However when I compare Fortius power data against my PowerTap ANT+ rear hub (data recorded with a Garmin device), the Fortius power is always ~2.2 times the output the PowerTap. See attached comparison chart that was plotted in Excel. 

Have tested this setup in both Windows and OSX builds of GC.

One solution would be to change the scaling factor in the GC Fortius code (I don't think the calibration / spin down mode is programmed yet?). Another would be to implement a simple closed loop digital PID controller for target power / external power meter matching, similar to what Trainer Road, Perf Pro and Zwift offer.
Picture1.png

Jon Escombe

unread,
Jul 21, 2017, 1:18:25 PM7/21/17
to Evan Walpole, golden-cheetah-users
Hi Evan,

Spin-down calibration is there, at least in the development builds, so
is worth trying that as a starting point.. (Power match isn't in any of
the github builds yet, but I have some part finished code & planning to
get it done for next trainer season).

If calibration doesn't help, I can give you some instructions to send me
the ant logs, and I'll have a look at the raw data.

Regards,
Jon
> --
> _______________________________________________
> Golden-Cheetah-Users mailing list
> golden-che...@googlegroups.com
> http://groups.google.com/group/golden-cheetah-users?hl=en
> ---
> You received this message because you are subscribed to the Google
> Groups "golden-cheetah-users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to golden-cheetah-u...@googlegroups.com
> <mailto:golden-cheetah-u...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout.

Evan Walpole

unread,
Jul 22, 2017, 2:56:15 AM7/22/17
to golden-cheetah-users, evanw...@gmail.com
Hi Jon, thanks for the swift reply.

Was already using the lasted development build, but I downloaded and reinstalled the Win32 v3.5-DEV1705X but just to be sure. GC is running on a dedicated media / workout netbook with Windows 7 32bit). Unfortunately the calibration doesn't seem to work with the Fortius unit. Same thing happens with the latest OSX dev build for my Mac.

Had a look through the Fortius.cpp code over on the GitHub repo… calibration is "Not yet implemented".

- Evan
fortius_CALIBRATION_NOT_SUPPORTED.png

Evan Walpole

unread,
Jul 22, 2017, 3:25:34 AM7/22/17
to golden-cheetah-users, evanw...@gmail.com
If you need beta tester for the power match function, sign me up! Even a simple Proportional-only controller would be sufficient for anything other than steady-state workouts.

But for now, I'd like manually change the scaling factor in the Fortius code and roll out my own build. Just installed the necessary toolchain to compile a custom build of GC, via my Mac with Bootcamp / Windows 10.

Followed all the steps and got the toolchain to successfully compile without external device dependencies. Have now downloaded the precompiled SDK, but I don't know where I'm supposed to locate all the dependency folders. Suggestions?

On Saturday, 22 July 2017 03:18:25 UTC+10, jone wrote:

Jon Escombe

unread,
Jul 22, 2017, 5:54:00 AM7/22/17
to Evan Walpole, golden-cheetah-users
Oh of course, yeah sorry :( I was thinking the Fortius was using ANT+,
but it's the direct USB connection isn't it.

I think you are on the right track with building yourself then. Pretty
much all my development is on Linux, but when I set up a Windows VM for
testing, I just unpacked the libraries into c:\libs\ and made sure
GC_COMPONENTS in gcconfig.pri was pointing there..

Cheers,
Jon

Mick Drake

unread,
Jul 23, 2017, 8:54:03 AM7/23/17
to golden-cheetah-users, evanw...@gmail.com
HI Evan
is you get this working would be very happy use it.. since "upgrading" to windows 10 my old fortius GC workouts have stopped working (maybe a driver issue) so I am back to usinf TTS4.. which is actually OK now :)
Good luck

Evan Walpole

unread,
Jul 23, 2017, 9:26:22 AM7/23/17
to golden-cheetah-users, evanw...@gmail.com
Mick, have you tried the most recent Fortius drivers over at https://github.com/GoldenCheetah/GoldenCheetah/blob/master/contrib/GC_Fortius-VR_libusb-0.1_drivers.zip ?

Try that, or run GoldenCheetah.exe in compatibility mode (right click, Properties, Compatibility Tab).

I think I just spotted a bug in the Fortius.cpp code... check out lines 102 to 111. Don't think comparison variable 'weight' should be the one used.

Actually I think an easier fix would be to lift the existing GC Fortius and ANT code and create a FE-C software bridge. I did something similar with an unsupported RealAxiom V4 wired trainer for Zwift a while ago [1]. Would still need to implement a spindown function for accuracy, but even that feature is buggy in TTS. Maybe building a spindown function on top of the slope mode set at 0% grade would be preferable.

I only purchased my Fortius a month ago, secondhand for $50. For a device that is over a decade old, it's a very quiet and solid little unit.

Mick Drake

unread,
Jul 24, 2017, 2:49:02 AM7/24/17
to golden-cheetah-users, evanw...@gmail.com
Had my fortius for a few years now and it certainly is a good enough tool for me.. I would like a neo BUT my very old "Look" carbon 8 speed camapg would not fit on one :) $50 is a great price.. I paid about £150 for mine but came with steerer, films, rear wheel and tyre

Never done any coding since my BBC miucro days (probably before you were born) so would not know where to start looking at line 102

I think they are the drivers that I have but will take a look.  If you do produce anything that you could give me in an installable format I would give it a go.

Enjoy the fortius.. gererates plenty of sweat so a mat is essential........Do you use RLV, there are a couple of sites that have good quality free RLV.. I think some of them are better than the early TACX films.

I will publish links to them here if you are interested ?

Mick Drake

unread,
Aug 15, 2017, 9:28:56 AM8/15/17
to golden-cheetah-users, evanw...@gmail.com
Hi
have the day at home today for once Southwest trains were unable to get me into work rather than not get me home (train derailment at Waterloo):) so had another crack at getting this running this.  Managed to get the drivers installed and loaded a workout however the power and speed seem to be a long way from what I would nornally expect.  I rode a short route this morning using my TTS4 software and had a AVE power of 160 and speed of 29 km/h (my poor performance is due to too much time on the rowere and not enough on the turbo...)
GC figures are very different power Ave of 75 and speed of 32.. I used to do a bit of TT and there is no way I am moving at 20 mph with the effort I am putting in plus I belive the power reading is low.  I calibrated the fortius this morning so that should be about right, are there any other settings that I can use to adjust the figures?
Wheel is set to 700C and 23mm as stamped on the training tyre
Cheers
Mick


On Sunday, 23 July 2017 14:26:22 UTC+1, Evan Walpole wrote:

Evan Walpole

unread,
Aug 15, 2017, 10:15:43 AM8/15/17
to golden-cheetah-users, evanw...@gmail.com
What mode were you training in GC, Erg or Slope?

You can use both ANT+ sensors and the Fortius in GC. Pair all your sensors as one device in GC (heart rate, power meter, etc). Then select the Fortius and ANT+ sensor grouping together. Hit the trainer start button and you'll get a option box asking you sensors you wish to use for displaying and recording data. See attached pic.
gc_fortius_ant_pair.png

Evan Walpole

unread,
Aug 15, 2017, 10:32:54 AM8/15/17
to golden-cheetah-users, evanw...@gmail.com
Also, I've managed to get my Fortius trainer to talk to the PyUSB library in Python. Just reading the raw data stream output and setting static slope points so far. My device is the T1932 model, so it doesn't require the .hex firmware to initialise the hardware. There are some minor differences in the data stream compared to the available documentation on the T1942, so that could account for the discrepancies seen in my calculated GC Fortius trainer power output.

There are some open-source ANT+ libraries available too, so writing a FE-C software bridge is also an option. Could eventually set it up as a dedicated Raspberry Pi device bridge. I'm fairly busy at the moment so I won't be doing any hobbyist type code writing for the next few weeks. But I will share any code once I get something working.

- Evan

On Tuesday, 15 August 2017 23:28:56 UTC+10, Mick Drake wrote:

Mick Drake

unread,
Aug 15, 2017, 11:13:17 AM8/15/17
to golden-cheetah-users, evanw...@gmail.com
Hi Evan
I do not have any ANT + sensor just the fortius USB lead...I was trying to use one of the sufferfest rides.. all displayed fine and as I cycled resistance changed just figures look way out

stun...@gmail.com

unread,
Oct 6, 2017, 2:15:17 AM10/6/17
to golden-cheetah-users
Hi Is there any more development on a calibration fot the fortius in golden cheetah yet?
Ive been using golden cheetah for a ciuple of months (v4.0) and really like it but am experiencing power readings that are way to high. Ive agjusted the setting to +200% and it is much better but it is only a guesd based on 'feel'....a calibration would be awesome!
Any help would be much appreciated.

Mark Liversedge

unread,
Oct 6, 2017, 8:13:13 AM10/6/17
to golden-cheetah-users
Can you point me to the opensource ANT+ libs, would be good to use them + contribute rather than maintain our own.

Mark

stun...@gmail.com

unread,
Oct 7, 2017, 10:47:38 AM10/7/17
to golden-cheetah-users
I found this online im not sure if it is any help mark....

stun...@gmail.com

unread,
Oct 7, 2017, 11:12:11 AM10/7/17
to golden-cheetah-users
also maybe this will help?


many thanks

 Stuart

stun...@gmail.com

unread,
Oct 7, 2017, 11:29:08 AM10/7/17
to golden-cheetah-users

Mark Liversedge

unread,
Oct 8, 2017, 4:23:08 AM10/8/17
to golden-cheetah-users
Not so much, its python and rather incomplete for our purposes.
I sometimes wonder if we should spin out the ANT+ code into a separate project.

The GC ANT+ code was originally provided by Mark Rages at Quarq as generated C code, we morphed that into static C++.

Mark

Evan Walpole

unread,
Oct 23, 2017, 7:14:55 AM10/23/17
to golden-cheetah-users
There are about half a dozen open source ANT+ protocol implementations floating around on GitHub, but most are written in either node.js or Python. 

The only thing I could find written in C++ was a utility to download FIT files directly from legacy Garmin devices:
https://github.com/ralovich/antpm 

Spinning off the GC ANT+ code into it's own project is a good idea. It would allow for other contributors - who otherwise have no interest in athletic training -  to update and maintain the trainer codebase. I'm honestly surprised that no-one has yet implemented a FE-C mod for Doom or Quake. The only other library available to developers is a ~$60 option on the Unity asset store.

But getting back to the topic of the Tacx Fortius, the link Stuart mentioned is a live option for anyone wanting to dust off their ancient trainer. Two ANT+ USB sticks are required, and it currently only works in simulation mode (no erg), but the Fortius will work in Zwift or GC's train mode slope workouts. Get it here: https://github.com/john-38787364/antifier

- Evan

John Taylor

unread,
Nov 6, 2017, 9:38:06 AM11/6/17
to golden-cheetah-users
The Antifier project for tacx trainers is now up and running and will broadcast to all training apps capable of receiving ANT+ data. Works in grade and erg mode, and has some preloaded power curves

https://github.com/john-38787364/antifier

Reply all
Reply to author
Forward
0 new messages