Yet Another Flight Computer

(Overby version)

After reading several altimeter and accelerometer project sites, I decided to build my own. The primary reason was just to do it. Secondary was to have things that other flight computers don't, such as 3rd stage ignition and recording of airframe separation. There are several commercial products that do essentially what this project does, but this is mine.

I greatly appreciate others who've built accelerometers and altimeters and have written web pages to share their projects. I've stolen ideas gratuitously from you! :-)

I started building my own rocketry electronics with a simple staging timer. After spending a lot of time trying to find a suitable mechanical switch, I started investigating a non-mechanical approach using an accelerometer. This soon grew into a full-blown flight computer.

I made a lofty set of goals for my flight computer:


The first step was to get some hardware going. I selected the Microchip PIC 16F872 which has plent of analog and digital I/O ports, and because I already had acquired some development tools and a programmer (the Covington No Parts Pic Programmer).

At the time, I picked Microchip's processor over the Motorola 68HC11, because their products, documentation and 3rd party freely available software seemed better than Motorola's. In retrospect, I would have been better off starting with the Atmel AVR series processors. There is a C compiler (the GNU C Compiler, GCC) readily available for the AVR processor, and FreeBSD has the compiler, tools, libraries and a simple parallel-port based programmer readily available in the /usr/ports collection.

Since these pages were written, I've removed the sensors from the PIC board and have them on a separate sensor+amplifier-only board, and have begun rewriting the software in C for the Atmel AVR.


Version 1.0

I created the analog circuitry from examples in the Analog Devices data sheet, a Circuit Cellar article, and various other accelerometer and altimeter web pages.

Next came the software. This is where all the time went! My "day job" is writing C code, however I hadn't found a freely available C compiler for the PIC when I started so I went ahead and wrote all of the on-board code in assembly language. While it was fun going back to where I started programming (in machine and assembly language) this took up a lot more time.

Next: Hardware

Hardware On-Board Software Flight Results References


Version 1.1

I reworked the pressure sensor op-amp to invert the data and subtract 2.5 volts. However, the construction left much to be desired. The noise on the signal was awful! This was probably the result of wires crossing each other at non-right-angles. I ended up using un-amplified data for some more test flights.

I wanted to redo the entire analog section of the board, and after writing too much assembly code, I wanted to move back to C. I decided to switch to the AVR processor, and to build the flight computer as three boards: sensors, microprocessor and EEPROM, and outputs.


Version 2.0

I'm still working on version 2.0 :-)


Future Additions


Author: Glen Overby Home
$Revision: 1.4 $ $Date: 2006/10/21 02:42:18 $