Big Undertaking for a noob

So, This will be a bit long winded, but I really am wanting to make some unique controller for the new Microsoft Flight Simulator that just came out, but I have zero experience with these boards, but I have a great aptitude for these things and learn quickly. I want to be clear I am not asking for someone to do this work for me, but my lack of terminology is making it difficult for me to find appropriate info on this subject. Se here it goes...

I am wanting to make an array of Switches: Momentary and Toggle, Dials: Min/max style as an analog digital output (Values from 0 to 100) and Free turn dials that just add or remove values for things like radios and frequencies, Illuminated Push Buttons or Indicators, and axis input (like x y and z on an axis for the New Microsoft Flight simulator. I see plenty of controller making guides online, but they mimic key presses for a Keyboard. What I am wanting to do is have the device recognize as an actual controller so you can map the controls as a controller.

Is this way too difficult to do? I am looking at maybe 50-70 inputs, and am willing to use multiple boards to achieve this. My mechanical aptitude to wire this is not my issue, mostly my ability to code it. If someone can please link me to appropriate literature to achieve this it would be greatly appreciated. Also, I would love to give out my final schematics and code when I finish it so others may make this same thing, as custom button panels for flight sims run in the 100's and any way I can make this kind of project achievable to people like me is always great!

Thank you in advance.

This is an ambitious project , but doable probably using more than one Arduino !

There are web sites where people have made instruments etc for Filght Sims.

Really my best advice is to buy a genuine Arduino, play with it, use the examples supplied and get a feel for what’s involved and see how you get in with coding . It’s not a beginners project !!

Thanks for your quick reply!

My biggest hindrance is the distinction between it being detected as a usb HID device like a keyboard or a device that has dedicated inputs on a seperate instance than a keyboard. What terminology is used for one such device that has dedicated inputs?

I wouldn't worry about that part yet. I would start playing with push buttons, leds etc and coding with an arduino. You need to get to the stage where you can take multiple inputs and have an effect that you desire as the outcome. Work your way through the tutorials. Get leds blinking. Eventually you can build up on a breadboard a pretty good mock-up of what you want. from the input side and your code will give you control over the output. Then you need to work on connecting this to your computer but the bones will be there.

Your project sounds nice in that while the desired end result is “big”, there are lots of intermediate and “partial” pints along the way that can be approached with less experience.

I’d be looking at multiple arduino micro boards (or teensy or some other 32u4-based boards) and one or more off-the-shelf usb hubs. There are existing examples of how to make switches emulate a keyboard or joystick, so that’s a good place to start.

One thing you really need to look at as soon as you start, after testing switches, and when you’re blinking LEDs, is learning to write non-blocking code... that way your controls and indicators can remain operational while something else is happening.

there are lots of intermediate and “partial” pints along the way that can be approached with less experience.

A fortuitous typo: there are likely going to be quite a few points in this project where a pint will be in order :slight_smile:

More seriously, you might want to look at the SDK for the sim when it is published - I couldn’t find anything regarding a release date though.

Competing sims e.g. X-plane and maybe DCS let you configure the sim to send and receive data for displays and flight controls over ethernet, so your button box can have displays on it too. Nice for radio controls and the like that have a little frequency display nearby. Hopefully the MS SDK will let you do such things as well.

I appreciate all our replies, i have been busy with a move and figuring out the logistics of sending 3 vehicles across half the us on a budget.

I have my hands on 5 Leonardo boards, which I have seen is what a lot of peeps who do this use. I am going to try and mock up some circuits on each as a test and see what I can accomplish. Im seeing that a lot of my modding days will come in handy with the programming, seems pretty straightforward ill just need to adapt to the syntax.

Hopefully I can get this going and have something functional, as I would then make quite a few for the group I have been flying with in FSX. Would be great for us to all have matching switchboards.

I just want to update everyone on my progress with this build. I have MOST of the software done but I need to tidy it up before I post it on here. I have test fitted all my parts and everything works for the most part. Here is a peek at the mess I have made

My mess

Also, the second picture shows the way I tied in my 220 ohm resistors on my lines running to my inputs, I hope this is a viable way of doing this. Y spit on wire one goes to resistor then ground other gots to input.

I’m really hoping all this comes together well and works. By the way, a cheap wire that I found that works very well for my wiring ended up being some bell wire I picked up at my local hardware store.

I ended up using junction boxes to house my switches and components due to cheap pricing and the ability to have my panels be fully modular if I want to add more in the future.

I picked up my switches from a hobby store and they are actually meant for remote controls and train control boxes. They were quite expensive but MUCH higher quality than anything I could find on Amazon. Company that makes them is Minitronics Corp. Shout out to Hobby Haven in Des Moines for having there locally.

Will update as I move along with my project.

You guys help is very appreciated and if I hit a roadblock ill let you guys know.