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