NexGen Flight Simulator: Hacking the Navigation Computer Display June 6, 2013Posted by phoenixcomm in 16 Segment driver, Aircraft, Arduino, CP-1252/ASN-128, DIY Aircraft Cockpit, Embedded CPU's, Ethernet, Flight Simulation, Hardware, Indicator Lamps, Multi Function Display, ps2 keybaord, Semiconductors.
Tags: Arduino, CP-1252/ASN-128, DIY Cockpit, NexGen Flight Simulator
This is the CP-1252/ASN-128 Navigation Computer Display. The NCD was originally designed for Doppler navigation, but will work in my application. I have reprinted the Analysis of this from my WordPress Blog (22Apr2011)
The Analysis: The NCD is comprised of 4 groups: Display, Keyboard, Rotary Switches, and Thumb Wheel Switches. The Display is comprised of 4 16-segment and 13 7-segment PinLite lamps, and two LED’s. The keyboard is comprised of a 10 key number pad and 4 special keys, it also encodes A-Z. There are two rotary switches, and two thumbwheel switches as well. I also found a users guide, TM-1-1520-238-10 pages 3-34 through 3-46 on the web.
In it’s dim past it had been converted to a flight sim, and the only thing left whrere: the display, switches, light plate, and lots of wire. Each component, had each of their connection(s) brought out in to a header.
The Plan: As it is almost impossible to find a 16-segment display driver, but I really found two parts MAX6954 (SPI and QSPI interface), and MAX6955 (I2C interface). Both devices have the same programing model and have a I/O expander which could handle the keyboard. I have chosen to use the I2C interface. I have broken down the NCD into the following sub-units:
- Two MAX6955AAX+ :
- one will handle the 4 16-segment displays.
- one will handle the 13 7-segment displays.
- The keyboard will be interfaced via a standard Ps2 keyboard encoder that will be harvested from an old ps2 keyboard.
- I will also need 2 bytes of I/O as well:
- 1 byte of output to handle the two rotary switches, via two priority encoders (74LS148).
- 1 byte for both thumbwheel switches (they are encoded to 4 bit BCD).
- And lastly I need a USB interface to talk back to the IOP (IO Processor)
I also need a embedded microprocessor, the NCD information does not need to be super fast, as in reality it is only a dumb terminal, so an Arduino should be able to keep up with everything, if there are speed issues I will most likely switch to a TI Stellaris Launchpad module. The NCD is either taking keystrokes from the pilot, or updating the display. In the words of the Outer Limits “There is nothing wrong with your television. Do not attempt to adjust the picture. We are now in control of the transmission. We control the horizontal and the vertical”. In the scheme of things this unit will only be another end point on the IOP which is sending the key strokes or and knob turns to the simulation processor. And in turn the NCD in effect listens to the NavGroup via the IOP for present position, time to go etc.
Keep Tuned in More to Come!