totalreverse / ttyT1941

Simple demonstrator to show how to control a Tacx T1941 motor brake via a serial connection
GNU General Public License v3.0
16 stars 3 forks source link

How to detect Headunit and Motorbrake Tacx Types #8

Closed WouterJD closed 4 years ago

WouterJD commented 4 years ago

Hit @totalreverse !

I get questions about a "Tacx Flow i-Magic T1901 trainer with the T1932 head unit"

Untill now life seemed easy, checking the USB deviceID

tt_iMagic        = 0x1902    # Old "solid green" iMagic headunit (with or without firmware)
tt_iMagicWG      = 0x1904    # New "white green" iMagic headunit (firmware inside)
tt_Fortius       = 0x1932    # New "white blue" Fortius headunit (firmware inside)
tt_FortiusSB     = 0x1942    # Old "solid blue" Fortius (firmware inside)
tt_FortiusSB_nfw = 0xe6be    # Old "solid blue" Fortius (without firmware)

and I lived in the easy world:

But now we have 64byte interface with Power2Resistance-formula type 1

How do I know what is what? Any suggestions?

PS. I will have a meeting with @mattipee shortly discussing the refactoring of the usbTrainer interface. If you like to join in, ping me on messenger.

Thanks for all the information you share; it's a very nice experience to be connecting around the globe through the inhouse-Tacx adventures people play - even though at times sadly triggered by the Corona situation.

totalreverse commented 4 years ago

As far as I understand it: the newer T1904 and T1932 head units have their own power model for the eddy current trainers inside their firmware and they emulate what you call "type 2" formula.

EDIT #1 I think, I cannot help in the refactoring issue, because I am not experienced in writing high quality python code - the tty1941 project was also one of my first python programs ..

EDIT #2 fine if someone else can benefit from the information I found during my investigations ...

WouterJD commented 4 years ago
  1. To be clear: the definition of "resistance" depends on headunit, not the brake?

  2. Welcome anyway for a virtual cup of coffee and have a chat

  3. I could not have built without

totalreverse commented 4 years ago
  1. For motor brakes: The definition of resistance is the raw value from the brake.
  2. For eddy current brakes with T1904, T1932 head units: The definition of resistance is the result of an unknown model inside the head unit.
  3. For eddy current brakes with T1902 and the old T1902 firmware: The "resistance" value is linear to the time the dynamic magnetic field is switch on. The real resistance heavily depends on real physical effects, but may be approximated with a simple modell. Another solution could be to make a lookup table after real world calibration runs for several speeds and times (= duration with magnetic field switched on).
WouterJD commented 4 years ago

Went through this and the wiki again...

My take of it is that in FortiusANT I should consider two USB-interfaces 1902 and 1904/1932/1942 and not worry about all kinds of commercial names and combinations. (ANT+ Vortex aside).

At the software side all I can know is these USB-id's and the related buffer length. If TTS works (Tacx does not have other interface info either) then we can work.

If you agree: issue close - else I like to read. And: thanks again!

WouterJD commented 4 years ago

Thanks.