Thrustmaster Hotas Warthog Set Up help in 2.4

IronEagle

Lieutenant
Jul 10, 2016
5
4
85
RSI Handle
Iron3
Cool iron eagle. That's good to hear. I had tons of problems getting it done originally after I connected a non win 10 supported cam and then took it back off. Cortana actually kept loading the drivers for it even though it was uninstalled and that messed up my original usb connection since she took it over. Big important thing for win 10. Make sure the device has win 10 drivers for usb devices. Win 10 is different for usb.

Anyway for others who want to get that profile running. Here is how I do it. I am not sure if this is the best way but it works very well for me. But really check out all those links in my other post in this thread. Do what makes YOU happy always.

Anyway. Here is how to rock it quickly.

Awesome video you have here.
this might helps someone alot :)
 
  • Like
Reactions: DeepDrum

marcsand2

Space Marshal
Staff member
Officer
Donor
Mar 15, 2016
7,007
22,018
3,025
RSI Handle
marcsand2
That is true, and also false, with the thrustmaster target software, it doesnt matter what order or port they are plugged into, it automatically finds the port and links the throttle and stick, and any other TM devices hooked up and called in your script, as one virtual device. Then its just a matter of making sure that star citizen is run after starting the script and that the control layout for SC has the right controller number.

See spoiler for explanation
Code:
Physical USB HID devices managed by script!
Currently plugged USB HID devices[2]:
1: "Throttle - HOTAS Warthog" - "USB\VID_044F&PID_0404&REV_0100"
2: "Joystick - HOTAS Warthog" - "USB\VID_044F&PID_0402&REV_0100"
USB HID device "Throttle - HOTAS Warthog"(USB\VID_044F&PID_0404\5&DC4A972&0&13) selected
USB HID device "Joystick - HOTAS Warthog"(USB\VID_044F&PID_0402\5&DC4A972&0&8) selected
USB HID device with hardware id "VID_044F&PID_B10A" cannot be found
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)...Done
As you can see, if finds all USB HID Devices then selects them if they are in the script, now i actually have a set of TFRP pedals incoming to test and review, however you will notice my MFG Crosswinds are not called into the TM Script, this is because they cant be called using target software as its a thrustmaster program, if you use solarflys setup, with any pedals but the tfrp, there is a second SC xml needed to import the rudder controls, or you need to add them manually to the xml profile for SC (Can be done in-game as far as im aware). However this is where controller port numbers become important, and you have to know what order your pedals load in.

I have found that with my stick and throttle both plugged in all the time, it will still occasionally switch the load order, but still generally lists them as 1 and 2 with the stick being 1 90% of the time. And with solarfly's script, as long as one of the 2 devices is #1 when the script is run windows will generally detect the virtual device as #1.

Either way, i went from a custom profile to solarfly's yesterday just to test and i had no problems other than having to update my target software. Didn't even need to reboot, loaded up the profile in target and star citizen and it worked.
Yup, it matters to SC because SC recognizes Joy1, joy2, joy3. Order of plugging them in matters. Target makes flightstick and throttle one joy.
 
  • Like
Reactions: DeepDrum

Ripcord33

Grand Admiral
May 2, 2016
217
668
1,210
RSI Handle
Ripcord03
Yes, matters to to SC if they aren't combined using target, but with target they are automatically combined, then you just need to make sure that the virtual device is called on by the right number, so if your pedals are joy1 and the virtual device joy2 then you switch it up. however the statement i made about when use target the stick and throttle load order doesnt matter is still true.

This is because SC is no longer calling on them as individual devices but as one device linked through the target software.

So in my case, i have my MFG's plugged in, and they always load as joy 3 when windows boots, the stick and throttle always load as 1 and 2 (not respectively exclusive for some reason) now when i load the target script, it unloads the stick and throttle and reloads the virtual device. The virtual device then automatically becomes joy 1 under windows, and my MFG never changes from joy 3 because its never reloaded. this in turn means that SC is reading devices joy 1 and joy 3, and i have no joy 2 slot plugged in unless i plug in a 3rd device while the first 2 are still connected in target. However, when i stop the target script, it unloads the virtual device, and reloads the stick and throttle as individual devices, returning them to joy 1 and joy 2.

Now, i have plenty of open ports, and i can shift the ports that they are plugged into around, the only time it changes what order they are loaded as is if i unplug all 3 joy devices and plug them in in a different order. However, i have also noticed, this doesnt always change joy assignments, but windows 10 doesnt like ports being switch and has to reload the drivers anytime i plug them into a new port xD
 
Last edited:
  • Like
Reactions: DeepDrum

Ripcord33

Grand Admiral
May 2, 2016
217
668
1,210
RSI Handle
Ripcord03
Also, i have a nice autohotkey script that i can use to figure what number my stick, rudder and throttle are loaded in to make sure i have the right profile loaded in SC, however since i dont unplug them frequently, the load order rarely changes.
 
  • Like
Reactions: DeepDrum

marcsand2

Space Marshal
Staff member
Officer
Donor
Mar 15, 2016
7,007
22,018
3,025
RSI Handle
marcsand2
Also, i have a nice autohotkey script that i can use to figure what number my stick, rudder and throttle are loaded in to make sure i have the right profile loaded in SC, however since i dont unplug them frequently, the load order rarely changes.
I never unplug them and if I do, then my procedure does well. Another weird thing, everywhere I read that you shouldn't use an USB hub for the warthog / throttle... :p
Since I builded my primitive game seat, the flightstick USB cable has to go behind my chair. I didn't found my USB extension cable so I just used a USB hub. Never got any problem with it. It is a cheap hub without a power supply.
 
  • Like
Reactions: DeepDrum

Ripcord33

Grand Admiral
May 2, 2016
217
668
1,210
RSI Handle
Ripcord03
I never unplug them and if I do, then my procedure does well. Another weird thing, everywhere I read that you shouldn't use an USB hub for the warthog / throttle... :p
Since I builded my primitive game seat, the flightstick USB cable has to go behind my chair. I didn't found my USB extension cable so I just used a USB hub. Never got any problem with it. It is a cheap hub without a power supply.
I heard that too, never had a problem, the way my desk is setup, and when i transfer it to my DCS Cockpit build, it always gets plugged into a hub, never had any issues with it so far. But then again, the 'Hog has been around a while, and USB tech has improved alot since the 'Hog came out.

My cockpit build doesnt allow the cables from the stick or throttle to reach the tower sitting at the front of the build, so USB hubs mounted in the build were necessary. and my desk doesnt have room for the tower underneath or on top so the cables that go behind the screen are all plugged into a hub if they aren't long enough, which my throttle's isnt.
 

IronEagle

Lieutenant
Jul 10, 2016
5
4
85
RSI Handle
Iron3
I never unplug them and if I do, then my procedure does well. Another weird thing, everywhere I read that you shouldn't use an USB hub for the warthog / throttle... :p
Since I builded my primitive game seat, the flightstick USB cable has to go behind my chair. I didn't found my USB extension cable so I just used a USB hub. Never got any problem with it. It is a cheap hub without a power supply.
Same here, connecting Stick and Throttle via USB Hub on my Keyboard (Roccat Ryos MK Pro)
 

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
I used a hub for a while as well and it worked fine for a while. Cortana lead me to believe the hub was bad when she got involved not letting go of some old cam drivers.
Firmware updates are not recommended to be done on a hub though.
I have no idea why nor do I care. Good hubs work fine.
 
  • Like
Reactions: marcsand2

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
Nice vid, only one remark, it doesn't matter in which USB port you plug the devices, the order in which you plug them in matters. I found one routine working all the time: plug in flight stick, reboot, plug in throttle, reboot, plug in the rudder, reboot and ready to go. If you start SC, test one control, plug in another then Windows recognizes the control but SC doesn't until after reboot.
It does make sense to get the stick plugged in and recognized before you fire up SC for sure.
It would be difficult to get past the initial loading of the Target script (which is run before SC) as well without the stick connected.
I doubt you would get main=0 when firing up the script without devices attached.
Everyone is going to have a different procedure that works for them. A lot of people are going to have old non supported usb drivers that can just camp out forever in the depths of win 10, the registry and actually all over the place, even after install. They may go unnoticed for years and only surface in certain instances. They CAN mess up the ordering process since the fact that they are not win10 certified means they may or may not follow win10 rules. Sure they may appear to work but require strange startup procedures to ensure they do. They can really cause problems. USE win10 certified stuff. (I won't mention my non win 10 certified hub that is running 7 other devices here including gaming mouse and jeyboard ;) Those devices don't need special places in relation to others in the usb ordering.
If you are not using Target, where you plug them in matters. The behavior on some hubs IS different than going to some boards or cards. I wanted to see why a lot of sim people were saying "don't use a hub" now I know why.
The behavior of ordering on hubs does not appear to be the same as outside of hubs.
Yes they both work in Target however, personally, I will never put my TM or future MFG devices on a hub. I did. It worked but it was odd how one time it would change locations and one time it would change back. It makes sense now.
I have moved 7 other devices to my hub (not win10 certified, oops) instead. But really, it was fine. It worked. Knowing what went on told me I could make it behave the way I wanted. My case does not reflect what 99.9% of other people's cases. I elected to do something that most people may not ever do or it could be a while before they try it and officially I forget what I did *cough* *w*.
It really is way too deep into places in Windows to explain with my poor layman's brain.
You're right. With the solarfly setup, it's a bit of a moot point. It no longer matters as much. In Star Citizen with the Target script..
Still I got into the nitty gritty of it. If plugged into the same port, my stick is always first and my throttle is always second no matter what now.
I play other things that require my stick and throttle with no need to use Target and since I haven't got into scripting with it myself, I elected to solve the deep root win 10 usb problem on my own machine. I am NOT going to reboot 3 times to get a device combo working every time.
I can plug them in whatever order I want as long as they plug in where they are originally from without Target running and stick is on top. Always. I have never had to reboot. Windows 10. I never ran Windows 7 and so I can't comment but the behavior of USB devices seems to be different. I will attach a video to the bottom to prove the behavior of mine.
So what matters to you or someone else may not matter to me and vice versa.
With the Target script now apparently it's not a big deal.
I just tossed 120 hand written pages of testing and learning some win10 usb stuff in my burn pile.
At least in my research and the results thereof, I can now smack down some stuff that I never could before.
Cortana has been warned. Do not mess with me again or you are gone..permanently.

A lot of folks like to make their own profile outside of Target. This stuff has merit to them. It can be a bear.
All the ordering rules come back into play. Every machine is a different problem.
It is always going to be comparing apples and oranges. I can only share my own experiences.

Marc, In this case, as you can see in the following video at the end, the behavior of our machines differs. I suspect you are running a hub. Is that correct? The answer will help my research into usb and win10 stuff.
I certainly could not put up with having to reboot three times to get my devices working.

I like my flight sims too. I do not like having to exit a sim, to deal with a usb ordering problem.
All usb hubs and cards are not created equal at all. Everyone is going to have different behaviors to a point..
The variety of computer stuff produced in who knows where that come with little or no instructions, no drivers, a 404 error website and total inoperable junk is not small. I just tossed 2 PCI and PCIE usb cards into the garbage today. My fault for being cheap. Money wasted.

So we'll have to agree to disagree on this point. Everyone's case is going to be a bit different.
In my case, the order I plug mine in makes no difference. Where I plug them does and I stand by my original thoughts on plugging in the wartog stick and throttle setup. Luckily Solarfly has made a number of profiles to suit a number of situations.
Only an exceptional human being would put so much time and effort into this.

 
  • Like
Reactions: marcsand2

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
Yeah. Originally I made 2 slide outs for my desk. One has the stick and throttle mounted.
I haven't slide them out since the day I built it but I did have to plug and unplug them lots until I got my hub devices right since I ran out of usb slots.
I can nicely rest my wrist on the throttle with it full forward when EVA or on foot and I kept the stick to the right so I could still reach the keyboard. It's a nasty way to type though. I'll remove it if I decided to write a book maybe or maybe to hide it if the relative's kids come by. Always a goods plan ;).
I might like a chair someday. A full Hornet Tracker interior would be cool too.
Mind you I sat in the most comfortable chair at Staples the other day.
Regardless, this won't be my final setup. More mods will come but that's winter work.
I usually get 3-5 years out of a computer build.
This one is 1.5 years since the build. I am drooling over the new GPUs, CPUs, memory specs, VR devices. Everything.
Some sims and games like SC make me want to upgrade daily. *sigh*
Priorities make patience imperative at this point in time.
 
  • Like
Reactions: marcsand2

Ripcord33

Grand Admiral
May 2, 2016
217
668
1,210
RSI Handle
Ripcord03
well, thats a lot to read, but you are 100% correct, and just like no to people are the exact same, no 2 computer setups are the exact same, and each will have their quirks and oddities.

Personally, i have yet to actually run into a problem with joy position other than with autohotkey scripts for my voiceattack/JTAC setup for DCS, however DCS also use the Device MAC ID rather than windows load order to detect and map the controller. hence even with my throttle as device 1 and my stick as device 3 and my rudders as device 2, DCS will always know what is mapped to which controller. even if they were mapped when stick = 1 throttle = 2 and pedals = 3.

However, Star Citizen isnt the same, and with the solarfly script it makes it easy to have it become a non-issue, also, for those not familiar with target, you can actually get a simple script that combines the devices to 1 virtual device, and then map the controls manually through SC. I actually tested this myself, and its doable. This in turn pretty much eliminates the load order problem as long as the virtual device is always loaded to the same spot. which on *MY* pc it always has been so far.
 

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
All good stuff Ripcord and right on in my book.

Simply running the Target software without even a script seems to return different options and appears to make them as one stick too.
This is almost just a theory at this time but it appeared to behave that way yesterday in dcs.

I will probably wait for my pedals before I revisit DCS.
It almost appears as if one should always run the Target GUI in the background to get more and easier options .
I was trying to put yaw on a hat on the throttle for now in DCS yesterday but I only had 4 options.
I fired up the target software then and all of a sudden all my buttons were available.
I only spent a short time at it.
I can see this winter when I am snowed under and trapped by the cold for months, I may just have to delve in to Target scripting.
One can easily change sections of the Sofly script although it requires another step or two in the process as there are other files involved. The info is buried in Sofly's stuff on what needs to be recompiled or whatever.
Man there is a lot of reading and viewing vids to find the information though.
Some folks make something so simple sound so complicated and others hold their cards pretty close to their chest and won't share info. It's an odd phenomenon indeed.
 

solarfly

Lieutenant
Dec 10, 2015
11
12
75
RSI Handle
solarfly73
Also i got the Solarfly script now but if i run it in Target i get the following error code.

Running script: D:\Users\Fabi\Desktop\Solarfly_Warthog_StarCitizen_2_4_0_6\2.4\StarCitizen_Solarfly_v2.4.tmc
Mapped plugin module "C:\Program Files (x86)\Thrustmaster\TARGET\Plugins\sys.dll"
Compile Succeeded.
Script stopped!

Runtime Error: Symbol not found: TFRPRudder in main ( line 29 in StarCitizen_Solarfly_v2.4.tmc )
My #1 favorite bug. You need to update your TARGET software. The new libs have support from Thrustmaster for T.Flight Rudder pedals. Not my fault :)
 
  • Like
Reactions: marcsand2

solarfly

Lieutenant
Dec 10, 2015
11
12
75
RSI Handle
solarfly73
All good stuff Ripcord and right on in my book.

Simply running the Target software without even a script seems to return different options and appears to make them as one stick too.
This is almost just a theory at this time but it appeared to behave that way yesterday in dcs.

I will probably wait for my pedals before I revisit DCS.
It almost appears as if one should always run the Target GUI in the background to get more and easier options .
I was trying to put yaw on a hat on the throttle for now in DCS yesterday but I only had 4 options.
I fired up the target software then and all of a sudden all my buttons were available.
I only spent a short time at it.
I can see this winter when I am snowed under and trapped by the cold for months, I may just have to delve in to Target scripting.
One can easily change sections of the Sofly script although it requires another step or two in the process as there are other files involved. The info is buried in Sofly's stuff on what needs to be recompiled or whatever.
Man there is a lot of reading and viewing vids to find the information though.
Some folks make something so simple sound so complicated and others hold their cards pretty close to their chest and won't share info. It's an odd phenomenon indeed.
Thrustmaster devices by default combine into one single virtual device. However if you look at the latest 2.4 SC profile on http://3dpipeline.net it has support for the new T.Flight rudder pedals. To get those working I used MODE_FILTERED, which lets the device show up separately and doesn't combine it. You can do that with MFDs too, though I don't in the profile.

The files are split like this:
StarCitizen_Solarfly_vX.X.tmc - the main code that executes. I put all the button mapping logic in here, but use a lot of defines as variables, so I can easily change mappings to keep up with Star Citizen's changes.

solarfly_mfd.tmh - MFD mappings. You could do this with other mappings too if your code is complex enough.

solarfly_mapping.tmh - header file containing the defines and mappings to keyboard and DirectX presses. For StarCitizen, these match the XML.

pilot_settings.tmh - variables that the user can customize to tailor the profile to their setup.

TMC is compiler code, TMH files are headers that get included with "include" statements.
 

solarfly

Lieutenant
Dec 10, 2015
11
12
75
RSI Handle
solarfly73
Start here Yes it is an old vid but it still applys mostly and what does not is even better. There have been some subtle changes since that vid maybe:


If you like the looks of these controls continue and read all this thread:

https://forums.robertsspaceindustries.com/discussion/180017/thrustmaster-warthog-hotas-advanced-functions-setup-poll#latest

Then check this out:

https://www.patreon.com/solarfly

Then when you understand it all go here and get the best profile made for Star CItizen IMHO Free btw.

http://3dpipeline.net./
Thanks for the nice compliments and props!

I run DCS World as well and I have to say that at first not having roll on the stick is a bit wierd for those of us coming from a gravity and atmosphere envirtonment. There is very little need to roll in a dogfight to orient yourself in zero g.
I fought it for a long time before I caved in and tried that profile.
In the profile one switch can put roll on the stick if need be which may come in handy when we get access to planets/gravity/atmosphere and lift.
Yep I'm really excited for atmospheric flight! Not all ships are aerodynamic though, so it will be really interesting to see if CIG alters the flight model depending on the ship. Maybe some will glide better and some will fall like rocks. Anyway, even before CIG had the function to swap roll and yaw, I had implemented it in the AC 0.8 version of the profile way back. Initially, I also had mapped yaw to rudder pedals, roll on stick, like a fighter plane, but aiming was literally impossible that way.

Some of the instructions given are a bit hard to follow if you haven't been following his work for a while.
...
Read and view every word in those links above carefully.

If you jump in without checking every inch of those links, you will hit a brick wall.
I've been wondering how to simplify the README and instructions. Windows 10 is currently my biggest pain in the butt, all sorts of USB problems with TARGET (not my fault!)

Cheers!!
Solarfly
 

Th3Damien

Grand Admiral
Jun 19, 2014
25
50
1,210
RSI Handle
Damien212
Hi solarfly, I'm using your profile for my warthog and it's honestly fantastic so thanks. :)

I've got a quick (probably trivial) question if you can help me. As you know, when not using pedals, left/right roll is mapped to the throttle thumb hat. I'm constantly moving it the wrong direction though because in my head, moving it back corresponds to rolling clockwise (pulling the left side up) instead of anti-clockwise (left side down).

So, to stop my "roll, no wait wrong direction, roll the other way" shenanigans, what do I need to change on the xml or target script to reverse the roll controls?
 
  • Like
Reactions: marcsand2

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
It's all great stuff Solarfly for sure.
Agreed on Win10 and usb issues.
I have to say, in your video regarding strafing in battle, right on.
They get a lot less ramming in with a little added strafe on pedals.
Solarfly, yours is by far the best script I have found for SC. Thank you sir!
 
  • Like
Reactions: marcsand2

DeepDrum

Captain
Jun 27, 2016
300
626
200
RSI Handle
DeepDrum
Thanks for the nice compliments and props!

I've been wondering how to simplify the README and instructions. Windows 10 is currently my biggest pain in the butt, all sorts of USB problems with TARGET (not my fault!)

Cheers!!
Solarfly
The readme file could be improved by assuming the recipient knows absolutely nothing.
For example, the original or the vid said at one point. load the script.
I was thinking "how, where, wtf"
So I finally found the script editor and loaded it that way. <<Wrong way/not the best
It was a while before I ran across anythng that read use the GUI.
There are more changes coming no doubt.
The damage models of the ships are getting very intense and complicated and actually starting to work.

I thought I lost my bindings when I couldn't suddenly strafe. Then I couldn't strafe only one way.
It had nothing to do with the script. I think.
At first I blamed a lot on the script and losing bindings since you stressed that you may have to reload bindings.
Too much emphasis on that lead me down the wrong path lots of times.
The last thing it is likely to be is the script. I haven't pp_re-binded the bindings in weeks.

Rockin' your script 2-3 hrs a day. Thanks Solarfly for all you do.
 
  • Like
Reactions: marcsand2
Forgot your password?