Merge branch 'master' of ssh://git.gag.com/scm/git/web/altusmetrum
[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 For the latest TeleMetrum firmware and related ground station software, please
12 visit the [AltOS](../AltOS) page on this site.
13
14 These are photos of our current production version, which includes an 
15 integrated GPS receiver with active patch antenna:
16
17 <a href="v1.1/telemetrum-v1.1-thside.jpg"> <img src="v1.1/telemetrum-v1.1-thside-thumb.jpg"></a>
18 <a href="v1.1/telemetrum-v1.1-smtside.jpg"> <img src="v1.1/telemetrum-v1.1-smtside-thumb.jpg"></a>
19
20 ## Features ##
21
22 ### User View ###
23
24 * Recording altimeter for model rocketry
25 * Supports dual deployment (can fire 2 ejection charges)
26 * 70cm ham-band transceiver for telemetry downlink
27 * Barometric pressure sensor good to 45k feet MSL
28 * 1-axis high-g accelerometer for motor characterization
29 * On-board, integrated GPS receiver
30 * On-board non-volatile memory for flight data storage
31 * USB for power, configuration, and data recovery
32 * Integrated support for LiPo rechargeable batteries
33 * Uses LiPo to fire e-matches, can be factory modified to support separate pyro battery
34 * 2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube
35
36 ### Developer View ###
37
38 * Hardware Features
39         * [TI CC1111F32](http://focus.ti.com/docs/prod/folders/print/cc1111f32.html) Low Power RF System-on-Chip
40                 * Sub-1Ghz transceiver
41                 * 8051 MCU
42                 * 32k Flash
43                 * 4k RAM
44                 * USB 2.0
45                 * 6 12-bit analog inputs (11 bits with single-ended sensors)
46                 * 2 channels of serial I/O
47                 * digital I/O
48         * [Winbond W25Q16](http://www.winbond.com/NR/exeres/A3D21C82-A0B6-4586-A770-2F0883A805FF.htm) serial flash memory
49                 * 2M x 8
50                 * SPI interface
51         * [SkyTraq](http://www.skytraq.com.tw/) Venus634FLPx GPS receiver
52                 * on-board [Taoglas AP.17A.01](http://www.taoglas.com/antennas/GPS_Antennas/Internal_GPS_-_Active_Patch_Modules/) 
53                   single-stage active patch antenna
54                 * U.FL connector with 3.3V DC can be re-purposed for optional external amplified antennas
55                 * async serial interface
56         * [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
57         * [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer.  Can use 40-200g variants!
58 * Software Features
59         * Written mostly in C with some 8051 assembler
60         * Runs from on-chip flash, uses on-chip RAM, stores flight data to
61                 serial DataFlash chip
62         * USB serial emulation for "console" interface
63 * Tools Used
64         * [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
65         * [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
66 * Licenses
67         * The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
68         * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
69
70 ## [Production History](../production) ##
71
72 ## [Flight Logs](flightlogs) ##
73
74 ## Artifacts ##
75
76 There is a single manual for TeleMetrum and all other Altus Metrum products,
77 which is available in [html](../AltOS/doc/altusmetrum.html) and 
78 [pdf](../AltOS/doc/altusmetrum.pdf) formats.
79
80 The hardware design current gEDA files are available from 
81 [git.gag.com](http://git.gag.com) in the project 
82 [hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).  
83
84 Work on the next version proceeds on the master branch, with occasional
85 temporary branches created when Bdale is making some major / speculative
86 change.  Branched with names like 'v0.2' document what we're actually flying 
87 on the respective PCB revisions.  The 'ground' branch has a cut-down schematic 
88 used to generate the BOM for partially loading v0.1 boards to used on the 
89 ground.  We call the on-the-ground version '[TeleDongle](../TeleDongle)', and 
90 newer versions have their own PCB design.
91
92 For those who don't have ready access to the gEDA suite, here are pdf snapshots
93 of the files for Production PCB version 1.0 in more easily readable form.  
94
95 * [schematic](v1.1/telemetrum.pdf)
96 * [pcb artwork](v1.1/telemetrum.pcb.pdf)
97 * [bill of materials](v1.1/partslist.csv)
98
99 Rockets we know of flying with TeleMetrum boards have exceeded 50g acceleration, 
100 been well above Mach 1, and reached altitudes 
101 greater than 25k feet AGL with great results.  Keith's second generation 
102 ground station program called altosui works on Windows, Mac, and Linux systems
103 and logs telemetry to disk, displays current and max values for key parameters 
104 during flight, includes voice synthesis during the flight so that 
105 our eyes can stay on the rockets, and even includes live display of rocket
106 position over moving maps!  After flight, altosui can extract the 
107 complete flight log from TeleMetrum, can display plots of the data from either
108 the telemetry received by radio or the onboard flight log, can output a kml 
109 file for use with [Google Earth](http://earth.google.com), and can also 
110 output all the flight data as a csv file for easy import to spreadsheet 
111 programs or other analysis tools allowing you to perform whatever
112 custom analysis you can envision!  More details on the software, 
113 including full source code and pre-built packages
114 can be found on the [AltOS](../AltOS) page on this site.
115
116 ## Future Plans ##
117
118 TeleMetrum v1.1 meets all of our expectations, except for one mis-placed 
119 trace also present in v1.0.  The error makes use of a separate pyro battery 
120 less trivial than intended.  We'll fix that for a future production run.
121
122 ## Problems ##
123
124 * The CC1111F32 is a 36-pin QFN package, which necessitates reflow 
125   soldering.  Since we needed to reflow solder anyway, and because TI used 
126   them in their reference design, we went a little crazy and used 0402 
127   passive parts everywhere.  That means working under a microscope to 
128   place parts!  Without an inspection microscope, loading and testing these
129   boards might be impossible.
130
131 * The addition of on-board GPS in v0.2 means that the total power consumption
132   can exceed the rate at which we draw power from the USB interface, 
133   particularly when the GPS is in cold start mode.  This means a battery must 
134   be attached during operation, and also that the battery will only charge 
135   effectively from USB when the board is turned off.
136
137 ## History ##
138
139 ### v1.0 ###
140
141 These are photos of our third version, which was the basis of our first
142 production build.  These were sold between April and December 2010, and
143 performed very well.
144
145 <a href="v1.0/cimg5972-crop.jpg"> <img src="v1.0/cimg5972-thumb.jpg"></a>
146 <a href="v1.0/cimg5974-crop.jpg"> <img src="v1.0/cimg5974-thumb.jpg"></a>
147
148 The differences between v1.0 and v1.1 were small:
149
150 * different flash memory part due to supplier availability problems
151 * updated reset circuit to improve reliability at temperature extremes
152 * changed the GPS antenna footprint to eliminate the large through-hole 
153   originally intended for use with a passive patch
154 * irq line eliminated from the companion port
155 * an additional resistor divider added to allow sampling the 5V supply
156
157 The schematics and PCB artwork for this version are on the v1.0 branch in
158 our git repository, here are pdf copies for easy reference:
159
160 * [schematic](v1.0/telemetrum.pdf)
161 * [pcb artwork](v1.0/telemetrum.pcb.pdf)
162 * [bill of materials](v1.0/partslist.csv)
163
164
165 ### v0.2 ###
166
167 These are photos of our second version, which included the integrated Venus
168 GPS receiver, but with a passive patch antenna that turned out to have 
169 disappointing performance due to our many PCB geometry constraints.  It also
170 used a voltage regulator with less capacity which we felt was marginal for
171 supporting the companion boards we have planned:
172
173 <a href="v0.2/cimg5164-cropped.jpg"> <img src="v0.2/cimg5164-thumb.jpg"></a>
174 <a href="v0.2/cimg5171-cropped.jpg"> <img src="v0.2/cimg5171-thumb.jpg"></a>
175
176 Other than cleaning up the silkscreen, the differences between v0.2 and
177 v1.0 boards were really quite small:
178
179 * 100ma LDO regulator instead of the current 150ma part
180 * no C38 footprint
181 * different value for C36 reset capacitor
182
183 The schematics and PCB artwork for this version are on the v0.2 branch in
184 our git repository, here are pdf copies for easy reference:
185
186  * [schematic](v0.2/telemetrum.pdf)
187  * [pcb artwork](v0.2/telemetrum.pcb.pdf)
188  * [bill of materials](v0.2/partslist.csv)
189
190 ### v0.1 ###
191
192 And this is a photo of our original board with serial port for off-board GPS,
193 without the big off-board 1000uF cap from the original ejection circuit:
194
195 <a href="v0.1/loadedpair.jpg"> <img src="v0.1/loadedpair-thumb.jpg"></a>
196
197 The differences between v0.1 and later boards were substantial:
198
199 * 2.5 x 1 inch board with all parts mounted on one side
200 * 4-pin PicoBlade serial port connector for attachment of external GPS module 
201 * USB connector projected approximately 3mm over the edge of the board
202 * Debug connector used 4 IC socket pins on 100 mil centers
203 * no companion board interface
204 * 50ma LDO regulator on early boards, later boards used a 100ma part
205 * [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM instead of DataFlash
206         * 128k x 8
207         * SPI interface
208 * [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) discrete temperature sensor
209 * used 1000uF electrolytic capacitor charged to 5V for pyro supply
210 * two LEDs instead of one attached to CPU
211
212 The elimination of the discrete temperature sensor and second LED were
213 necessary to support the companion board interface added in v0.2.
214
215 The v0.1 artwork had three issues, two of which required physical rework
216 on each board.  All of these issues were fixed in v0.2.
217
218 * The USB connector footprint was placed wrong, so that the
219   connector hung out over the edge of the board instead of being 
220   flush.
221 * We needed chip select on the SPI memory.  To fix that, we gave up the 
222   ability to put the accelerometer into self-test mode and used that 
223   GPIO line to pull chip select on the memory, which required two
224   cuts and two jumpers.  
225 * The igniter sense circuits each needed a second resistor to 
226   complete the voltage divider so our 3.3V CPU ADC could read the 
227   5V ejection voltage.  This was fixed by changing two resistor 
228   values, and tacking two additional resistors onto the board
229   with jumpers to ground.
230
231 The schematics and PCB artwork for this version as of the working-v0.1 tag
232 are available here are pdf copies for easy reference:
233
234  * [schematic](v0.1/telemetrum.pdf)
235  * [pcb artwork](v0.1/telemetrum.pcb.pdf)
236  * [bill of materials](v0.1/telemetrum.bom)