updates
[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 
8 store.  TeleMetrum starter kits are also now available from 
9 [Apogee Components](http://www.apogeerockets.com/Altus_Metrum_GPS.asp).
10
11 These are photos of our current production version, which includes an 
12 integrated GPS receiver with active patch antenna:
13
14 <a href="v1.0/cimg5972-crop.jpg"> <img src="v1.0/cimg5972-thumb.jpg"></a>
15 <a href="v1.0/cimg5974-crop.jpg"> <img src="v1.0/cimg5974-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 [Taoglas AP.17A.01](http://www.taoglas.com/antennas/GPS_Antennas/Internal_GPS_-_Active_Patch_Modules/) 
75                   single-stage active patch antenna
76                 * U.FL connector with 3.3V DC can be re-purposed for optional external amplified antennas
77                 * async serial interface
78         * [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
79         * [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer.  Can use 40-200g variants!
80 * Software Features
81         * Written mostly in C with some 8051 assembler
82         * Runs from on-chip flash, uses on-chip RAM, stores flight data to
83                 serial DataFlash chip
84         * USB serial emulation for "console" interface
85 * Tools Used
86         * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
87         * [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
88 * Licenses
89         * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
90         * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
91
92 ## [Production History](../production) ##
93
94 ## [Flight Logs](flightlogs) ##
95
96 ## Artifacts ##
97
98 The user manual for TeleMetrum is available in
99 [html](doc/telemetrum-doc.html) and [pdf](doc/telemetrum-doc.pdf)
100 formats.
101
102 The hardware design current gEDA files are available from 
103 [git.gag.com](http://git.gag.com) in the project 
104 [hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).  
105
106 Work on the next version proceeds on the master branch, with occasional
107 temporary branches created when Bdale is making some major / speculative
108 change.  The 'v0.2' and 'v0.1' branches document what we're actually flying 
109 right now on the two respective PCB revisions.  The 'ground' branch has a 
110 cut-down schematic used to generate the BOM for partially loading v0.1 boards 
111 to used on the ground.  We call the on-the-ground 
112 version '[TeleDongle](../TeleDongle)', and newer versions have their own PCB
113 design.
114
115 For those who don't have ready access to the gEDA suite, here are pdf snapshots
116 of the files for Production PCB version 1.0 in more easily readable form.  
117
118 * [schematic](v1.0/telemetrum.pdf)
119 * [pcb artwork](v1.0/telemetrum.pcb.pdf)
120 * [bill of materials](v1.0/partslist.csv)
121
122 We now consider our [AltOS](../AltOS) firmware completely reliable, and we 
123 now routinely fly TeleMetrum with no backup.  Rockets with TeleMetrum boards 
124 have exceeded 50g acceleration, been well above Mach 1, and reached altitudes 
125 greater than 25k feet AGL with great results.  Keith's second generation 
126 ground station program called altosui works on Windows, Mac, and Linux systems
127 and logs telemetry to disk, displays current and max values for key parameters 
128 during flight, and even includes voice synthesis during the flight so that 
129 our eyes can stay on the rockets!  After flight, altosui can extract the 
130 complete flight log from TeleMetrum, can display plots of the data from either
131 the telemetry received by radio or the onboard flight log, can output a kml 
132 file for use with [Google Earth](http://earth.google.com), and can also 
133 output all the flight data as a csv file for easy import to spreadsheet 
134 programs or other analysis tools allowing you to perform whatever
135 custom analysis you can envision!  More details on the software, 
136 including full source code and pre-built packages
137 can be found on the [AltOS](../AltOS) page on this site.
138
139 ## Future Plans ##
140
141 TeleMetrum v1.0 meets all of our expectations.  We anticipate another
142 production run of boards soon, which will include minor design tweeks mostly
143 to work around component availability issues.
144
145 ## Problems ##
146
147 * The CC1111F32 is a 36-pin QFN package, which necessitates reflow 
148   soldering.  Since we needed to reflow solder anyway, and because TI used 
149   them in their reference design, we went a little crazy and used 0402 
150   passive parts everywhere.  That means working under a microscope to 
151   place parts!  Without an inspection microscope, loading and testing these
152   boards might be impossible.
153
154 * The addition of on-board GPS in v0.2 means that the total power consumption
155   can exceed the rate at which we draw power from the USB interface, 
156   particularly when the GPS is in cold start mode.  This means a battery must 
157   be attached during operation, and also that the battery will only charge 
158   effectively from USB when the board is turned off.
159
160 ## History ##
161
162 ### v0.2 ###
163
164 These are photos of our second version, which included the integrated Venus
165 GPS receiver, but with a passive patch antenna that turned out to have 
166 disappointing performance due to our many PCB geometry constraints.  It also
167 used a voltage regulator with less capacity which we felt was marginal for
168 supporting the companion boards we have planned:
169
170 <a href="v0.2/cimg5164-cropped.jpg"> <img src="v0.2/cimg5164-thumb.jpg"></a>
171 <a href="v0.2/cimg5171-cropped.jpg"> <img src="v0.2/cimg5171-thumb.jpg"></a>
172
173 Other than cleaning up the silkscreen, the differences between v0.2 and our
174 current v1.0 boards were really quite small:
175
176 * 100ma LDO regulator instead of the current 150ma part
177 * no C38 footprint
178 * different value for C36 reset capacitor
179
180 The schematics and PCB artwork for this version are on the v0.2 branch in
181 our git repository, here are pdf copies for easy reference:
182
183  * [schematic](v0.2/telemetrum.pdf)
184  * [pcb artwork](v0.2/telemetrum.pcb.pdf)
185  * [bill of materials](v0.2/partslist.csv)
186
187 ### v0.1 ###
188
189 And this is a photo of our original board with serial port for off-board GPS,
190 without the big off-board 1000uF cap from the original ejection circuit:
191
192 <a href="v0.1/loadedpair.jpg"> <img src="v0.1/loadedpair-thumb.jpg"></a>
193
194 The differences between v0.1 and later boards were substantial:
195
196 * 2.5 x 1 inch board with all parts mounted on one side
197 * 4-pin PicoBlade serial port connector for attachment of external GPS module 
198 * USB connector projected approximately 3mm over the edge of the board
199 * Debug connector used 4 IC socket pins on 100 mil centers
200 * no companion board interface
201 * 50ma LDO regulator on early boards, later boards used a 100ma part
202 * [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM instead of DataFlash
203         * 128k x 8
204         * SPI interface
205 * [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) discrete temperature sensor
206 * used 1000uF electrolytic capacitor charged to 5V for pyro supply
207 * two LEDs instead of one attached to CPU
208
209 The elimination of the discrete temperature sensor and second LED were
210 necessary to support the companion board interface added in v0.2.
211
212 The v0.1 artwork had three issues, two of which required physical rework
213 on each board.  All of these issues were fixed in v0.2.
214
215 * The USB connector footprint was placed wrong, so that the
216   connector hung out over the edge of the board instead of being 
217   flush.
218 * We needed chip select on the SPI memory.  To fix that, we gave up the 
219   ability to put the accelerometer into self-test mode and used that 
220   GPIO line to pull chip select on the memory, which required two
221   cuts and two jumpers.  
222 * The igniter sense circuits each needed a second resistor to 
223   complete the voltage divider so our 3.3V CPU ADC could read the 
224   5V ejection voltage.  This was fixed by changing two resistor 
225   values, and tacking two additional resistors onto the board
226   with jumpers to ground.
227
228 The schematics and PCB artwork for this version as of the working-v0.1 tag
229 are available here are pdf copies for easy reference:
230
231  * [schematic](v0.1/telemetrum.pdf)
232  * [pcb artwork](v0.1/telemetrum.pcb.pdf)
233  * [bill of materials](v0.1/telemetrum.bom)