Support for Tacx older smart trainers

(James Budge) #121

Hello John,

Thank again for this, I ran it on a headless raspberry pi last night. Didn’t use the headless run script as above as instead just ssh in and then ran vnc so I could use the GUI. 

Sadly it didn’t pick up the ant stick (a garmin one with a hardware version of 1008 i belive) even after a few plugs in and out. I only have the one ant stick at home and as I was planning on using my mac for zwift don’t currently own a second. Will run the debug and send you the output this evening, but any ideas in advance?

Excited about a mac build! Do let me know if you want me to do any testing.

Thanks again,



(paha SBG [ZHU]) #122

I can also help testing a mac build. 

(John Taylor) #123

Did you run the script as root or as sudo? You might not have the correct permissions otherwise

(James Budge) #124

I ran the script as sudo, should I have run it as root?

(John Taylor) #125

It should (!) be good to go on a Mac. Could someone try and post issues on the github site?

(James Budge) #126

Wonderful, will aim to test it out tonight. Sorry I am probably being think but I cant see a Mac build on the github website at the moment.

(John Taylor) #127

You’ll need to run it as a python script- it looks like you’ll need to dowload python and python-tk from here:

Then from command line try (copy/paste):

python -m pip install pyserial pyusb numpy mkdir antifier cd antifier wget --quiet wget --quiet wget --quiet wget --quiet wget --quiet wget --quiet\_calc\_factors\_custom.txt wget --quiet\_calc\_factors\_fortius.txt wget --quiet\_calc\_factors\_imagic.txt wget --quiet wget --quiet\_trainer\

then run with python

This is all conjecture as I don't have a Mac!

(John Taylor) #128

Oops try
sudo easy_install pip
pip install pyserial pyusb numpy
Instead of the first line

(James Budge) #129

Perfect! Was trying to work out how to install pip as had been having issues with that! Antifier up and running now. Will test it with trainer and ant+ stick once home and let you know.

(Jo-) #130

@paha77…I think the best comparison would be between the Tacx Virtual Reality vs. Zwift Virtual Reality . I have many many, miles on the Tacx VR starting with TTS2 & NetAthlon and now with Tacx’s present TTS4 VR. 

 Simply, they both compare well,  the “feel” of Zwift & Tacx VR are very similar. the Tacx VR is  marginally better in this way, it’s designed to work with Tacx products so the grades and terrain suit the Tacx better. The roughest part on Zwift was the 9% on Box Hill. And how to describe “rough” >>  Not as smooth as the other grades and flats. 

I dont have a Power Meter, but I have a pretty good idea of what my Heart Rate is at specific efforts in the RL  ((Sigma software tracking- 5 years of data)) … And that was very close, on the Box Hill climb, my HR was exactly what it is on sustained climbs of that sort in the RL…So, in that way this software is mimicking RL effort very well. 

 ((My RL work is Graphic Design specifically for video, if there is anything I can add here in the way of Graphics, please let me know at …Yeah!! Earthlink   dot Net … I’m old !! … Not that it’s necessary, but maybe something with a tinge of Steampunk, brass knobs and puffing bellows))

(John Taylor) #131

RASPBERRY PI- you need to make a small change to how the dongle is recognised. Create and edit the file:


and add the following line:

SUBSYSTEM==“usb”, ATTRS{idVendor}==“0fcf”, ATTRS{idProduct}==“1009”, RUN+="/sbin/modprobe usbserial vendor=0x0fcf product=0x1009"

(replace both 1009 entries with 1008 is lsusb shows your product id number as that)


Tested and working with raspberry pi 3 and latest raspbian 

(James Budge) #132


Thanks again for your continued help.

Having issues with both the raspberry pi and the mac runs. have posted them both on the github website with the debugs.

But in brief:

Mac version:

cant recognise the ant stick (either a 1008 and a 1004 version)

Raspberry pi 

recognised stick (after your fix above) and trainer. start run down (can only get 3 seconds) then start script and an error comes up in the terminal (printed in full on the github website.)

Thanks again for your continued help



(Domen Rogina) #133

John Taylor,

At first I would like to say a big thank you for this software interface! :slight_smile: It’s awesome!

I tested it yesterday on Tacx Fortius and Win10 64bit and things works. Then I rode about 15 minutes on Zwift without problems, except power seems is a little bit incorrect but it’s not disruptive. Maybe I did the runoff incorrectly. :slight_smile:

I have some questions:

Is it possible that the runoff data stay saved? Because for me is very hard to speed up to 40km/h at resistance level 3. It is my all-out xD :slight_smile: And doing this every time when I run the software it is really hard :confused: Maybe Can I change the resistance level on 2 where in software? or Can you change the target speed for example to 30km/h or at least 35km/h? What that mean to power accurracy?



(John Taylor) #134

Yep the Fortius power curve is just copy of the iflow and hence is completely wrong. If anyone has access to a power meter and a Fortius please let me know asap! That will also fix the runoff problem

(Domen Rogina) #135

Ok. It is good to know that. So when the fortius will be calibrated with power meter, it will be easy to speed up to 40km/h?

If you doesn’t find someone with power meter till next weekend, I will contact my friend and we will test that with power meter Quarq.
I just ask you for the correct instructions how to do that, so that the power data will be accurate.






(Domen Rogina) #136

Sorry, I missed the instructions in Readme. :slight_smile:

I will post the data to github.

Thank you.



Another question :slight_smile:

Do I have to run the antifier.exe and start script before I run the power_curve?

(Jo-) #137

2nd Zwift … Wattopia… Fortius. 30 miles 

Worked perfectly, but the 10% on the Long  Epic Climb was really hard and very unnatural feeling … 8% feels very smooth and very natural …((But I have yet to do a Rundown … I just wanted to get it working… Do I need a power meter to do a Rundown? ))

But … All in All . I can live with an unnatural over 10% … this is just great … thanks and thanks again … 

(John Taylor) #138

Yes we need to get a power curve for the Fortius. If you edit power_calc_factors_fortius.txt you can set the slope value for each resistance level (see readme)

Glad to hear it’s working well for you :slight_smile:

(paha SBG [ZHU]) #139

John, this is what a little bit unclear for me.  How can we get a power curve for the Fortius?  I also have this trainer and I could help generating it but have no idea how to do this.  Maybe this is also related to my issue on github.  Thanks.

(John Taylor) #140

if you run power_curve and have a power meter attached you can generate a power curve. See bottom of the the readme