summaryrefslogtreecommitdiff
path: root/TeleMetrum/index.mdwn
blob: 0cb045b4ab6295b3c2e914a594779f993464ed83 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
# TeleMetrum

This is a recording dual-deploy altimeter for high power model rocketry 
with integrated GPS and telemetry link.  

These are photos of our current version,
which includes an integrated GPS receiver and patch antenna:

<a href="v0.2/cimg5164-cropped.jpg"> <img src="v0.2/cimg5164-thumb.jpg"></a>
<a href="v0.2/cimg5171-cropped.jpg"> <img src="v0.2/cimg5171-thumb.jpg"></a>

And these are photos of our original board with serial port for off-board GPS,
without the big off-board 1000uF cap from the original ejection circuit:

<a href="v0.1/loadedpair.jpg"> <img src="v0.1/loadedpair-thumb.jpg"></a>
<a href="v0.1/rawfront.jpg"> <img src="v0.1/rawfront-thumb.jpg"></a>
<a href="v0.1/rawback.jpg"> <img src="v0.1/rawback-thumb.jpg"></a>

## Motivation ##

Bdale and Keith both own 
[BeeLine](http://www.bigredbee.com/BeeLine.htm)
trackers from 
[Big Red Bee](http://www.bigredbee.com), and are pretty happy with them.
They use a PIC processor and a TI CC1050 transmitter chip, and
operate in the ham radio 70cm band.

One weekend while attending a conference together, we got to wondering if 
we couldn't adapt one to use as a downlink for the
[AltusMetrum](../AltusMetrum/) altimeter board in addition to direction
finding after flight.  That caused us to start thinking about other things
in the design we might want to tweak, and before long we were working on the
design of a new tracker board derived from the BeeLine design.
Another friend at the same conference showed us a board he was working on 
using a different part in the same TI series, that integrated a transceiver
and CPU on the same chip.
It didn't take us long to realize that with such a part we could combine and
simplify things by building a new altimeter with integrated RF link!  And
after gaining some experience in 2009 with a first version, we realized we
always want GPS on board, which lead to our current second generation boards.

## Features ##

### User View ###

* Recording altimeter for model rocketry
* Supports dual deployment (can fire 2 ejection charges)
* 70cm ham-band transceiver for telemetry downlink
* Barometric pressure sensor good to 45k feet MSL
* Temperature sensor
* 1-axis high-g accelerometer for motor characterization
* On-board non-volatile memory for flight data storage
* Serial port for attachment of GPS module
* USB for power, configuration, and data recovery
* Integrated support for LiPo rechargeable batteries
* 2.5 x 1 inch board designed to fit inside 29mm airframe coupler tube

### Developer View ###

* [TI CC1111F32](http://focus.ti.com/docs/prod/folders/print/cc1111f32.html) Low Power RF System-on-Chip
	* Sub-1Ghz transceiver
	* 8051 MCU
	* 32k Flash
	* 4k RAM
	* USB 2.0
	* 6 12-bit analog inputs (11 bits with single-ended sensors)
	* 2 channels of serial I/O
	* digital I/O
* [Microchip 25LC1024](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en520389) CMOS serial EEPROM
	* 128k x 8
	* SPI interface
* Various Sensors
	* [Freescale MP3H6115A](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MP3H6115A6U) pressure sensor
	* [Freescale MMA2202EG](http://www.freescale.com/webapp/search.partparamdetail.framework?PART_NUMBER=MMA2202EG) 50g accelerometer.  Can use 40-200g variants!
	* [Microchip MCP9700A](http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en027103) temperature sensor
* Software Features (planned)
	* Written mostly in C with some 8051 assembler
	* Runs from on-chip flash, uses on-chip RAM, stores flight data to
		serial EEPROM chip
	* USB serial emulation for "console" interface
* Tools Used
	* [gEDA](http://www.gpleda.org/) for schematic capture and PCB layout
	* [SDCC](http://sdcc.sourceforge.net/) compiler and source debugger
* Licenses
	* The hardware is licensed under the [TAPR](http://www.tapr.org) [Open Hardware License](http://www.tapr.org/ohl.html)
	* The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)

## [Production History](production) ##

## [Flight Logs](flightlogs) ##

## Problems ##

* The CC1111F32 is a 36-pin QFN package, which necessitates reflow 
  soldering.  Since we needed to reflow solder anyway, and because TI used 
  them in their reference design, we went a little crazy and used 0402 
  passive parts everywhere.  That means working under a microscope to 
  place parts!  Without an inspection microscope, loading and testing these
  boards might be impossible.

* The v0.1 artwork has the USB connector footprint placed wrong, so that the
  connector hangs out over the edge of the board instead of being flush with
  the edge.

* The v0.1 artwork has two issues that require cuts and jumps.  The first is
  that we need chip select on the SPI memory.  To fix that, we give up the 
  ability to put the accelerometer into self-test mode and use that GPIO line
  to pull chip select on the memory.  The second is that the igniter sense
  circuits each need a second resistor to complete the voltage divider so our
  3.3V CPU ADC can read the 5V ejection voltage.  This is fixed by changing
  two resistor values, and tacking two additional resistors onto the board
  with jumpers to ground.

## Artifacts ##

The hardware design current gEDA files are available from 
[git.gag.com](http://git.gag.com) in the project 
[hw/telemetrum](http://git.gag.com/?p=hw/telemetrum;a=summary).  

Work on the next version proceeds on the master branch, with occasional
temporary branches created when Bdale is making some major / speculative
change.  The 'v0.2' and 'v0.1' branches document what we're actually flying 
right now on the two respective PCB revisions.  The 'ground' branch has a 
cut-down schematic used to generate the BOM for partially loading v0.1 boards 
to used on the ground.  We call the on-the-ground version 'TeleDongle'.

For those who don't have ready access to the gEDA suite, here are pdf snapshots
of files in more easily readable form.  

* These are from the v0.2 branch:
 * [schematic](v0.2/telemetrum.pdf)
 * [pcb artwork](v0.2/telemetrum.pcb.pdf)
 * [bill of materials](v0.2/partslist.csv)
* These are as of the working-v0.1 tag:  
 * [schematic](v0.1/telemetrum.pdf)
 * [pcb artwork](v0.1/telemetrum.pcb.pdf)
 * [bill of materials](v0.1/telemetrum.bom)

We have firmware that works well enough that we now routinely allow TeleMetrum 
to control flights by firing ejection charges.  We've flown v0.1 boards in 
rockets exceeding 50g acceleration, above Mach 1, and to altitudes greater 
than 12k feet AGL with great results.  Keith wrote a ground station program 
called 
ao-view that logs telemetry to disk, displays current and max
values for key parameters during flight, and even includes voice synthesis 
during the flight so that our eyes can stay on the rockets!  We have post
flight analysis software that makes it easy to extract data from the board,
analyze it, and even generate KML files for viewing flights in GoogleEarth!
More details on the software, including full source code and pre-built packages
can be found on the [AltOS](../AltOS) page on this site.

## Future Plans ##

Work is underway on a second revision of TeleMetrum with the following changes:

* stretch board length by 0.25 inches
* adjust USB connector position to be flush with edge of board
* eliminate temperature sensor, since baro sensor is already compensated and there's a sensor on the cc1111
* eliminate serial port connector
* integrate SkyTraq Venus GPS receiver and patch antenna on-board
* change debug connector to 4 pin Tyco MicroMaTch
* add 8 pin Tyco MicroMaTch connector for companion board interface
* use v_lipo as pyro power, eliminating the huge 1000uF capacitor and instead
  adding ballast capacitance on the 3.3V rail to prevent brownouts
* move all connectors, beeper, and GPS patch antenna to the "other side" of the board from the surface mount parts
* add a rectangle of silk screen material for improved serial number labeling

As of early December 2009, the layout work for v0.2 is done and we're busy
verifying it and deciding exactly how we're going to build them.  We hope to
have first prototypes to test in time to show the new version at LCA in late
January 2010.  If it works out as well as we hope, v0.2 may be made available 
in assembled and tested form to others in the rocketry hobby who have 
expressed interest sometime in 2010.