X-plane is a decent flight simulator available for PC’s running Windows, Macs and PC’s running Linux. Check out X-plane for the program itself, and x-plane.org for the very active on-line community. The .org site has lots of aircraft and scenery for download free, and links to lots of really good quality payware.
While X-plane runs nicely on my modest Mac hardware there are a few things about flying it that annoy me. In particular, every aircraft seems to hide the radios somewhere different, often on a part of the panel that can’t be seen without looking down, ie without losing some of the view out of the forward window. The other thing that looks different on just about every aircraft is the autopilot.
I’d like to slowly develop a cockpit with some external hardware, perhaps one day reach the heights of the simpit. But in the meantime, I thought I’d create some hardware to implement the radio and autopilot. You can buy this kind of gear from lots of places. Saitek have a really nice radio panel, but it is $149, and I thought I could do a nicer looking job. We’ll have to see.
I’ve started with the radio panel. The auto pilot will follow when I’ve figured out how to make nice looking illuminated switches cheaply. The radio panel uses a 16×2 LCD panel for its display, and 11 ‘tactile’ switches (12c each) to make up its control panel. The LCD panel is large size, about 100mm wide active area, and that size is only available to me in 16×2, so it is two line, although I’m only using one. The brains of the system is an Arduino Uno. If you don’t know about it, Arduino is an open hardware architecture development board that contains an Atmel ATmega processor, supported by an IDE and a large number of libraries. The good integration of IDE, hardware and libraries make it literally a five minute operation to add, for example, a keypad to a design. It is this ease of use that converted me, after years of custom code written for a variety of microcontrollers.
I’ll post pictures once it is nicely boxed.
The code is at github. There are separate directories for the sketch that runs on the Arduino, and the code that runs the plugin on X-plane. The plugin is written in Python, and must run under a PythonInterface plugin written by Sandy Barbour. The great advantage of writing in Python is that the plugin will run on all the supported operating systems.
I am really taken by the idea of standard hardware for building cockpits, so I’m looking at SCS, the Simulator Communication System. I’ve registered to download their plug-in and hope to take a look at it soon. It would be cool to develop hardware that drops into existing systems with little or no software required beyond what is already installed. SCS communicates to separate modules using a modified CAN-bus protocol.