This are the (new) Support Forums for FSUIPC and related products.
These forums replace the old support forums which have been running for 20+ years. The old forums contain a wealth of information on all FSUIPC products, and are still available (until the end of the year) for read-only here.
At the moment these new forums are quite empty – I will be updating the FAQ section and copying across the User Contributions from the old forums in the next few months.
Please note that you will need to Register and Login to post for support, and also to download attachments. You can view these forums without registering.
Support is also available via Discord. Please use the following invite link to join the FSUIPC Discord server:
https://discord.gg/zjwUTrxmmE
How to program joystick buttons and keys to control PMDG aircraft using the Rotor Brake controls
Please note that there are two methods to use PMDG custom controls. either directly or via using the Rotor Brake control. The difference between these methods is that the Rotor Brake control only accepts mouse operations as a parameter, whereas when using the custom controls directly the parameter is the new value to be used. This FAQ entry explains the use of the Rotor Brake control method - please see the other FAQ entry on using custom controls directly.
If using FSUIPC7 (for MSFS), then many of the existing Rotor Brake controls are available via existing (MobiFlight) Presets
[N.B. This FAQ entry was provided by Paul Henty in the old FSUIPC support forums]
Background
PMDG Aircraft for MSFS do not use the normal controls provided by the flight sim. This means that many of the aircraft's switches cannot be assigned to buttons and keys using the list of controls in the FSUIPC dropdown boxes. Assigning a standard control in FSUIPC will likely do nothing in the PMDG aircraft when the button or key is pressed.
Solution
Instead of using the standard list of controls shown in the FSUIPC dropdown box, users must send codes as a parameter to the standard MSFS 'Rotor Brake' control. The parameter code specifies which switch to operate and what type of mouse click to simulate.
The control numbers vary for each aircraft and are listed in the SDK that is installed alongside the aircraft.
This guide will show you, step-by-step:
- How to find the SDK files
- How to calculate the 'Rotor Brake' parameter codes
- How to assign the code to buttons/keys in FSUIPC
The specific examples shown will be taken from the PMDG 737-700, but the same method works for any PMDG aircraft with an SDK.
1. Locating the SDK
- From your main Flight Sim install folder, open the PMDG folder.
- Then select the folder belonging to the aircraft you want to use. e.g. PMDG 737 NGXu
- Then select the SDK folder
- Locate the file with the .h extension. For the 737 it's called PMDG_NG3_SDK.h
- You can open this file with Notepad or your favourite text editor.
As an example, the document you need for the 737 will be:
[FlightSimInstallFolder]\PMDG\PMDG 737 NGXu\SDK\PMDG_NG3_SDK.h
2. Calculating the 'Rotor Brake' Parameter Code
2.1. Find the control you want to use.
Search for the control by name, or look through the listed controls to find the one you want. They are helpfully grouped together by panel.
The controls are listed under a comment:
// Control Events
You can search for this to find where the list of control numbers starts.
As an example we'll use the "Autopilot CMD A" switch on the MCP. This is the relevant line in the 737 SDK:
#define EVT_MCP_CMD_A_SWITCH (THIRD_PARTY_EVENT_ID_MIN + 402)
To calculate the control number for this switch we ignore THIRD_PARTY_EVENT_ID_MIN and take the number after it. In this case 402.
NOTE: Some controls reference other controls. For example:
#define EVT_EFB_L_BACK (EVT_EFB_L_START + 1)
For this you need to find the value of EVT_EFB_L_START and add 1. Searching for EVT_EFB_L_START we find this:
#define EVT_EFB_L_START (THIRD_PARTY_EVENT_ID_MIN + 1700)
As before, THIRD_PARTY_EVENT_ID_MIN is always ignored. So we get the value of 1700.
Adding 1 to this will give us the value for EVT_EFB_L_BACK. Therefore EVT_EFB_L_BACK would be 1700 + 1 = 1701.
We have now calculated the control number.
2.2. Adding the Mouse Action Code
You now need to add a number to tell the aircraft what kind of mouse interaction you want to simulate. (e.g. left click, right click, scroll wheel up).
First multiply the control number you have so far by 100. In our example for EVT_MCP_CMD_A_SWITCH we get:
402 * 100 = 40200
Now you ADD the following number, depending on the mouse operation you want:
1 for left mouse click 2 for right mouse click 3 for mouse move 4 for left mouse button release 5 for right mouse button release 6 for middle mouse button click 7 for mouse wheel up 8 for mouse wheel down
For our example, we'll have our key assignment simulate the left mouse button clicking on the CMD A autopilot button. So we'll need to add 1:
40200 + 1 = 40201
Now we have the final code number.
3. Assigning the control to a button or key in FSUIPC
Select [Assignments] -> [buttons + switches] or [key presses] in the FSUIPC7 menu. Then select the button or key to program.
From the "control sent..." dropdown select Rotor Brake
In the Parameter field below type in your calculated code number from the previous step. For our 'Autopilot CMD A' example, we enter 40201
If you're programming a key press, remember to press the [confirm] button.
Here is our example control assigned to a button in FSUIPC:
Your button or key press should now operate the switch in your PMDG aircraft.

