Introduction: Universal UFC for Plane Simulators for Less Than 100 €

When you're into flight simulators, you never have enough controllers and buttons.

Besides the usual flight stick, throttle and rudder pedals, you always need more buttons and switches, especially with moderns planes and fighter jets.

My first step was to buy 2 MFDs (Multi-Function Displays). They bring a total of 40 buttons and 8 rocker switches.

However, in many modern jet planes, like F-16 or F/A-18, you use these MFDs to map onto the actual MFDs of these planes.

So, there were still tens if not hundreds of other buttons left in the cockpit.

Rather than re-creating a full blown home cockpit (I don't have the room for that), I focused on this panel, usually sitting just in front of the pilot and called UFC (Up-Front Controller), that he or she interacts with most of time during a mission.

Unfortunately, each plane has a different UFC and I fly many different planes. Building a specific UFC for each plane was not an option for me.

That's why I decided to create a "Universal UFC". It would be able to accommodate many actual designs, while still keeping the general aspect of a fighter jet UFC.

Step 1: Supplies

This is the list of supplies I used:

- 48 push buttons, round or square, 12 mm wide (for example:

- 5 rotary encoders, with a 14 mm cap (for example

- 5 SPDT 3-position momentary switches (for example:

- 10 SPDT 3-position latch switches (for example:

- 1 JS5208 E-Switch 4-directional switch (for example:

- around 150 jumper wires with female and male connectors (for example:

- a LeoBodnar BBI-64 button box interface:

- a USB cable with A and B connectors (for example:

- some wooden board, not too thick (about 5 mm)

- some screws and small angle brackets

- some acrylic (black) paint

TOTAL PRICE = a little bit less than 100 €

In addition, you'll need the following tools:

- a computer with a printer

- a sawing tool

- a drill

- a soldering iron

- a paintbrush

Step 2: Draft Design

As explained in the introduction, I wanted a UFC that was universal enough to accommodate different actual UFC designs from several fighter jets. That was a bit of challenge considering how different they can look like (see 1st picture).

I ended up with following draft design (see 2nd picture)

Step 3: The Final Design

In this step, I adjusted the draft design to the following constraints:

- actual dimensions of the different buttons and their underlying board (rotary controllers)

- space between the buttons large enough to insert a description text above each

The result if the first picture.

I have also created a paper template that I can lay on top of the wood board, so that I can customise the UFC texts for each plane.

That's the blue layer in the second picture.

Use the attached PDF files for drawings to the actual dimensions.

Step 4: From Design to Actual Box

Print the button box template and tape it to your piece of wood.

Cut around the border of the box with a saw. Actually you can leave a 1 to 2 cm margin to make the box assembly easier.

Drill all the holes as indicated by the template. You can use a nail and hammer to mark the center of each hole.

Put the button into the holes, as shown in the design, and then add the screws to tighten them to the wooden board.

Solder cables to each input of the push buttons and SPDT switches.

For rotary encoders, no need to solder, because you can use jumper wires with female plug. Also, no need to plug a cable into the +5V pin.

Then plug all the other ends into the LeoBodnar BBI-64 board and be careful about the following:

- the outer pins (near the borders) correspond to the ground. This is important for the SPDT switches (middle pin is ground) and for the rotary encoders (GND pin near the side with the 2 holes).

- for the rotary encoders to register clockwise and counter-clockwise clicks, you have to make sure the DT and CLK pins are plugged into 2 successive pins of the LeoBodnar board, starting with an odd-numbered pin (for example pins 1 and 2). There will be additional configuration to do with the LeoBodnar software in the next step.

- the rotary encoders also have a SW pin. This works like a regular push button switch.

- pins 61 to 64 should be reserved for the multi-directional push button (PoV button)

With the remaining wood, cut the 4 sides of the box. They must be high enough to accommodate the board and all the cables. Connect them to the front board using any technique you like. Since the wood board I used is thin, I used angle brackets and screws (see image).

Step 5: "Calibrating" the Rotary Encoders

In my case, I plugged the 5 rotary encoders into pins:

- B1-B2

- B5-B6

- B7-B8

- B11-B12

- B13-B14

Download BBI 64 encoder utility from LeoBodnar Web site:

For the pair of pins used for the rotary encoders, select "1:1". Encoder pulse width should be 48 ms.

Pins 61 to 64 are already set up by default for a PoV hat.

Step 6: Assigning the Buttons in Your Simulation Software

Plug your "button box" board to your computer using a USB cable.

It should appear as a device named "BBI 64 Button Box".

In your simulator settings, assign each plane function to the button of your liking.

Note that rotary encoders work like 2 separate buttons: each clockwise rotation step correspond to a push of the first button, each counter-clockwise rotation step correspond to a push to the second button.

Step 7: Finishing

Since I will always use the center buttons for the numeric keypad, I directly added stickers to the push buttons.

I also made the edges a little bit smoother using sand paper.

Then I painted the box in black with acrylic paint... actually it would have been easier to do the painting right after cutting the wood pieces and before adding the buttons, but it was still OK.

Customize the overlay template to fit your different plane settings. As an example, I put an image for the F/A 18C.

Finally, enjoy in your simulator!