T16000M Hotas not recognized

I just today had installed E:D again (on Steam) and wanted to play the game using the T16000M I used before multiple times. Where normally the game instantly recognises the hotas, now it didn't. Not even a sign of it in the controls options. Everything relevant is up to date and in Windows the peripherals are recognised, customisable and testable. I already put up a ticket, but maybe I can get the answer here quicker to why the game doesn't recognise my hotas.
 
Repeating the top PC posted reasons you have not stated you tested

Which USB port did you put it in...
Many a PC user posted have stated before that Hotas must be put in to the exact same port as the first time its used on the game of Elite on the PC or its not seen.
This is a Windows PC client issue...

Also USB 3 VS USB 2 ports also made a difference...
Swap the USB cable around... Throttle and stick swap...

Thats the basic ones out the way...
you can test that while waiting for others to post...
Edit bonus = Delete the thrustmaster hotas software... then run Elite Dangerous...
 
Last edited:
Also: when setting up the HOTAS in ED, did you have any other controller connected? ED is fussy this way - if I forget to switch on the XBox controller after a reboot (or whatever makes it turn off itself), ED will also stop working with my HOSAS and fall back to kb&m, as the full controller setup as it was configured is not available.
 
Are you using the TARGET software or any other kind of joystick curve / virtual joystick software?
Last time you installed it, were you still on a previous version of windows?

The way those sorts of software work is that they remove the controller from the OS and present a virtual controller instead with the remapped axes, but Windows 10 has a """"""""helpful""""""" power-saving feature where it tuns off USB ports when it detects that a device has been disconnected - so your controller will be fine right up until you turn the TARGET profile on, then it'll work for a while before ceasing to register inputs.

To fix it, you need to use software like USBDeview to find the peripheral in question, then open the registry entry for that controller, set the enhanced power management value to 0, then reboot.

There are a few other power settings that can mess with USB devices the same way.
(don't get me started on microsoft's general habit of putting features behind registry entries instead of putting them in the control panel where they should be - the Surface's "automatically adjust the brightness depending on what's displayed on the screen" setting is a nightmare for photo editing and it's not in the display options at all)
 
@GraphiteGB : Tried the USB swap and got rid of the Target software, alas, nothing helped. Thanks for the assistance though.
@Ashnak : Apart from my KB+M nothing else is connected to the PC. Thanks for the tip though :)

@Screemonster : I did have target software, but the last time I played it wa on the same software/hardware setup (I think a few months ago. ANd I deleted all the target and hotas software just now and tried it again. Maybe I have to go into the registries to get everything out?
 
Screemonster's post above regarding checking USB power should be something you verify. If the device is not present when ED starts up, ED will load a default KB & Mouse control set and overwrite the startup file.

Assuming you don't have power savings interfering with your controller, you hadn't mentioned whether or not you went through the basic trouble shooting steps but just in case you didn't. Did you make sure that the joystick was present in your OS? They can be viewed by running the Joy Stick control panel or from RUN you can get to the shortcut by running joy.cpl.

If doesn't see your joysticks then it means Elite won't either. ;)

You didn't specifically mention which Thrustmaster but I assume by stating HOTAS you mean the example below. The example below is for the Thrustmaster T16000M Flight control System which includes both the T16000M joystick and TWCS Throttle. As of this posting, here is the link off the Manufacturers website: http://www.thrustmaster.com/products/t16000m-fcs-hotas

Joy-cpl.jpg


NOTE: If thrustmaster's T.A.R.G.E.T. software is still loaded as a driver, then you won't see two joysticks but rather a combined joystick. That could very well by your entire issue because that software needs to be active during gameplay once the driver is installed. If you only see one joystick then somehow you failed to uninstall the T.A.R.G.E.T. software completely. As you probably know, the software needs to be loaded and running in the background for applications to be seeing it. It's one of many reasons I've avoided it. In fact, I purged it from my system because of troubleshooting issues.

Now assuming your already did this, the next troubleshooting step is to make sure that you have the correct controller selected in the OPTION\CONTROL menu. If it say's "Other" then that means that Elite has saved a custom profile which you changed during your previous session. The internal logic of the program is to first load the previous controller. If that is NOT present when the game starts up, then Elite will load the default controller. So how can you tell? Two ways, the first is from the menu but I assume you already checked that.

Here's how it should look if you left the defaults in place:
Joystick selectScreenshot 2020-12-17 185257.jpg


If you already changed the settings, then it will look like this:

joystick select Screenshot 2020-12-17 185343.jpg


The second method is slightly more complicated but leaves no doubt as to what is being loaded by ED. Manually verify which bindings file is selected is for your joystick by ED. This can be done by manually navigating to the bindings folder. The short cut to that folder is to WIN+R and copy and paste this command into the run dialogue box and hit enter.

%localappdata%\Frontier Developments\Elite Dangerous\Options\Bindings

Run Elite Bindings shortcut - Screenshot 2020-12-19 093026.jpg

Assuming you have a default installation, it will be in a directory called C:\Users\%USERNAME%\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings where %USERNAME% is your user name.

In my experience while running into the very same issues with Thrustmaster T16000M HOTAS FCS, I found it much easier to troubleshoot by moving all of the bindings file that were NOT related to my joystick into a backup directory. This prevents Elite from loading an incorrect controls definition and makes it much easier to troubleshoot.

When you open that directory you will find multiple binding files that will look something like this:
Bindings directory Screenshot 2020-12-19 093802.jpg

I recommend creating a backup folder as seen in this example and move all of the ".binds" files that do not have the name of your joysticks into the backup folder. Leave the ".start" file because it lists the default name of the first .binds file the game will load.
Now open the file "StartPreset.start" using Notepad or any other text file reader and verify the name of the profile. Note: It will only note the prefix to: ".3.0.binds" which is how FDEV kept track of different revisions of controllers. So in the example above, StartPreset.start looked like this because I had already customized my HOTAS settings:
start preset Screenshot 2020-12-19 095059.jpg


Now in order to verify that your Joystick is being recognized by the ED Controller interface, you simply look in the ".binds" file for the name of your respective controller. Don't be intimidated by the XML file format, you don't need to understand XML to verify if your joystick is active. The easiest way is to search through it for one of the controls you know for a fact was already working at one time. In this example, I use <RollRightButton> and <ThrottleAxis> which appear by default on lines 49 and lines 135 respectively although depending on your device, it may be slightly different. For the Thrustmaster HCS T16000M Flight Control System it will look like this. NOTE: These devices appear to the OS as two different joysticks.
example of Bindings Screenshot 2020-12-19 094500.jpg

If these devices do not show up anywhere in your .binds file, then somehow the .binds file was either overwritten or the device was not active or present when Elite started.

Let us know if this helps.
 
@Templar01 I think you are on to something here!

1: I don't have the power saving on and get all the controllers/peripherals apart from eachother:
Joy.jpg


2: in the options menu of E : D there is no option of either trustmaster or custom between the controls options, only variations of Keyboard and mouse.

3: If I search for the "%localappdata%\Frontier Developments\Elite Dangerous\Options\Bindings"I get in the map you mentioned, but I got different things in there, which might give a clue to what is happening:
Bindingloading.jpg


The StartPreset file only has the words Mouse and Keyboard only in it.

I hope this will give you some interesting and useful information.
 
OK Now. The last file BindingLoadingErrors hits the nail on the head. This is a VERY helpful file. I hadn't seen that in so long I had forgotten that it gets generated when ED fails to correctly load the controller devices.

Let me offer up what I think is likely happening. Your situation, since you have rudder pedals, is different from mine so I can only offer up a theory since I can't reproduce it for myself.

The bindings files are clearly corrupt. We know this because of the MouseGUI showing up multiple times. I've only seen this a few times and I personally could not nail down a scenario where I could duplicate the problem sufficiently enough to submit a support ticket to FDEV. So the simplest thing I did was to move all the bindings file and start with a fresh file.

The smoking gun here is the message that states "Missing devices:" ED is not seeing your devices and therefore you are dead in the water before you start. Below are some possible remedies. Both of these suggestions presume the removal(backup) of all .binds file from the bindings directory. This will ensure you are starting with a clean slate.

Recommendations(these can be tried in any order after you remove or backup the .binds files)
  • Try first to reset your .binds file by removing it and starting up with no .binds files in the bindings directory, move all the .binds files to a backup directory then start the game. Remove BindingLoadingErrors too after each experiment to ensure that you have a set fresh of diagnostics. BindingLoadingErrors is only generated when there is an error so if you don't see it after game restart, that's a good thing.
    • Start up ED and go into controls and change a single parameter. You could let's say, change the fire button to the F1 key but anything simply to set the change flag is good enough. That will cause the game to allow you to save the file and it will save it to "Custom.3.0.binds". You will also not in the "StartPreset.start" file that it will also say "Custom" in the file. The important thing is to just edit the settings and then save them.
    • Exit the game.
    • Navigate back to the bindings directory and verify that a new .binds has been written. Make sure you remove BindingLoadingErrors before restarting the game as this may leave confusing diagnostic messages.
    • Start ED again. ALT-Tab to the bindings directory while the game is live and see if BindingLoadingErrors has been created. That should tell you if you're .binds file is still corrupt. As I said above, if BindingLoadingErrors is absent from the directory, that's good because it means the game loaded with no controller errors.
    • Repeat this step but this time change a single button but use your Joystick instead. Again, the fire button using the Fire1 button on the T16000 is probably the best test. It might also help diagnostics to assign a keyboard key to the primary key and the fire button to the secondary or the opposite. Here's what I mean. Primary is Joy 1 on my T16000 and the 'F' key is my keyboard. This way you can verify that the bindings you're using is in fact loaded. Setting it to a seldom used key like perhaps the Tilde key '~' or grave key also might help to narrow down if your profile you think you're using is the one that is loaded.
    • Fire button Screenshot 2020-12-19 173113.jpg

  • The other thing you can try is to load an alternate .binds file for your configuration. I might suggest for diagnostic purposes to disconnect the pedals and verify through JOY.CPL that it is in fact disconnected. Alternatively you can simply disable it in system devices. Verify again in JOY.CPL that the rudder controller is missing.
    • You can find numerous bindings files at https://edrefcard.info/list The left column is a hot link to the page for that joystick configuration the .binds file link is at the bottom. I did notice that if you search for "T-Rudder, T16000MFCS, T16000MFCS, T16000MTHROTTLE" there are many configurations so you may try one of those. Again, this is all trial and error.
      • https://edrefcard.info/binds/lwlrnv at the bottom of that page is a link to the .binds file which you will have to right-click and download. https://edrefcard.info/configs/lwlrnv.binds
      • I've attached my own .binds file since I use the T16000M with TWCS but note that I do NOT use rudder pedals so keep that in mind. The game will attempt to load the profile but you may see errors in BindingLoadingErrors.

This is what forums are great for. Your experience has inspired me to investigate something. One thing I am going to test out is to see what happens to my own settings when I plug in third joystick. My own experiments with virtual joysticks have demonstrated that ED doesn't play well with a third controller device(perhaps rudders may just be one example scenario) It shouldn't be an issue but then again, how much testing can we honestly expect for such a use case? I used vJOY as an example and found it so buggy with ED that I had abandoned it. Again, this may have been a problem with vJOY but it also happened with two other virtual joystick drivers so I abandoned this approach. I have an xBox controller that I'll experiment with and if I find anything noteworthy, I'll start another post reporting my findings.
 

Attachments

  • T16000m HOTAS and TWCS.zip
    5.8 KB · Views: 5
Thanks again for the time you put in this, @Templar01. I followed your new post and everything went well up until I put the old bind files in a backup map, restart the game and alter (for instance) fire to F1. The StartPreset gives the Custom preset line, and there is a custom 3.0 file.

The bad part starts there with the game still not seeing the Thrustmaster or rudders. So changing Fire to the stick's trigger is not possible and I get an errorfile while downloading the custom binds you provided via the link into the binds map, reading within:

There where errors when loading preset file: lwlrnv.binds
There are multiple entries of binding "MouseGUI" Only the first will be used
There are multiple entries of binding "MouseGUI" Only the first will be used
Missing devices: T16000MTHROTTLE, T16000M, T-Rudder

For the new custom bind, I disabled the rudder like you mentioned.
 
That is puzzling. So here is what I did at my end to try to reproduce what you have. Here are the steps I took and if you could take the same steps we can at least be on the same page(at no time during this did I actually engage game play this was solely to test controls):
  1. Disconnected all of my joystick devices and restarted my computer.
  2. Verified that no game controllers were present in the joy.cpl
  3. I moved all of my bindings files in the bindings directory and deleted everything else so that I had a blank directory.
  4. I Left Windows File Explorer open in a second monitor so that I could witness what was happening in the bindings directory and when.
    1. You may have to set ED into windows mode and load run it in a lower resolution so you can view side by side Explorer while navigating ED.
  5. Starting up ED, I paid close attention to what happened in the explorer window showing the bindings directory. After game load the directory remained empty.
  6. At the main hanger screen I did NOT enter the game, instead I simply entered OPTIONS/CONTROLS
    1. In my explorer windows I verified that no file was created.
  7. I then selected the default device which was the Mouse and Keyboard.
    1. At this point, Explorer showed that StartPreset.start was created.
  8. I saved my settings and closed the program completely. At no time did I enter game play.
  9. I then plugged into my computer both the T16000M and TWCS and verified that both were active. via Joy.cpl
  10. I then started up ED and went to the OPTIONS/CONTROLS again and low and behold!!! I had forgotten that the T16000M FCS is in fact hard-coded into ED!!! So It immediately appeared in my drop down where it did not do so before.
  11. trhustmaster hotas  - Screenshot 2020-12-19 205249.jpg
  12. I then saved the settings and noted that the the T16000MHOTAS was now my startup device.
  13. Joystick presets - Screenshot 2020-12-19 205737.jpg
Of all these steps, step #10 is the most critical. If you can't get ED to recognize that there is a T16000M HOTAS connected to your system, then you now have something concrete to go to FDEV support with. I suspect though that if you succeed at step 10, you'll find that your Joystick will now respond.
 

Attachments

  • trhustmaster hotas  - Screenshot 2020-12-19 205249.jpg
    trhustmaster hotas - Screenshot 2020-12-19 205249.jpg
    189.8 KB · Views: 7
@Templar01 As you suspected, point 10 was the make-it-or-break-it point and sadly I didn't get to make the T16000m apear under the controls drop down list :/ Ah well, I guess there is one other option. Delete the whole frontier map from both my steam and my local folders. Maybe there is something else that is bugging out in any of these maps.
 
@Templar01 Ok, found the answer: https://steamcommunity.com/app/359320/discussions/0/4048138220338765552/

Seems it was Steam that was ff-ing with the controls. Like the person in the OP of the steam post, I too went to Big Picture mode and undid all the v's of all the controller supports (and saw the stick and TWCS throttle names down the page). Then I started the game et voila: the T16000m hotas could be found in the controls options again. Thanks again for all the help in figuring out the issue and I hope this can help current and future people having the same issue as mine.
 
@Templar01 Ok, found the answer: https://steamcommunity.com/app/359320/discussions/0/4048138220338765552/

Seems it was Steam that was ff-ing with the controls. Like the person in the OP of the steam post, I too went to Big Picture mode and undid all the v's of all the controller supports (and saw the stick and TWCS throttle names down the page). Then I started the game et voila: the T16000m hotas could be found in the controls options again. Thanks again for all the help in figuring out the issue and I hope this can help current and future people having the same issue as mine.
Excellent sleuthing work and thanks for not giving up. Hopefully this thread will help the next person who runs into these kinds of shenanigans.

I had experimented with Steam's Big Picture mode trying to get the T16000M to work on the SteamLink box when I first got one. Never did get it to connect so I set everything back to default but it makes sense that this would have interfered with the game.
 
Top Bottom