FSUIPC compound button programming
Home
Up
The compound button function in FSUIPC is a great feature for making certain button functions depending on another button or switch setting. I used this function to assign different functions to rotary encoders.

Below my switch setup is shown. The selector switch at the right will determine which function the rotaries will increase or decrease. 

For the compound button programming, basically you have to edit the FSUIPC to include the BLUE text
The numbers for the functions can be found in FSUIPC List of FS2004 controls doc. When using a number that does not exist in the list, the button action will have no effect. 

21=CP(+3,8)1,22,C1055,0
22=CP(+3,8)1,23,C1054,0
23=CP(+3,8)1,30,C66457,0
 If Joy#3, Button 8 active, then Joy#1, button 30 will activate XPNDR 10 Decrease
24=CP(+3,8)1,31,C65653,0 
If Joy#3, Button 8 active, then Joy#1, button 31 will activate XPNDR 10 Increase
25=CP(+3,8)1,20,C1057,0
26=CP(+3,8)1,21,C1056,0
27=CP(+3,8)1,28,C66455,0
 If Joy#3, Button 8 active, then Joy#1, button 28 will activate XPNDR 1000 Decrease
28=CP(+3,8)1,29,C65651,0
 If Joy#3, Button 8 active, then Joy#1, button 29 will activate XPNDR 1000 Increase
 

For ADF (big tuning range), I used the MJOY fine rotary slow rotation to control fraction, fine fast for 1 increase , coarse rotary slow for 10 increase and coarse fast for 100 increase.
 
31=CP(+3,9)1,22,C66461,0
 If Joy#3, Button 9 active, then Joy#1, button 22 will activate ADF Fraction Decrease Carry
32=CP(+3,9)1,23,C66462,0 
If Joy#3, Button 9 active, then Joy#1, button 23 will activate ADF Fraction Increase Carry
33=CP(+3,9)1,30,C65668,0 
If Joy#3, Button 9 active, then Joy#1, button 30 will activate ADF 1Decrease
34=CP(+3,9)1,31,C65650,0
 If Joy#3, Button 9 active, then Joy#1, button 31 will activate ADF 1Increase
35=CP(+3,9)1,20,C65667,0
 If Joy#3, Button 9 active, then Joy#1, button 20 will activate ADF 10 Decrease
36=CP(+3,9)1,21,C65649,0 
If Joy#3, Button 9 active, then Joy#1, button 21 will activate ADF 10 Increase
37=CP(+3,9)1,28,C65666,0 
If Joy#3, Button 9 active, then Joy#1, button 28 will activate ADF 100 Decrease
38=CP(+3,9)1,29,C65648,0 
If Joy#3, Button 9 active, then Joy#1, button 29 will activate ADF 100 Increase
 

For the other controls I I used fine rotary for fraction increase and coarse rotary for whole increase. To make sure slow and fast turning has the same action, both slow and fast button of are assigned to the same increase function.

41=CP(+3,10)1,22,C66449,0
 If Joy#3, Button 10 active, then Joy#1, button 22 will activate NAV2 Fraction Decrease Carry
42=CP(+3,10)1,23,C66450,0 
If Joy#3, Button 10 active, then Joy#1, button 23 will activate NAV2 Fraction Increase Carry
43=CP(+3,10)1,30,C66449,0
 If Joy#3, Button 10 active, then Joy#1, button 30 will activate NAV2 Fraction Decrease Carry
44=CP(+3,10)1,31,C66450,0
 If Joy#3, Button 10 active, then Joy#1, button 31 will activate NAV2 Fraction Increase Carry
45=CP(+3,10)1,20,C65644,0
 If Joy#3, Button 10 active, then Joy#1, button 20 will activate NAV2 Whole Decrease
46=CP(+3,10)1,21,C65645,0 
If Joy#3, Button 10 active, then Joy#1, button 21 will activate NAV2 Whole Increase
47=CP(+3,10)1,28,C65644,0 
If Joy#3, Button 10 active, then Joy#1, button 28 will activate NAV2 Whole Decrease
48=CP(+3,10)1,29,C65645,0
 If Joy#3, Button 10 active, then Joy#1, button 29 will activate NAV2 Whole Increase
49=CP(+3,10)3,14,C66452,0
 If Joy#3, Button 10 active, then Joy#3, button 14 will activate NAV2 Radio SWAP
 

Similar for NAV1 radio

51=CP(+3,11)1,22,C66445,0
52=CP(+3,11)1,23,C66446,0
53=CP(+3,11)1,30,C66445,0
54=CP(+3,11)1,31,C66446,0
55=CP(+3,11)1,20,C65640,0
56=CP(+3,11)1,21,C65641,0
57=CP(+3,11)1,28,C65640,0
58=CP(+3,11)1,29,C65641,0
59=CP(+3,11)3,14,C66448,0


Similar for COM2 radio

61=CP(+3,12)1,22,C66439,0
62=CP(+3,12)1,23,C66441,0
63=CP(+3,12)1,30,C66439,0
64=CP(+3,12)1,31,C66441,0
65=CP(+3,12)1,20,C66436,0
66=CP(+3,12)1,21,C66437,0
67=CP(+3,12)1,28,C66436,0
68=CP(+3,12)1,29,C66437,0
69=CP(+3,12)3,14,C66444,0


Similar for COM1 radio

71=CP(+3,13)1,22,C66434,0
72=CP(+3,13)1,23,C66435,0
73=CP(+3,13)1,30,C66434,0
74=CP(+3,13)1,31,C66435,0
75=CP(+3,13)1,20,C65636,0
76=CP(+3,13)1,21,C65637,0
77=CP(+3,13)1,28,C65636,0
78=CP(+3,13)1,29,C65637,0
79=CP(+3,13)3,14,C66372,0
 

For auto pilot, some functions only have single control:

81=CP(+3,5)1,19,C65893,0
 If Joy#3, Button 5 active, then Joy#1, button 19 will activate Auto Pilot ALT VAR Decrease
82=CP(+3,5)1,18,C65892,0 
If Joy#3, Button 5 active, then Joy#1, button 18 will activate Auto Pilot ALT VAR Increase
83=CP(+3,5)1,27,C1016,0
84=CP(+3,5)1,26,C1017,0
85=CP(+3,5)1,17,C1016,0
86=CP(+3,5)1,16,C1017,0
87=CP(+3,5)1,25,C1016,0
88=CP(+3,5)1,24,C1017,0

91=CP(+3,4)1,19,C65880,0 
If Joy#3, Button 4 active, then Joy#1, button 19 will activate Auto Pilot HDG BUG Decrease
92=CP(+3,4)1,18,C65879,0 
If Joy#3, Button 4 active, then Joy#1, button 18 will activate Auto Pilot HDG BUG Increase
93=CP(+3,4)1,27,C1024,0
94=CP(+3,4)1,26,C1025,0
95=CP(+3,4)1,17,C1024,0
96=CP(+3,4)1,16,C1025,0
97=CP(+3,4)1,25,C1024,0
98=CP(+3,4)1,24,C1025,0

101=CP(+3,3)1,19,C65662,0 
If Joy#3, Button 3 active, then Joy#1, button 19 will activate Auto Pilot VOR1 OBI Decrease
102=CP(+3,3)1,18,C65663,0 
If Joy#3, Button 3 active, then Joy#1, button 18 will activate Auto Pilot VOR1 OBI Increase
103=CP(+3,3)1,27,C66367,0 
104=CP(+3,3)1,26,C66368,0
105=CP(+3,3)1,17,C66367,0
106=CP(+3,3)1,16,C66368,0
107=CP(+3,3)1,25,C66367,0
108=CP(+3,3)1,24,C66368,0
 

Similar for AP Speed

111=CP(+3,2)1,19,C65897,0
112=CP(+3,2)1,18,C65896,0
113=CP(+3,2)1,27,C1020,0
114=CP(+3,2)1,26,C1021,0
115=CP(+3,2)1,17,C1020,0
116=CP(+3,2)1,16,C1021,0
117=CP(+3,2)1,25,C1020,0
118=CP(+3,2)1,24,C1021,0

Similar for AP Vertical speed

121=CP(+3,1)1,19,C65895,0
122=CP(+3,1)1,18,C65894,0
123=CP(+3,1)1,27,C1022,0
124=CP(+3,1)1,26,C1023,0
125=CP(+3,1)1,17,C1022,0
126=CP(+3,1)1,16,C1023,0
127=CP(+3,1)1,25,C1022,0
128=CP(+3,1)1,24,C1023,0

Similar for AP VOR2 adjustment

131=CP(+3,0)1,19,C65664,0
132=CP(+3,0)1,18,C65665,0
133=CP(+3,0)1,27,C1028,0
134=CP(+3,0)1,26,C1029,0
135=CP(+3,0)1,17,C1028,0
136=CP(+3,0)1,16,C1029,0
137=CP(+3,0)1,25,C1028,0
138=CP(+3,0)1,24,C1029,0
139=P0,4,C65655,0
140=P0,3,C65656,0

 

 

Back