As you are hopefully already aware, the Joystick subsystem of X-Plane was completely rewritten for X-Plane 10.10. It uses a much lower-level method of communication to essentially talk directly to the devices so that we have complete access to their capabilities instead of being limited to what a “middleman” layer of software feels like telling us…which is how things used to work.

While most of the bugs have been fixed as of 10.10Beta 4, there still remain a small subset of devices that are still having problems. Let me list the known open issues:

  1. Even after calibration, some devices still show their axis max limited to about 75% of what it should be when viewed on the Axis tab of the Joystick Dialog. In other words, pull the yoke toward you and it goes to 0, push the yoke away from you and it goes to 75% instead of 100%. This is not a joystick bug at all but in fact a UI bug that’s been around all along but just never visible until now. This has been fixed in 10.10Beta 5 which is coming soon. You can also go to the “Null Zone” tab and see that your axis does in fact have it’s full range of travel.
  2. Some hardware does not appear at all on Linux. This is not a bug! This is a security feature of the Linux operating system. The problem is, Linux is a multi-user operating system and it has to worry about permissions to devices that are attached to the system. Take a keyboard for example…imagine if another user logged in could see everything you were typing because he had read permissions on your device! Linux locks down permissions on devices that are not part of an exception. The way to create an exception is to create a UDEV rule. If you don’t know how to write a UDEV rule, google it a bit..they are not very complicated for the average linux user. If you’ve chosen linux as your operating system, we hope you possess the skills to configure it. Here’s a simple sample rule:
    KERNEL=="event*", ATTRS{idProduct}=="0bd4", ATTRS{idVendor}=="06a3", MODE="0666"

    Here the VID is 0x06A3 and the PID is 0x0BD4. These are unique codes that identify that brand/model of joystick and the rule says “When you see this device, chmod 666 it.” One way of finding your VID/PID is by doing “lsusb -n”.

  3. Some devices have hat-switches that appear to “stick” in the ON position. This is fixed in 10.10Beta 5 as well.
  4. Last but not least, there are some devices that have particular AXIS or HAT SWITCHES that simply do not work. So far, I’ve seen a Logitech G25 clutch pedal and a Logitech G940 hat switch that doesn’t work. It works in the windows calibration screen as well as X-Plane 10.05R1 but not in the latest version.

Here’s where you guys come in. If you have one of those two Logitech devices, please let me know if yours is working just fine or if you have the problem as well.

I’m also interested in hearing about other devices that are having the #4 issue as well.

Lastly, if you are having any other kinds of Joystick problems that do NOT exist in 10.05R1 but that DO exist in 10.10 that haven’t already been mentioned, please let me know.

You can file a bug and please include a Log.txt file from 10.10Beta 4 as well as a description of what’s not working properly and on which device.

About Chris Serio

Chris is an electrical engineer and commercial pilot who got roped into software development by Ben because misery loves company.

7 comments on “Still having joystick trouble?

  1. Brent,

    First, awesome job with 10.10. I was so disappointed with HDR on my 6790m iMac that I gave up on it. There have been a few updates since I last tried XP so I thought I’d give it another try. Beautiful! So long as I don’t use a stratus layer nothing seems to make it struggle. The new rig is also nicely done. I use a Logi G940. Of course it isn’t really intended for the Mac and I primarily use it for games on the windows side of the computer. However, it works well enough on the Mac with XP. All hats work. The two wheels on the throttle “R1” and “R2” previously were not recognized. Now they are but are on the same axis as the rudder so still not useable. “Flight” is dead! Long live X-plane!

  2. OK want to ask about how joystick implementation works better or how should we use it.

    I tried with a single HOTAS and indeed it seems to remember the settings I have configured before (although I think they didn’t in previous beta).
    Do those settings “stick” on the specific device?
    In other words, if I attach something ELSE (like a… joypad or an other HOTAS), will I be able to assign other settings (in current betas) WITHOUT messing my original HOTAS settings – so that when I attach it back I get those back?

    Also what happens with more than one controls? For example someone might use two controllers to reach an ammount of axis and buttons needed (after all this is the case with Warhog that you support – but I am asking for a more generic implementation). How will the program handle this situation? (for example an X45 + a joypad) Will it also handle it properly when one of those are detached? (ie. not messing the settings of any of the two -or more- devices and use the axis/buttons that remain?)

    Will we at some point be able to MANAGE X-Plane profiles for controllers? (load and save them)

    Thank you.

    1. Yes, settings stick with the device. Add/Remove the device as desired and the settings should come back even across loads.
      Yes, you can duplicate the assignments between devices. If you feel like flying with a HOTAS on weekends and a Sidewinder on weekdays, you should be able to just plug it in and get back all of your settings.
      Yes, you can have multiple devices plugged in at once. I’m currently testing with a Yoke, Throttle, Pedals setup. Unplugging any one of them is fine.

      The basic summary is, settings are now tied the device’s unique ID. When X-Plane sees that ID, it gives you back the last thing you setup for that ID. It doesn’t care about duplications or omissions.

      Yes, management is the primary driving factor for the whole rewrite. There are many more changes to Joysticks/Keys throughout the v10 run.

Comments are closed.