-
-
Notifications
You must be signed in to change notification settings - Fork 78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Genius T2021 Brake (~46, 117) #101
Comments
To start with, please send some photos of the essentials, like headunit and connectivity. I have the impression you have a USB-connected trainer... |
Thanks for the quick reply Wouter, I'll try and help out where I can - The "T2020 i-Genius" brake is one of the pre FE-C ANT connected trainers using the TACX proprietary protocols - (like the i-Vortex and the Bushido). No direct USB cable connection like the Fortius. I am using the TACX - supplied T2018 USB ANT dongle. There is a wireless ANT headunit which is purely optional for use in TTS4, it is only used to control the cursor on the screen while you are on the bike. There is some information about the Genius ANT interface here: I have installed the libusb-win32 drivers and TTS4 can still communicate with the trainer and other ANT devices (like the speed/cadence sensor and HRM). I uninstalled the Jungo USB ANT drivers that came from TACX. I have installed Python, upgraded PIP and then installed the requirements.txt dependencies. Then I ran ExplorANT.bat and it was not detecting the Genius Brake, but it was detecting the HRM and Garmin Speed/Cadence sensors. |
My first thought: you do not need libusb at all. If the pre FE-C devices use the same protocol it should work and in that case read for 'i-Vortex' "Tacx proprietary pre FE-C device". After your confirmation I will come up with some better name than that. |
PS I see that -t is not yet wiki-documented😝 |
Hi Wouter - sorry for the delay - I thought I replied yesterday but something must have gone amok... |
Sure, use the .py and .try😊 |
My first time doing this - I created a fork and started to change ANTDongle.py. That should effect ExplorANT? I will check the results tonight. |
Succes! Regarding constants; I tend to define things once - so it affects ExplorANT as well. |
No luck so far. I tried changing the lines in AntDongle.py that referred to DeviceType, Frequency and Period to the Genius values - no detection of the genius. Still picking up the Speed/Cadence meter though. I think we will need a higher power to help out. TotalReverse is seem to be needed on the case. I tried to figure out how to get Wireshark working with Ant using this |
Do you have a non-Tacx application that pairs with the Genius? |
No only TTS4 |
I have just registered with ANT to log into the website so I can download ANTWARE . Don't know if it will help, but I might as well try. |
I do not know. Mind that Tacx has deliberately scrambled the interface, so it's a matter of searching. |
Did you try to implement this in the .py code? Perhaps a good idea to send the -d127 tracefile, I will then assist to interpret |
I did try to change the values in AntDongle.py that referred to DeviceType, Frequency and Period to the Genius values
ExplorANT finds the Garmin Speed/Cadence Sensor on my bike. I will use the -d127 option and send the file through. |
The logfile appears to set the correct parameters
according to the the quoted values from TotalReverse as you mention above (PS: what is the exact source?) Searching for "ch=4" gives no activity at all. You work the same way as I did to get the i-Vortex active; set the parameters and see whether I received some data. Try to drop a question to TotalReverse on this subject, perhaps (s)he can assist? I'll be offline next 10 days. |
Thanks Wouter, will do.
ps https://github.com/fluxoid-org/CyclismoProject/wiki/Tacx-Genius is where I got the information for the different values.
…On Thu, 13 Aug 2020 at 19:23, WouterJD ***@***.***> wrote:
The logfile appears to set the correct parameters
11:04:07,594: FortiusANT receives data from an ANT+ Tacx i-Vortex (VTX Controller), any device
11:04:07,594: SlaveVTX_ChannelConfig()
*according to* the the quoted values from TotalReverse as you mention
above (PS: what is the exact source?)
Searching for "ch=4" gives no activity at all.
You work the same way as I did to get the i-Vortex active; set the
parameters and see whether I received some data.
Only when the correct figures were all set I received response.
I have no sniffers and/or network systems to see what is "in the air".
Try to drop a question to TotalReverse on this subject, perhaps (s)he can
assist?
I'll be offline next 10 days.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#101 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGZOLHTAP7TFJJ4N74B26RTSAOWK3ANCNFSM4PRYFCCQ>
.
|
Just chiming in on this as I've just bought one of these second hand and would like to get it working with Zwift. I think I've changed the correct parameters for the Genius: mikeymclellan@b783dfc And this is the debug output from
I've attached the logfile FortiusANT.2020-09-28 23-41-26.log Is what I'm attempting to do correct? I'm happy to get more involved and read through the code more, just thought I'd check I'm on the right path. [edit] Also attempted the updated values from |
There's a little more explanation of the different device ids in the TotalReverse Wiki, it relates to whether you include the pairing bit or not. I'm not really sure what this means, but either way I don't seem to have any success. |
BTW here's a pcap file of the USB data when starting and connecting to the brake using TTS4 captured with Wireshark |
Somewhere along the way I managed to get it to output something 🤷
FortiusANT.2020-09-29 04-11-20.log And finally, ExplorANT output:
|
Wow you got a lot further than me Mikey, I tried your changes to my files
and Genius - I got the same output you did the first time round -
nothing..... What were you doing when you got that output speed etc...?
Thanks
Matthew
…On Tue, 29 Sep 2020 at 14:41, Mikey McLellan ***@***.***> wrote:
Somewhere along the way I managed to get it to output *something*:
04:11:20,941: FortiusANT started
04:11:20,941: -d 127 (0b1111111)
04:11:20,941: -H None
04:11:20,941: -p 1.0
04:11:20,942: -t i-Vortex
04:11:20,942: ------------------
04:11:20,958: GetDongle - Try dongle: manufacturer=Dynastream Innovations, product=ANT USB-m Stick, vendor= 0xfcf, product=0x1009(4105)
04:11:21,488: Dongle - Using Dynastream Innovations dongle
04:11:21,488: Tacx - Pair with Tacx i-Vortex and Headunit
04:11:21,488: AntHRM - Heartrate expected from Tacx Trainer
04:11:22,594: FortiusANT broadcasts data as an ANT+ Controlled Fitness Equipent device (FE-C), id=57591
04:11:22,743: FortiusANT broadcasts data as an ANT+ Heart Rate Monitor (HRM), id=57592
04:11:22,893: FortiusANT receives data from an ANT+ Tacx i-Vortex (VTX Controller), any device
04:11:23,082: FortiusANT receives data from an ANT+ Tacx i-Vortex Headunit (VHU Controller), any device
04:11:23,284: FortiusANT broadcasts data as an ANT+ Bicycle Power Sensor (PWR), id=57596
04:11:23,440: FortiusANT broadcasts data as an ANT+ Speed and Cadence Sensor (SCS), id=57595
04:11:23,607: Ctrl-C to exit
04:11:23,607: Tacx - Pair with Tacx i-Vortex and Headunit
04:11:23,607: Target=100W Speed= 0.0kmh hr= 0 Current= 0W Cad= 0 r= 100 T= 15
04:11:24,614: Target=100W Speed= 0.0kmh hr= 0 Current= 0W Cad= 0 r= 100 T= 15
04:11:25,630: Target=100W Speed= 0.0kmh hr= 0 Current= 0W Cad= 0 r= 100 T= 15
04:11:26,639: Target=100W Speed= 0.0kmh hr= 0 Current= 0W Cad= 0 r= 100 T= 15
04:11:27,647: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:28,660: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:29,664: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:30,672: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:31,678: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:32,684: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:33,698: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:34,708: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:35,713: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:36,721: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:37,729: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:38,734: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:39,743: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:40,757: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:41,769: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:42,773: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:43,780: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:44,788: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:45,793: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:46,796: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:47,809: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:48,820: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:49,832: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:50,842: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:51,853: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:52,873: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:53,889: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:54,906: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:55,916: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:56,919: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:57,931: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:58,944: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:11:59,953: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:00,963: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:01,973: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:02,985: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:03,991: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:04,997: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
04:12:06,000: Target=100W Speed=39.8kmh hr= 0 Current=229W Cad=163 r= 100 T= 15
^C04:12:06,418: Stopped
04:12:06,923: FortiusAnt ended```
[FortiusANT.2020-09-29 04-11-20.log](https://github.com/WouterJD/FortiusANT/files/5296419/FortiusANT.2020-09-29.04-11-20.log)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#101 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGZOLHRUY72HVQ6E7N6P6CTSIFQOFANCNFSM4PRYFCCQ>
.
|
Hey guys. Sorry for not digging into the issue earlier. @mikeymclellan you seem to be on the right track. |
@mikeymclellan @Sigfreid74 How are things proceeding? |
Refer to next response from TotalReverse, perhaps it gives additional information:
|
I am in the same situation - just bought a Tacx Genius T2021 last week and want to connect it to my PC to ride on zwift. I don't have TTS4 available and am trying to connect it using FortiusAnt and my T2028 antenna. Tried the fork by @mikeymclellan but did not have any luck so far. |
@m472 thanks for using FortiusANT, please introduce yourself; I like to know where FortiusANT landed see #14 @m472 @mikeymclellan @Sigfreid74 I have added a short section in the manual (see wiki) and hope that is helpful. Please keep me posted on progress and/or developments; when I can integrate your work it is helpful for others and -of course- I am curious whether the Genius can be connected as well. |
I have now had the chance to do some more testing with my Tacx Genius. In a first step I have printed all received ANT+ messages to the console. This way I was able to see some communication between the Genius and my computer. Therefor I can confirm the device type 0x53, frequency 50 (2460 MHz) and Period 4096 are correct. I then checked the different data page numbers that are transmitted. It seems the Genius brake sends three data pages on a regular base: 1, 81, 94 and 221 I don't know anything about ANT+ data pages but it seems the information in pages 1, 81 and 94 is not dependent on weather I turn the cranks or not. The information in data page 221 however definitely changes when the cranks are turned. The first byte in data page 221 seems to be some kind of sub-index. It takes the values {1, 2, 3}. I then logged all the information for data page 221 during a sprint and looked at the values by adding a print statement in the DecomposeMessage function. I was able to identify some values as high and low bytes of an integer. Others are always zero (maybe my power output is just too low...). So now I have multiple values that seem to make some sense but I have no idea which signal is which. I hope someone is a bit more familiar with power and speed curves on an indoor trainer and can help me interpret thes curves. The values val_1 to val_4 are from data page 221 subindex 1, Any help is appreciated, you can find my code and data here: |
That is mostly how it should work already with the Genius. The difference is that the brake stores the calibration value and status internally and the first step in "Calibrate" is to check that. If the brake reports it already has a valid calibration, calibration is skipped. This check could of course be removed. Turning the brake off and on again resets the calibration status, so a new calibration will be triggered when you "Start" again. Cancelling the calibration should be possible with the Genius (I think there is a command for that), but I have not implemented that yet. Problem is also that there is no cancel button. You can let it time out (either 60s or 120s I think). What I really want to do is this:
That should get us a big step closer to a modern smart trainer experience. Let me know what you think. I could probably get working on a new branch in the next few days. I now have all the (relevant) trainers and head-units available, so that should make it a lot eaiser to collect data and debug (and less likely to break something by accident). In the meantime I can of course make a small pull-request to remove the calibration check for the Genius if you and @Sigfreid74 think that would be helpful. |
Switchabl I think your ultimate proposal is ideal! I don't think the interim pull request is required. I will try just turning the Genius on/off again to re-initiaite calibration. Thanks for the tip. The power and wind resistance values now feel spot on! |
Hi, I was pleasantly surprised to stumble over this solution to using older Tacx trainers with the online platforms like Rouvy and Zwift, so I've dug my i-Genius T2021 trainer out of the shed, followed the instructions for getting it connected in a Win 10 machine, and then have been able to get it connected to Rouvy. All seems fairly straight forward and functional for a while and then I get a set of errors in the Cli: I haven't been able to determine what I do if anything to cause it to happen as yet. Stopping and starting things from the UI fixes it for a bit and the the error returns. Thanks, |
@smithnb I think I have seen this a couple of times myself but could never reproduce it properly. If you can manage to get me a full debug log (run with EDIT: Actually after playing a bit with the ANT+ simulator I was able to reproduce it myself. So hopefully I won't even need the debug log. |
Hi, I've tried this fix binary and can't get it to crash. I believe I have logged the crash on the earlier version attached. |
Now that I have a stable build of FortiusAnt running, I have moved on to the next stage - connecting to Rouvy and doing a training session. Any suggestions welcome. Nigel |
@smithnb Please upload a debug log (including some pedaling, changing resistance with either Rouvy or the Garmin) so I can see if there are any obvious issues. The cadence issue in particular is strange and may suggest a problem with the trainer. So it could be helpful if you can get TTS4 running to check if that works. It works fine on Windows 10 for me (and others). The only problem is that the activation servers are no longer available. But I think you can run it in trial mode for a few days? |
Just downloaded FortiusAnt 5.1 to get my Genius going on my win10 laptop. Configured the windows app settings to specify the Genius Tacx type in the dropdown menu. But still cannot find the Genius trainer. I am using a Dynastream Ant+ dongle. Any suggestions? |
@rcerrie Please enable the full debug log (Settings -> Developer arguments -> -d = 127) and upload the log files. Some things I can think of:
|
@switchabl I think it's become quiet on this issue; seems we can consider Genius to be fully supported. |
I'll add my experiences with testing lately. Running in windows 10 with 2 ANT dongles is the most reliable option for me. I have done some testing with Raspberry pi devices, mostly headless, since wx doesn't run stable on my rPi0. With headless, I have run successfully with ANT and BLE towards Zwift running on the Win10 machine, but I often have problems with the calibration procedure, and also with pairing with the Genius brake. Sometimes I have to power cycle the brake, and restart FortiusAnt to get a connection. Sometimes I start TTS4 to run through the calibration, then exit and start FortiusAnt (headless). |
I use the Genius as well with 2 Ant dongles, when I turn on the FortiusAnt,
automatically do the pair and the calibration (yep I manually do a short
spin on the rear wheel). Everything has been working well so far.
A quarta, 17 de mar de 2021, 09:57, trygvelu ***@***.***>
escreveu:
… I'll add my experiences with testing lately. Running in windows 10 with 2
ANT dongles is the most reliable option for me. I have done some testing
with Raspberry pi devices, mostly headless, since wx doesn't run stable on
my rPi0. With headless, I have run successfully with ANT and BLE towards
Zwift running on the Win10 machine, but I often have problems with the
calibration procedure, and also with pairing with the Genius brake.
Sometimes I have to power cycle the brake, and restart FortiusAnt to get a
connection. Sometimes I start TTS4 to run through the calibration, then
exit and start FortiusAnt (headless).
I'm not sure if there are many others using the Genius brake without GUI.
Maybe it works for everyone else, and it's just my setup creating problems.
Another potential issue: has work been done on supporting the headunit
accessory (the round button interface) for the Genius?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#101 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ASUMW5Z5KLT6JVOMMLKQK6LTEB4KLANCNFSM4PRYFCCQ>
.
|
Hi @Paulospg99 good to hear from you again; thanks for feedback! I'm always curious to know who I communicate with and where FortiusANT is used. |
Hi all, |
Hi, i read this issue with interest. Do I understand it correctly that to use FortiusAnt with an old genius, you have to set the t=-t Genius parameter? |
Hi @Cadencevr I'm always curious to know who I communicate with, where FortiusANT is used and what configuration is used. And yes - t genius is the option, please read the manual for more info |
Thanks for the quick reply. I will try this option. |
My settings for all Genius users, with which the software works properly and the values also appear realistic. TACX Genius Trainer, 2 x ANT+ dongles, 1 x WIN10 Prof PC 64bit I deactivated the option: Save settings in json file and always start with my parameters in a batch: FortiusANT.exe -a -g -T39-53x26-23-21-19-18-17-16-15-14 -13 -t genius I measure heart rate directly in Zwift using a SUUNTO strap. The translation is important for the calibration! |
Hello. My name is Artem. I'm from Russia. I have Tacx T2021 (Genius). I got pair with Fortius Ant and Zwift. I got all the data from T2021. I using 2 garmin ant+ stick. But i have little problem. In FortiusANT and Zwift, I see 2 times more power than in the Tacx application on android, which works without fortius and gives clear data. For example, if I pedal at a speed of 10 km/h, I will get 50-70 watts of power in Tacx, 100-140 watts in Fortius. I tried to check the data using -p, but I already have 50% (0.5) and if I put less or more, the data becomes even larger. In total, I managed to get from 2 to 10 times the power increase in Fortius. "ant": { |
Hi @trishevae |
I don't know. I have read all the documentation and the github forum. I can sent you my connect process (log). May be my settings incorrect |
Hi. Can you help me? |
Hi, |
Insert one ant+ and run the program and t2021. You need to get information about a successful connection. After that, you do the calibration and run swift. When you get to the moment with the connection of devices, insert the second ant+ and find your t2021 Hi. You need 2 and + (1 for Furtius-ant and 1 for swift) and the target power in the settings is 101, because if you make 100, then for some reason it changes to 20 in the settings and the power drops, because it is multiplied by 20%. I attached a link to a screenshot of my settings to my fortius-ant. Just download and run mine. https://drive.google.com/drive/folders/1bMyVSmZYvFVzrkygtwiWFtFmFnhpEZ41?usp=sharing |
Hi! i set the p value ti 101, it works lot more better. I can not see/download the attachemnet, but this is allready a big help, thank You! |
Last week I did some kind of update on zwift and imediatly a felt a lack of power on the turbo trainner, |
Hi Wouter, from Melbourne, Australia
I am interested in liberating my trainer a little to experiment with some of the newer software around. Surely if the Vortex can work, then the Genius must be possible too at some point. I would be happy to try and test any ideas you have.
Interestingly, I decided to jump in and uninstall the "Jungo" TACX USB drivers, and install the "libusb-win32-1.2.6" drivers instead. TTS4 still works for me! (Windows 10)
FortiusANT is not registering the trainer yet though.
Any tips to try and get it working?
Thanks
Originally posted by @Sigfreid74 in #14 (comment)
The text was updated successfully, but these errors were encountered: