EDIT: links are updated and I have a .zip to my public dropbox folder for the bindings.
EDIT2: I have updated information on how to use the different layers UPM and the O/I input options and I now highly recommend using AutoHotKey as your primary macro creator as it is much easier to test and setup. I have not edited the .png files or the macros yet.
Hi MikeyTT and others.
Thank you so much for this thread and for all the work put into it. I have now spent 5 hours experimenting with target finally and though I would add some of my experiences to assist newcomers to a much better TARGET experience, hopefully only spending 2 hours in setup instead.
I am using a Warthog HOTAS with no rudders with my yaw setting set to the thumb button on the joystick (specifically H4L = DX18
and H4R = DX16; this makes precision aiming very easy and all steering is focused on the same hand-coordination stick).
Here's a link to my bindings and configurations based on MikeyTT's OP post:
https://dl.dropboxusercontent.com/u/20306/ED-bindings.zip
As always:
.binds files go to \Users\Username\AppData\Local\Frontier Developments\Options\Bindings\
(hidden folder, access it through copy-pasting the in the explorer filepath)
.fcf file you can put where ever, though I suggest in your documents or something (oh, remember to copy it and rename it to something personal for your own bindings so you have both files available).
Joystick bindings PNG:
Throttle bindings PNG;
A checklist to make as few errors as possible with the overall TARGET experience:
1. Download and install the TARGET GUI:
http://ts.thrustmaster.com/download/accessories/pc/hotas/software/TARGET/TARGET_v1.0.exe
2. Download Mikeys Warthog profile, custom.binds and warthogtarget_v.fcf
3. Make sure that you have set up your non-target bindings and rename the custom.binds within c:\Users\USERNAME’\AppData\Frontier Developments\Elite Dangerous\Options\Bindings’ (AppData is hidden so you need to click the address bar in Explorer) to your own config, for example Warthog_No_Target.binds. This circumvents any unforeseen problems you would encounter if the custom.binds for some odd reason gets deleted or is changed.
4. Launch the TARGET GUI (make sure that Elite is not running)
5. Run the Target Script and launch Elite.
Elite Dangerous will immediately not recognize your HOTAS (simply removing it from the preset configuration list in the game -—> options --> controls). Open up the ‘empty’ configuration and start map the bindings to keyboard keys (those that you set up in Target) and using button presses (all bindings that work fine without having to be mapped to keyboard keys).
6. Test your setup and go back to bullet 4, 5 and 6. When it works and while your Target script is running, go to ‘c:\Users\USERNAME’\AppData\Frontier Developments\Elite Dangerous\Options\Bindings’ and rename the new custom.binds to your own liking, e.g. WarthogTarget.binds. This will ensure that if you forget to launch the Target script for whatever reason, Elite will default to Warthog_No_Target.binds and not leaving your controls be messed up. NOTE: DO NOT MULTITASK OUT OF ELITE AND STOP THE SCRIPT! IT WILL CAUSE ELITE PROBLEMS WHEN YOU MULTITASK BACK TO ELITE AND YOUR TARGET PROFILE AND KEY BINDINGS WILL BE CORRUPTED. Always shut down Elite before editing your TARGET configuration. Slow, but necessary.
Setting up events
Associating custom key presses to new events is done by locating the button on the throttle or joystick representation on the left side of the edit configuration screen (you have to press ‘next’ twice to get there):
1. Double-click the button and you will be sent to the event editor.
2. Name the Event you want the button associated with (e.g. Extract Landing Gear) and associate a keyboard key or a DX value. You cannot add an event before this is done.
3. Press ‘add event’. You will now see the button value pop up in the right- most column of the GUI.
4. Add more keypresses if you want the button event to do more. Note that all keypresses will activate simultaneously and you should set a delay (between 75-100 ms) between each keypress. (I have not experimented with the "sequence" mode yet, so if you find out if or how that works, please post here asap

). I highly recommend to stay completely clear of using the Target software for actual button press macros. Instead, map your desired macro to a key button and make an AutoHotKey script to care care of the advanced macros (such as docking sequences or creating text to role play). I will give out more detail later for how to make this work.
5. Use ‘pulse’ for a single click, ‘hold’ for simulating holding the key down, ‘release’ for release said button (should be mapped to a new button on the throttle or joystick). DO NOT USE ‘PRESS’ SINCE IT WON’T WORK. Also do not confuse this with the ‘press’ and ‘release’ below the ‘layers’ headline. These simply determine the timing of when the event will be fired (on ‘pressing’ the button or on ‘releasing’ the button). I recommend simply using ‘press’ timing like MikeyTTs configuration.
6. Note on setting the layer to ‘I’ (IN) or ‘O’ (OUT) or the UPM layers: This is in the event that you have many more macros or events mapped on the same buttons. By default, when you press the Joystick Pinky button (S4 = DX4, default set to Flight Assist) the TARGET software will automatically interpret all other presses to activate on releasing the Pinky button (all buttons set to the ‘O’ layer). This is important because if you have set the FA pinky button to ‘hold’ this will cause issues. Make sure to remove or set a non-used button to activate the I/O layer instead. I have personally (not in the explained setup) set the SPDB button to 'hold' on the U layer to make room for additional PWR settings macros and subsystems cycle macros.
If you plan to use MikeyTTT's or my own (now deprecated) settings, make sure to delete/remove the [O] in front of each event you configure. This is important because you may experience that if you press any trigger set to an [O] event while also holding the default S4 button, the events will not fire. However, they will fire if you click the 'I' in the layer twice and save the event afterwards.
7. Make sure to set as many buttons to key button presses, especially when they are non-macro or non-throttle related events (see below). However, with the exception of the TG1 button (joystick trigger set to DX1). If the TG1 button is set to a keyboard click you will not be able to select items in the UI Panels in the spacecraft, since TARGET will override Elite’s settings. See the description of DX values below for more info.
8. When creating macros, for the love of all that is good and mighty: use AutoHotKey for these macros. It is easier it means that you have to set most buttons on the Warthog to keyboard buttons and setting these up in Elite but once you have done this you can simply multitab to the AutoHotKey script from Elite, edit it and reload it to test your macros. If you write your macros directly in Target you have to save and exit Elite (which is really CUMBERSOME).
Setting up DX keys
I have had to use the following forum post for more information on the key mappings:
http://simhq.com/forum/ubbthreads.php/topics/3429294/New_Warthog?_Here's_the_TARGET
The forum post is fairly script centric but the most important part here is the values put in quotes below, since you will need them. Note that the DX values are the same for the JOYSTICK and the THROTTLE and Elite will misunderstand this if you map all throttle and joystick non-macro events to DX values. You will have to map ONLY DX values to the joystick buttons and leave keyboard key values to all Throttle-related events, macro or not.
Use the values below to know which values correspond to which button. It is important to know both the Button name and DX value for those bindings that you will use in Elite for macro purposes. This means that the ‘Trim Control’ top hat (H1 buttons) can be left non-mapped in Target and manually mapped in Elite with no consequences, but e.g. the trigger button TG1 will have to be set to DX1 value to work in a macro with Target, and so forth.
Joystick:
TG1 = DX1
TG2 = DX6
S1 = DX5
S2 = DX2
S3 = DX3
S4 = DX4
Trim Control
H1U = DXHATUP
H1D = DXHATDOWN
H1L = DXHATLEFT
H1R = DXHATRIGHT
TMS
H2U = DX7
H2D = DX9
H2L = DX10
H2R = DX8
DMS
H3U = DX11
H3D = DX13
H3L = DX14
H3R = DX12
CMS
H4U = DX15
H4D = DX17
H4L = DX18
H4R = DX16
H4P (Hat4 pressed down) = DX19
Throttle:
Slew Control
SC (slew control button pressed in) = DX1
Mic Switch
MSP (mic switch button pressed in) = DX2
MSU = DX3
MSR = DX4
MSD = DX5
MSL = DX6
Speedbrake Switch
SPDF = DX7
SPDB = DX8
Boat Switch
BSF = DX9
BSB = DX10
China Hat
CHF = DX11
CHB = DX12
Pinky Switch
PSF = DX13
PSB = DX14
Left Throttle Button
LTB = DX15
Engine Fuel Flow Norm/Override Switches
EFLNORM = DX16
EFRNORM = DX17
Engine Oper Motor/Norm Switches
EOLMOTOR = DX18
EORMOTOR = Dx19
APU Start/Off Switch
APUON = DX20
Landing Gear Warning Silence
LDGH = DX21
Flaps
FLAPU = DX22
FLAPD = DX23
EAC On/Off
EACON = DX24
RDR/NORM
RDRNRM = DX25
LAAP Autopilot Switches
APENG = DX26
APPAT = DX27
APALT = DX28
Throttle Idle Detents
IDLERON = DX29
IDLELON = DX30
Engine Oper Ign/Norm
EOLIGN = DX31
EORIGN = DX32
Coolie Switch
CSU = DXHATUP
CSR = DXHATRIGHT
CSD = DXHATDOWN
CSL = DXHATLEFT
My Macros (old setup without using AutoHotKey)
I have configured the following macros:
a. Request docking - LDGH
1. switch to target panel (designated key press)
2. switch to right tab twice (DX4 x 2 with 100 ms delay between each)
3. select first target (DX1, 300 ms delay)
4. request docking (DX1, 400 ms delay)
5. switch to left tab twice (LARROW x 2 with 100 ms delay between each, starting a 500ms)
6. deselect UI focus (S2 = DX2 in my case)
Note that the last three macro events are set this way to go back to the navigation tab in the target panel to make sure that it fires correctly all the time. You also need to make sure that you do not deselect UI focus with another tab active as the macro will do funny stuff in this case.
b. Toggle landing gear - PSF, PSM, PSB
The landing gear is the only setting that does not respond to "hold" and "release" events so far. This means that for it to work properly you will have to live with assigning it to a two-stick switch, like APENG or APUON/APUOFF. However, I want to have landing gear and full shield pips immediately so I am not accidentally surprised in the entrance, though I also want to differ and have full Engine pips when taking off from outposts. This effectively requires a three-setting switch like the PSM, PSP and PSM switch:
PSB event (for landing at stations):
1. toggle landing gear (pulse on keypress assigned to landing gear - ‘l’).
2. activate LED (they are cool but not visible due to the throttle, darn it).
3. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
4. 2 pips in shield (DX14 x 2 with 100ms delay between)
PSF event (for taking off from outposts):
1. toggle landing gear (pulse on keypress assigned to landing gear - ‘l’).
2. activate LED (they are cool but not visible due to the throttle, darn it).
3. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
4. 2 pips in engines (DX11 x 2 with 100ms delay between)
PSM event (for deactivating landing gear from any station or outpost, needs pips in shield in case takeoff is from a station):
1. toggle landing gear (pulse on keypress assigned to landing gear - ‘l’).
2. activate LED (they are cool but not visible due to the throttle, darn it).
3. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
4. 2 pips in shield (DX14 x 2 with 100ms delay between)
c. deactivate thrusters - SPDB
When smuggling or needing to ice up your ship, I need a macro for quickly turning off/on thrusters in case I drift to far when entering the station and need to correct or adjust the approach vector:
1. select UI systems panel (assigned keypress)
2. switch to right tab once (DX4 with 100 ms delay)
3. toggle thrusters (DX1 with 200ms delay)
3. switch back to left tab once (LARROW with 300 ms delay)
4. deselect UI focus (S2 = DX2 in my case)
d. engines to full - APPAT
1. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
2. 2 pips in engines (DX11 x 2 with 100ms delay between)
e. shields UP - APALT
1. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
2. 2 pips in shield (DX14 x 2 with 100ms delay between)
e. power distribution balanced - APAH
1. reset power pips (quick way to move pips to default and set to joystick DMS - H3D = DX13)
PS: this post is written on my working computer and as such I do not have the config files or binds files, though I will link to these ASAP if you’re interested. However, due to forum rules about newcomers not being able to link to files I think this is pretty much impossible
