PilotsDeck/StreamDeck Profile for FBW A32NX
Here are the StreamDeck Profiles I created with my PilotsDeck Plugin for the FBW A32NX.
It has some Buttons/Switches/Korries from the Overhead, MIP/Glareshield, Pedestal, FCU (working) and MCDU (with Full Keyboard) to support normal Flight Operations!
They are designed for my SD/XL/Plus Setup:
- MSFS-FBW32N => The SD Profile which only has supplementary Functions: Changing Views, Monitoring/Calling GSX, UTC Clock and the XPDR
- MSFS-FBW32N-Plus => SD+ Profile with mostly everything (possible) that makes Sense to control via the Encoders: FCU, EFIS, Radio, Display-Brightness
- MSFS-FBW32N-XL => The XL Profile with all Functionalities. Besides specific Folders for the different Panels/Areas it has Folders for the different Flight-Phases with the most critical/common Controls needed for that Phase.
I would have loved to give it the same Functionality as the other A320 Profiles, but I'm presumably to dumb and disrespectful to use the FBW API correctly!
That means you need at least the StreamDeck XL (or SD+) to get any Use out of it. Please don't ask for SD-Only Profiles - it just got too much to maintain. But you can still use the Plugin and the other Files from this Package to build your own SD Profile customized for your Needs!
The Profiles are for your own and private Usage. You are not allowed to republish / reupload them or any other Package-Content anywhere. The Lua-Scripts can be considered MIT Licensed though (only them, nothing else).
The Package contains the following:
- The mentioned Profiles as .streamDeckProfile Files
- Lua-Files to Control the FBW & GSX as well as reading some Values from them
- The custom Images used in this Profile (Credits & Thanks to Guenseli!)
Requirements & Setup
- You need to have at least Version 0.7.8 of my PilotsDeck Plugin installed & running
- The Profiles require the Fonts "Digital 7" and "Alte Din 1451 Mittelschrift" installed on your System - you can find them freely in the Internet
- You need a registered (purchased) Copy of FSUIPC7 for all Buttons/Function to work
- Tested / designed with the Development Version
- Copy/Extract the Images to the Plugin: %appdata%\Elgato\StreamDeck\Plugins\com.extension.pilotsdeck.sdPlugin\Images
- Double-Click the Profile Files to install them. Make sure to select the correct StreamDeck first in the UI before installing the corresponding Profile (if you have more than one StreamDeck).
- Place the Lua-Files in your FSUIPC7 Application Folder (the Path where you've installed it).
- Change the Path in the GSX_AUTO Script to your Addon Manager Folder
- Place the myOffsets.txt File in your FSUIPC7 Application Folder or add the Line to your existing myOffsets.txt.
- Setup the Automatic Start of the Lua-Files in your FSUIPC7.ini (make a Backup before editing it).
You can also start the Scripts manually when the FBW is loaded if you prefer that for any Reason.
Automatic Start for Lua-Files:
First you have to start MSFS/FSUIPC (and close) once so that FSUIPC will add the Lua-Files to it's Configuration. (You can of course add them manually, IF you know how to do that)
IF you have a FSUIPC Profile for the FBW and it is called "FBW320" as an EXAMPLE, you would need to add the following to your FSUIPC7.ini:
[Auto] 1=Lua GSX_AUTO [Auto.FBW320] 1=Lua FBW320_AUTO 2=Lua FBW320_SYNC
If your Profile is named differently, change the [Auto.FBW320] to the correct Name.
IF you don't have a FSUIPC Profile for the FBW (or just don't know what that is), you would need to add the following to your FSUIPC7.ini:
[Auto] 1=Lua GSX_AUTO 2=Lua FBW320_AUTO 3=Lua FBW320_SYNC
Whatever you do, ensure the following: each [Auto] and [Auto.XXX] Section can only exist once. If you already have such Sections, add these Lines to the exisiting Sections. The Number assigned to the Scripts do not matter, but ensure each Number exists only once (in the corresponding Section).
Setting up the Views:
The Buttons to change Views are based on the vJoy Driver - you can only use these if you have installed that optional Plugin Dependency.
They are mapped to Custom Cameras in MSFS. Map the vJoy Buttons to the "Load Custom Camera" Bindings and Save/Create your Custom Cameras for the respective Button/View. If you already have Custom Cameras defined for the FBW, map the vJoy Buttons accordingly and/or change the Mapping in the Profiles which Button is triggered.
The preconfigured Mappings are:
| vJoy Button# | Mapping in MSFS | Title in Profile |
| 1 | Load Custom Camera 1 | Captain |
| 2 | Load Custom Camera 2 | Overhead |
| 3 | Load Custom Camera 3 | Pedestal |
| 4 | Load Custom Camera 4 | ECAM / MIP |
| 5 | Load Custom Camera 5 | MCDU |
| 6 | Load Custom Camera 6 | EFB |
| 7 | Load Custom Camera 7 | Eng L (Passenger, front of Engine) |
| 8 | Load Custom Camera 8 | Eng R (Passenger, front of Engine) |
| 9 | Load Custom Camera 9 | Wing L (Passenger View, behind Wing) |
| 10 | Load Custom Camera 0 | Wing R (Passenger View, behind Wing) |
| 11 | Toggle External View | External |
| 12 | Toggle Cockpit View | Cockpit |
It's safer to use the Standard Key-Mappings for creating Custom Cameras (CTRL + ALT + Number). But I've added my cameras.cfg for the FBW as Reference. Only edit your cfg File manually, if you know what you're doing. (The Path is %appdata%\Microsoft Flight Simulator\SimObjects\Airplanes\FlyByWire_A320_NEO )
I hope/think most Buttons should be self-explanatory. They are generaly configured in such a way to trigger the most common Action in the respective Phase. If applicable, they have a long Press for Off, Reset or a second Key. Some Notices:
- The Fire Test, CVR Test and TO Conf Buttons are "Hold Switches". So you need to press and hold them as you would do with the Mouse.
- The FCU-Displays are also Buttons. They either toggle between Managed/Selected (normal Press) or toggle things like SPD/MACH, HDG/TRK, Alt Scale (long Press). The VS Display/Button is Pull (normal) or Push (long). On the SD+ Managed/Selected is on pressing the Encoder and the other toggle Functions on the Touch-Display.
- The SD+ has different Pages. You can use the Buttons to navigate between them, or use the Swipe-Feature to go to the next / previous Page - for Example for a quick Switch from FCU to Radio or FCU to EFIS.
- The Radios on the SD+ are done with Encoder-Stacks: Push the Dial to switch between Outer and Inner Knob (a ">" or "<" denotes the current Knob). Tap the Touch-Display to swap Frequencies. (Turn -> Press -> Turn -> Tap)
- The MDCU Menu Keys have long Presses: "INIT DATA" for Example will select the INIT-Page on a normal Press and the DATA-Page on a long Press.
- The ECP Pages do not work at all.
- The Light Switches do something in some Way - could not be bothered any longer.
The Usage of the GSX Menu / Buttons is described here.
This Script contains the Functions addressed by some Actions in the StreamDeck Profiles, it is essential for some StreamDeck Buttons to work. Some Functions are not used in the Profile (like Engine Masters) - I'll use them for my Thrustmaster TCA.
They are addressed via "LuaToggle:FBW320_AUTO:NUM" in PilotsDeck (or "LuaToggle FBW320_AUTO" with NUM as Parameter in the FSUIPC UI). Which NUMber maps to which Function can be found at the End of the File, if you want to use these Functions for own Buttons or FSUIPC-Mappings!
This Script is essential for some Buttons / Displays from the StreamDeck Profiles to show their State / Value (FCU, Gear Indication, Baro, Landing Light).
The Script use the FSUIPC Offsets at 0x5800 and above to generate Informations for some Buttons - if these are used by some other Addon you have to change them in the Lua and the Profile (and the Configuration File of the Binary). This Offset-Range is normally associated with PMDG/Project Magenta - so it should be safe in most Cases!
The Script used to integrate with GSX Pro and you only need that if you own GSX. The GSX_AUTO Script is not tied to the A32NX only, it can also be used with GSX for other Aircrafts!
In order for the Script/Profile to work, you need the configure the Path to your "Addon Manager" Installation (where GSX resides). Edit that Line with your real Path (use forward-Slashes!) in the GSX_AUTO.lua File:
local GSXAUTO_CFG_PATH = "X:/YOURPATH/Addon Manager" --Path where GSX/Addon Manager is installed
The Script uses FSUIPC Offsets 0x4300 through 0x4533, if theses are already used by something else in your Setup, configure a new Base-Address!