Jump to content
Sign in to follow this  
Masterius

LINDA not playing well with multiple quadrants

Recommended Posts

I'm sorry if this is beating a dead horse, but this is frustrating as heck. I have a total of six Saitek throttle quadrants. One of them is PS/2 and plugged into the Pro Flight Yoke, and is never a problem. The other five, however...

All five are plugged into externally-powered external USB hubs. The AC power to the hubs is never turned off. The quadrants remain plugged into their respective ports, and are not disconnected. If I put the PC into sleep mode, they remain properly assigned. If the PC restarts, or is shut down and restarted, the assignments get scrambled. Looking at config-hid.lua in LINDA-CFG\system and comparing it to the backed-up one in LINDA-CFG\system\backup, they are identical. Restoring the backed-up file (which was working beforehand) does not fix the assignments. 

I don't think LINDA likes playing well with multiple quadrants. It's understandable when this happens when they are unplugged and then plugged back in, but it's very puzzling--and annoying--having this happen whenever the PC is powered down.

On one hand, it's a reasonably easy fix: I shut down LINDA if running, unplug the five quadrants, use usbdeview and uninstall the five devices, then delete config-hid.lua before restarting LINDA. One at a time, in their proper order (as determined by their ID; ex. 06A30C2D0") I plug the quadrant back in, selecting save one at a time for each one. Still, I'd rather not have to go through this.

I'd love to know why the assignments are getting scrambled simply due to powering down the PC. Barring that, I do have a question: FSUIPC has an ability to save peripherals as letters in its .ini file, to facilitate proper assignments should they become lost or scrambled. Do you think there is any way that could be done for LINDA as well?

Share this post


Link to post
Share on other sites

You have described an issue that has always been at the core of the way LINDA manages HID devices. It can not distinguish been identical devices presented to it by Windows. I have the same issue with my 2 Saitek/Logitech Throttle Quadrants.

The only way to ensure devices are kept in the same order is to ensure that they remain plugged in the same USB port or hub when Windows to started. They should not be unplugged and connected to other ports. I use a single 10 port USB hub to do this.

I do not anticipate any changes to LINDA to use GUID unique numbers as this is beyond my knowledge. 


Andrew Gransden

Scotland, UK

LINDA Support/Developer - VATSIM and BAVirtual - Airbus Flyer

i7 1TB SSD GTX980 - FSX/P3D - Aerosoft Airbus A318/A319/A320/A321 - FS2Crew

Share this post


Link to post
Share on other sites
9 hours ago, ScotFlieger said:

You have described an issue that has always been at the core of the way LINDA manages HID devices. It can not distinguish been identical devices presented to it by Windows. I have the same issue with my 2 Saitek/Logitech Throttle Quadrants.

I figured that was the issue, as I've no problems with any of the other, multiple peripherals I use.

9 hours ago, ScotFlieger said:

The only way to ensure devices are kept in the same order is to ensure that they remain plugged in the same USB port or hub when Windows to started. They should not be unplugged and connected to other ports. I use a single 10 port USB hub to do this.

Well, I don't unplug them, and they remain plugged into the same ports. The only difference is I use two powered hubs instead of a single hub, yet their order gets mixed every time the computer restarts. ::shrugs::

9 hours ago, ScotFlieger said:

I do not anticipate any changes to LINDA to use GUID unique numbers as this is beyond my knowledge. 

Ain't no big. I was mostly curious about that possibility. 

Share this post


Link to post
Share on other sites
On 5/20/2021 at 3:10 AM, ScotFlieger said:

You have described an issue that has always been at the core of the way LINDA manages HID devices. It can not distinguish been identical devices presented to it by Windows. I have the same issue with my 2 Saitek/Logitech Throttle Quadrants.

The only way to ensure devices are kept in the same order is to ensure that they remain plugged in the same USB port or hub when Windows to started. They should not be unplugged and connected to other ports. I use a single 10 port USB hub to do this.

Needless to say it has been a while since I originally posted this and, to be completely honest, I'd stopped flying because of the frustration of dealing with this issue. However, after taking a recuperative break, I decided to get back into the cockpit again and, in order to do so, had to face this issue once again.

After a lot of once-again frustration, and a great deal of editing and manipulating internal LINDA files, I think I may have fixed this issue once and for all: I serialized the quadrants.

I'm not sure how LINDA normally assigns serial numbers to attached peripherals. It seems likely it does so using the serial numbers based on the specific drivers that identify the device. If this is the case, then the OS would have no way of differentiating between multiple, identical attached peripherals (in my case, throttle quadrants) when 1) they use the same driver(s) and, 2) the devices themselves do not have hardware serialization (which, again in my case, the throttle quadrants do not). Therefore, when I examine the quadrants in LINDA, although they each have different ID numbers (06A30C2D0 - 06A30C2D4), they all have blank serial numbers. 

First I removed all the attached throttle quadrants, then uninstalled them using USBDeview before rebooting the system. I then, in order, reattached the quadrants. Next I opened up the config-hid.lua located in LINDA-CFG\aircrafts\ for the specific aircraft I use (which is the A2A B-17) and deleted every assigned command for each throttle quadrant, leaving only the equipment identifier (ex. -- ## Saitek Throttle ## (06A30C2D0) ## {NOSERNUM} ############). Finally, for the moment, I edited the {NOSERNUM} fields, changing them in order to 0 - 4. (ex. -- ## Saitek Throttle ## (06A30C2D0) ## {0} ############). I then opened up config-hid.lua located in LINDA-CFG\system and, for each quadrant, edited the applicable line's serialization identifier (for the quadrants, that was J[5][8]") from "NOSERNUM" to 0 thru 4, ensuring that the ID numbers matched.

(Editing the config-hid.lua located in LINDA-CFG\aircrafts\ and adding back in the commands was interesting, but that's a side issue)

It has been over two weeks now and, so far, everything has been stable. My system has gone through sleep, hibernation, restarts, and shutdowns, as well has Windows updates; I have unplugged and reattached the quadrants in their specific order (with the system shut down and powered off first): the quadrants have remained stable. So, for now, I feel confident that simply changing the serial numbering from {NOSERNUM} to {[integer]} will fix this issue.

 

~Masterius

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Tom Allensworth,
    Founder of AVSIM Online


  • Flight Simulation's Premier Resource!

    AVSIM is a free service to the flight simulation community. AVSIM is staffed completely by volunteers and all funds donated to AVSIM go directly back to supporting the community. Your donation here helps to pay our bandwidth costs, emergency funding, and other general costs that crop up from time to time. Thank you for your support!

    Click here for more information and to see all donations year to date.
×
×
  • Create New...