Yet Another T.16000M FCS HOTAS Review and Setup
-
As a new owner of the Thrustmaster T.16000M FCS HOTAS (stick+throttle), I’m giving a short review here as promised in another thread and show my setup.
Mini-Review
T.16000M Stick
The stick is good. I won’t go into details, as you can find plenty of general reviews on the net. Just concerning my main criteria, the center-point and overall precision, it beats my previous cheap joystick by far. It has no noticable dead-zone at all. It is relatively stiff and there is a notable resistance from the opposite side when passing through the center point, but from a value-readout point of view you don’t notice and that’s exactly what you want imo.
The base is surprisingly big. A bit too much imo. Especially since you don’t really need that much buttons (12) on the base.
It’s also quite heavy. There must be some metal plate in it. Doesn’t move on the desk.
The top stick button below the hat is difficult to reach because it isn’t on the “thumb arc” like the other buttons. The top button layout is worse than my previous stick tbh.FCWS Throttle
Also good. Smooth throttle axis. Good arrangement of the buttons and plenty of. Perceived quality is OK.
The top right side POV hat is the one most naturally attainable, but since the hat has a symmetric shape, it is sometimes difficult to hit a direction without hitting the adjacent diagonal. So it’s better not to map this to critical stuff.
Mixed feelings for the front analog ministick. This one has an important dead-zone around center and only limited precision. It took me a while to effectively slew radar cursors with it. I had to reduce its sensitivity slightly or even map it to buttons entirely.My Setup
(Heavily based on BlueRavens TARGET script. Kudos to him!)Download Logic’s setup v5 (zip)
Then unzip, follow instructions below.What’s new in v5
- Out-of-the box compatible with TFRP pedals.
- People that used a version prioir to v5 need to re-assign axes (in BMS controllers config, once) when using this one!
How to use (also included in ReadMe)
This is Logic’s Thrustmaster T.16000M FCS HOTAS and key setup for Falcon BMS.
Installation Requirements:
–-----------------------
Download drivers for T.16000M joystick and TWCS Throttle from Thrustmaster website and install:
https://support.thrustmaster.com/en/product/t16000mfcs-en/
https://support.thrustmaster.com/en/product/twcsthrottle-en/Also download and install TARGET software from Software section.
One-time Setup (to be done once)
–-------------
Copy DeviceSorting.txt to FalconBMS\User\Config.
This will ensure that BMS always sees devices in same order so that axes can be defined consistently. -
Edit your FalconBMS\User\Config[ProfileName].key file to add the HOTAS bindings:
Copy the tail from Logic.key, starting from the lines
#===================================================================================
SimDoNothing -1 0 0XFFFFFFFF 0 0 0 -2 “===== THRUSTMASTER T.16000M FCS HOTAS =====”
#===================================================================================
How to use:
–--------
In TARGET script editor, load the “TWCS Throttle-FalconBMS.tmc” script, compile and run it. Leave the application running as long as you play Falcon BMS. You need to run the script every time before launching Falcon BMS.You may verify that the script is running well in the Windows “USB Game Controllers” setup section of Windows Control Panel. This must show the device “Thrustmaster Virtual Game Controller (root)” and NOT “TWCS Throttle”.
Then launch Falcon BMS.
In Controllers Setup select T.16000M (joystick) as the primary controller. In Advanced Setup, assign your axes as desired (See screenshots). Save. This is to be done once only.
Rationale
TARGET will be used to map the physical “TWCS Throttle” USB device to a virtual device called “Thrustmaster Virtual Game Controller (root)”.
We do this for two reasons:- Otherwise it would not be possible to use the TWCS 8-way POV hat (top right side) because only one POV hat is supported for all connected controllers and the joystick has one too.
- We don’t want to use the rudder rocker as an axis but want to map it to two buttons instead.
- Optionally, we can map the analog ministick to buttons too.
- We use some advanced TARGET features like generating different actions for long versus short button press.
Note: TARGET would have allowed mapping both the stick and throttle to one (combined) virtual device. I didn’t go this path and left the stick alone. So the throttle may be combined with another stick (possibly from another manufacturer) without having to change anything.
Also, this allows to use a full set of max 32 (virtual) DX buttons for the TWCS alone.Adapt to your own needs!
T.16000M FCS Hotas-button-IDs.pdf contains the axes and button IDs as seen by BMS which you can use as such in the .key file.
T.16000M FCS Hotas-Logic-editable.pdf shows the final mapping.
You can edit it to your own needs.
‘#’ denotes functions accessible by simultaneously pressing the DX SHIFT key (TWCS button DX2 (33) by default, labeled #SHIFT#).
‘>>’ denotes functions accessible by long press (>500ms).The “TWCS Throttle-FalconBMS.tmc” script contains the mappings of hardware buttons to DX buttons DX1-DX32.
Logic.key contains the mappings from buttons (DX1==32) to BMS functions.Known issues:
Problems encountered with Teamspeak when TARGET script is run after TS.
You must run TARGET script before starting Teamspeak!2018-11-25
Logic.Remarks:
PS: Some will note the blasphemy of mapping the stick’s trigger to WPN Relase (Pickle).
Well, afaiac i’m rarely ever using guns, so wasting such a precious button seemed inacceptable.
And i found the button below the hat a bit awkward to reach. (Need to flex your thumb quite a bit)
Gun is still available on trigger with DX SHIFT.PPS: CMS Left and Right are intentionally inverted. This is because it is easier to push that hat forward with the thumb than to pull it back. So i gave pushing the more important function.
PPPS: I have an optional config where i map the TWCS analog ministick as buttons instead of axes. I still dont have made up my mind on this. You will see the comments in the tmc script and may activate one or the other version. If activated then ministick directions will have button Ids DX21-DX24.
-
Great and excellent work mate, congrats!!!
May I borrow your README to adjust and include in my package? -
Great and excellent work mate, congrats!!!
May I borrow your README to adjust and include in my package?Thanks, and sure, take what you want.
-
I’m just getting started with BMS and I received my T16000M FCS HOTAS today. I found this post after a few minutes of searching the web. I followed the instructions to the letter as this was a new install of the drivers and TARGET software but I still can’t the throttle slider to be recognized by BMS. I can assign it to the virtual controller, but the control doesn’t work. I can assign the throttle control the T16000M slider and it works, so there appears to be something I’m doing wrong or a step I’m missing so that I can get the throttle working. When I run the TWCS Throttle-FalconBMS.tmc script in TARGET Script Editor I get this as the output…
Running script: C:\Users\Jody\Downloads\HOTAS\T.16000M FCS Hotas-Logic\TWCS Throttle-FalconBMS.tmc
*** Allocated ProcInstances found from the previous run: use FreeProcInstance() ***
Mapped plugin module “C:\Program Files (x86)\Thrustmaster\TARGET\Plugins\sys.dll”
Compile Succeeded.
Physical USB HID devices managed by script!
Currently plugged USB HID devices[1]:
1: “T.16000M” - “USB\VID_044F&PID_B10A&REV_0500”
USB HID device with hardware id “VID_044F&PID_B687” cannot be found
Virtual HID devices managed by script!
Connecting virtual joystick…Done
Device name set to Thrustmaster Combined
Connecting virtual keyboard…Done
Connecting virtual mouse (absolute axes)…DoneAny help would be appreciated. Thanks.
EDIT
That problem of the missing virtual controller went away after another reboot so I’d suggest adding another “reboot” after the script is compiled and ran and the virtual device shows up in the USB Game Controllers panel
-
Glad you sorted it out.
The line reading
USB HID device with hardware id “VID_044F&PID_B687” cannot be found
seemed to indicate the TWCS Throttle wasn’t plugged in at that moment or at least not recognized as such.
I am not aware that i had to reboot at any time during installastion.
Also, you have to run the script everytime before using the throttle in BMS, whether you just rebooted or nor.The initial condition (before running the script) should be that Windows “USB Game Controllers” setup sees “T.16000M” and “TWCS Throttle” USB devices.
After running the script it should instead see “T.16000M” and “Thrustmaster Virtual Game Controller (root)”. -
Yep. That’s what I thought too. I knew the “cannot be found” message had to be pointing to the throttle. After stopping and running the script a couple times and checking the USB Game Controller panel which showed the virtual device correctly, I rebooted and it worked fine after that. I blame Windows 10 because I certainly didn’t do anything wrong.
Thanks again. This entire process made my journey to Falcon BMS relatively painless. Although, this solution for the T.160000.M is just temporary as my Warthog is shipping soon and should arrive in about 10 days (I’m in Okinawa so things take a while to get here).
-
Once again… my throttle isn’t working. The throttle control has moved back to the joystick slider. I’ve tried everything possible. Any chance that the T.16000.M being the second device is causing the throttle to move over? Here is the script output now…
Running script: C:\Users\Jody\Downloads\HOTAS\T.16000M FCS Hotas-Logic\TWCS Throttle-FalconBMS.tmc
Compile Succeeded.
Mapped plugin module “C:\Program Files (x86)\Thrustmaster\TARGET\Plugins\sys.dll”
Physical USB HID devices managed by script!
Currently plugged USB HID devices[2]:
1: “TWCS Throttle” - “USB\VID_044F&PID_B687&REV_0110”
2: “T.16000M” - “USB\VID_044F&PID_B10A&REV_0500”
USB HID device “TWCS Throttle”(USB\VID_044F&PID_B687\6&241970D9&0&4) selected
Virtual HID devices managed by script!
Connecting virtual joystick…Done
Device name set to Thrustmaster Combined
Connecting virtual keyboard…Done
Connecting virtual mouse (absolute axes)…Donemain returned 0
============================
-
Replying to myself again. I had to unplug the joystick/throttle then plug in again, compiled/ran script and it still didn’t work even though the throttle showed up second this time. Rebooting computer and running through it all again produces the same result. So very frustrating.
****** EDIT (again) ******
Had to go back into the Controllers>Advanced and select the throttle again. Problem solved againRunning script: C:\Users\Jody\Downloads\HOTAS\T.16000M FCS Hotas-Logic\TWCS Throttle-FalconBMS.tmc
Mapped plugin module “C:\Program Files (x86)\Thrustmaster\TARGET\Plugins\sys.dll”
Compile Succeeded.
Physical USB HID devices managed by script!
Currently plugged USB HID devices[2]:
1: “T.16000M” - “USB\VID_044F&PID_B10A&REV_0500”
2: “TWCS Throttle” - “USB\VID_044F&PID_B687&REV_0110”
Installing filter driver to VID_044F&PID_B687. Please Wait…Done!
USB HID device “TWCS Throttle”(USB\VID_044F&PID_B687\8&1BE45B7D&0&2) selected
Virtual HID devices managed by script!
Connecting virtual joystick…Done
Device name set to Thrustmaster Combined
Connecting virtual keyboard…Done
Connecting virtual mouse (absolute axes)…Donemain returned 0
-
Did you copy DeviceSorting.txt to FalconBMS\User\Config?
In BMS/Setup/Controllers/Controller, you should select T.16000M and never change that again!
Then set up axes as desired, selecting t16000m or virtual controller as wanted. -
Awesome work Logic! Could you recommend an alternate mapping for those of us that don’t have head tracking and need to use the POV hat for, well, POV?
-
Yep. That file is there.
Although I could have suffered through learning BMS with the T.16000.M, I boxed it up and put a new Warthog HOTAS on my desk yesterday. Only problem I have now is my mild-OCD is being triggered by a burned out light on the throttle (FLOW R). Sent a message to Thrustmaster and hope I can just replace the light inside. There are so many buttons and now I need to learn how to use them all. -
Awesome work Logic! Could you recommend an alternate mapping for those of us that don’t have head tracking and need to use the POV hat for, well, POV?
In my latest setup, i have assigned view directions to the SHIFTED TWCS castle hat as i use them with the 2D (snap) cockpit at times. (Without diagonals :?)
If this is sufficient for you i can just update the initial post with my latest setup.But you probably want to map view to the joystick POV hat? In that case it needs some modification, but stays simple to do.
Mapping the Pov hat for view is simple, just replace the appropriate section in the key file with this:#============================================================================================== SimDoNothing -1 0 0XFFFFFFFF 0 0 0 -2 "***** 8-Way POV Hat *****" #============================================================================================== OTWViewUp 0 -1 -3 0 0X0 -1 "VIEWGEN: Rotate View Up" OTWViewUpRight 0 -1 -3 1 0X0 -1 "VIEWGEN: Rotate View Up-Right" OTWViewRight 0 -1 -3 2 0X0 -1 "VIEWGEN: Rotate View Right" OTWViewDownRight 0 -1 -3 3 0X0 -1 "VIEWGEN: Rotate View Down-Right" OTWViewDown 0 -1 -3 4 0X0 -1 "VIEWGEN: Rotate View Down" OTWViewDownLeft 0 -1 -3 5 0X0 -1 "VIEWGEN: Rotate View Down-Left" OTWViewLeft 0 -1 -3 6 0X0 -1 "VIEWGEN: Rotate View Left" OTWViewUpLeft 0 -1 -3 7 0X0 -1 "VIEWGEN: Rotate View Up-Left"
Then you need to find another place for your TMS commands of course.
-
Yep, I was thinking along those lines, was just wondering if you already had an alternate mapping scheme already set up. Although I am an original falcon player from '98, I’m still a bit of a noob to the BMS version. What is a “SHIFTED TWCS castle hat”? Also, what does the “#” denote on your layout PDF? I realize they are secondary commands for that button, but how do you activate them? Thanks again and please pardon my ignorance. Happy flying and check six!
-
What is a “SHIFTED TWCS castle hat”? Also, what does the “#” denote on your layout PDF? I realize they are secondary commands for that button, but how do you activate them?
TWCS is the throttle controller name. Castle hat is the hat that looks like a castle tower
(bottom on side of TWCS). SHIFTED means secondary function, as you already figured out.
BMS allows to assign each button with two functions, one regular and one SHIFTED. The latter are the ones i marked with “#” in my layout. The SHIFT key is the one to be used (hold down) to access the secondary functions, in my layout it is the leftmost forward button of the TWCS, marked with “#DX SHIFT”. (But you can reassign it to somewhere else of course)
(See https://www.benchmarksims.org/forum/content.php?153-DirectX-Shifting-Facility for specs) -
How do I change the button assignments in your script?
ETA: Nevermind, I figured out I can do it in Falcon setup.
-
Thanks! Got my 16000m figured out. Now I just have to figure out how to fly the f-16
-
Great work! Stick, rudder and throttle are working well together and with all buttons and functions. I will change some buttons, because i own the rudder, but this is no problem anymore.
Thank you very much!S!
Leo -
Hi Logic,
I am having some problem having buttons on my TWCS throttle to be assign with a fixed DX assignment.
For example, after running my script and pressing the 1st button on the throttle, the falcon 4 controller setup screen would button no “65” instead of the expected “33”.
I had tried deleting the devicesorting.txt file and changing the order of devices and sometime it would show “33”, but sometime it would remain as “65”.
Any help on this?
-
Looks definitively like a device order problem.
Verify that when your script is run, you only have the “T.16000M” and “Thrustmaster Virtual Game Controller (root)” in your Windows USB controllers setup.
If you still see “TWCS Throttle” there, then your script isn’t running/working or something else is messed up (Did you run Teampseak before? Then this is the issue! See ReadMe on first page).
Of course also verify your devices are plugged-in before you run the script. -
I had the following with regards to the devicesorting file;
1. delete the entire file and let BMS recreate it
2. gone into the file and ensure t16000M is the 1st device follow by TM Virtual controller as the 2nd device
3. delete the line containing TWCS throttlethe funny thing is TWCS throttle always keep reappearing (as the last device though).
BTW I do not run teamspeak.