Here is a script to activate all the the buttons and switches of your Throttle with Target software, this solution was used in DCS and found in their forum, source,(Warthog Throttle TARGET Script with DX Outputs for All Switch and Rocker Off States - Thrustmaster - ED Forums)
“installation” instructions.
-
Download targetdx128.zip from this thread
-
extract the zipped file to <Program Files (x86)\Thrustmaster\TARGET\scripts> (or wherever your TARGET\scripts\ folder is located.)
-
copy all the script (the text) in the end and create a file WarthogThrottleALLSwitchPos.tmc with notepad (you can name the file like you want, just make sure that the extension is “tmc” by saving the file as all files and not a txt)
-
Open either TARGET GUI or TARGET Script Editor and run WarthogThrottleALLSwitchPos.tmc.
-
In FS2020, your Throttle will be named as Thrustmaster Combined, make sure to create an empty profile for “Thrustmaster Warthog Throttle” to not interfere with “Thrustmaster combined”
Now your warthog throttle will send a unique direct-x button for every switch state (up/middle/down instead of just up and down)
//copy all the following text and create a tmc file
include “targetdx128.tmh”
int main()
{
Configure(&HCougar, MODE_EXCLUDED);
Configure(&Joystick, MODE_EXCLUDED);
Configure(&T16000, MODE_EXCLUDED);
Configure(&T16000L, MODE_EXCLUDED);
Configure(&LMFD, MODE_EXCLUDED);
Configure(&RMFD, MODE_EXCLUDED);
Configure(&TFRPRudder, MODE_EXCLUDED);
Configure(&TWCSThrottle, MODE_EXCLUDED);
if(Init(&EventHandle)) return 1;
SetKBRate(32, 50);
SetKBLayout(KB_ENG);
SetShiftButton(0, 0, 0, 0, 0, 0);
MapKey(&Throttle, SC, DX1);
MapKey(&Throttle, MSU, DX2);
MapKey(&Throttle, MSD, DX3);
MapKey(&Throttle, MSL, DX4);
MapKey(&Throttle, MSR, DX5);
MapKey(&Throttle, MSP, DX6);
MapKey(&Throttle, SPDF, DX7);
MapKey(&Throttle, SPDM, PULSE+DX8);
MapKey(&Throttle, SPDB, DX9);
MapKey(&Throttle, BSF, PULSE+DX10);
MapKey(&Throttle, BSM, PULSE+DX11);
MapKey(&Throttle, BSB, PULSE+DX12);
MapKey(&Throttle, CHF, DX13);
MapKey(&Throttle, CHM, PULSE+DX14);
MapKey(&Throttle, CHB, DX15);
MapKey(&Throttle, PSF, PULSE+DX16);
MapKey(&Throttle, PSM, PULSE+DX17);
MapKey(&Throttle, PSB, PULSE+DX18);
MapKey(&Throttle, CSU, DX19);
MapKey(&Throttle, CSD, DX20);
MapKey(&Throttle, CSL, DX21);
MapKey(&Throttle, CSR, DX22);
MapKey(&Throttle, LTB, DX23);
MapKey(&Throttle, EFLNORM, PULSE+DX24);
MapKey(&Throttle, EFLOVER, PULSE+DX25);
MapKey(&Throttle, EFRNORM, PULSE+DX26);
MapKey(&Throttle, EFROVER, PULSE+DX27);
MapKey(&Throttle, EOLIGN, DX28);
MapKey(&Throttle, EOLNORM, PULSE+DX29);
MapKey(&Throttle, EOLMOTOR, PULSE+DX30);
MapKey(&Throttle, EORIGN, DX31);
MapKey(&Throttle, EORNORM, PULSE+DX32);
MapKey(&Throttle, EORMOTOR, PULSE+DX33);
MapKey(&Throttle, APUON, PULSE+DX34);
MapKey(&Throttle, APUOFF, PULSE+DX35);
MapKey(&Throttle, LDGH, PULSE+DX36);
MapKey(&Throttle, FLAPU, DX37);
MapKey(&Throttle, FLAPM, PULSE+DX38);
MapKey(&Throttle, FLAPD, DX39);
MapKey(&Throttle, EACON, PULSE+DX40);
MapKey(&Throttle, EACOFF, PULSE+DX41);
MapKey(&Throttle, RDRNRM, PULSE+DX42);
MapKey(&Throttle, RDRDIS, PULSE+DX43);
MapKey(&Throttle, APPAT, PULSE+DX44);
MapKey(&Throttle, APAH, PULSE+DX45);
MapKey(&Throttle, APALT, PULSE+DX46);
MapKey(&Throttle, APENG, PULSE+DX47);
MapKey(&Throttle, IDLELON, PULSE+DX48);
MapKey(&Throttle, IDLERON, PULSE+DX49);
MapAxis(&Throttle, SCX, DX_XROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, SCX, 0, 0, 0, 0, 0);
MapAxis(&Throttle, SCY, DX_YROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, SCY, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_RIGHT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_LEFT, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_LEFT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_FC, DX_SLIDER_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_FC, 0, 0, 0, 0, 0);
}
int EventHandle(int type, alias o, int x)
{
DefaultMapping(&o, x);
}