Jump to content
The simFlight Network Forums

Compound Keypress Problem


Recommended Posts

Hi Pete,

 

I have been successfully using the following FSUIPC.ini code (with  FSUIPC ver 4.937, FSX & Win7) for a Teamspeak push to talk function using a button on my Saitek yoke:

 

36=CR(+Y,8)Y,1,K192,8 ;TeamSpeak voice capture start, mode sw=1, K192 for ` key
37=CU(+Y,8)Y,1,K192,8 ;TeamSpeak voice capture stop, mode sw=1

 

I would like to change the key (keycode) used to activate Teamspeak from the ` key ( the left-most key above the Tab key on my keyboard) to just the Right Ctrl key.  If that is not possible, my second choice would be to use just the Print Screen key.

 

I have tried using K163 for the Right Ctrl key option, and K44 for the Print Screen option in the above code, but can't get either to work.  When Teamspeak is setup to use one or the other of these keys, I can  activate Teamspeak when using the respective keyboard key.

 

Thanks for any suggestions .

 

Al

Link to comment
Share on other sites

I would like to change the key (keycode) used to activate Teamspeak from the ` key ( the left-most key above the Tab key on my keyboard) to just the Right Ctrl key.  If that is not possible, my second choice would be to use just the Print Screen key.

 

I have tried using K163 for the Right Ctrl key option, and K44 for the Print Screen option in the above code, but can't get either to work.  When Teamspeak is setup to use one or the other of these keys, I can  activate Teamspeak when using the respective keyboard key.

 

Well 44 should work, but it may be getting intercepted before Teamspeak sees it, depending on how it reads the keyboard. But the ability to distinguish between the two shift and control keys needs a different way of programming in FSUIPC. I'm not sure how to do it offhand. 

 

Why do you need to change? If it works as it was, why not let it be?

 

Pete

Link to comment
Share on other sites

Why do you need to change? If it works as it was, why not let it be?

 

Pete

The current Teamspeak setup works fine when in FSX. However, when using Teamspeak when NOT in FSX, using a printable (and repeating) keyboard key to activate Teamspeak often interfers with what else I'm doing on the computer.

Thx,

Al

Link to comment
Share on other sites

Don't mean to butt-in, but, the recent iterations of TS3 provide you with a functionality to "directly" assign a joystick button to PTT. You don't really need to map a key combo. 

 

This new functionality is very nice tweak.

 

Just sayin'

Thanks for your input, I was not aware of the direct joystick assignment capability of Teamspeak3.

 

The problem remians, however, because I need the Teamspeak push to talk function on the Saitek yoke to be conditional on the position of what Saitek calls the Mode switch. So while Teamspeak3 does directly see the push to talk button, it does not seem to be sensitive to the mode switch position.

 

Al

Link to comment
Share on other sites

Teamspeak3 "sees" the Print Screen key as PRNT SCRN + 255. This is what it shows as the key value when setting up the hot key for push to talk.  So I tried using K299 in the conditional button code

 

CR(+Y,8)Y,1,K299,8

 

where the 299 comes from 44 +255, but that didn't work either. FSUIPC changed the value to K43, probably because keycodes are typically represented in 8 bits, and 299 requires 9 bits. I also tried changing the parameter that follows K299 to something other than 8 without success (tried 9 and 10 as a shot in the dark -- I don't know how FSUIPC makes use of that last parameter).

 

Thx,

Al

Link to comment
Share on other sites

As I recall, the mode switch on Saitek products does not get sent through to FSX/FSUIPC4 normally. The Saitek

software traps that button/switch. There is a work-around that requires an edit in the registry, I believe.

I don't recall the details exactly but a google search or a search of this forum should turn up the

solution.

 

I use a different approach to mapping multiple commands to the same switch/button/key. I assign one of the

user-defined offsets to be my 'mode idicator' and then use the contents of that offset as the qualifier for

my mappings. An example, FYI, showing a portion of the mappings for my A2A P-40::

[Buttons.Curtiss P-40]
1!==//------- Control Set 1 -----------------
0=PA,4,Cx510066C0,x00040001 ;//CONTROL SET INC Max = 4 Step = 1
1=PA,5,Cx610066C0,x00040001 ;//CONTROL SET DEC Max = 4 Step = 1
2=B66C0=0 PD,14,C66400,0 ;//Magneto - OFF
3=B66C0=0 PD,15,C66400,2 ;//Magneto - Left
4=B66C0=0 PD,16,C66400,3 ;//Magneto - Both
5=B66C0=0 PD,17,C66400,1 ;//Magneto - Right
.
.
2!==//--------- Control Set 2 -----------------
20=B66C0=1 PD,14,CM9:14,3 ;//Fuel Tank Select - CYCLIC
21=B66C0=1 PD,15,CM9:18,0 ;//Hydraulic Pump Toggle
22=B66C0=1 PD,16,CM9:15,0 ;//Generator Toggle
23=B66C0=1 PD,17,CM9:5,0 ;//Battery - Toggle
.
.
3!==//--------- Control Set 3 -----------------
40=B66C0=2 PD,14,C66389,0 ;//Toggle Canopy
41=B66C0=2 PD,15,CM9:1,0 ;//Toggle Gunsight
42=B66C0=2 PD,16,CM9:8,0 ;//Klaxton Test Toggle
43=B66C0=2 PD,17,CM9:10,0 ;//Prestone Test Toggle
.
.
4!==//------- Control Set 4 -----------------
60=B66C0=3 PD,14,C66506,225 ;//Toggle GPS
61=B66C0=3 PD,15,C66506,440 ;//Toggle ANR-75 radar
62=B66C0=3 PD,16,C66506,14992 ;//Toggle AP Chart
63=B66C0=3 PD,17,C65910,0 ;//MAP - TOGGLE (Panel 5)
.
.
5!==//------- Control Set 5 -----------------
80=B66C0=4 PD,14,CM9:32,0 ;//Oil Dilute  TOGGLE
//81=B66C0=4 PD,15, SPARE
82=B66C0=4 PD,16,CM9:25,1 ;//ON Jacks
83=B66C0=4 PD,17,CM9:25,0 ;//OFF Jacks

 The user-defined location 66C0 indicates the current mode. That number must match the number indicated

in the INI for a particular button/switch/key for that mapping to be active. I sdome of my aircraft I have up

to 9 'modes' so this method would work well for those with a minimum number of buttons/switches. I have

10 switches on my Saitek dual throttle quads that I assign in this fashion. Only 4 are shown in the snippet above.

 

I assign two switches, PA 4 and PA 5, to increment/decrement the mode. (Lines 0,1 above) Also, when

the mode number changes I have a Lua script that displays the current mappings for the

mode for 3 or 4 seconds to remind me as to what each switch currently does :)

 

  Paul

Link to comment
Share on other sites

As I recall, the mode switch on Saitek products does not get sent through to FSX/FSUIPC4 normally. The Saitek

software traps that button/switch. There is a work-around that requires an edit in the registry, I believe.

I don't recall the details exactly but a google search or a search of this forum should turn up the

solution.

 

Thanks for the response, interesting approach you use.

 

I don't use any of the Saitek supplied software. To make FSUIPC see the Saitek Mode switch, go into the folder C:\Windows\System32 (assuming the C drive is where things are at, otherwise substitute the correct letter)  – you should find a file called SaiD0BAC.PRO. Rename this file – I simply renamed mine SaiD0BACmodeswitch.PR0 and left it in the original System32 folder.  Then restart Windows, and the next time you start FSX pull up FSUIPC and go to the Buttons + Switches section and flip the mode switch – FSUIPC should register the switch when it moves.

 

Al

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.