Developers
Are you developing a sim? Do you want to know how best to support cockpit builders? Try these for starters. By the way: thanks very much for considering us!
Discretes
Real cars don't have pushbuttons labelled "toggle headlights" - they have a headlight switch with two or more discrete positions. When we build our cockpits, we use these same switches. A developer who only gives us access to toggle functions causes us a major headache - if the switch position in the sim is out of sync (either at the start of the game or through actions taken in game) with the physical switch, our switches work incorrectly.
Please provide us with options for discrete callbacks and keystrokes. That means providing functions for "Gear Up" and "Gear Down", not just "Toggle Gear". It means providing individual callback/keystrokes for every position of every switch in the cockpit, and individual axes for multi-lever vehicles rather than a single axis that drives all levers. A 5-position rotary should have 5 keystrokes assignable to it, not just "rotate left" and "rotate right". We'd really appreciate it!
Indicators and Device States
Every device in the cockpit could potentially be implemented in hardware by a pitbuilder. In order to drive those devices, we need to be able to export the data from the sim. Ideally, everything should be available - from individual lamps to stick shakers to text LCDs to 7-segment LEDs. Additionally, as the cockpit driver PC may be separate to the sim PC, it's great if the data out can be networked. Luasocket is a great example. What about providing an interface to allow us to have repositionable and resizable computer-drawn instruments on a separate display?
Graphical Displays and Multimonitor
Many pitbuilders have multiple screens. Ideally we would like to be able to export any sim view to any screen in any position, including tiling various displays on a single monitor. Also, if those displays can be networked to take some load off the main sim PC, that will help too. WideView for MS Flight Simulator is a good example of this. Also consider the splitting of graphical elements - so someone who has built a fast jet sim with a working HUD will need just the HUD graphics to direct to the HUD monitor, and an external view without HUD to send to his projector.
Metadata
Cockpit data is a great start, but pitbuilders have incredible imaginations and we can find use for a lot of other information as well. Metadata (i.e. data about the data) such as weight on wheels, lateral G, acceleration forces, impact locations, damage states etc can be very useful for implementing all sorts of functions and devices. And for those of us that like to use external moving map applications (e.g. OziExplorer) what about NMEA format lat/long and a high res map graphic of the sim space that we can import and calibrate into our mapping application? What about weather and engine data?
Device Support
Please consider all of the hardware on the market and include support for them where you can. TrackIR and FreeTrack are almost a must, but what about keyboard LCDs, HOTAS LCDs, tactile devices (3rd Space Vest etc), force feedback etc? Many of us have multiple HIDs attached too, so please make allowance for the full limit of input devices that your OS supports. We might have two, three or more "joysticks" attached at once!
Instructor Stations
One idea with a lot of possibility is an instructor station. If there is an interface for setting failures, changing the sim environment etc remotely, we can build a highly functional instructor station. Again, please make it comprehensive and networkable.
Sound
There are a number of sources of sound in a cockpit - external, from the cockpit itself (clicks and voice warnings etc) and headset traffic being just some examples. Please support multiple soundcards, and allow us to select which sounds go to which card. So for example I might have a 5.1 speaker setup which plays all my external and cockpit sounds, but my ingame radio traffic and VOIP is directed through my headset.

