# TeleMetrum
-<p>
-A quick update as of 25 December 2008.
-The circuit board artwork is out for fab!
-</p>
-<p>
-A quick update as of 16 December 2008.
-The ARM7-based 'AltusMetrum' design has been shelved indefinitely.
-Working with Keith Packard, I recently embarked on a complete redesign based on the TI cc1111.
-We got there by deciding we need a low-power RF beacon for post-landing direction finding, learning
-of the existence of this part, then realizing that we could radically simplify things by using it
-as the basis for a completely new avionics design.
-The cc1111 integrates a full 70cm transceiver, 8051 processing core, and peripherals on one chip.
-We add to that a barometric sensor, temperature sensor, accelerometer, eeprom memory, and full LiPo
-battery support powered by a USB interface also used for configuration and post-flight data extraction.
-It looks like we can get all the features we want on a single board for less than the price of most
-commercial altimeter boards, with the only downside being dramatically reduced processing power.
-We have a complete schematic and a first pass PCB layout that is currently
-under review and improvement prior to sending out for raw boards.
-</p>
-<p>
-See the hw/telemetrum tree in our
-<a href="http://git.gag.com">public git repository</a>
-for the current state of the gEDA design files.
-</p>
-<p>
-We hope to be turning on boards and writing firmware over the
-Christmas / New Years holiday season.
-Stay tuned!
-</p>
-<hr>
+This is a recording dual-deploy altimeter for high power model rocketry
+with integrated telemetry link.
+
+<a href="loadedpair.jpg"> <img src="loadedpair-thumb.jpg"></a>
+<a href="rawfront.jpg"> <img src="rawfront-thumb.jpg"></a>
+<a href="rawback.jpg"> <img src="rawback-thumb.jpg"></a>
+
+## Motivation ##
+
+Bdale and Keith both own
+[BeeLine](http://www.bigredbee.com/BeeLine.htm)
+trackers from
+[Big Red Bee](http://www.bigredbee.com), and are pretty happy with them.
+They use a PIC processor and a TI CC1050 transmitter chip, and
+operate in the ham radio 70cm band.
+
+One weekend while attending a conference together, we got to wondering if
+we couldn't adapt one to use as a downlink for the
+[AltusMetrum](../AltusMetrum/) altimeter board in addition to direction
+finding after flight. That caused us to start thinking about other things
+in the design we might want to tweak, and before long we were working on the
+design of a new tracker board derived from the BeeLine design.
+Another friend at the same conference showed us a board he was working on
+using a different part in the same TI series, that integrated a transceiver
+and CPU on the same chip.
+It didn't take us long to realize that with such a part we could combine and
+simplify things by building a new altimeter with integrated RF link!
+
+## Features ##
+
+### User View ###
+
+* Recording altimeter for model rocketry
+* Supports dual deployment (can fire 2 ejection charges)
+* 70cm ham-band transceiver for telemetry downlink
+* Barometric pressure sensor good to 45k feet MSL
+* Temperature sensor
+* 1-axis high-g accelerometer for motor characterization
+* On-board non-volatile memory for flight data storage
+* Serial port for attachment of GPS module
+* USB for power, configuration, and data recovery
+* Integrated support for LiPo rechargeable batteries
+* 2.5 x 1 inch board designed to fit inside 29mm airframe coupler tube
+
+### Developer View ###
+
+* [TI CC1111F32](http://focus.ti.com/docs/prod/folders/print/cc1111f32.html) Low Power RF System-on-Chip
+ * Sub-1Ghz transceiver
+ * 8051 MCU
+ * 32k Flash
+ * 4k RAM
+ * USB 2.0
+ * 6 12-bit analog inputs (11 bits with single-ended sensors)
+ * 2 channels of serial I/O
+ * digital I/O
+* [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM
+ * 128k x 8
+ * SPI interface
+* Various Sensors
+ * [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
+ * [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer. Can use 40-200g variants!
+ * [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) temperature sensor
+* Software Features (planned)
+ * Written mostly in C with some 8051 assembler
+ * Runs from on-chip flash, uses on-chip RAM, stores flight data to
+ serial EEPROM chip
+ * USB serial emulation for "console" interface
+* Tools Used
+ * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
+ * [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
+* Licenses
+ * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
+ * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
+
+## [Production History](production) ##
+
+## [Flight Logs](flightlogs) ##
+
+## Problems ##
+
+* The CC1111F32 is a 36-pin QFN package, which necessitates reflow
+ soldering. Since we needed to reflow solder anyway, and because TI used
+ them in their reference design, we went a little crazy and used 0402
+ passive parts everywhere. That means working under a microscope to
+ place parts! Without an inspection microscope, loading and testing these
+ boards might be impossible.
+
+* The v0.1 artwork has the USB connector footprint placed wrong, so that the
+ connector hangs out over the edge of the board instead of being flush with
+ the edge.
+
+* The v0.1 artwork has two issues that require cuts and jumps. The first is
+ that we need chip select on the SPI memory. To fix that, we give up the
+ ability to put the accelerometer into self-test mode and use that GPIO line
+ to pull chip select on the memory. The second is that the igniter sense
+ circuits each need a second resistor to complete the voltage divider so our
+ 3.3V CPU ADC can read the 5V ejection voltage. This is fixed by changing
+ two resistor values, and tacking two additional resistors onto the board
+ with jumpers to ground.
+
+## Artifacts ##
+
+The hardware design current gEDA files are available from
+[git.gag.com](http://git.gag.com) in the project
+[hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).
+The 'working-v0.1' tag on the master branch indicates what we're actually
+flying right now. The v0.1 PCB artwork, and schematic updated to include
+the parts Bdale loads for a functional board including the two cuts and jumps
+and two added resistors plus ground leads required as rework. The 'nextcut'
+branch is work towards our next PCB revision. The 'ground' branch has a
+cut-down schematic used to generate the BOM for partially loading boards
+to use in the matching [TeleTerra](../TeleTerra) ground station design.
+
+For those who don't have ready access to the gEDA suite, here are pdf snapshots
+of files in more easily readable form. These are all as of the working-v0.1
+tag:
+
+* [schematic](telemetrum.pdf)
+* [pcb artwork](telemetrum.pcb.pdf)
+* [bill of materials](telemetrum.bom)
+
+
+We have firmware that is working well enough that we're starting to allow
+TeleMetrum to fire ejection charges. Keith has also written a ground station
+program called aoview that logs telemetry to disk, displays current and max
+values for key parameters during flight, and even includes voice synthesis
+during the flight so that our eyes can stay on the rockets! The source to all
+this is available from [git.gag.com](http://git.gag.com) in the project
+[fw/altos](http://git.gag.com/?p=fw/altos;a=summary). This repository includes
+sources for the firmware, ground station program, and related utilities. Note
+that actually building these sources requires a modifified version of sdcc,
+for which we have not published diffs since they are in the process of being
+accepted upstream. Watch this space for more details.
+
+## Future Plans ##
+
+Work is underway on a second revision of TeleMetrum with the following changes:
+
+* stretch board length by 0.25 inches
+* adjust USB connector position to be flush with edge of board
+* eliminate beeper
+* eliminate temperature sensor, since baro sensor is already compensated and there's a sensor on the cc1111
+* eliminate serial port connector
+* integrate MN5010HS GPS receiver and chip antenna on-board
+* change debug connector to 4 pin 1.25mm connector as was used for serial port
+* add 7 pin 1.25mm connector for companion board interface
+* use v_lipo as pyro power, eliminating the huge 1000uF capacitor and instead
+ adding ballast capacitors on the 3.3V rail to prevent brownouts
+* add a rectangle of silk screen material for improved serial number labeling
+
+We hope to build and fly prototypes of this version in late 2009. If it works
+out as well as we hope, this version may be made available in assembled and
+tested form to others in the rocketry hobby who have expressed interest.