Airbus MTP EPROM Repair

Last week I spent some time with an Ebay find, pictured to the right. This is a Maintenance Test Panel (MTP), presumably from an Airbus A300-600. First of all, I’m curious from which airline this unit came, as the buttons seem to have distict nicotine residue on them.

The Maintenance Test Panel is located in the cockpit of the aircraft, behind the first officer. It stores fault information from all computers that make up the automated flight system and can run tests initiated by maintenance engineers. In essence it is the debug port, or for car people, the OBD-II port of the airplanes computers.

I have close to no documentation about this unit, or its use, but it is a fun toy to play with, built with price being no issue. It is a self-contained computer system around an Intel 8085 microprocessor, a couple of Harris, now Intersil, HS-3282 ARINC-429 interfaces for communication and a two-line liquid crystal display (LCD), that is very low in contrast and lit by two good old incandescent light bulbs.

The LCD is interesting as it has no built-in character ROM, something that is rare for character LCD modules, at least nowadays where most LCD’s use a Hitachi HD44780 (or compatible) controller.

The character set for the display is stored in an EPROM on the first printed circuit board module in the unit. In the process of reverse-engineering the MTP, I made a dump of this EPROM, an Intel 2716 from the 20th week of 1981.
Why do I care so much about this date, you probaby ask?
Well, I extracted the character definitions from the ROM dump and was amazed by the amount of bitrot. Dozens of bits had clearly lost their value in this ROM. Which made for an interesting hour or so in a hex-editor, fixing the glyph definitions in the ROM dump.

After that, I tried to write the fixed ROM dump back to an EPROM. Not wanting to erase the original EPROM in the unit, I rummaged through my junk drawers and found a couple of old Soviet КР537РФ2 ROM’s. These chips should be 2716 compatibles, which was good news. Just to find that my, otherwise pretty good, TL866 programmer was not able to supply either the voltage or the current necessary to program these chips.

Already in the later hours of the evening I dug out an EPROM programmer of a vintage closer to the EPROMs to be programmed. I had bought the programmer already some years ago, but never took the time to try it. The great thing of this programmer is that it has a serial command based interface. No software on the host pc is really necessary, if you are willing to compile many arcane hex-values from bit-fields defined in the documentation and type these into a terminal, what is exactly what I did.
This is also how I had to do it, as the (although still available) software is written for long gone versions of MS Windows and I mostly use Mac OS and various other Unix flavors for my hobbies. A Windows XP virtual machine that I keep for moments like this, was certainly too recent for the programmers software, already.

Hours of fumbling with conversion to Motorola S-record formats that the programmer requires and serial line voodoo later, (my EPROM eraser running overtime in the process too) I managed to burn the fixed ROM image to the replacement EPROM chip.
If you can make out the faint text in the display in the first picture of this article, the result is just about visible.

Useful? No, certainly not, as I don’t own an Airbus A300. ;) But it made for some fun adventures with obsolete electronics, again.