Problem with LT and RT on the Xbox One controller
Moderators: another_commander, winston, Getafix
Problem with LT and RT on the Xbox One controller
Why can I assign whatever I want to the triggers (L2 and R2) on the DualShock 4 controller, but not on the Xbox One controller?
- phkb
- Impressively Grand Sub-Admiral

- Posts: 5590
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Problem with LT and RT on the Xbox One controller
I can confirm that Oolite isn't recognising LT and RT as buttons on an Xbox One controller. However, it does recognise the LT/RT buttons if you use them on one of "Axis" type functions. For instance, the increase/decrease thrust.
Obviously, Oolite doesn't know how to understand these buttons as buttons. I don't have a DualShock to compare, so I don't know how it sets them up.
Now that I've got a setup with the issue, I'll see if there's anything that can be done in the code to fix the issue.
In the meantime, you can potentially use something like AntimicroX, which quite happily detects the buttons and gives you a pile of other options as well. I use this so I can switch between "Missile Targeting" ("m" key) and "Ident recognition" ("t" key) using the one button on my controller.
Obviously, Oolite doesn't know how to understand these buttons as buttons. I don't have a DualShock to compare, so I don't know how it sets them up.
Now that I've got a setup with the issue, I'll see if there's anything that can be done in the code to fix the issue.
In the meantime, you can potentially use something like AntimicroX, which quite happily detects the buttons and gives you a pile of other options as well. I use this so I can switch between "Missile Targeting" ("m" key) and "Ident recognition" ("t" key) using the one button on my controller.
Re: Problem with LT and RT on the Xbox One controller
I'm not interested in the axis.
Can this at least be done through a configuration file? I specifically bought a pad with XInput for better compatibility, and only the Oolite caused problems.
Last edited by 3DH on Thu Sep 04, 2025 10:41 am, edited 1 time in total.
Re: Problem with LT and RT on the Xbox One controller
I think oolite uses sdl v1 to detect the controller, so you may have to look into configuring sdl .
There is a file in GNUstep / Defaults folder that should hold joystick definitions (and other things)..
This is the setup I use for my logitech Extreme 3D joystick, maybe it helps. .
axis 1 is roll, 2 is pitch , 3 is yaw and 4 is the throttle.
There is a file in GNUstep / Defaults folder that should hold joystick definitions (and other things)..
This is the setup I use for my logitech Extreme 3D joystick, maybe it helps. .
axis 1 is roll, 2 is pitch , 3 is yaw and 4 is the throttle.
Code: Select all
<key>0</key>
<dict>
<key>isAxis</key>
<true/>
<key>stickAxBt</key>
<integer>0</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>1</key>
<dict>
<key>isAxis</key>
<true/>
<key>stickAxBt</key>
<integer>1</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>2</key>
<dict>
<key>isAxis</key>
<true/>
<key>stickAxBt</key>
<integer>2</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>4</key>
<dict>
<key>isAxis</key>
<true/>
<key>stickAxBt</key>
<integer>3</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
</dict>
<key>JoystickButs</key>
<dict>
<key>13</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>0</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>18</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>7</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>21</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>3</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>22</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>6</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>23</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>2</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>26</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>5</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>27</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>1</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>8</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>9</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
<key>9</key>
<dict>
<key>isAxis</key>
<false/>
<key>stickAxBt</key>
<integer>11</integer>
<key>stickNum</key>
<integer>0</integer>
</dict>
OS : Arch Linux 64-bit - rolling release
From: The Netherlands, Europe
OXPs : My user page (needs updating)
Retired, occasionally active
From: The Netherlands, Europe
OXPs : My user page (needs updating)
Retired, occasionally active
Re: Problem with LT and RT on the Xbox One controller
Thanks.
I've been looking for something like this. I'll have to check it out.
EDIT
It's either impossible or I don't know how to do it. I just want to swap the triggers with the bumpers. The current configuration is unplayable.
I've been looking for something like this. I'll have to check it out.
EDIT
It's either impossible or I don't know how to do it. I just want to swap the triggers with the bumpers. The current configuration is unplayable.

