b458991f90aa126dc79de6921917296a053d2ada
[web/altusmetrum] / TeleMetrum / doc / telemetrum-doc.html
1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>TeleMetrum</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" title="TeleMetrum"><div class="titlepage"><div><div><h1 class="title"><a name="id2377993"></a>TeleMetrum</h1></div><div><h2 class="subtitle">Owner's Manual for the TeleMetrum System</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Bdale</span> <span class="surname">Garbee</span></h3></div></div><div><div class="author"><h3 class="author"><span class="firstname">Keith</span> <span class="surname">Packard</span></h3></div></div><div><p class="copyright">Copyright © 2010 Bdale Garbee and Keith Packard</p></div><div><div class="legalnotice" title="Legal Notice"><a name="id2661598"></a><p>
2         This document is released under the terms of the 
3         <a class="ulink" href="http://creativecommons.org/licenses/by-sa/3.0/" target="_top">
4           Creative Commons ShareAlike 3.0
5         </a>
6         license.
7       </p></div></div><div><div class="revhistory"><table border="1" width="100%" summary="Revision history"><tr><th align="left" valign="top" colspan="2"><b>Revision History</b></th></tr><tr><td align="left">Revision 0.2</td><td align="left">18 July 2010</td></tr><tr><td align="left" colspan="2">Significant update</td></tr><tr><td align="left">Revision 0.1</td><td align="left">30 March 2010</td></tr><tr><td align="left" colspan="2">Initial content</td></tr></table></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="#id2641275">1. Introduction and Overview</a></span></dt><dt><span class="chapter"><a href="#id2656912">2. Getting Started</a></span></dt><dd><dl><dt><span class="section"><a href="#id2675548">FAQ</a></span></dt></dl></dd><dt><span class="chapter"><a href="#id2675022">3. Specifications</a></span></dt><dt><span class="chapter"><a href="#id2668775">4. Handling Precautions</a></span></dt><dt><span class="chapter"><a href="#id2640995">5. Hardware Overview</a></span></dt><dt><span class="chapter"><a href="#id2648902">6. Operation</a></span></dt><dd><dl><dt><span class="section"><a href="#id2645726">Firmware Modes </a></span></dt><dt><span class="section"><a href="#id2644773">GPS </a></span></dt><dt><span class="section"><a href="#id2659643">Ground Testing </a></span></dt><dt><span class="section"><a href="#id2657017">Radio Link </a></span></dt><dt><span class="section"><a href="#id2660834">Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#id2657184">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2665037">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2670409">Main Deployment Altitude</a></span></dt></dl></dd><dt><span class="section"><a href="#id2666172">Calibration</a></span></dt><dd><dl><dt><span class="section"><a href="#id2676235">Radio Frequency</a></span></dt><dt><span class="section"><a href="#id2676108">Accelerometer</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#id2653312">7. Using Altus Metrum Products</a></span></dt><dd><dl><dt><span class="section"><a href="#id2645409">Being Legal</a></span></dt><dd><dl><dt><span class="section"><a href="#id2652849">In the Rocket</a></span></dt><dt><span class="section"><a href="#id2677187">On the Ground</a></span></dt><dt><span class="section"><a href="#id2679244">Data Analysis</a></span></dt><dt><span class="section"><a href="#id2668578">Future Plans</a></span></dt></dl></dd><dt><span class="section"><a href="#id2653941">
8           How GPS Works
9         </a></span></dt></dl></dd></dl></div><div class="chapter" title="Chapter 1. Introduction and Overview"><div class="titlepage"><div><div><h2 class="title"><a name="id2641275"></a>Chapter 1. Introduction and Overview</h2></div></div></div><p>
10       Welcome to the Altus Metrum community!  Our circuits and software reflect
11       our passion for both hobby rocketry and Free Software.  We hope their
12       capabilities and performance will delight you in every way, but by
13       releasing all of our hardware and software designs under open licenses,
14       we also hope to empower you to take as active a role in our collective
15       future as you wish!
16     </p><p>
17       The focal point of our community is TeleMetrum, a dual deploy altimeter 
18       with fully integrated GPS and radio telemetry as standard features, and
19       a "companion interface" that will support optional capabilities in the 
20       future.
21     </p><p>    
22       Complementing TeleMetrum is TeleDongle, a USB to RF interface for 
23       communicating with TeleMetrum.  Combined with your choice of antenna and 
24       notebook computer, TeleDongle and our associated user interface software
25       form a complete ground station capable of logging and displaying in-flight
26       telemetry, aiding rocket recovery, then processing and archiving flight
27       data for analysis and review.
28     </p><p>
29       More products will be added to the Altus Metrum family over time, and
30       we currently envision that this will be a single, comprehensive manual
31       for the entire product family.
32     </p></div><div class="chapter" title="Chapter 2. Getting Started"><div class="titlepage"><div><div><h2 class="title"><a name="id2656912"></a>Chapter 2. Getting Started</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#id2675548">FAQ</a></span></dt></dl></div><p>
33       This chapter began as "The Mere-Mortals Quick Start/Usage Guide to 
34       the Altus Metrum Starter Kit" by Bob Finch, W9YA, NAR 12965, TRA 12350, 
35       w9ya@amsat.org.  Bob was one of our first customers for a production
36       TeleMetrum, and the enthusiasm that led to his contribution of this
37       section is immensely gratifying and highy appreciated!
38     </p><p>
39       The first thing to do after you check the inventory of parts in your 
40       "starter kit" is to charge the battery by plugging it into the 
41       corresponding socket of the TeleMetrum and then using the USB A to B 
42       cable to plug the Telemetrum into your computer's USB socket. The 
43       TeleMetrum circuitry will charge the battery whenever it is plugged 
44       into the usb socket. The TeleMetrum's on-off switch does NOT control 
45       the charging circuitry.  When the GPS chip is initially searching for
46       satellites, the unit will pull more current than it can pull from the
47       usb port, so the battery must be plugged in order to get a good 
48       satellite lock.  Once GPS is locked the current consumption goes back 
49       down enough to enable charging while 
50       running. So it's a good idea to fully charge the battery as your 
51       first item of business so there is no issue getting and maintaining 
52       satellite lock.  The yellow charge indicator led will go out when the 
53       battery is nearly full and the charger goes to trickle charge.
54     </p><p>
55       The other active device in the starter kit is the half-duplex TeleDongle 
56       rf link.  If you plug it in to your computer it should "just work",
57       showing up as a serial port device.  If you are using Linux and are
58       having problems, try moving to a fresher kernel (2.6.33 or newer), as
59       there were some ugly USB serial driver bugs in earlier versions.
60     </p><p>
61       Next you should obtain and install the AltOS utilities.  The first
62       generation sofware was written for Linux only.  New software is coming
63       soon that will also run on Windows and Mac.  For now, we'll concentrate
64       on Linux.  If you are using Debian, an 'altos' package already exists, 
65       see http://altusmetrum.org/AltOS for details on how to install it.
66       User-contributed directions for building packages on ArchLinux may be 
67       found in the contrib/arch-linux directory as PKGBUILD files.
68       Between the debian/rules file and the PKGBUILD files in 
69       contrib, you should find enough information to learn how to build the 
70       software for any other version of Linux.
71     </p><p>
72       When you have successfully installed the software suite (either from 
73       compiled source code or as the pre-built Debian package) you will 
74       have 10 or so executable programs all of which have names beginning 
75         with 'ao-'.
76       ('ao-view' is the lone GUI-based program, the rest are command-line 
77       oriented.) You will also have man pages, that give you basic info 
78         on each program.
79       You will also get this documentation in two file types in the doc/ 
80 directory, telemetrum-doc.pdf and telemetrum-doc.html.
81       Finally you will have a couple control files that allow the ao-view 
82       GUI-based program to appear in your menu of programs (under 
83       the 'Internet' category). 
84     </p><p>
85       Both Telemetrum and TeleDongle can be directly communicated 
86       with using USB ports. The first thing you should try after getting 
87       both units plugged into to your computer's usb port(s) is to run 
88       'ao-list' from a terminal-window to see what port-device-name each 
89         device has been assigned by the operating system. 
90       You will need this information to access the devices via their 
91       respective on-board firmware and data using other command line
92       programs in the AltOS software suite.
93     </p><p>
94       To access the device's firmware for configuration you need a terminal
95       program such as you would use to talk to a modem.  The software 
96       authors prefer using the program 'cu' which comes from the UUCP package
97       on most Unix-like systems such as Linux.  An example command line for
98       cu might be 'cu -l /dev/ttyACM0', substituting the correct number 
99       indicated from running the
100       ao-list program.  Another reasonable terminal program for Linux is
101       'cutecom'.  The default 'escape' 
102       character used by CU (i.e. the character you use to
103       issue commands to cu itself instead of sending the command as input 
104       to the connected device) is a '~'. You will need this for use in 
105       only two different ways during normal operations. First is to exit 
106       the program by sending a '~.' which is called a 'escape-disconnect' 
107       and allows you to close-out from 'cu'. The
108       second use will be outlined later.
109     </p><p>
110       Both TeleMetrum and TeleDongle share the concept of a two level 
111       command set in their firmware.  
112         The first layer has several single letter commands. Once 
113       you are using 'cu' (or 'cutecom') sending (typing) a '?' 
114       returns a full list of these
115       commands. The second level are configuration sub-commands accessed 
116       using the 'c' command, for 
117       instance typing 'c?' will give you this second level of commands 
118       (all of which require the
119       letter 'c' to access).  Please note that most configuration options
120       are stored only in DataFlash memory, and only TeleMetrum has this
121       memory to save the various values entered like the channel number 
122       and your callsign when powered off.  TeleDongle requires that you
123       set these each time you plug it in, which ao-view can help with.
124     </p><p>
125       Try setting these config ('c' or second level menu) values.  A good
126       place to start is by setting your call sign.  By default, the boards
127       use 'N0CALL' which is cute, but not exactly legal!
128       Spend a few minutes getting comfortable with the units, their 
129       firmware, and 'cu' (or possibly 'cutecom').
130         For instance, try to send 
131       (type) a 'c r 2' and verify the channel change by sending a 'c s'. 
132       Verify you can connect and disconnect from the units while in your
133       terminal program by sending the escape-disconnect mentioned above.
134     </p><p>
135       Note that the 'reboot' command, which is very useful on TeleMetrum, 
136       will likely just cause problems with the dongle.  The *correct* way
137       to reset the dongle is just to unplug and re-plug it.
138     </p><p>
139       A fun thing to do at the launch site and something you can do while 
140       learning how to use these units is to play with the rf-link access 
141       of the TeleMetrum from the TeleDongle.  Be aware that you *must* create
142       some physical separation between the devices, otherwise the link will 
143       not function due to signal overload in the receivers in each device.
144     </p><p>
145       Now might be a good time to take a break and read the rest of this
146       manual, particularly about the two "modes" that the TeleMetrum 
147       can be placed in and how the position of the TeleMetrum when booting 
148       up will determine whether the unit is in "pad" or "idle" mode.
149     </p><p>
150       You can access a TeleMetrum in idle mode from the Teledongle's USB 
151       connection using the rf link
152       by issuing a 'p' command to the TeleDongle. Practice connecting and
153       disconnecting ('~~' while using 'cu') from the TeleMetrum.  If 
154       you cannot escape out of the "p" command, (by using a '~~' when in 
155       CU) then it is likely that your kernel has issues.  Try a newer version.
156     </p><p>
157       Using this rf link allows you to configure the TeleMetrum, test 
158       fire e-matches and igniters from the flight line, check pyro-match 
159       continuity and so forth. You can leave the unit turned on while it 
160       is in 'idle mode' and then place the
161       rocket vertically on the launch pad, walk away and then issue a 
162       reboot command.  The TeleMetrum will reboot and start sending data 
163       having changed to the "pad" mode. If the TeleDongle is not receiving 
164       this data, you can disconnect 'cu' from the Teledongle using the 
165       procedures mentioned above and THEN connect to the TeleDongle from 
166       inside 'ao-view'. If this doesn't work, disconnect from the
167       TeleDongle, unplug it, and try again after plugging it back in.
168     </p><p>
169       Eventually the GPS will find enough satellites, lock in on them, 
170       and 'ao-view' will both auditorially announce and visually indicate 
171       that GPS is ready.
172       Now you can launch knowing that you have a good data path and 
173       good satellite lock for flight data and recovery.  Remember 
174       you MUST tell ao-view to connect to the TeleDongle explicitly in 
175       order for ao-view to be able to receive data.
176     </p><p>
177       Both RDF (radio direction finding) tones from the TeleMetrum and 
178       GPS trekking data are available and together are very useful in 
179       locating the rocket once it has landed. (The last good GPS data 
180       received before touch-down will be on the data screen of 'ao-view'.)
181     </p><p>
182       Once you have recovered the rocket you can download the eeprom 
183       contents using either 'ao-dumplog' (or possibly 'ao-eeprom'), over
184       either a USB cable or over the radio link using TeleDongle.
185       And by following the man page for 'ao-postflight' you can create 
186       various data output reports, graphs, and even kml data to see the 
187       flight trajectory in google-earth. (Moving the viewing angle making 
188       sure to connect the yellow lines while in google-earth is the proper
189       technique.)
190     </p><p>
191       As for ao-view.... some things are in the menu but don't do anything 
192       very useful.  The developers have stopped working on ao-view to focus
193       on a new, cross-platform ground station program.  So ao-view may or 
194         may not be updated in the future.  Mostly you just use 
195       the Log and Device menus.  It has a wonderful display of the incoming 
196       flight data and I am sure you will enjoy what it has to say to you 
197       once you enable the voice output!
198     </p><div class="section" title="FAQ"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2675548"></a>FAQ</h2></div></div></div><p>
199         The altimeter (TeleMetrum) seems to shut off when disconnected from the
200         computer.  Make sure the battery is adequately charged.  Remember the
201         unit will pull more power than the USB port can deliver before the 
202         GPS enters "locked" mode.  The battery charges best when TeleMetrum
203         is turned off.
204       </p><p>
205         It's impossible to stop the TeleDongle when it's in "p" mode, I have
206         to unplug the USB cable?  Make sure you have tried to "escape out" of 
207         this mode.  If this doesn't work the reboot procedure for the 
208         TeleDongle *is* to simply unplug it. 'cu' however will retain it's 
209         outgoing buffer IF your "escape out" ('~~') does not work. 
210         At this point using either 'ao-view' (or possibly
211         'cutemon') instead of 'cu' will 'clear' the issue and allow renewed
212         communication.
213       </p><p>
214         The amber LED (on the TeleMetrum/altimeter) lights up when both 
215         battery and USB are connected. Does this mean it's charging? 
216         Yes, the yellow LED indicates the charging at the 'regular' rate. 
217         If the led is out but the unit is still plugged into a USB port, 
218         then the battery is being charged at a 'trickle' rate.
219       </p><p>
220         There are no "dit-dah-dah-dit" sound like the manual mentions?
221         That's the "pad" mode.  Weak batteries might be the problem.
222         It is also possible that the unit is horizontal and the output 
223         is instead a "dit-dit" meaning 'idle'.
224       </p><p>
225         It's unclear how to use 'ao-view' and other programs when 'cu' 
226         is running. You cannot have more than one program connected to 
227         the TeleDongle at one time without apparent data loss as the 
228         incoming data will not make it to both programs intact. 
229         Disconnect whatever programs aren't currently being used.
230       </p><p>
231         How do I save flight data?   
232         Live telemetry is written to file(s) whenever 'ao-view' is connected 
233         to the TeleDongle.  The file area defaults to ~/altos
234         but is easily changed using the menus in 'ao-view'. The files that 
235         are written end in '.telem'. The after-flight
236         data-dumped files will end in .eeprom and represent continuous data 
237         unlike the rf-linked .telem files that are subject to the 
238         turnarounds/data-packaging time slots in the half-duplex rf data path. 
239         See the above instructions on what and how to save the eeprom stored 
240         data after physically retrieving your TeleMetrum.  Make sure to save
241         the on-board data after each flight, as the current firmware will
242         over-write any previous flight data during a new flight.
243         </p></div></div><div class="chapter" title="Chapter 3. Specifications"><div class="titlepage"><div><div><h2 class="title"><a name="id2675022"></a>Chapter 3. Specifications</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
244             Recording altimeter for model rocketry.
245           </p></li><li class="listitem"><p>
246             Supports dual deployment (can fire 2 ejection charges).
247           </p></li><li class="listitem"><p>
248             70cm ham-band transceiver for telemetry downlink.
249           </p></li><li class="listitem"><p>
250             Barometric pressure sensor good to 45k feet MSL.
251           </p></li><li class="listitem"><p>
252             1-axis high-g accelerometer for motor characterization, capable of 
253             +/- 50g using default part.
254           </p></li><li class="listitem"><p>
255             On-board, integrated GPS receiver with 5hz update rate capability.
256           </p></li><li class="listitem"><p>
257             On-board 1 megabyte non-volatile memory for flight data storage.
258           </p></li><li class="listitem"><p>
259             USB interface for battery charging, configuration, and data recovery.
260           </p></li><li class="listitem"><p>
261             Fully integrated support for LiPo rechargeable batteries.
262           </p></li><li class="listitem"><p>
263             Uses LiPo to fire e-matches, support for optional separate pyro 
264             battery if needed.
265           </p></li><li class="listitem"><p>
266             2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube.
267           </p></li></ul></div></div><div class="chapter" title="Chapter 4. Handling Precautions"><div class="titlepage"><div><div><h2 class="title"><a name="id2668775"></a>Chapter 4. Handling Precautions</h2></div></div></div><p>
268         TeleMetrum is a sophisticated electronic device.  When handled gently and
269         properly installed in an airframe, it will deliver impressive results.
270         However, like all electronic devices, there are some precautions you
271         must take.
272       </p><p>
273         The Lithium Polymer rechargeable batteries used with TeleMetrum have an 
274         extraordinary power density.  This is great because we can fly with
275         much less battery mass than if we used alkaline batteries or previous
276         generation rechargeable batteries... but if they are punctured 
277         or their leads are allowed to short, they can and will release their 
278         energy very rapidly!
279         Thus we recommend that you take some care when handling our batteries 
280         and consider giving them some extra protection in your airframe.  We 
281         often wrap them in suitable scraps of closed-cell packing foam before 
282         strapping them down, for example.
283       </p><p>
284         The TeleMetrum barometric sensor is sensitive to sunlight.  In normal 
285         mounting situations, it and all of the other surface mount components 
286         are "down" towards whatever the underlying mounting surface is, so
287         this is not normally a problem.  Please consider this, though, when
288         designing an installation, for example, in a 29mm airframe with a 
289         see-through plastic payload bay.
290       </p><p>
291         The TeleMetrum barometric sensor sampling port must be able to 
292         "breathe",
293         both by not being covered by foam or tape or other materials that might
294         directly block the hole on the top of the sensor, but also by having a
295         suitable static vent to outside air.  
296       </p><p>
297         As with all other rocketry electronics, TeleMetrum must be protected 
298         from exposure to corrosive motor exhaust and ejection charge gasses.
299       </p></div><div class="chapter" title="Chapter 5. Hardware Overview"><div class="titlepage"><div><div><h2 class="title"><a name="id2640995"></a>Chapter 5. Hardware Overview</h2></div></div></div><p>
300         TeleMetrum is a 1 inch by 2.75 inch circuit board.  It was designed to
301         fit inside coupler for 29mm airframe tubing, but using it in a tube that
302         small in diameter may require some creativity in mounting and wiring 
303         to succeed!  The default 1/4
304         wave UHF wire antenna attached to the center of the nose-cone end of
305         the board is about 7 inches long, and wiring for a power switch and
306         the e-matches for apogee and main ejection charges depart from the 
307         fin can end of the board.  Given all this, an ideal "simple" avionics 
308         bay for TeleMetrum should have at least 10 inches of interior length.
309       </p><p>
310         A typical TeleMetrum installation using the on-board GPS antenna and
311         default wire UHF antenna involves attaching only a suitable
312         Lithium Polymer battery, a single pole switch for power on/off, and 
313         two pairs of wires connecting e-matches for the apogee and main ejection
314         charges.  
315       </p><p>
316         By default, we use the unregulated output of the LiPo battery directly
317         to fire ejection charges.  This works marvelously with standard 
318         low-current e-matches like the J-Tek from MJG Technologies, and with 
319         Quest Q2G2 igniters.  However, if you
320         want or need to use a separate pyro battery, you can do so by adding
321         a second 2mm connector to position B2 on the board and cutting the
322         thick pcb trace connecting the LiPo battery to the pyro circuit between
323         the two silk screen marks on the surface mount side of the board shown
324         here [insert photo]
325       </p><p>
326         We offer two choices of pyro and power switch connector, or you can 
327         choose neither and solder wires directly to the board.  All three choices
328         are reasonable depending on the constraints of your airframe.  Our
329         favorite option when there is sufficient room above the board is to use
330         the Tyco pin header with polarization and locking.  If you choose this
331         option, you crimp individual wires for the power switch and e-matches
332         into a mating connector, and installing and removing the TeleMetrum
333         board from an airframe is as easy as plugging or unplugging two 
334         connectors.  If the airframe will not support this much height or if
335         you want to be able to directly attach e-match leads to the board, we
336         offer a screw terminal block.  This is very similar to what most other
337         altimeter vendors provide and so may be the most familiar option.  
338         You'll need a very small straight blade screwdriver to connect
339         and disconnect the board in this case, such as you might find in a
340         jeweler's screwdriver set.  Finally, you can forego both options and
341         solder wires directly to the board, which may be the best choice for
342         minimum diameter and/or minimum mass designs. 
343       </p><p>
344         For most airframes, the integrated GPS antenna and wire UHF antenna are
345         a great combination.  However, if you are installing in a carbon-fiber
346         electronics bay which is opaque to RF signals, you may need to use 
347         off-board external antennas instead.  In this case, you can order
348         TeleMetrum with an SMA connector for the UHF antenna connection, and
349         you can unplug the integrated GPS antenna and select an appropriate 
350         off-board GPS antenna with cable terminating in a U.FL connector.
351       </p></div><div class="chapter" title="Chapter 6. Operation"><div class="titlepage"><div><div><h2 class="title"><a name="id2648902"></a>Chapter 6. Operation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#id2645726">Firmware Modes </a></span></dt><dt><span class="section"><a href="#id2644773">GPS </a></span></dt><dt><span class="section"><a href="#id2659643">Ground Testing </a></span></dt><dt><span class="section"><a href="#id2657017">Radio Link </a></span></dt><dt><span class="section"><a href="#id2660834">Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#id2657184">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2665037">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2670409">Main Deployment Altitude</a></span></dt></dl></dd><dt><span class="section"><a href="#id2666172">Calibration</a></span></dt><dd><dl><dt><span class="section"><a href="#id2676235">Radio Frequency</a></span></dt><dt><span class="section"><a href="#id2676108">Accelerometer</a></span></dt></dl></dd></dl></div><div class="section" title="Firmware Modes"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2645726"></a>Firmware Modes </h2></div></div></div><p>
352           The AltOS firmware build for TeleMetrum has two fundamental modes,
353           "idle" and "flight".  Which of these modes the firmware operates in
354           is determined by the orientation of the rocket (well, actually the
355           board, of course...) at the time power is switched on.  If the rocket
356           is "nose up", then TeleMetrum assumes it's on a rail or rod being
357           prepared for launch, so the firmware chooses flight mode.  However,
358           if the rocket is more or less horizontal, the firmware instead enters
359           idle mode.
360         </p><p>
361           At power on, you will hear three beeps 
362           ("S" in Morse code for startup) and then a pause while 
363           TeleMetrum completes initialization and self tests, and decides which
364           mode to enter next.
365         </p><p>
366           In flight or "pad" mode, TeleMetrum turns on the GPS system, 
367           engages the flight
368           state machine, goes into transmit-only mode on the RF link sending 
369           telemetry, and waits for launch to be detected.  Flight mode is
370           indicated by an audible "di-dah-dah-dit" ("P" for pad) on the 
371           beeper, followed by
372           beeps indicating the state of the pyrotechnic igniter continuity.
373           One beep indicates apogee continuity, two beeps indicate
374           main continuity, three beeps indicate both apogee and main continuity,
375           and one longer "brap" sound indicates no continuity.  For a dual
376           deploy flight, make sure you're getting three beeps before launching!
377           For apogee-only or motor eject flights, do what makes sense.
378         </p><p>
379           In idle mode, you will hear an audible "di-dit" ("I" for idle), and
380           the normal flight state machine is disengaged, thus
381           no ejection charges will fire.  TeleMetrum also listens on the RF
382           link when in idle mode for packet mode requests sent from TeleDongle.
383           Commands can be issued to a TeleMetrum in idle mode over either
384           USB or the RF link equivalently.
385           Idle mode is useful for configuring TeleMetrum, for extracting data 
386           from the on-board storage chip after flight, and for ground testing
387           pyro charges.
388         </p><p>
389           One "neat trick" of particular value when TeleMetrum is used with very
390           large airframes, is that you can power the board up while the rocket
391           is horizontal, such that it comes up in idle mode.  Then you can 
392           raise the airframe to launch position, use a TeleDongle to open
393           a packet connection, and issue a 'reset' command which will cause
394           TeleMetrum to reboot, realize it's now nose-up, and thus choose
395           flight mode.  This is much safer than standing on the top step of a
396           rickety step-ladder or hanging off the side of a launch tower with
397           a screw-driver trying to turn on your avionics before installing
398           igniters!
399         </p></div><div class="section" title="GPS"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2644773"></a>GPS </h2></div></div></div><p>
400           TeleMetrum includes a complete GPS receiver.  See a later section for
401           a brief explanation of how GPS works that will help you understand
402           the information in the telemetry stream.  The bottom line is that
403           the TeleMetrum GPS receiver needs to lock onto at least four 
404           satellites to obtain a solid 3 dimensional position fix and know 
405           what time it is!
406         </p><p>
407           TeleMetrum provides backup power to the GPS chip any time a LiPo
408           battery is connected.  This allows the receiver to "warm start" on
409           the launch rail much faster than if every power-on were a "cold start"
410           for the GPS receiver.  In typical operations, powering up TeleMetrum
411           on the flight line in idle mode while performing final airframe
412           preparation will be sufficient to allow the GPS receiver to cold
413           start and acquire lock.  Then the board can be powered down during
414           RSO review and installation on a launch rod or rail.  When the board
415           is turned back on, the GPS system should lock very quickly, typically
416           long before igniter installation and return to the flight line are
417           complete.
418         </p></div><div class="section" title="Ground Testing"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2659643"></a>Ground Testing </h2></div></div></div><p>
419           An important aspect of preparing a rocket using electronic deployment
420           for flight is ground testing the recovery system.  Thanks
421           to the bi-directional RF link central to the Altus Metrum system, 
422           this can be accomplished in a TeleMetrum-equipped rocket without as
423           much work as you may be accustomed to with other systems.  It can
424           even be fun!
425         </p><p>
426           Just prep the rocket for flight, then power up TeleMetrum while the
427           airframe is horizontal.  This will cause the firmware to go into 
428           "idle" mode, in which the normal flight state machine is disabled and
429           charges will not fire without manual command.  Then, establish an
430           RF packet connection from a TeleDongle-equipped computer using the 
431           P command from a safe distance.  You can now command TeleMetrum to
432           fire the apogee or main charges to complete your testing.
433         </p><p>
434           In order to reduce the chance of accidental firing of pyrotechnic
435           charges, the command to fire a charge is intentionally somewhat
436           difficult to type, and the built-in help is slightly cryptic to 
437           prevent accidental echoing of characters from the help text back at
438           the board from firing a charge.  The command to fire the apogee
439           drogue charge is 'i DoIt drogue' and the command to fire the main
440           charge is 'i DoIt main'.
441         </p></div><div class="section" title="Radio Link"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2657017"></a>Radio Link </h2></div></div></div><p>
442           The chip our boards are based on incorporates an RF transceiver, but
443           it's not a full duplex system... each end can only be transmitting or
444           receiving at any given moment.  So we had to decide how to manage the
445           link.
446         </p><p>
447           By design, TeleMetrum firmware listens for an RF connection when
448           it's in "idle mode" (turned on while the rocket is horizontal), which
449           allows us to use the RF link to configure the rocket, do things like
450           ejection tests, and extract data after a flight without having to 
451           crack open the airframe.  However, when the board is in "flight 
452           mode" (turned on when the rocket is vertical) the TeleMetrum only 
453           transmits and doesn't listen at all.  That's because we want to put 
454           ultimate priority on event detection and getting telemetry out of 
455           the rocket and out over
456           the RF link in case the rocket crashes and we aren't able to extract
457           data later... 
458         </p><p>
459           We don't use a 'normal packet radio' mode because they're just too
460           inefficient.  The GFSK modulation we use is just FSK with the 
461           baseband pulses passed through a
462           Gaussian filter before they go into the modulator to limit the
463           transmitted bandwidth.  When combined with the hardware forward error
464           correction support in the cc1111 chip, this allows us to have a very
465           robust 38.4 kilobit data link with only 10 milliwatts of transmit power,
466           a whip antenna in the rocket, and a hand-held Yagi on the ground.  We've
467           had flights to above 21k feet AGL with good reception, and calculations
468           suggest we should be good to well over 40k feet AGL with a 5-element yagi on
469           the ground.  We hope to fly boards to higher altitudes soon, and would
470           of course appreciate customer feedback on performance in higher
471           altitude flights!
472         </p></div><div class="section" title="Configurable Parameters"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2660834"></a>Configurable Parameters</h2></div></div></div><p>
473           Configuring a TeleMetrum board for flight is very simple.  Because we
474           have both acceleration and pressure sensors, there is no need to set
475           a "mach delay", for example.  The few configurable parameters can all
476           be set using a simple terminal program over the USB port or RF link
477           via TeleDongle.
478         </p><div class="section" title="Radio Channel"><div class="titlepage"><div><div><h3 class="title"><a name="id2657184"></a>Radio Channel</h3></div></div></div><p>
479             Our firmware supports 10 channels.  The default channel 0 corresponds
480             to a center frequency of 434.550 Mhz, and channels are spaced every 
481             100 khz.  Thus, channel 1 is 434.650 Mhz, and channel 9 is 435.550 Mhz.
482             At any given launch, we highly recommend coordinating who will use
483             each channel and when to avoid interference.  And of course, both 
484             TeleMetrum and TeleDongle must be configured to the same channel to
485             successfully communicate with each other.
486           </p><p>
487             To set the radio channel, use the 'c r' command, like 'c r 3' to set
488             channel 3.  
489             As with all 'c' sub-commands, follow this with a 'c w' to write the 
490             change to the parameter block in the on-board DataFlash chip on
491         your TeleMetrum board if you want the change to stay in place across reboots.
492           </p></div><div class="section" title="Apogee Delay"><div class="titlepage"><div><div><h3 class="title"><a name="id2665037"></a>Apogee Delay</h3></div></div></div><p>
493             Apogee delay is the number of seconds after TeleMetrum detects flight
494             apogee that the drogue charge should be fired.  In most cases, this
495             should be left at the default of 0.  However, if you are flying
496             redundant electronics such as for an L3 certification, you may wish 
497             to set one of your altimeters to a positive delay so that both 
498             primary and backup pyrotechnic charges do not fire simultaneously.
499           </p><p>
500             To set the apogee delay, use the [FIXME] command.
501             As with all 'c' sub-commands, follow this with a 'c w' to write the 
502             change to the parameter block in the on-board DataFlash chip.
503           </p><p>
504         Please note that the TeleMetrum apogee detection algorithm always
505         fires a fraction of a second *after* apogee.  If you are also flying
506         an altimeter like the PerfectFlite MAWD, which only supports selecting
507         0 or 1 seconds of apogee delay, you may wish to set the MAWD to 0
508         seconds delay and set the TeleMetrum to fire your backup 2 or 3
509         seconds later to avoid any chance of both charges firing 
510         simultaneously.  We've flown several airframes this way quite happily,
511         including Keith's successful L3 cert.
512           </p></div><div class="section" title="Main Deployment Altitude"><div class="titlepage"><div><div><h3 class="title"><a name="id2670409"></a>Main Deployment Altitude</h3></div></div></div><p>
513             By default, TeleMetrum will fire the main deployment charge at an
514             elevation of 250 meters (about 820 feet) above ground.  We think this
515             is a good elevation for most airframes, but feel free to change this 
516             to suit.  In particular, if you are flying two altimeters, you may
517             wish to set the
518             deployment elevation for the backup altimeter to be something lower
519             than the primary so that both pyrotechnic charges don't fire
520             simultaneously.
521           </p><p>
522             To set the main deployment altitude, use the [FIXME] command.
523             As with all 'c' sub-commands, follow this with a 'c w' to write the 
524             change to the parameter block in the on-board DataFlash chip.
525           </p></div></div><div class="section" title="Calibration"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2666172"></a>Calibration</h2></div></div></div><p>
526           There are only two calibrations required for a TeleMetrum board, and
527           only one for TeleDongle.
528         </p><div class="section" title="Radio Frequency"><div class="titlepage"><div><div><h3 class="title"><a name="id2676235"></a>Radio Frequency</h3></div></div></div><p>
529             The radio frequency is synthesized from a clock based on the 48 Mhz
530             crystal on the board.  The actual frequency of this oscillator must be
531             measured to generate a calibration constant.  While our GFSK modulation
532             bandwidth is wide enough to allow boards to communicate even when 
533             their oscillators are not on exactly the same frequency, performance
534             is best when they are closely matched.
535             Radio frequency calibration requires a calibrated frequency counter.
536             Fortunately, once set, the variation in frequency due to aging and
537             temperature changes is small enough that re-calibration by customers
538             should generally not be required.
539           </p><p>
540             To calibrate the radio frequency, connect the UHF antenna port to a
541             frequency counter, set the board to channel 0, and use the 'C' 
542             command to generate a CW carrier.  Wait for the transmitter temperature
543             to stabilize and the frequency to settle down.  
544             Then, divide 434.550 Mhz by the 
545             measured frequency and multiply by the current radio cal value show
546             in the 'c s' command.  For an unprogrammed board, the default value
547             is 1186611.  Take the resulting integer and program it using the 'c f'
548             command.  Testing with the 'C' command again should show a carrier
549             within a few tens of Hertz of the intended frequency.
550             As with all 'c' sub-commands, follow this with a 'c w' to write the 
551             change to the parameter block in the on-board DataFlash chip.
552           </p></div><div class="section" title="Accelerometer"><div class="titlepage"><div><div><h3 class="title"><a name="id2676108"></a>Accelerometer</h3></div></div></div><p>
553             The accelerometer we use has its own 5 volt power supply and
554             the output must be passed through a resistive voltage divider to match
555             the input of our 3.3 volt ADC.  This means that unlike the barometric
556             sensor, the output of the acceleration sensor is not ratiometric to 
557             the ADC converter, and calibration is required.  We also support the 
558             use of any of several accelerometers from a Freescale family that 
559             includes at least +/- 40g, 50g, 100g, and 200g parts.  Using gravity,
560             a simple 2-point calibration yields acceptable results capturing both
561             the different sensitivities and ranges of the different accelerometer
562             parts and any variation in power supply voltages or resistor values
563             in the divider network.
564           </p><p>
565             To calibrate the acceleration sensor, use the 'c a 0' command.  You
566             will be prompted to orient the board vertically with the UHF antenna
567             up and press a key, then to orient the board vertically with the 
568             UHF antenna down and press a key.
569             As with all 'c' sub-commands, follow this with a 'c w' to write the 
570             change to the parameter block in the on-board DataFlash chip.
571           </p><p>
572             The +1g and -1g calibration points are included in each telemetry
573             frame and are part of the header extracted by ao-dumplog after flight.
574             Note that we always store and return raw ADC samples for each
575             sensor... nothing is permanently "lost" or "damaged" if the 
576             calibration is poor.
577           </p></div></div></div><div class="chapter" title="Chapter 7. Using Altus Metrum Products"><div class="titlepage"><div><div><h2 class="title"><a name="id2653312"></a>Chapter 7. Using Altus Metrum Products</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#id2645409">Being Legal</a></span></dt><dd><dl><dt><span class="section"><a href="#id2652849">In the Rocket</a></span></dt><dt><span class="section"><a href="#id2677187">On the Ground</a></span></dt><dt><span class="section"><a href="#id2679244">Data Analysis</a></span></dt><dt><span class="section"><a href="#id2668578">Future Plans</a></span></dt></dl></dd><dt><span class="section"><a href="#id2653941">
578           How GPS Works
579         </a></span></dt></dl></div><div class="section" title="Being Legal"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2645409"></a>Being Legal</h2></div></div></div><p>
580           First off, in the US, you need an [amateur radio license](../Radio) or 
581           other authorization to legally operate the radio transmitters that are part
582           of our products.
583         </p><div class="section" title="In the Rocket"><div class="titlepage"><div><div><h3 class="title"><a name="id2652849"></a>In the Rocket</h3></div></div></div><p>
584             In the rocket itself, you just need a [TeleMetrum](../TeleMetrum) board and 
585             a LiPo rechargeable battery.  An 860mAh battery weighs less than a 9V 
586             alkaline battery, and will run a [TeleMetrum](../TeleMetrum) for hours.
587           </p><p>
588             By default, we ship TeleMetrum with a simple wire antenna.  If your 
589             electronics bay or the airframe it resides within is made of carbon fiber, 
590             which is opaque to RF signals, you may choose to have an SMA connector 
591             installed so that you can run a coaxial cable to an antenna mounted 
592             elsewhere in the rocket.
593           </p></div><div class="section" title="On the Ground"><div class="titlepage"><div><div><h3 class="title"><a name="id2677187"></a>On the Ground</h3></div></div></div><p>
594             To receive the data stream from the rocket, you need an antenna and short 
595             feedline connected to one of our [TeleDongle](../TeleDongle) units.  The
596             TeleDongle in turn plugs directly into the USB port on a notebook 
597             computer.  Because TeleDongle looks like a simple serial port, your computer
598             does not require special device drivers... just plug it in.
599           </p><p>
600             Right now, all of our application software is written for Linux.  However, 
601             because we understand that many people run Windows or MacOS, we are working 
602             on a new ground station program written in Java that should work on all
603             operating systems.
604           </p><p>
605             After the flight, you can use the RF link to extract the more detailed data 
606             logged in the rocket, or you can use a mini USB cable to plug into the 
607             TeleMetrum board directly.  Pulling out the data without having to open up
608             the rocket is pretty cool!  A USB cable is also how you charge the LiPo 
609             battery, so you'll want one of those anyway... the same cable used by lots 
610             of digital cameras and other modern electronic stuff will work fine.
611           </p><p>
612             If your rocket lands out of sight, you may enjoy having a hand-held GPS 
613             receiver, so that you can put in a waypoint for the last reported rocket 
614             position before touch-down.  This makes looking for your rocket a lot like 
615             Geo-Cacheing... just go to the waypoint and look around starting from there.
616           </p><p>
617             You may also enjoy having a ham radio "HT" that covers the 70cm band... you 
618             can use that with your antenna to direction-find the rocket on the ground 
619             the same way you can use a Walston or Beeline tracker.  This can be handy 
620             if the rocket is hiding in sage brush or a tree, or if the last GPS position 
621             doesn't get you close enough because the rocket dropped into a canyon, or 
622             the wind is blowing it across a dry lake bed, or something like that...  Keith
623             and Bdale both currently own and use the Yaesu VX-7R at launches.
624           </p><p>
625             So, to recap, on the ground the hardware you'll need includes:
626             </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"> 
627                 an antenna and feedline
628               </li><li class="listitem"> 
629                 a TeleDongle
630               </li><li class="listitem"> 
631                 a notebook computer
632               </li><li class="listitem"> 
633                 optionally, a handheld GPS receiver
634               </li><li class="listitem"> 
635                 optionally, an HT or receiver covering 435 Mhz
636               </li></ol></div><p>
637           </p><p>
638             The best hand-held commercial directional antennas we've found for radio 
639             direction finding rockets are from 
640             <a class="ulink" href="http://www.arrowantennas.com/" target="_top">
641               Arrow Antennas.
642             </a>
643             The 440-3 and 440-5 are both good choices for finding a 
644             TeleMetrum-equipped rocket when used with a suitable 70cm HT.  
645           </p></div><div class="section" title="Data Analysis"><div class="titlepage"><div><div><h3 class="title"><a name="id2679244"></a>Data Analysis</h3></div></div></div><p>
646             Our software makes it easy to log the data from each flight, both the 
647             telemetry received over the RF link during the flight itself, and the more
648             complete data log recorded in the DataFlash memory on the TeleMetrum 
649             board.  Once this data is on your computer, our postflight tools make it
650             easy to quickly get to the numbers everyone wants, like apogee altitude, 
651             max acceleration, and max velocity.  You can also generate and view a 
652             standard set of plots showing the altitude, acceleration, and
653             velocity of the rocket during flight.  And you can even export a data file 
654             useable with Google Maps and Google Earth for visualizing the flight path 
655             in two or three dimensions!
656           </p><p>
657             Our ultimate goal is to emit a set of files for each flight that can be
658             published as a web page per flight, or just viewed on your local disk with 
659             a web browser.
660           </p></div><div class="section" title="Future Plans"><div class="titlepage"><div><div><h3 class="title"><a name="id2668578"></a>Future Plans</h3></div></div></div><p>
661             In the future, we intend to offer "companion boards" for the rocket that will
662             plug in to TeleMetrum to collect additional data, provide more pyro channels,
663             and so forth.  A reference design for a companion board will be documented
664             soon, and will be compatible with open source Arduino programming tools.
665           </p><p>
666             We are also working on the design of a hand-held ground terminal that will
667             allow monitoring the rocket's status, collecting data during flight, and
668             logging data after flight without the need for a notebook computer on the
669             flight line.  Particularly since it is so difficult to read most notebook
670             screens in direct sunlight, we think this will be a great thing to have.
671           </p><p>
672             Because all of our work is open, both the hardware designs and the software,
673             if you have some great idea for an addition to the current Altus Metrum family,
674             feel free to dive in and help!  Or let us know what you'd like to see that 
675             we aren't already working on, and maybe we'll get excited about it too... 
676           </p></div></div><div class="section" title="How GPS Works"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2653941"></a>
677           How GPS Works
678         </h2></div></div></div><p>
679           Placeholder.
680         </p></div></div></div></body></html>