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