# TeleMetrum This is a recording dual-deploy altimeter for high power model rocketry with integrated telemetry link. ## 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.