How do I make a DIY button box that is programmable in MSFS?

Hi, so I recently picked up the Saitek yoke and throttle, to see if I would be interested in Flight Simming. Turns out, I was and before I go buying better yokes and setups, I wanted to see if I could make some different button boxes, so I could have them exactly how I wanted, and also save money, because I am kind of on a budget. My idea is to buy a bunch of buttons and mount them onto a piece of wood or small box with some sort of chip or arduino inside that MSFS will recognize and I will be able to program. I already found some buttons I like, and now, all I need is the knowledge on how to program the chip and make it recognizable. I also already have all the tools required such as a soldering iron, screws, etc. I looked all over youtube for tutorials for this, but I couldn’t find any that were really targeted towards this.

Here are the buttons I found:

Flick switch with cover:
Normal flick switch:
Momentary flick switch:
Button switch:
3 way momentary switch:
3 way latching switch:
5 way rotary switch (for magnetos):
Red rocker switches (for master batt+alt):

Okay yes, I might have gone a bit overboard with all the switches, but that’s not the point. I’m just interested in how I can connect these all together into a box and have them programmable in MSFS. If anybody knows anything about this, it would really help me out. Thanks! :slight_smile:

Arduino can send DirectX inputs to Windows so device will be seen as any regular joystick by any game, including MSFS, allowing you to configure the buttons in game afterwards.

I followed this tutorial years ago, when I had no idea at all, and it helped me a lot to produce a quite complex console. Post contains examples for buttons working as keyboard presses or as a joystick (which is more flexible). It also explains the matrix concept that allows to produce more outputs with a reduced set of pins in Arduino. But you can also use direct wirings (no matrix) linking every button directly to a pin in the board.

There are tons of tutorials available for Arduino as it´s widely used and allows a lot of configuration options.


Well, you’ll probably need an Arduino and something like Mobiflight.

You might want to try YouTube again. There are definitely some tutorials out there, maybe you just didn’t find the one for you.

1 Like

These things are plug n play, no other software or programming required. Setting them up in MSFS is no different to any other controller.

I use both a BBI-64 and BU0836A, the latter with potentiometers for axis inputs.


I would suggest looking at something like the Behringer X-Touch Mini coupled with Axis and Ohs.

You can create profiles for different aircraft and there are scripts already for most aircraft buttons.


AND effectively 48 buttons and 16 knobs!

The OP stated they were on a budget so although going this route takes away the need to program something they are certainly not great when it comes to budget. Those things are expensive for what they are. I guess it’s a time v money thing and that’s a personal choice.

I’m a big fan of Mobiflight. Almost too simple to set up. I was even able to use it for my DIY FFB rudder pedals.
The aftermarket Mega5260 boards can be had for less than $20 each. I run 2 in my current button box that runs most every button, knob, dial you can touch in a C172. Great for VR setups too.
I’m assuming you don’t have a 3D printer, but that’s ok. You can draw up your button box with all the labeling and such using free software. Then print it out on a piece of full-page label paper. Stick the paper to a thin piece of wood and drill/cut out the holes. I have some examples in this forum somewhere.

I also recommend mobiflight. I had started out with an arduino and did all software myself, both arduino firmware and PC software to bridge communication between the arduino and the sim. That included buttons, encoders, LCD, etc. It’s fun, no doubt, but I realized that I spent all my time working on that instead of flying. So luckily I had then found mobiflight which did everything I wanted to do and it just worked out of the box.

For anyone who wants to make a simple button box with no programming that is recognised by Windows/ MSFS get a Zero Delay Arcade USB Encoder PC, their about £10

1 Like

Get an Arduino Leonardo clone, put mmjoy2 firmware and that’s it.
If you need more than 20 inputs do a button matrix with some diodes to prevent ghosting.
If you want to use switches, get the
1N4148 diodes to prevent ghosting.

You also may want to think about something like this…RSeat Europe SimracingDSD Flight Series - FLT1Rigs and cockpits for direct drive wheels
or Maybe a bit more expensive but it works out of the box.

Thanks so much! I plan on making this in about 2 weeks, and I’m gonna head to my local electronics store to find these. I have many ideas on how this will work, but there’s one thing left I was wondering.

In all of these DIY button boxes, kind of something like this. I don’t know if there’s a specific way or template everybody uses, because they all look so good, and I could never do something like this. Is there some sort of program or software/template used when making the panels?
image This is my inspiration, this kind of style is what I’m looking for

Additonally, would ya’ll know any way for me to have it backlit, with a knob that both controls the brightness of the ingame panels, but also the ones on this button box?

Have you considered an Elgato Streamdeck? It’s programmable, and each button can have its own custom image. Much easier than wrangling an Arduino, unless that’s what you’re into.

I think it is easier, but I’m looking for actual switches and buttons, and from a quick overview of the elgato, it looks like it’s just a screen with customizable buttons.

See my previous post regarding design.
This might give you some ideas as well. Virtual Reality General Aviation Button Box - General Discussion & Community Support / Home Cockpit Builders - Microsoft Flight Simulator Forums

Hi! This looks great to me! I feel like everyone has such good designs, did you just create that design in photoshop or something like that?

Don’t make the mistake the newbie cockpit builders do: they start with light switches which are generally turned on at the beginning of the flight and off at the end.
Make some analysis what switches, buttons and knobs you use most often during the flight and start with them. I would recommend:

  • heading bug,
  • autopilot (however I fly without it, having more fun in manual flying),
  • flaps,
  • altimeter setting (especially if you fly on Vatsim),
  • radio tuning and standby/active switching (especially for Vatsim),
  • fuel tank switches (especially if you must switch then during flight - plane without BOTH position).

i made a rough sketch of my ideas, but these are all subject to change at some point. does this kind of look like what you were referring to?

sorry for the bad quality and handwriting, but i also tried to kind of base it off of my most used plane, the caravan, ofc with the exception of the master battery and no alternator, and the magnetos

Any progress on this project?