Signal interfacing


General

Interfacing the signals from and to the cockpit hardware was a real challenge. I decided to build my own hardware and to write my own software to create the signal interfacing. This system is called the "Cockpit Interface".

The cockpit interface is an electronic unit for interfacing most of the many inputs and outputs to the FSX system. It is a system based on the FS-bus design. The FS-bus design is a great design. It's easy to build and no expensive parts are used. At some point I wanted to have some more flexibility and for that reason I have adjusted some parts of the system. Some parts of my system are an exact copy of the FS-bus however. Also the software protocol has been adjusted a little bit to give me more flexibility at some points.


Convertor / programmer unit

The first part of the cockpit interface is the convertor/programmer unit. This unit will convert the standard RS232 signals of +/-12Volt to +5Volt levels. At the same time the convertor will buffer all signals to make them powerfull enough to drive several other modules. The convertor/programmer unit has a build-in PIC programmer and for that reason a 18-pin DIL socket is available for programming the PIC's.

The outgoing serial bus has a TX, RC, SENSE and RESET signal. Also the GROUND en +5VOLT power is available over the serial bus.


Interface modules

Many interface modules can be connected to the serial bus of the convertor/programmer unit. Each module has a small PIC processor onboard that will take care of the functions for that specific module. Basicly I am using the MicroChip PIC16F628A and the PIC16F688 processors, but many other processors could be used. An interface module can perform several tasks. This can be scanning some buttons, driving some lights or driving a few displays. Over the serial bus these interface modules receive data from a PC and can send signals back to the PC. The PIC processor will also take care of the communication with the PC. In case the interface module receives data concerning lights or displays, it will drive them as required. In case any button is pressed or any switch is changing, the interface module will send the new status to the PC.

Thru the convertor/programmer unit, up to 63 interface modules can be connected to the PC. On this PC, the cockpit interface application is running. This application will continuously scan flight simulator for data. Also it will continuously watch for information from the interface modules. All data is combined and appropriate signals are send back either to flight simulator or to one or more interface modules.

To avoid data collision errors in case several interface module would send data at the same time, a SENSE line is available. Before any interface module is allowed to send data it should check the SENSE line to be HIGH. If so, the interface module pulls the SENSE line LOW and will send the data. After sending, the interface module will release the SENSE line again to enable other interface modules to send data. This simple but effective sequence is also used in the FS-bus design.


Power supply and startup unit

The power supply is a standard PC power supply. Cheap and easy to exchange in case of problems. This kind of power supply's can easily provide 15Amps or more at both +5Volts and +12Volts. The startup unit takes care of powering up the complete cockpit. As you will understand, I don't want to press 10 buttons to activate all PC's, monitors, network switches and other units to startup the cockpit. Since switching on everything at the exact same time is not possible because of the short current peak, a simple circuit will activate 8 relay after each other with a few seconds in between. This sequence is started by pressing one single button. There is also a facility to shutdown the complete cockpit.

On the power supply I can also monitor the power consumption at 230 volts AC, 12 volts DC and 5 volts DC.