macwino Posted March 9, 2011 Report Posted March 9, 2011 My yoke, pedals and throttle quadrant are plugged into a USB hub which is then plugged into my machine. I had to unplug the hub from the machine and errantly plugged it back into a different USB input. As a result, I lost all of the connectivity between fsuipc and my controllers. In short, none of my fsuipc button settings work. I have read the "Keeping track of multiple control devices" section of the User Guide and am now aware that this can happen. I wasn't using the letter assignments recommended in that section. I have tried switching the USB cable back to the USB port that I used to use, but it doesn't correct the problem. I have compared my current fsuipc.ini file with the backup one that I was using before this unplugging, but they are identical. Is there any simple remedy for this situation? If not, what do I have to do to get all my settings working again? Will I have to modify each entry referring to a specific controller, and if so, how do I know what changes to make and to which entries. Virtually all of my ini entries were manually entered over the last 10 years and comprise many hundreds, if not thousands, of lines. Also, is there some system file that I can restore from one of my backups that would reinstate whatever it is that Windows altered when I errantly used the wrong USB input? Thanks, Robert
Gypsy Baron Posted March 9, 2011 Report Posted March 9, 2011 My yoke, pedals and throttle quadrant are plugged into a USB hub which is then plugged into my machine. I had to unplug the hub from the machine and errantly plugged it back into a different USB input. As a result, I lost all of the connectivity between fsuipc and my controllers. In short, none of my fsuipc button settings work. I have read the "Keeping track of multiple control devices" section of the User Guide and am now aware that this can happen. I wasn't using the letter assignments recommended in that section. I have tried switching the USB cable back to the USB port that I used to use, but it doesn't correct the problem. I have compared my current fsuipc.ini file with the backup one that I was using before this unplugging, but they are identical. Is there any simple remedy for this situation? If not, what do I have to do to get all my settings working again? Will I have to modify each entry referring to a specific controller, and if so, how do I know what changes to make and to which entries. Virtually all of my ini entries were manually entered over the last 10 years and comprise many hundreds, if not thousands, of lines. Also, is there some system file that I can restore from one of my backups that would reinstate whatever it is that Windows altered when I errantly used the wrong USB input? Thanks, Robert It is possible to recover from this problem but it will be a bit "messy". First, keep your backups handy. Then, with the current non-working FSUIPC4.ini, set the line "AutoAssignLetters=Yes" in the JoyNames section. Run FSX so that FSUIPC reads the controller inputs reported by Windows as they exist now and assigns letters to them. You will use those assignments to edit one of your backup INI files. I'll demonstrate with my setup as I had a similar issue when I created a dual-boot XP/Win7 arrangement. First, here is what the assignments were when running my Win7 setup with "AutoAssignLetters=Yes": This will be analogous to you running FSX the first time with "AutoAssignLetters=Yes". [JoyNames] AutoAssignLetters=Yes 0=Saitek Pro Flight Quadrant 1=USB ADAPTOR 2=Saitek X45 Flight Controller USB 3=Saitek Pro Flight Yoke 0.GUID={290642A0-830A-11DC-8002-444553540000} 1.GUID={2E3BCC00-678E-11DC-8001-444553540000} 2.GUID={48910F70-888F-11DD-8001-444553540000} 3.GUID={290642A0-830A-11DC-8001-444553540000} A=Saitek Pro Flight Quadrant A.GUID={290642A0-830A-11DC-8002-444553540000} B=USB ADAPTOR B.GUID={2E3BCC00-678E-11DC-8001-444553540000} C=Saitek X45 Flight Controller USB C.GUID={48910F70-888F-11DD-8001-444553540000} D=Saitek Pro Flight Yoke D.GUID={290642A0-830A-11DC-8001-444553540000} Note that FSUIPC assigned the letters A,B,C,D in the order the controllers were reported by Win7. This is analogous to what you need to do first. Get the letters assigned as the configuration exists now. Now, here is what my Xp setup looked like before doing the letter assignment edit. This is analogous to your previous FSUIPC4.ini backup file created before the configuration changed. [JoyNames] AutoAssignLetters=No 0=USB ADAPTOR 1=Saitek Pro Flight Yoke 2=Saitek Pro Flight Quadrant 3=Saitek X45 0.GUID={C2624D30-8952-11DF-8009-444553540000} 1.GUID={C2624D30-8952-11DF-8007-444553540000} 2.GUID={C2624D30-8952-11DF-8008-444553540000} 3.GUID={C2624D30-8952-11DF-8006-444553540000} Note that the numbers assigned are different from the Win7 section. The GUIDS are also different but these will be replaced with the new assignments after you edit the old INI file. You will need to do a systematic search & replace operation on a copy of your backup file, replacing the Joy# entries with the new letter assignment. First make your translation list similar to this for each of your listed controllers: Saitek Pro Flight Quadrant is now letter "A" but WAS number "2" in the OLD file USB ADAPTOR is now letter "B" but WAS number "0" Saitek X45 Flight Controller USB is now letter "C" but WAS number "3" Saitek Pro Flight Yoke is now letter "D" but WAS number "1" Using that information, first search for all instances of "=P2," and replace them with "=PA," Do the same for "=R2," --> "=RA," and "=U2," ---> "=UA," Those are the combinations for the simple button assignments. Repeat that procedure for P0,R0,U0 ---> PB, RB, UB, and P3,R3,U3 --> PC,RC,UC, etc That will convert all the simple Press/Repeat/Up button assignments to letters. Do the same for the any other letter assignments, depending upon how many controllers you have. Also, if you have any compound button assignments, you'll need to search & replace those constructs as well. The Axis translations will take a bit more to accomplish as you need to search for the old number paired with these letters X,Y,Z,S,U,Y. "=0X," BECOMES "=BX," "=1X," becomes "=DX," and so on. Once you have all those translations made All that remains is to copy and paste the entire JoyNames section from the first file....the one that you used to obtain the letter assignments, and paste that section into the edited file, replacing the old assignments. Scan through the file to make sure you picked up all the number to letter translations. You should then be able to replace the existing FSUIPC4.ini file with the edited file and your controls should be working again. Good luck, Paul
macwino Posted March 9, 2011 Author Report Posted March 9, 2011 (edited) Paul, thanks so much for the detailed explanation about how to proceed. Before proceeding, however, let me provide some further details about the situation that suggest to me that something more may be involved that needs to be addressed. First, it is only my button assignments that are not being recognized by fsuipc. All my other fsuipc assignments are being properly recognized. This suggests to me that the current Windows device assignments may not necessarily be out of sync with what fsuipc was previously using before my USB input error. Specifically, I have 3 devices - Saitek pedals, a Saitek yoke with an attached throttle quadrant, and a separate, additional Saitek throttle quadrant. The pedals work fine. The levers on both throttle quadrants also adhere to their fsuipc assignments. However, the buttons on the throttle quadrants (both the TQ associated with the yoke and the separate TQ) do not recognize the fsuipc assignments. Nor do any of the buttons on the yoke recognize the fsuipc assignments. Second, my backup fsuipc.ini file and the one created after the USB input error are identical in every respect, except for the History line at the very top. In particular, the assignments shown for my 3 devices are the same in both. Thus, 0 is assigned to the pedals, 1 is assigned to the yoke and its associated TQ, and 2 is assigned to the separate TQ. Third, I created a test fsuipc.ini file assigning letters to the devices, and this ini follows the same assignments as noted above. Of course, the pedals are now assigned A, the yoke and its associated TQ are assigned B, and the separate TQ is assigned C. In sum, I see none of the device number assignment changes that you encountered. Also, my fsuipc assignments for the levers on my devices are being recognized correctly - it is just the button assignments that are not being recognized. Might something else be going on here that needs to be addressed? Thanks again for the input. Robert One further thought. All of my button entries in the fsuipc.ini file were entered manually. I never used the fsuipc Options dialog box for these entries. Edited March 9, 2011 by macwino
Gypsy Baron Posted March 9, 2011 Report Posted March 9, 2011 -SNIP- Third, I created a test fsuipc.ini file assigning letters to the devices, and this ini follows the same assignments as noted above. Of course, the pedals are now assigned A, the yoke and its associated TQ are assigned B, and the separate TQ is assigned C. In sum, I see none of the device number assignment changes that you encountered. Also, my fsuipc assignments for the levers on my devices are being recognized correctly - it is just the button assignments that are not being recognized. Might something else be going on here that needs to be addressed? Thanks again for the input. Robert One further thought. All of my button entries in the fsuipc.ini file were entered manually. I never used the fsuipc Options dialog box for these entries. Hummm....that is a strange situation. Nothing comes to mind at the moment that would cause only the button assignments not to work yet leave the axis assignments intact. Particularly when you say the "before" and "after" files are identical where the coding is concerned. I would leave the letter assignment configuration as your working ini file as that will protect you from any Windows reporting changes in the future. You may need to wait until Pete is back and then attach a copy of the ini file to see if he can find a cause for this behavior. You might try making a couple of assignments using the FSUIPC "in sim" menu and then compare the ini file entries for those vs the previous hand-edited versions. And a slow, methodical, line by line comparison might be in order just to insure you didn't miss something in your previous inspection. I've often had the case where I overlooked some discrepancy the first or second time I went through some malfunctioning code. Paul
macwino Posted March 10, 2011 Author Report Posted March 10, 2011 Paul, thanks for the suggestions. Indeed, it looks like I'll have to wait for Peter's return. In the meantime, I did try creating a new fsuipc.ini and entering buttons using the fsuipc GUI. These entries work. But the relevant assignments and parts of the new fsuipc.ini are identical to the one that no longer works for me. And as far as doing a careful comparison of my full ini file - both before and after the USB input error, I did this to begin with using WinMerge and it finds the files identical. So there's not much more that I can do. Thanks again for your assistance and I look forward to seeing what Peter has to say. Robert
Pete Dowson Posted March 14, 2011 Report Posted March 14, 2011 Paul, thanks for the suggestions. Indeed, it looks like I'll have to wait for Peter's return. In the meantime, I did try creating a new fsuipc.ini and entering buttons using the fsuipc GUI. These entries work. But the relevant assignments and parts of the new fsuipc.ini are identical to the one that no longer works for me. And as far as doing a careful comparison of my full ini file - both before and after the USB input error, I did this to begin with using WinMerge and it finds the files identical. So there's not much more that I can do. I don't understand either, at least not without seeing the data itself. Perhaps you could post the "before" and "after" (after you used the Options successfully), highlighting the lines which don't work as opposed to those that do. You don't need to paste in all of the files, only the Buttons sections. Regards Pete
macwino Posted March 14, 2011 Author Report Posted March 14, 2011 Pete, as you requested, here is the button section from my test ini generated by default by fsuipc. The 3 lines that are remmed out - I think that’s the proper term - were entered first using the fsuipc Options interface. All worked just fine. I then modified the default ini by remming out the 3 default lines and adding the next four lines, which represent my usual coding for the first two of these buttons that I've been using for years. I got no response from these buttons with this coding. [buttons.C185F SKYWAGON TUNDRA N9916] //0=P1,6,K50,9 //1=P1,7,K51,9 //2=P2,0,K52,9 40=CP(+1,8)(-1,0)1,7,K50,9 ; RXP GNS WAAS(Shift+2) 41=CP(+1,8)(-1,0)1,6,K51,9 ; RXP GMAGTX (Shift+3) 42=CP(+1,8)(+1,0)1,6,K53,9 ; Control Window (Shift+5) 43=CP(+1,8)(+1,0)1,7,K52,9 ; Manual (Shift+4) I also thought I would include my JoyNames section from this test default ini, in case it's also relevant. It is identical to the one that is in my original customized ini that no longer works. [JoyNames] AutoAssignLetters=No 0=Saitek Pro Flight Rudder Pedals 0.GUID={B4F04430-91B4-11DF-8006-444553540000} 1=Saitek Pro Flight Yoke 1.GUID={B4F04430-91B4-11DF-8007-444553540000} 2=Saitek Pro Flight Quadrant 2.GUID={B4F04430-91B4-11DF-8008-444553540000} In addition, over the weekend I had rewritten my original post to clarify exactly what is going on and was going to post it this morning - my time - but you responded before I did so. It might clarify things so here it is anyway. It would have been re-titled “My manually-programmed buttons no longer work; but my axis assignments are fine.” Pete, this is a revised posting of an earlier post that I made while you were away. It fine tunes the problem and eliminates matter that might have confused the exact issue involved. However, should you want to look at my earlier post, it is here. Feel free to delete it to avoid any duplication. I manually program all of my controller button assignments in fsuipc. I do not use the fsuipc Options window for this purpose and instead manually enter the code in the fsuipc.ini. This is because my buttons are all coded using CP or CR type entries. Through a stupid error, I have lost the use of all these buttons. Strangely, however, my axis assignments and axis calibrations, which I did not manually code, but instead entered through the fsuipc Options window, are still working. My error was to unplug from my machine the USB Hub to which all of my controllers are attached, and then errantly plug the Hub back into a different USB port. When I discovered I was getting no controller button responses in FSX, I checked my connections and saw that I’d used the wrong USB port for the Hub. I switched back to the usual USB port but I still had no button responses. I then tried replacing my fsuipc.ini with a backup from a few days before. But this made no difference. Still no button responses. And, BTW, the backup and current ini files were identical in all respects except for the History line at the very top. Most importantly, the JoyNames entries and device assignments were identical. I then tried removing my fsuipc.ini and allowing the program to generate a new one. This default fsuipc.ini had the exact same JoyNames entries and device assignments as my backup and current ini files. I then used the fsuipc Options window to program a few buttons using the fsuipc GUI. These buttons worked. I then went back to the default fsuipc.ini, disabled these new button entries, and manually entered my coding for these buttons. But the manually-programmed buttons didn’t work. I then tried reinstalling the drivers for my controllers, but this didn’t solve the problem. I also re-installed fsuipc and the latest updates but it made no difference. So I find myself in a position where I can no longer use my custom fsuipc.ini with my manually-coded buttons, and I am also unable to manually re-code my controller buttons using a default fsuipc.ini. I am running Windows 7 Ultimate 64 and FSX Acceleration. I am using 3 devices: Saitek pedals, a Saitek yoke with an attached throttle quadrant, and a separate, additional Saitek throttle quadrant. The pedals work fine. The levers on both throttle quadrants also adhere to their fsuipc assignments. However, the buttons on the throttle quadrants (both the TQ associated with the yoke and the separate TQ) do not recognize the fsuipc assignments. Nor do any of the buttons on the yoke recognize the fsuipc assignments. My backup fsuipc.ini file and the one created after the USB input error both use the same device assignments. Thus, 0 is assigned to the pedals, 1 is assigned to the yoke and its associated TQ, and 2 is assigned to the separate TQ. I wasn't using the letter assignments recommended in the "Keeping track of multiple control devices" section of the User Guide. For what it’s worth, however, I did create a test ini using the letter assignments. This ini followed the same assignments as noted above. Of course, the pedals were now assigned A, the yoke and its associated TQ were assigned B, and the separate TQ was assigned C. This ini also didn’t allow me to manually code any button assignments. Your assistance will be greatly appreciated. I’d like to be able to again program my controller buttons using fsuipc. Thanks, Robert
Pete Dowson Posted March 14, 2011 Report Posted March 14, 2011 Pete, as you requested, here is the button section from my test ini generated by default by fsuipc. The 3 lines that are remmed out - I think that’s the proper term - were entered first using the fsuipc Options interface. All worked just fine. I then modified the default ini by remming out the 3 default lines and adding the next four lines, which represent my usual coding for the first two of these buttons that I've been using for years. I got no response from these buttons with this coding. [buttons.C185F SKYWAGON TUNDRA N9916] //0=P1,6,K50,9 //1=P1,7,K51,9 //2=P2,0,K52,9 40=CP(+1,8 )(-1,0)1,7,K50,9 ; RXP GNS WAAS(Shift+2) 41=CP(+1,8 )(-1,0)1,6,K51,9 ; RXP GMAGTX (Shift+3) 42=CP(+1,8 )(+1,0)1,6,K53,9 ; Control Window (Shift+5) 43=CP(+1,8 )(+1,0)1,7,K52,9 ; Manual (Shift+4) Interesting that the 4 lines which don't appear to work all need 1,8 pressed. A separate test of that button would be interesting, don't you think? After all it is the only thing I can see which would stop those 4 lines doing anything. Have you checked the logging? Enable button and key logging in FSUIPC Logging tab and see what that tells us. Is this the whole set of assignments? If not perhaps you need to post the complete Buttons section? Regards Pete
macwino Posted March 15, 2011 Author Report Posted March 15, 2011 Interesting that the 4 lines which don't appear to work all need 1,8 pressed. A separate test of that button would be interesting, don't you think? After all it is the only thing I can see which would stop those 4 lines doing anything. Pete, thanks for pointing me in the direction of a solution. I had checked out this button previously, and it was shown to be working in the Windows controller settings dialog. I had forgotten, however that in order to get this button recognized in fsuipc, I had to disable a Saitek file in the Windows32 folder. What appears to have happened is that when I plugged the USB cable into the wrong port, Windows automatically reinstalled the drivers from its cache. This reinstall added the disabled file back into the system. I should have caught this when I went ahead and yet again reinstalled the drivers myself a few days later, but I'd simply forgotten that I needed to pull this file. I've now removed the problem file and my buttons all work within fsuipc as before. Thanks, Robert
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