Jump to content
The simFlight Network Forums

Controllers not being detected


Recommended Posts

Hi Pete,

 

I have two controllers, the Saitek X-55 stick and throttle for which I want to assign controls using FSUIPC in FS2004. I'm using Windows 8.1 and have disabled joysticks within FS2004.

 

For some reason, FSUIPC isn't able to detect any controller axis movements or button presses.

 

The controllers are definitely in working order. I checked the FSUIPC.ini file. There are entries under the [JoyName] section for both controllers. But there are no device GUID entries. I tried the automatic letter assignment feature. No avail. But there is a catch. When only any one of these controllers is plugged in, FSUIPC can detect it and I can make assignments which work. If I make assignments for each controller in this manner and then try to fly with both of them plugged in, there is a constant haywire control output! In all this, there were no device GUID entries in the FSUIPC.ini file. 

 

What's wrong here? Am I missing something? 

 

Regards. 

Edited by captain_fsx
Link to comment
Share on other sites

The lack of GUID entries is worrying, but FSUIPC doesn't really care about them unless there are two devices with the same name. Then it needs the GUIDs to differentiate between them. As far as I knew, ALL properly registered devices have GUIDs, so I don't know what's going on in your system.

The problem where with both connected neither are seen seems most likely to be a USB problem. Try different USB sockets, and not two of a pair (on the PC each pair of USB sockets has the same controller). It might just be power -- if you are using a USB Hub make sure it is powered, but in any case also try directly connecting to the PC, not via the hub.

You didn't actually say whether FS can see the devices, or Windows for that matter?

Pete

Link to comment
Share on other sites

Pete, I tried everything you said. No avail. 

 

FS and Windows can see the devices. 

 

Is it possible to manually retrieve device GUIDs from my system? I searched the net which mostly suggests it may be somewhere in the registry but no result is clear enough. Any ideas?

Link to comment
Share on other sites

Pete, I tried everything you said. No avail. 

 

FS and Windows can see the devices. 

 

The behaviour you reported, i.e.

 

"When only any one of these controllers is plugged in, FSUIPC can detect it and I can make assignments which work. If I make assignments for each controller in this manner and then try to fly with both of them plugged in, there is a constant haywire control output!"

 

is unique. I've never heard of anything like that and have absolutely no idea how it could happen. It makes no sense.

 

Could you describe "constant haywire control output!" more precisely, as I cannot actually envisage what you mean by that?

 

Can you also try starting with default settings. i.e. before running FS, rename your FSUIPC4.INI file so that it make a new one. Maybe there's something tangled up there.

 

FSUIPC detects and reads these things using the same interface as FS, so it's a real puzzle. You can make FSUIPC log more information about its detection system by adding these lines to the [General] section of the INI file before running FS:

 

Debug=Please

LogExtras=x200000

 

 
Is it possible to manually retrieve device GUIDs from my system? I searched the net which mostly suggests it may be somewhere in the registry but no result is clear enough. Any ideas?
 
All this stuff is buried in the Registry. Here's an example from mine, relating to my test Saitek Throttle Quadrant. This extract is produced by the Regedit "Export" function:
 
[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D]

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration]

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0]
"GUID"=hex:c0,de,ab,b0,a5,6d,e0,11,80,01,44,45,53,54,00,00
"Joystick Id"=hex:00,00,00,00

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0\Type]

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0\Type\Axes]

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0\Type\Axes\0]
"Calibration"=hex:00,00,00,00,80,00,00,00,ff,00,00,00

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0\Type\Axes\1]
"Calibration"=hex:00,00,00,00,80,00,00,00,ff,00,00,00

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0\Type\Axes\2]
"Calibration"=hex:00,00,00,00,80,00,00,00,ff,00,00,00

[HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\DeviceInstances]
"8&2D4EEC&0&0000"=hex:02
"9&11EBDAD6&0&0000"=hex:02
"7&3AFC8A82&0&0000"=hex:02
"7&25515117&0&0000"=hex:02

You'll see the GUID and ID in the third entry down, thus:

 
"GUID"=hex:c0,de,ab,b0,a5,6d,e0,11,80,01,44,45,53,54,00,00
"Joystick Id"=hex:00,00,00,00
 
The GUID in "normal" form becomes {B0ABDEC0-6DA5-11E0-8001-444553540000}, because of the Lo-Hi reversal of byte orders in Intel format numerc representation. The ID used by FSUIPC in this case is 0, ie Joystick 0 in the assignments tab.
 
Maybe your Registry is in a tangle? Might be worthtrying to uninstall the devices (in Windows Device Maager) and re-installing them.
 
The debug logging for this, my only device connected on this test machine, shows simply this:
 
    61043 #### Initialising Dlrectinput Axis Scanning ...
    61043    Trying: "HKCU\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_06A3&PID_0C2D\Calibration\0"
    61043    Found correct joystick Id 0
    61043    ... and a "GUID" value
    61043    ... okay, Acquired device!
    61059    joyGetDevCaps for device 1 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 2 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 3 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 4 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 5 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 6 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 7 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 8 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 9 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 10 returned error 165 [000000A5]
    61059    joyGetDevCaps for device 11 returned error 165 [000000A5]
    61074    joyGetDevCaps for device 12 returned error 165 [000000A5]
    61074    joyGetDevCaps for device 13 returned error 165 [000000A5]
    61074    joyGetDevCaps for device 14 returned error 165 [000000A5]
    61074    joyGetDevCaps for device 15 returned error 165 [000000A5]
    61074 #### Completed Dlrectinput Axis Scanning
The 15 errors are just for non-existent devices 1 to 15 (FSUIPC only supports 0-15 hardware joystick devices).
 
Pete
Link to comment
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
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.