93550e393d8e28080d8f34d928f12fff6ed79777
[web/altusmetrum] / TeleMetrum / index.mdwn
1 # TeleMetrum
2
3 This is a recording dual-deploy altimeter for high power model rocketry 
4 with integrated GPS and telemetry link.  
5
6 These are photos of our current version,
7 which includes an integrated GPS receiver and patch antenna:
8
9 <a href="v0.2/cimg5164-cropped.jpg"> <img src="v0.2/cimg5164-thumb.jpg"></a>
10 <a href="v0.2/cimg5171-cropped.jpg"> <img src="v0.2/cimg5171-thumb.jpg"></a>
11
12 And this is a photo of our original board with serial port for off-board GPS,
13 without the big off-board 1000uF cap from the original ejection circuit:
14
15 <a href="v0.1/loadedpair.jpg"> <img src="v0.1/loadedpair-thumb.jpg"></a>
16
17 ## Motivation ##
18
19 Bdale and Keith both own 
20 [BeeLine](http://www.bigredbee.com/BeeLine.htm)
21 trackers from 
22 [Big Red Bee](http://www.bigredbee.com), and are pretty happy with them.
23 They use a PIC processor and a TI CC1050 transmitter chip, and
24 operate in the ham radio 70cm band.
25
26 One weekend while attending a conference together, we got to wondering if 
27 we couldn't adapt one to use as a downlink for the
28 [AltusMetrum](../AltusMetrum/) altimeter board in addition to direction
29 finding after flight.  That caused us to start thinking about other things
30 in the design we might want to tweak, and before long we were working on the
31 design of a new tracker board derived from the BeeLine design.
32 Another friend at the same conference showed us a board he was working on 
33 using a different part in the same TI series, that integrated a transceiver
34 and CPU on the same chip.
35 It didn't take us long to realize that with such a part we could combine and
36 simplify things by building a new altimeter with integrated RF link!  And
37 after gaining some experience in 2009 with a first version, we realized we
38 always want GPS on board, which lead to our current second generation boards.
39
40 ## Features ##
41
42 ### User View ###
43
44 * Recording altimeter for model rocketry
45 * Supports dual deployment (can fire 2 ejection charges)
46 * 70cm ham-band transceiver for telemetry downlink
47 * Barometric pressure sensor good to 45k feet MSL
48 * 1-axis high-g accelerometer for motor characterization
49 * On-board, integrated GPS receiver
50 * On-board non-volatile memory for flight data storage
51 * USB for power, configuration, and data recovery
52 * Integrated support for LiPo rechargeable batteries
53 * Uses LiPo to fire e-matches, optional support for separate pyro battery
54 * 2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube
55
56 ### Developer View ###
57
58 * Hardware Features
59         * [TI CC1111F32](http://focus.ti.com/docs/prod/folders/print/cc1111f32.html) Low Power RF System-on-Chip
60                 * Sub-1Ghz transceiver
61                 * 8051 MCU
62                 * 32k Flash
63                 * 4k RAM
64                 * USB 2.0
65                 * 6 12-bit analog inputs (11 bits with single-ended sensors)
66                 * 2 channels of serial I/O
67                 * digital I/O
68         * [Atmel AT45DB081D](http://www.atmel.com/dyn/products/product_card.asp?part_id=3819) DataFlash memory
69                 * 1M x 8
70                 * 256 byte page size
71                 * SPI interface
72                 * other parts in this Atmel DataFlash series can optionally be used
73         * [SkyTraq](http://www.skytraq.com.tw/) Venus634FLPx GPS receiver
74                 * on-board passive patch antenna
75                 * U.FL connector with 3.3V DC for optional external amplified antenna
76                 * async serial interface
77         * [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
78         * [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer.  Can use 40-200g variants!
79 * Software Features
80         * Written mostly in C with some 8051 assembler
81         * Runs from on-chip flash, uses on-chip RAM, stores flight data to
82                 serial DataFlash chip
83         * USB serial emulation for "console" interface
84 * Tools Used
85         * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
86         * [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
87 * Licenses
88         * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
89         * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
90
91 ### v0.1 Differences  ###
92
93 * 2.5 x 1 inch board with all parts mounted on one side
94 * 4-pin PicoBlade serial port connector for attachment of external GPS module 
95 * USB connector projected approximately 3mm over the edge of the board
96 * Debug connector used 4 IC socket pins on 100 mil centers
97 * no companion board interface
98 * [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM instead of DataFlash
99         * 128k x 8
100         * SPI interface
101 * [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) temperature sensor instead of using cc1111 on-chip sensor
102 * used 1000uF electrolytic capacitor charged to 5V for pyro charges
103
104 ## [Production History](production) ##
105
106 ## [Flight Logs](flightlogs) ##
107
108 ## Problems ##
109
110 * The CC1111F32 is a 36-pin QFN package, which necessitates reflow 
111   soldering.  Since we needed to reflow solder anyway, and because TI used 
112   them in their reference design, we went a little crazy and used 0402 
113   passive parts everywhere.  That means working under a microscope to 
114   place parts!  Without an inspection microscope, loading and testing these
115   boards might be impossible.
116
117 * The v0.1 artwork has the USB connector footprint placed wrong, so that the
118   connector hangs out over the edge of the board instead of being flush with
119   the edge.
120
121 * The v0.1 artwork has two issues that require cuts and jumps.  The first is
122   that we need chip select on the SPI memory.  To fix that, we give up the 
123   ability to put the accelerometer into self-test mode and use that GPIO line
124   to pull chip select on the memory.  The second is that the igniter sense
125   circuits each need a second resistor to complete the voltage divider so our
126   3.3V CPU ADC can read the 5V ejection voltage.  This is fixed by changing
127   two resistor values, and tacking two additional resistors onto the board
128   with jumpers to ground.
129
130 ## Artifacts ##
131
132 The hardware design current gEDA files are available from 
133 [git.gag.com](http://git.gag.com) in the project 
134 [hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).  
135
136 Work on the next version proceeds on the master branch, with occasional
137 temporary branches created when Bdale is making some major / speculative
138 change.  The 'v0.2' and 'v0.1' branches document what we're actually flying 
139 right now on the two respective PCB revisions.  The 'ground' branch has a 
140 cut-down schematic used to generate the BOM for partially loading v0.1 boards 
141 to used on the ground.  We call the on-the-ground version 'TeleDongle'.
142
143 For those who don't have ready access to the gEDA suite, here are pdf snapshots
144 of files in more easily readable form.  
145
146 * These are from the v0.2 branch:
147  * [schematic](v0.2/telemetrum.pdf)
148  * [pcb artwork](v0.2/telemetrum.pcb.pdf)
149  * [bill of materials](v0.2/partslist.csv)
150 * These are as of the working-v0.1 tag:  
151  * [schematic](v0.1/telemetrum.pdf)
152  * [pcb artwork](v0.1/telemetrum.pcb.pdf)
153  * [bill of materials](v0.1/telemetrum.bom)
154
155 Our [AltOS](../AltOS) firmware works well enough that we now routinely fly 
156 TeleMetrum with no backup.  Rockets with v0.1 boards have exceeded 50g 
157 acceleration, been above Mach 1, and reached altitudes greater 
158 than 12k feet AGL with great results.  Keith's ground station program 
159 called ao-view logs telemetry to disk, displays current and max values for 
160 key parameters during flight, and even includes voice synthesis 
161 during the flight so that our eyes can stay on the rockets!  We have post
162 flight analysis software that makes it easy to extract data from the board,
163 analyze it, and even generate KML files for viewing flights in GoogleEarth!
164 More details on the software, including full source code and pre-built packages
165 can be found on the [AltOS](../AltOS) page on this site.
166
167 ## Future Plans ##
168
169 As of early February 2010, three prototypes of v0.2 are done and working on 
170 the bench.  We hope to flight test them shortly, then arrange a production
171 run in time to make TeleMetrum available in assembled and tested form to 
172 others in the rocketry hobby who have expressed interest in time for the 
173 2010 flying season.
174
175 Because we understand that not everyone uses Linux, we've started discussing 
176 the best way to make a cross-platform ground station program for use with 
177 [AltOS](../AltOS), perhaps in Java...