My first product improvement -- a replacement for the Heads Up Checklist.
I provided the complete hardware and firmware design for these Heads Up Technologies avionics products in 1987. Among the things I provided were: schematic-diagrams and circuit-board layouts for 3 circuit boards, 4.3K lines of firmware written in Intel 8051 assembly-language (3.6K shared with HUCAB project), a large (but unknown number of) lines of MS-DOS support software written in C, a PLD design, and 110 pages of documentation for software-certification and other purposes.
The "Gold" and "Silver" checklists together comprised a second-generation of Heads Up Technologies flagship product line. They replaced the first-generation product (and actually, the only Heads Up Technologies product at that time), the Heads Up Checklist. The Gold checklist was intended to be a higher-end, much higher quality unit than the Heads Up Checklist, while the Silver checklist was to be a lower-cost unit than the original Heads Up Checklist.
The idea behind all these units is simple: The pilot of the aircraft can use them to hear his checklist read aloud, rather than being forced to read the printed checklists kept in the cockpit. To find out more about this idea, I'd suggest looking at the materials collected on the Heads Up Checklist.
Also, you can click here to view the patent on this product.
Though functionally equivalent to the earlier Heads Up Checklist unit, the Gold and Silver Checklist units are entirely different from the earlier unit in hardware and firmware. The Zilog Z-80 processor of the Heads Up Checklist unit has been replaced by an Intel 8051 microcontroller in the Gold and Silver Checklist units. The firmware for the units continued to be written entirely in assembly language. Most importantly, though, much larger amounts of EPROM appear in the units, in order to eliminate the need for extremely drastic audio-compression techniques. Instead, only mild audio compression is required, with the result that the audio playback (though of poor quality by modern standards) is perfectly legible and natural.
An interesting point about the Gold and Silver Checklists is the time-scale on which they were prototyped. At Heads Up Technologies, it was believed to be desirable to introduce new products at the NBAA trade show, which is held in September or October each year. In July 1987, the company was nearly two years old, but no new-product design activity had occurred, beyond the initial design of the Heads Up Checklist product, and I was the sole hardware or firmware designer associated with the company. The question arose as to whether it was possible to design a prototype of a new product -- any new product -- which could be exhibited at the NBAA, approximately three months hence. The choices seemed to be these: an up-scale checklist unit (such as the then-non-existent Gold Checklist), a low-cost checklist (such as the then-non-existent Silver Checklist), or a "passenger-briefing system" (such as the then-non-existent Heads Up Cabin Briefer).
I felt that all of these products were critical to the future of the company, and in a burst of enthusiasm advocated developing all three products simultaneously, somehow using a common base of hardware and firmware to minimize the effort, even though I had never before used the 8051 microcontroller family I decided to base these products on. This proposal was actually accepted and acted upon, and successfully completed. So that's how I developed prototypes for three products in three months, with the company hanging in the balance.
Incidentally, these new units were incompatible with the existing Heads Up Checklist product not only in audio-file formatting, but also in their general database formats. This necessitated my replacing all IBM PC based support software I had previously provided for managing our large audio database, and for compiling the textual checklists entered into the PC into binary formats suitable for inclusion in the units. These support programs were written in the C language, and were my first major foray into C. Further, these products contained PLDs, and these were the my first PLD designs.
Another first was that these were the first hardware designs that I had done completely without help. On the earlier Heads Up Checklist, I had hand-drawn schematic diagrams, but other people had transferred these to AutoCad and had built wire-wrapped prototypes or had laid-out the printed-circuit boards. In this case, though, I had advocated (and gotten) inexpensive schematic-capture and printed-circuit-board layout programs. Thus, I was able to not only design the schematics directly within the computer system, but also to lay out the circuit boards myself, merely transferring Gerber files to the PCB-fabrication shop.
Finally, certain odd aspects of the support-software are also of interest. We used an audio-compression format created by an outside company, and while this compression software functioned, it was not designed in such a way as to be of practical use to us in a production environment. Using this outside-company's software, it was first necessary to record an audio clip, then to edit the clip to remove leading and trailing silence and noise, and then to compress the clip. Each of these steps was interactive. The software was unfortunately not designed with batch production in mind (a typical checklist might involve hundreds of such audio clips), and so processing each audio clip might require a Heads Up employee to type 50-100 keystrokes. Furthermore, the software had been written in such a way that it was impossible to pipe keystrokes into it using any of the commonly available utilities. Here's what I did to make it all practical:Thus the steps needed were reduced to recording and reviewing -- still a substantial amount of work, but also very substantially less than it had been otherwise. Another labor-saving enhancements included the ability, in case a desired audio clip had never yet been recorded and stored in the audio database, of suggesting similar replacement clips. Since we have always employed professional voice talent to record audio clips, avoiding a recording session when only one or two audio clips were wanted sometimes saved substantial sums of money.
I provided a program that was capable of automatically trimming the audio clips of leading/trailing noise/silence. I hacked the binary executables that had been provided to us to allow keystrokes to be piped in from a batch file. I provided a framework that tied all of these utilitities together: trimming, compressing, and then finally reviewing.
Though the Silver Checklist has been discontinued, the Gold Checklist is still in production, barely, as I write this (in 05/2001), with only minor changes to the design.