Anyone with more than a passing interest in flight simulators will eventually want to upgrade their experience with a HOTAS (Hands On Throttle-And-Stick) setup that has buttons and switches for controlling your virtual aircraft’s assorted systems, which are well supported by games such as Microsoft Flight Simulator (MSFS). But a traditional HOTAS system can be a bit of an investment, so you might want to thank [Vaibhav Sharma] for the virtualHOTAS project that brings a configurable HOTAS interface to your phone — just in time to try out that Dune expansion for MSFS.
The phone’s orientation sensors are used as a joystick, and on the screen, there’s both sliders and buttons you can use as in-game controls. On the back-end there’s a Python program on the computer which exposes a webserver that the phone connects to, translating sensor and press data without the need for an app. This works wonderfully in MSFS, as [Vaibhav] shows us in the video below. What’s more, if you get tired of the touchscreen-and-accelerometer controls, you can even connect a generic smartphone-designed game controller platform, to have its commands and movements be translated to your PC too!
All the code is open source, and with the way this project operates, it will likely work as a general-purpose interface for other projects of yours. Whether you might want to build an accessibility controller from its codebase, use it for your robot platform, maybe simply repurpose this project for any other game, [Vaibhav]’s creation is yet another reminder that we’re carrying a sensor-packed platform, and it might just help you build a peripheral you didn’t know you needed.
Don’t have a phone handy? Perhaps an Xbox controller could work with just a few 3D printed upgrades, or you could stock up on buttons and build your own joystick from scratch. Oh, and keeping HOTAS principles in mind can be pretty helpful — you might get to redesign the venerable computer mouse, for instance!
I’m a little worried about the latency if this goes over WiFi.
Rather than a phone, I think this would be a nice application to run on a portable gaming device like a Steamdeck, or any of the even cheaper android-based devices!
I can think of a lot of other games that would benefit from having a touchscreen macro pad in quick reach!
i like the idea. i feel like generally phones (especially the obsolete ones sitting in a drawer somewhere) are under used as i/o devices. i made a pair of android apps, one runs in my hand and accepts throttle/steering as touchscreen inputs and renders an mjpeg stream it receives over tcp/ip. and the other runs on a phone taped to a radio control car and livestreams its webcam and outputs the throttle/steering settings over the headphone jack (with a PIC12 to decode that into actual control signals). lots of scenarios are amenable to this sort of hack.
but for the flight simulator in particular it’s not going to be useful specifically for HOTAS, though it might be awesome to soak up some of the other airplane I/O tasks. the thing with HOTAS is you want to be able to have your hands on it but your eyes off of it. so a touchscreen is a pretty poor fit, because it’s hard to tell which slider you’re activating without actually looking at it. the other thing is, the ‘thrustmaster’ style joystick is pretty cheap now and easy to use thanks to USB. i’ve got one with a little throttle lever on the side, usual x/y, and also a third ‘twist’ axis for rudder (though twist is kind of yucky), and of course a pile of tactile buttons. it’s pretty nice for flight sim. it should be considered basic equipment imo. phone screen for any of these primary controls would be a real step down.
other usb input devices are also super cheap now…i’ve got a bank of 10 sliders and 10 knobs that i bought without a goal in mind just because it was so cheap. it was sold for music but really if i spent more time in my virtual cockpit i would want to configure that for some of the various knobs around…