Sending basic data to the Sim. SDK?

In VR, I find it very hard to change heading selection or altitude selection with my mouse. My plan is to use a small rotary encoder and an Arduino micro that connects as a keyboard. I can go easy and basically send a “heading increase” key each time the encoder detects a twist. Or I can maybe send the heading?

What I mean is - send a key command to increase the heading on twist. Or send the actual heading, meaning that he Arduino “knows” the heading and sends a new value.

This would mean I could display the headings on the Arduino. But useless when in VR. Regardless. Would this be best suited to maybe create a c# client app that my Arduino speaks to, and then use the SDK Api to send the heading? (Can that be done??) or should I just send a key that is bound to Heading Increase or Decrease?

I’m looking for a basic SDK example of, for example, enable and disable auto pilot from a 3rd party (c#) app. Any help or advice would be very helpful. I feel that using the SDK would be more correct than a send key to the sim.

You don’t really need to use SimConnect to do this. There are controller bindings to increment and decrement the heading. With a rotary encoder, you can make the Arduino show up as a joystick and output those buttons for each increment of the encoder.

1 Like

This is certainly feasible.

There is a worked example of turning on / off the autopilot in my MSFS 2020 Cockpit Companion - this works over http and is designed for a browser but could be repurposed to accept commands from C# if that’s what you’re most familiar with.

Another alternative, and very easy, way to get physical controls is using an Elgato Stream Deck with (not my product - but I am a user).