elmond Posted May 1, 2017 Report Posted May 1, 2017 (edited) Hi, I am on a Win 10 64bit install and I just bought FSUIPC. I could not get my controllers (x56) to show up in FSUIPC until I uninstalled the Saitek drivers. The Joystick was working fine before in P3D. Now I cannot program the mode switch or the slider button on the throttle, as it is not available with the default driver. Does anyone have the Saitek Driver (not the programming software) working with FSUIPC? What could I be missing? Edited May 1, 2017 by elmond
Pete Dowson Posted May 1, 2017 Report Posted May 1, 2017 Just now, elmond said: I am on a Win 10 64bit install and I just bought FSUIPC. I could not get my controllers (x56) to show up in FSUIPC until I uninstalled the Saitek drivers. I suspect the X56 is just as problematic as the X55. Please see both the thread about this (clearly headlined with X55 mentioned), and the pinned thread at the top of the Forum. I have been actively pursuing this nasty problem now for nearly three weeks, but I am currently awaiting a donated X55 so I can work out what is going on at first hand. Meanwhile please write to me at petedowson@btconnect.com so I can provide you with a special test version of FSUIPC, and instructions on obtaining log files and registry extracts which will help me delve further, and maybe even advise on a workaround. 5 minutes ago, elmond said: Now I cannot program the mode switch or the slider button on the throttle. I think Mode Switches can only be programmed in the special software provided for the device. Not sure what a "slider button" is. Do you mean an actual slider? For both these controls, can you tell me how they show in Windows Game Controllers (or the Win10 equivalent)? Also, please could you run my "HidScanner" program and show me or send me the log file it produces. You'll find this program in the "Useful Additional Programs" thread of the Download Links subforum. Thank you, Pete
Pete Dowson Posted May 1, 2017 Report Posted May 1, 2017 I received your email. Thank you. Here's my reply. Quote The mode switch shows as permantly depressed buttons 34 35 36 there. Right. That explains why FSUIPC doesn’t see it. It only handles 32 buttons per device (the original Windows limit), and always has done. It would be a very big conversion job to change this. Sorry. Quote By slider I meant a sliding switch, which also permanently depresses a button. In my case button 33. Ah, same problem then. Does this device really have 32 other buttons? Quote On a side note, the installation of the drivers breaks the Windows calibration page, The calibration entry is greyed out. Sounds like the same problem as with the X55, notified by Saitek on their support site. Apart from those two buttons/switches, does everything else work in FSUIPC? If so you probably do not have the same problems as the X55 sufferers. I'd still be interested in whether the X56 does the same odd things in the Registry though, so, to that end, could you do the following please? Export these relevant registry parts: HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\MediaProperties\PrivateProperties Do this by running RegEdit from the Windows start menu, going down the Explorer style layers to those and with that layer selected do File-Export give them each a name (it’ll save as a .reg file).Don't change the fileype at all, just leave it off. Then rename them from .reg to .txt so the mail system or my anti-virus doesn’t reject them (.reg files, when run, change the registry), and send those to me. Thanks, Pete
elmond Posted May 1, 2017 Author Report Posted May 1, 2017 (edited) 11 minutes ago, Pete Dowson said: Apart from those two buttons/switches, does everything else work in FSUIPC? If so you probably do not have the same problems as the X55 sufferers. I'd still be interested in whether the X56 does the same odd things in the Registry though, so, to that end, could you do the following please? No it does not work at all, as long as I have the Saitek drivers installed. If I go to the device manager, uninstall the device including drivers and then replug/ reboot and use the generic driver it'll work, just without the 4 extra buttons. And these are gone then for other applications as well then of course. And yes, there are really 32 buttons on the device apart from the mode switch and the "slider" I mentioned. And I use them all because of a vr head set :) I was expecting something like set.Buttons(get.maxNumberOfButtons) but if it is coded differently then that is just the way it is :P I will mail the reg excerpt shortly. Edited May 1, 2017 by elmond
Pete Dowson Posted May 1, 2017 Report Posted May 1, 2017 18 minutes ago, elmond said: No it does not work at all, as long as I have the Saitek drivers installed. If I go to the device manager Oh, sorry. yes, that's expected really. It takes control and FSUIPC can't see it. You might just be able to fiddle it by changing the GUIDs used, but more later about that ... 18 minutes ago, elmond said: If I go to the device manager, uninstall the device including drivers and then replug/ reboot and use the generic driver it'll work, just without the 4 extra buttons. That's the normal way of using all Saitek devices successfully, actually. (Same applies to CH devices and their CH Manager). 18 minutes ago, elmond said: And these are gone then for other applications as well then of course. Really? No reason why that should be the case, unless their presence as buttons 32-35 is "fiddled" by the Saikek software, but there should be no reason why they should do that. I'll just check the HidScanner log you sent ... was that with the Saitek stuff installed too? For the X56 Stick is shows: Buttons range 1 -> 17 at indices 4 -> 20 Value Y at index 0, range 0 -> 65535, using 16 bits Value X at index 1, range 0 -> 65535, using 16 bits Value R/RZ at index 2, range 0 -> 4095, using 12 bits Value POV at index 3, range 1 -> 8, using 4 bits Value V/RY at index 21, range 0 -> 255, using 8 bits Value U/RX at index 22, range 0 -> 255, using 8 bits So only 17 buttons 1-17 on the stick. (FSUIPC would number those 0-16, as windows does itself, internally). For the X56 Throttle it shows: Buttons range 1 -> 36 at indices 2 -> 37 Value Y at index 0, range 0 -> 1023, using 10 bits Value X at index 1, range 0 -> 1023, using 10 bits Value Dial at index 38, range 0 -> 255, using 8 bits Value Sldr at index 39, range 0 -> 255, using 8 bits Value V/RY at index 40, range 0 -> 255, using 8 bits Value R/RZ at index 41, range 0 -> 255, using 8 bits Value U/RX at index 42, range 0 -> 255, using 8 bits Value Z at index 43, range 0 -> 255, using 8 bits Now that's all read direct form the USB device itself, at the serial port level. So any program should be able to read the stuff (1-36 on the Throttle), with or without the Saitek drivers. FSUIPC is just limited to 32. To see if FSUIPC can pick up the devices with the Saitek software running, could you just try changing the GUIDs listed in the [JoyNames] section of the INI file (save your current one first). Part of them at present will either be Stick: 8002 or 8003 Throttle: 8001 or 8004 Just try with those changed to the alternative possibility please, and let me know. Pete
elmond Posted May 1, 2017 Author Report Posted May 1, 2017 Yeah this was with the software running. Windows will not pick up the switches when it is not installed. I swear it did before the creators update, but I might be mistaken. The calibration dialog of windows will only work with the saitek drivers not installed. The GUID change was overwritten by FSUIPC every time I opened the dialogue. So I set the ini to write protected, changed the GUIDS and it was not picking up the axes either. If it is standard procedure to remove the driver, then I'll just live with the 32 buttons :)
elmond Posted May 1, 2017 Author Report Posted May 1, 2017 Ah I am too retarded. Wait one. I think changing the guid will work.
elmond Posted May 1, 2017 Author Report Posted May 1, 2017 I am a noob :) I had uninstalled and reinstalled the driver.... This time more of the guid had changed and it was not just changing the numbers. Changing it to the value in Calibration\1 did the trick. My new entries were for the Throttle [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221] [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\Calibration] [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\Calibration\0] "GUID"=hex:30,f1,7a,bf,7b,1c,e7,11,80,01,44,45,53,54,00,00 "Joystick Id"=hex:01,00,00,00 [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\Calibration\0\Type] [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\Calibration\1] "GUID"=hex:90,db,7b,bf,7b,1c,e7,11,80,04,44,45,53,54,00,00 "Joystick Id"=hex:02,00,00,00 [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\Calibration\1\Type] [HKEY_CURRENT_USER\System\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\VID_0738&PID_A221\DeviceInstances] "7&607925A&0&0000"=hex:02 "7&121B43D7&0&0000"=hex:02 So I changed the 1.GUID={BF7AF130-1C7B-11E7-8001-444553540000} to 1.GUID={BF7BDB90-1C7B-11E7-8004-444553540000} started up p3d and guess what, it works. Sans the extra buttons of course :P
Pete Dowson Posted May 1, 2017 Report Posted May 1, 2017 34 minutes ago, elmond said: started up p3d and guess what, it works. So effectively it is EXACTLY the same problem I am trying too resolve with the X55. Currently what you did is the work-around, but I'm trying to find a way to do that automatically. I will persevere, but currently it's on hold whilst I await the arrival of a donated X55 ... trouble is, I'm on holiday for two weeks in 8 days time, so it may not be fixed properly till the end of the month or so. Currently you have to see the registry to do the work around, and that's not on for the average user. Pete
elmond Posted May 1, 2017 Author Report Posted May 1, 2017 Probably not, maybe the Vendor ID can help you out? Nevertheless, I am happy for now. I was telling myself for so long how I did not need your product, boy was I wrong :) Have a nice vacation and feel free to contact me, if I can be of any help. seb
Pete Dowson Posted May 1, 2017 Report Posted May 1, 2017 36 minutes ago, elmond said: maybe the Vendor ID can help you out? No, the Vendor and Product ID are the same in both cases. The call into Windows to enumerate the devices gives only the first one in the Registry, so that's the one I use. Multiple identical devices have the same structure in the Registry, but they are separately enumerated. I can't tell the first one is no good. I tried actually seeing if it gives a valid response when asked for its joystick and button values, but it does, albeit null (default) values-- but then so does, say, a Bodnar board before it has any connections. I'm still looking for a way. If i was to avoid using DirectInput, go direct to the USB port and read it directly instead, I could make it work but that's a lot of work, a lot of error-prone changes. I notice that P3D now has links into the Xinput API, the newer one MS added originally for Xbox-connected devices. Perhaps that's something I could use, but again, a biggish rewrite. Thanks, Pete
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now