update docs
[web/altusmetrum] / AltOS / doc / altusmetrum.html
1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>The Altus Metrum System</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="The Altus Metrum System"><div class="titlepage"><div><div><h1 class="title"><a name="id2285355"></a>The Altus Metrum System</h1></div><div><h2 class="subtitle">An Owner's Manual for TeleMetrum and TeleDongle Devices</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><div class="author"><h3 class="author"><span class="firstname">Bob</span> <span class="surname">Finch</span></h3></div></div><div><div class="author"><h3 class="author"><span class="firstname">Anthony</span> <span class="surname">Towns</span></h3></div></div><div><p class="copyright">Copyright © 2011 Bdale Garbee and Keith Packard</p></div><div><div class="legalnotice" title="Legal Notice"><a name="id2560854"></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.9.2</td><td align="left">19 March 2011</td></tr><tr><td align="left" colspan="2">
8           Updated for software version 0.9.2.  This version has minor
9           updates to the AltosUI code to fix graphing on Mac OS X and
10           make flight data download more reliable. It is otherwise
11           completely compatible with version 0.9.
12         </td></tr><tr><td align="left">Revision 0.9</td><td align="left">18 January 2011</td></tr><tr><td align="left" colspan="2">
13           Updated for software version 0.9.  Note that 0.9 represents a
14           telemetry format change, meaning both ends of a link (TeleMetrum and
15           TeleDongle) must be updated or communications will fail.
16         </td></tr></table></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.8</td><td align="left">24 November 2010</td></tr><tr><td align="left" colspan="2">Updated for software version 0.8 </td></tr></table></div></div></div><hr></div><div class="acknowledgements" title="Acknowledgements"><div class="titlepage"><div><div><h2 class="title"><a name="id2561425"></a>Acknowledgements</h2></div></div></div>
17     <p>
18       Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing "The
19       Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
20       Kit" which has turned into the Getting Started chapter in this
21       book. Bob was one of our first customers for a production
22       TeleMetrum, and the enthusiasm that led to his contribution of
23       this section is immensely gratifying and highy appreciated!
24     </p>
25     <p>
26       And thanks to Anthony (AJ) Towns for contributing the
27       AltosUI graphing and site map code and documentation. Free
28       software means that our customers and friends can become our
29       collaborators, and we certainly appreciate this level of
30       contribution.
31     </p>
32     <p>
33       Have fun using these products, and we hope to meet all of you
34       out on the rocket flight line somewhere.
35       </p><div class="literallayout"><p><br>
36 Bdale Garbee, KB0G<br>
37 NAR #87103, TRA #12201<br>
38 <br>
39 Keith Packard, KD7SQG<br>
40 NAR #88757, TRA #12200<br>
41       </p></div><p>
42     </p>
43   </div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="#id2529908">1. Introduction and Overview</a></span></dt><dt><span class="chapter"><a href="#id2529949">2. Getting Started</a></span></dt><dd><dl><dt><span class="section"><a href="#id2568943">FAQ</a></span></dt></dl></dd><dt><span class="chapter"><a href="#id2556049">3. Specifications</a></span></dt><dt><span class="chapter"><a href="#id2583902">4. Handling Precautions</a></span></dt><dt><span class="chapter"><a href="#id2556280">5. Hardware Overview</a></span></dt><dt><span class="chapter"><a href="#id2562146">6. System Operation</a></span></dt><dd><dl><dt><span class="section"><a href="#id2565293">Firmware Modes </a></span></dt><dt><span class="section"><a href="#id2567005">GPS </a></span></dt><dt><span class="section"><a href="#id2581409">Ground Testing </a></span></dt><dt><span class="section"><a href="#id2581407">Radio Link </a></span></dt><dt><span class="section"><a href="#id2552127">Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#id2572399">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2563312">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2581119">Main Deployment Altitude</a></span></dt></dl></dd><dt><span class="section"><a href="#id2559748">Calibration</a></span></dt><dd><dl><dt><span class="section"><a href="#id2583470">Radio Frequency</a></span></dt><dt><span class="section"><a href="#id2573580">Accelerometer</a></span></dt></dl></dd><dt><span class="section"><a href="#id2581818">Updating Device Firmware</a></span></dt><dd><dl><dt><span class="section"><a href="#id2554717">Updating TeleMetrum Firmware</a></span></dt><dt><span class="section"><a href="#id2564109">Updating TeleDongle Firmware</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#id2562062">7. AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#id2578432">Packet Command Mode</a></span></dt><dt><span class="section"><a href="#id2572301">Monitor Flight</a></span></dt><dd><dl><dt><span class="section"><a href="#id2554918">Launch Pad</a></span></dt><dt><span class="section"><a href="#id2574995">Ascent</a></span></dt><dt><span class="section"><a href="#id2576209">Descent</a></span></dt><dt><span class="section"><a href="#id2561512">Landed</a></span></dt><dt><span class="section"><a href="#id2587026">Site Map</a></span></dt></dl></dd><dt><span class="section"><a href="#id2576446">Save Flight Data</a></span></dt><dt><span class="section"><a href="#id2586529">Replay Flight</a></span></dt><dt><span class="section"><a href="#id2573351">Graph Data</a></span></dt><dt><span class="section"><a href="#id2568352">Export Data</a></span></dt><dd><dl><dt><span class="section"><a href="#id2575553">Comma Separated Value Format</a></span></dt><dt><span class="section"><a href="#id2579115">Keyhole Markup Language (for Google Earth)</a></span></dt></dl></dd><dt><span class="section"><a href="#id2570375">Configure TeleMetrum</a></span></dt><dd><dl><dt><span class="section"><a href="#id2559233">Main Deploy Altitude</a></span></dt><dt><span class="section"><a href="#id2552914">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2582365">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2563940">Radio Calibration</a></span></dt><dt><span class="section"><a href="#id2561819">Callsign</a></span></dt><dt><span class="section"><a href="#id2572471">Maximum Flight Log Size</a></span></dt></dl></dd><dt><span class="section"><a href="#id2564177">Configure AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#id2575461">Voice Settings</a></span></dt><dt><span class="section"><a href="#id2573515">Log Directory</a></span></dt><dt><span class="section"><a href="#id2565097">Callsign</a></span></dt><dt><span class="section"><a href="#id2546395">Serial Debug</a></span></dt></dl></dd><dt><span class="section"><a href="#id2575721">Flash Image</a></span></dt><dt><span class="section"><a href="#id2576287">Fire Igniter</a></span></dt></dl></dd><dt><span class="chapter"><a href="#id2570538">8. Using Altus Metrum Products</a></span></dt><dd><dl><dt><span class="section"><a href="#id2576134">Being Legal</a></span></dt><dt><span class="section"><a href="#id2573850">In the Rocket</a></span></dt><dt><span class="section"><a href="#id2572694">On the Ground</a></span></dt><dt><span class="section"><a href="#id2579324">Data Analysis</a></span></dt><dt><span class="section"><a href="#id2585899">Future Plans</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="id2529908"></a>Chapter 1. Introduction and Overview</h2></div></div></div><p>
44       Welcome to the Altus Metrum community!  Our circuits and software reflect
45       our passion for both hobby rocketry and Free Software.  We hope their
46       capabilities and performance will delight you in every way, but by
47       releasing all of our hardware and software designs under open licenses,
48       we also hope to empower you to take as active a role in our collective
49       future as you wish!
50     </p><p>
51       The focal point of our community is TeleMetrum, a dual deploy altimeter
52       with fully integrated GPS and radio telemetry as standard features, and
53       a "companion interface" that will support optional capabilities in the
54       future.
55     </p><p>
56       Complementing TeleMetrum is TeleDongle, a USB to RF interface for
57       communicating with TeleMetrum.  Combined with your choice of antenna and
58       notebook computer, TeleDongle and our associated user interface software
59       form a complete ground station capable of logging and displaying in-flight
60       telemetry, aiding rocket recovery, then processing and archiving flight
61       data for analysis and review.
62     </p><p>
63       More products will be added to the Altus Metrum family over time, and
64       we currently envision that this will be a single, comprehensive manual
65       for the entire product family.
66     </p></div><div class="chapter" title="Chapter 2. Getting Started"><div class="titlepage"><div><div><h2 class="title"><a name="id2529949"></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="#id2568943">FAQ</a></span></dt></dl></div><p>
67       The first thing to do after you check the inventory of parts in your
68       "starter kit" is to charge the battery by plugging it into the
69       corresponding socket of the TeleMetrum and then using the USB A to
70       mini B
71       cable to plug the Telemetrum into your computer's USB socket. The
72       TeleMetrum circuitry will charge the battery whenever it is plugged
73       in, because the TeleMetrum's on-off switch does NOT control the
74       charging circuitry.  When the GPS chip is initially searching for
75       satellites, TeleMetrum will consume more current than it can pull
76       from the usb port, so the battery must be attached in order to get
77       satellite lock.  Once GPS is locked, the current consumption goes back
78       down enough to enable charging while
79       running. So it's a good idea to fully charge the battery as your
80       first item of business so there is no issue getting and maintaining
81       satellite lock.  The yellow charge indicator led will go out when the
82       battery is nearly full and the charger goes to trickle charge. It
83       can take several hours to fully recharge a deeply discharged battery.
84     </p><p>
85       The other active device in the starter kit is the TeleDongle USB to
86       RF interface.  If you plug it in to your Mac or Linux computer it should
87       "just work", showing up as a serial port device.  Windows systems need
88       driver information that is part of the AltOS download to know that the
89       existing USB modem driver will work.  If you are using Linux and are
90       having problems, try moving to a fresher kernel (2.6.33 or newer), as
91       the USB serial driver had ugly bugs in some earlier versions.
92     </p><p>
93       Next you should obtain and install the AltOS utilities.  These include
94       the AltosUI ground station program, current firmware images for
95       TeleMetrum and TeleDongle, and a number of standalone utilities that
96       are rarely needed.  Pre-built binary packages are available for Debian
97       Linux, Microsoft Windows, and recent MacOSX versions.  Full sourcecode
98       and build instructions for some other Linux variants are also available.
99       The latest version may always be downloaded from
100       <a class="ulink" href="http://altusmetrum.org/AltOS" target="_top">http://altusmetrum.org/AltOS</a>.
101     </p><p>
102       Both Telemetrum and TeleDongle can be directly communicated
103       with using USB ports. The first thing you should try after getting
104       both units plugged into to your computer's usb port(s) is to run
105       'ao-list' from a terminal-window to see what port-device-name each
106       device has been assigned by the operating system.
107       You will need this information to access the devices via their
108       respective on-board firmware and data using other command line
109       programs in the AltOS software suite.
110     </p><p>
111       To access the device's firmware for configuration you need a terminal
112       program such as you would use to talk to a modem.  The software
113       authors prefer using the program 'cu' which comes from the UUCP package
114       on most Unix-like systems such as Linux.  An example command line for
115       cu might be 'cu -l /dev/ttyACM0', substituting the correct number
116       indicated from running the
117       ao-list program.  Another reasonable terminal program for Linux is
118       'cutecom'.  The default 'escape'
119       character used by CU (i.e. the character you use to
120       issue commands to cu itself instead of sending the command as input
121       to the connected device) is a '~'. You will need this for use in
122       only two different ways during normal operations. First is to exit
123       the program by sending a '~.' which is called a 'escape-disconnect'
124       and allows you to close-out from 'cu'. The
125       second use will be outlined later.
126     </p><p>
127       Both TeleMetrum and TeleDongle share the concept of a two level
128       command set in their firmware.
129       The first layer has several single letter commands. Once
130       you are using 'cu' (or 'cutecom') sending (typing) a '?'
131       returns a full list of these
132       commands. The second level are configuration sub-commands accessed
133       using the 'c' command, for
134       instance typing 'c?' will give you this second level of commands
135       (all of which require the
136       letter 'c' to access).  Please note that most configuration options
137       are stored only in DataFlash memory, and only TeleMetrum has this
138       memory to save the various values entered like the channel number
139       and your callsign when powered off.  TeleDongle requires that you
140       set these each time you plug it in, which ao-view can help with.
141     </p><p>
142       Try setting these config ('c' or second level menu) values.  A good
143       place to start is by setting your call sign.  By default, the boards
144       use 'N0CALL' which is cute, but not exactly legal!
145       Spend a few minutes getting comfortable with the units, their
146       firmware, and 'cu' (or possibly 'cutecom').
147       For instance, try to send
148       (type) a 'c r 2' and verify the channel change by sending a 'c s'.
149       Verify you can connect and disconnect from the units while in your
150       terminal program by sending the escape-disconnect mentioned above.
151     </p><p>
152       Note that the 'reboot' command, which is very useful on TeleMetrum,
153       will likely just cause problems with the dongle.  The *correct* way
154       to reset the dongle is just to unplug and re-plug it.
155     </p><p>
156       A fun thing to do at the launch site and something you can do while
157       learning how to use these units is to play with the rf-link access
158       of the TeleMetrum from the TeleDongle.  Be aware that you *must* create
159       some physical separation between the devices, otherwise the link will
160       not function due to signal overload in the receivers in each device.
161     </p><p>
162       Now might be a good time to take a break and read the rest of this
163       manual, particularly about the two "modes" that the TeleMetrum
164       can be placed in and how the position of the TeleMetrum when booting
165       up will determine whether the unit is in "pad" or "idle" mode.
166     </p><p>
167       You can access a TeleMetrum in idle mode from the Teledongle's USB
168       connection using the rf link
169       by issuing a 'p' command to the TeleDongle. Practice connecting and
170       disconnecting ('~~' while using 'cu') from the TeleMetrum.  If
171       you cannot escape out of the "p" command, (by using a '~~' when in
172       CU) then it is likely that your kernel has issues.  Try a newer version.
173     </p><p>
174       Using this rf link allows you to configure the TeleMetrum, test
175       fire e-matches and igniters from the flight line, check pyro-match
176       continuity and so forth. You can leave the unit turned on while it
177       is in 'idle mode' and then place the
178       rocket vertically on the launch pad, walk away and then issue a
179       reboot command.  The TeleMetrum will reboot and start sending data
180       having changed to the "pad" mode. If the TeleDongle is not receiving
181       this data, you can disconnect 'cu' from the Teledongle using the
182       procedures mentioned above and THEN connect to the TeleDongle from
183       inside 'ao-view'. If this doesn't work, disconnect from the
184       TeleDongle, unplug it, and try again after plugging it back in.
185     </p><p>
186       Eventually the GPS will find enough satellites, lock in on them,
187       and 'ao-view' will both auditorially announce and visually indicate
188       that GPS is ready.
189       Now you can launch knowing that you have a good data path and
190       good satellite lock for flight data and recovery.  Remember
191       you MUST tell ao-view to connect to the TeleDongle explicitly in
192       order for ao-view to be able to receive data.
193     </p><p>
194       Both RDF (radio direction finding) tones from the TeleMetrum and
195       GPS trekking data are available and together are very useful in
196       locating the rocket once it has landed. (The last good GPS data
197       received before touch-down will be on the data screen of 'ao-view'.)
198     </p><p>
199       Once you have recovered the rocket you can download the eeprom
200       contents using either 'ao-dumplog' (or possibly 'ao-eeprom'), over
201       either a USB cable or over the radio link using TeleDongle.
202       And by following the man page for 'ao-postflight' you can create
203       various data output reports, graphs, and even kml data to see the
204       flight trajectory in google-earth. (Moving the viewing angle making
205       sure to connect the yellow lines while in google-earth is the proper
206       technique.)
207     </p><p>
208       As for ao-view.... some things are in the menu but don't do anything
209       very useful.  The developers have stopped working on ao-view to focus
210       on a new, cross-platform ground station program.  So ao-view may or
211       may not be updated in the future.  Mostly you just use
212       the Log and Device menus.  It has a wonderful display of the incoming
213       flight data and I am sure you will enjoy what it has to say to you
214       once you enable the voice output!
215     </p><div class="section" title="FAQ"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2568943"></a>FAQ</h2></div></div></div><p>
216         The altimeter (TeleMetrum) seems to shut off when disconnected from the
217         computer.  Make sure the battery is adequately charged.  Remember the
218         unit will pull more power than the USB port can deliver before the
219         GPS enters "locked" mode.  The battery charges best when TeleMetrum
220         is turned off.
221       </p><p>
222         It's impossible to stop the TeleDongle when it's in "p" mode, I have
223         to unplug the USB cable?  Make sure you have tried to "escape out" of
224         this mode.  If this doesn't work the reboot procedure for the
225         TeleDongle *is* to simply unplug it. 'cu' however will retain it's
226         outgoing buffer IF your "escape out" ('~~') does not work.
227         At this point using either 'ao-view' (or possibly
228         'cutemon') instead of 'cu' will 'clear' the issue and allow renewed
229         communication.
230       </p><p>
231         The amber LED (on the TeleMetrum/altimeter) lights up when both
232         battery and USB are connected. Does this mean it's charging?
233         Yes, the yellow LED indicates the charging at the 'regular' rate.
234         If the led is out but the unit is still plugged into a USB port,
235         then the battery is being charged at a 'trickle' rate.
236       </p><p>
237         There are no "dit-dah-dah-dit" sound like the manual mentions?
238         That's the "pad" mode.  Weak batteries might be the problem.
239         It is also possible that the unit is horizontal and the output
240         is instead a "dit-dit" meaning 'idle'.
241       </p><p>
242         It's unclear how to use 'ao-view' and other programs when 'cu'
243         is running. You cannot have more than one program connected to
244         the TeleDongle at one time without apparent data loss as the
245         incoming data will not make it to both programs intact.
246         Disconnect whatever programs aren't currently being used.
247       </p><p>
248         How do I save flight data?
249         Live telemetry is written to file(s) whenever 'ao-view' is connected
250         to the TeleDongle.  The file area defaults to ~/altos
251         but is easily changed using the menus in 'ao-view'. The files that
252         are written end in '.telem'. The after-flight
253         data-dumped files will end in .eeprom and represent continuous data
254         unlike the rf-linked .telem files that are subject to the
255         turnarounds/data-packaging time slots in the half-duplex rf data path.
256         See the above instructions on what and how to save the eeprom stored
257         data after physically retrieving your TeleMetrum.  Make sure to save
258         the on-board data after each flight, as the current firmware will
259         over-write any previous flight data during a new flight.
260       </p></div></div><div class="chapter" title="Chapter 3. Specifications"><div class="titlepage"><div><div><h2 class="title"><a name="id2556049"></a>Chapter 3. Specifications</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
261           Recording altimeter for model rocketry.
262         </p></li><li class="listitem"><p>
263           Supports dual deployment (can fire 2 ejection charges).
264         </p></li><li class="listitem"><p>
265           70cm ham-band transceiver for telemetry downlink.
266         </p></li><li class="listitem"><p>
267           Barometric pressure sensor good to 45k feet MSL.
268         </p></li><li class="listitem"><p>
269           1-axis high-g accelerometer for motor characterization, capable of
270           +/- 50g using default part.
271         </p></li><li class="listitem"><p>
272           On-board, integrated GPS receiver with 5hz update rate capability.
273         </p></li><li class="listitem"><p>
274           On-board 1 megabyte non-volatile memory for flight data storage.
275         </p></li><li class="listitem"><p>
276           USB interface for battery charging, configuration, and data recovery.
277         </p></li><li class="listitem"><p>
278           Fully integrated support for LiPo rechargeable batteries.
279         </p></li><li class="listitem"><p>
280           Uses LiPo to fire e-matches, can be modiied to support 
281           optional separate pyro battery if needed.
282         </p></li><li class="listitem"><p>
283           2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube.
284         </p></li></ul></div></div><div class="chapter" title="Chapter 4. Handling Precautions"><div class="titlepage"><div><div><h2 class="title"><a name="id2583902"></a>Chapter 4. Handling Precautions</h2></div></div></div><p>
285       TeleMetrum is a sophisticated electronic device.  When handled gently and
286       properly installed in an airframe, it will deliver impressive results.
287       However, like all electronic devices, there are some precautions you
288       must take.
289     </p><p>
290       The Lithium Polymer rechargeable batteries used with TeleMetrum have an
291       extraordinary power density.  This is great because we can fly with
292       much less battery mass than if we used alkaline batteries or previous
293       generation rechargeable batteries... but if they are punctured
294       or their leads are allowed to short, they can and will release their
295       energy very rapidly!
296       Thus we recommend that you take some care when handling our batteries
297       and consider giving them some extra protection in your airframe.  We
298       often wrap them in suitable scraps of closed-cell packing foam before
299       strapping them down, for example.
300     </p><p>
301       The TeleMetrum barometric sensor is sensitive to sunlight.  In normal
302       mounting situations, it and all of the other surface mount components
303       are "down" towards whatever the underlying mounting surface is, so
304       this is not normally a problem.  Please consider this, though, when
305       designing an installation, for example, in a 29mm airframe with a
306       see-through plastic payload bay.
307     </p><p>
308       The TeleMetrum barometric sensor sampling port must be able to
309       "breathe",
310       both by not being covered by foam or tape or other materials that might
311       directly block the hole on the top of the sensor, but also by having a
312       suitable static vent to outside air.
313     </p><p>
314       As with all other rocketry electronics, TeleMetrum must be protected
315       from exposure to corrosive motor exhaust and ejection charge gasses.
316     </p></div><div class="chapter" title="Chapter 5. Hardware Overview"><div class="titlepage"><div><div><h2 class="title"><a name="id2556280"></a>Chapter 5. Hardware Overview</h2></div></div></div><p>
317       TeleMetrum is a 1 inch by 2.75 inch circuit board.  It was designed to
318       fit inside coupler for 29mm airframe tubing, but using it in a tube that
319       small in diameter may require some creativity in mounting and wiring
320       to succeed!  The default 1/4
321       wave UHF wire antenna attached to the center of the nose-cone end of
322       the board is about 7 inches long, and wiring for a power switch and
323       the e-matches for apogee and main ejection charges depart from the
324       fin can end of the board.  Given all this, an ideal "simple" avionics
325       bay for TeleMetrum should have at least 10 inches of interior length.
326     </p><p>
327       A typical TeleMetrum installation using the on-board GPS antenna and
328       default wire UHF antenna involves attaching only a suitable
329       Lithium Polymer battery, a single pole switch for power on/off, and
330       two pairs of wires connecting e-matches for the apogee and main ejection
331       charges.
332     </p><p>
333       By default, we use the unregulated output of the LiPo battery directly
334       to fire ejection charges.  This works marvelously with standard
335       low-current e-matches like the J-Tek from MJG Technologies, and with
336       Quest Q2G2 igniters.  However, if you
337       want or need to use a separate pyro battery, the board can be factory
338       modified to do so.  This involves cutting two traces and adding a jumper
339       in a densely populated part of the board on TeleMetrum v1.0 and v1.1,
340       along with installation of a pyro battery connector at location B2.
341     </p><p>
342       We offer two choices of pyro and power switch connector, or you can
343       choose neither and solder wires directly to the board.  All three choices
344       are reasonable depending on the constraints of your airframe.  Our
345       favorite option when there is sufficient room above the board is to use
346       the Tyco pin header with polarization and locking.  If you choose this
347       option, you crimp individual wires for the power switch and e-matches
348       into a mating connector, and installing and removing the TeleMetrum
349       board from an airframe is as easy as plugging or unplugging two
350       connectors.  If the airframe will not support this much height or if
351       you want to be able to directly attach e-match leads to the board, we
352       offer a screw terminal block.  This is very similar to what most other
353       altimeter vendors provide and so may be the most familiar option.
354       You'll need a very small straight blade screwdriver to connect
355       and disconnect the board in this case, such as you might find in a
356       jeweler's screwdriver set.  Finally, you can forego both options and
357       solder wires directly to the board, which may be the best choice for
358       minimum diameter and/or minimum mass designs.
359     </p><p>
360       For most airframes, the integrated GPS antenna and wire UHF antenna are
361       a great combination.  However, if you are installing in a carbon-fiber
362       electronics bay which is opaque to RF signals, you may need to use
363       off-board external antennas instead.  In this case, you can order
364       TeleMetrum with an SMA connector for the UHF antenna connection, and
365       you can unplug the integrated GPS antenna and select an appropriate
366       off-board GPS antenna with cable terminating in a U.FL connector.
367     </p></div><div class="chapter" title="Chapter 6. System Operation"><div class="titlepage"><div><div><h2 class="title"><a name="id2562146"></a>Chapter 6. System Operation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#id2565293">Firmware Modes </a></span></dt><dt><span class="section"><a href="#id2567005">GPS </a></span></dt><dt><span class="section"><a href="#id2581409">Ground Testing </a></span></dt><dt><span class="section"><a href="#id2581407">Radio Link </a></span></dt><dt><span class="section"><a href="#id2552127">Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#id2572399">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2563312">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2581119">Main Deployment Altitude</a></span></dt></dl></dd><dt><span class="section"><a href="#id2559748">Calibration</a></span></dt><dd><dl><dt><span class="section"><a href="#id2583470">Radio Frequency</a></span></dt><dt><span class="section"><a href="#id2573580">Accelerometer</a></span></dt></dl></dd><dt><span class="section"><a href="#id2581818">Updating Device Firmware</a></span></dt><dd><dl><dt><span class="section"><a href="#id2554717">Updating TeleMetrum Firmware</a></span></dt><dt><span class="section"><a href="#id2564109">Updating TeleDongle Firmware</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="id2565293"></a>Firmware Modes </h2></div></div></div><p>
368         The AltOS firmware build for TeleMetrum has two fundamental modes,
369         "idle" and "flight".  Which of these modes the firmware operates in
370         is determined by the orientation of the rocket (well, actually the
371         board, of course...) at the time power is switched on.  If the rocket
372         is "nose up", then TeleMetrum assumes it's on a rail or rod being
373         prepared for launch, so the firmware chooses flight mode.  However,
374         if the rocket is more or less horizontal, the firmware instead enters
375         idle mode.
376       </p><p>
377         At power on, you will hear three beeps
378         ("S" in Morse code for startup) and then a pause while
379         TeleMetrum completes initialization and self tests, and decides which
380         mode to enter next.
381       </p><p>
382         In flight or "pad" mode, TeleMetrum turns on the GPS system,
383         engages the flight
384         state machine, goes into transmit-only mode on the RF link sending
385         telemetry, and waits for launch to be detected.  Flight mode is
386         indicated by an audible "di-dah-dah-dit" ("P" for pad) on the
387         beeper, followed by
388         beeps indicating the state of the pyrotechnic igniter continuity.
389         One beep indicates apogee continuity, two beeps indicate
390         main continuity, three beeps indicate both apogee and main continuity,
391         and one longer "brap" sound indicates no continuity.  For a dual
392         deploy flight, make sure you're getting three beeps before launching!
393         For apogee-only or motor eject flights, do what makes sense.
394       </p><p>
395         In idle mode, you will hear an audible "di-dit" ("I" for idle), and
396         the normal flight state machine is disengaged, thus
397         no ejection charges will fire.  TeleMetrum also listens on the RF
398         link when in idle mode for packet mode requests sent from TeleDongle.
399         Commands can be issued to a TeleMetrum in idle mode over either
400         USB or the RF link equivalently.
401         Idle mode is useful for configuring TeleMetrum, for extracting data
402         from the on-board storage chip after flight, and for ground testing
403         pyro charges.
404       </p><p>
405         One "neat trick" of particular value when TeleMetrum is used with very
406         large airframes, is that you can power the board up while the rocket
407         is horizontal, such that it comes up in idle mode.  Then you can
408         raise the airframe to launch position, use a TeleDongle to open
409         a packet connection, and issue a 'reset' command which will cause
410         TeleMetrum to reboot, realize it's now nose-up, and thus choose
411         flight mode.  This is much safer than standing on the top step of a
412         rickety step-ladder or hanging off the side of a launch tower with
413         a screw-driver trying to turn on your avionics before installing
414         igniters!
415       </p></div><div class="section" title="GPS"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2567005"></a>GPS </h2></div></div></div><p>
416         TeleMetrum includes a complete GPS receiver.  See a later section for
417         a brief explanation of how GPS works that will help you understand
418         the information in the telemetry stream.  The bottom line is that
419         the TeleMetrum GPS receiver needs to lock onto at least four
420         satellites to obtain a solid 3 dimensional position fix and know
421         what time it is!
422       </p><p>
423         TeleMetrum provides backup power to the GPS chip any time a LiPo
424         battery is connected.  This allows the receiver to "warm start" on
425         the launch rail much faster than if every power-on were a "cold start"
426         for the GPS receiver.  In typical operations, powering up TeleMetrum
427         on the flight line in idle mode while performing final airframe
428         preparation will be sufficient to allow the GPS receiver to cold
429         start and acquire lock.  Then the board can be powered down during
430         RSO review and installation on a launch rod or rail.  When the board
431         is turned back on, the GPS system should lock very quickly, typically
432         long before igniter installation and return to the flight line are
433         complete.
434       </p></div><div class="section" title="Ground Testing"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2581409"></a>Ground Testing </h2></div></div></div><p>
435         An important aspect of preparing a rocket using electronic deployment
436         for flight is ground testing the recovery system.  Thanks
437         to the bi-directional RF link central to the Altus Metrum system,
438         this can be accomplished in a TeleMetrum-equipped rocket without as
439         much work as you may be accustomed to with other systems.  It can
440         even be fun!
441       </p><p>
442         Just prep the rocket for flight, then power up TeleMetrum while the
443         airframe is horizontal.  This will cause the firmware to go into
444         "idle" mode, in which the normal flight state machine is disabled and
445         charges will not fire without manual command.  Then, establish an
446         RF packet connection from a TeleDongle-equipped computer using the
447         P command from a safe distance.  You can now command TeleMetrum to
448         fire the apogee or main charges to complete your testing.
449       </p><p>
450         In order to reduce the chance of accidental firing of pyrotechnic
451         charges, the command to fire a charge is intentionally somewhat
452         difficult to type, and the built-in help is slightly cryptic to
453         prevent accidental echoing of characters from the help text back at
454         the board from firing a charge.  The command to fire the apogee
455         drogue charge is 'i DoIt drogue' and the command to fire the main
456         charge is 'i DoIt main'.
457       </p></div><div class="section" title="Radio Link"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2581407"></a>Radio Link </h2></div></div></div><p>
458         The chip our boards are based on incorporates an RF transceiver, but
459         it's not a full duplex system... each end can only be transmitting or
460         receiving at any given moment.  So we had to decide how to manage the
461         link.
462       </p><p>
463         By design, TeleMetrum firmware listens for an RF connection when
464         it's in "idle mode" (turned on while the rocket is horizontal), which
465         allows us to use the RF link to configure the rocket, do things like
466         ejection tests, and extract data after a flight without having to
467         crack open the airframe.  However, when the board is in "flight
468         mode" (turned on when the rocket is vertical) the TeleMetrum only
469         transmits and doesn't listen at all.  That's because we want to put
470         ultimate priority on event detection and getting telemetry out of
471         the rocket and out over
472         the RF link in case the rocket crashes and we aren't able to extract
473         data later...
474       </p><p>
475         We don't use a 'normal packet radio' mode because they're just too
476         inefficient.  The GFSK modulation we use is just FSK with the
477         baseband pulses passed through a
478         Gaussian filter before they go into the modulator to limit the
479         transmitted bandwidth.  When combined with the hardware forward error
480         correction support in the cc1111 chip, this allows us to have a very
481         robust 38.4 kilobit data link with only 10 milliwatts of transmit power,
482         a whip antenna in the rocket, and a hand-held Yagi on the ground.  We've
483         had flights to above 21k feet AGL with good reception, and calculations
484         suggest we should be good to well over 40k feet AGL with a 5-element yagi on
485         the ground.  We hope to fly boards to higher altitudes soon, and would
486         of course appreciate customer feedback on performance in higher
487         altitude flights!
488       </p></div><div class="section" title="Configurable Parameters"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2552127"></a>Configurable Parameters</h2></div></div></div><p>
489         Configuring a TeleMetrum board for flight is very simple.  Because we
490         have both acceleration and pressure sensors, there is no need to set
491         a "mach delay", for example.  The few configurable parameters can all
492         be set using a simple terminal program over the USB port or RF link
493         via TeleDongle.
494       </p><div class="section" title="Radio Channel"><div class="titlepage"><div><div><h3 class="title"><a name="id2572399"></a>Radio Channel</h3></div></div></div><p>
495           Our firmware supports 10 channels.  The default channel 0 corresponds
496           to a center frequency of 434.550 Mhz, and channels are spaced every
497           100 khz.  Thus, channel 1 is 434.650 Mhz, and channel 9 is 435.550 Mhz.
498           At any given launch, we highly recommend coordinating who will use
499           each channel and when to avoid interference.  And of course, both
500           TeleMetrum and TeleDongle must be configured to the same channel to
501           successfully communicate with each other.
502         </p><p>
503           To set the radio channel, use the 'c r' command, like 'c r 3' to set
504           channel 3.
505           As with all 'c' sub-commands, follow this with a 'c w' to write the
506           change to the parameter block in the on-board DataFlash chip on
507           your TeleMetrum board if you want the change to stay in place across reboots.
508         </p></div><div class="section" title="Apogee Delay"><div class="titlepage"><div><div><h3 class="title"><a name="id2563312"></a>Apogee Delay</h3></div></div></div><p>
509           Apogee delay is the number of seconds after TeleMetrum detects flight
510           apogee that the drogue charge should be fired.  In most cases, this
511           should be left at the default of 0.  However, if you are flying
512           redundant electronics such as for an L3 certification, you may wish
513           to set one of your altimeters to a positive delay so that both
514           primary and backup pyrotechnic charges do not fire simultaneously.
515         </p><p>
516           To set the apogee delay, use the 'c d' command.
517           As with all 'c' sub-commands, follow this with a 'c w' to write the
518           change to the parameter block in the on-board DataFlash chip.
519         </p><p>
520           Please note that the TeleMetrum apogee detection algorithm always
521           fires a fraction of a second *after* apogee.  If you are also flying
522           an altimeter like the PerfectFlite MAWD, which only supports selecting
523           0 or 1 seconds of apogee delay, you may wish to set the MAWD to 0
524           seconds delay and set the TeleMetrum to fire your backup 2 or 3
525           seconds later to avoid any chance of both charges firing
526           simultaneously.  We've flown several airframes this way quite happily,
527           including Keith's successful L3 cert.
528         </p></div><div class="section" title="Main Deployment Altitude"><div class="titlepage"><div><div><h3 class="title"><a name="id2581119"></a>Main Deployment Altitude</h3></div></div></div><p>
529           By default, TeleMetrum will fire the main deployment charge at an
530           elevation of 250 meters (about 820 feet) above ground.  We think this
531           is a good elevation for most airframes, but feel free to change this
532           to suit.  In particular, if you are flying two altimeters, you may
533           wish to set the
534           deployment elevation for the backup altimeter to be something lower
535           than the primary so that both pyrotechnic charges don't fire
536           simultaneously.
537         </p><p>
538           To set the main deployment altitude, use the 'c m' command.
539           As with all 'c' sub-commands, follow this with a 'c w' to write the
540           change to the parameter block in the on-board DataFlash chip.
541         </p></div></div><div class="section" title="Calibration"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2559748"></a>Calibration</h2></div></div></div><p>
542         There are only two calibrations required for a TeleMetrum board, and
543         only one for TeleDongle.
544       </p><div class="section" title="Radio Frequency"><div class="titlepage"><div><div><h3 class="title"><a name="id2583470"></a>Radio Frequency</h3></div></div></div><p>
545           The radio frequency is synthesized from a clock based on the 48 Mhz
546           crystal on the board.  The actual frequency of this oscillator must be
547           measured to generate a calibration constant.  While our GFSK modulation
548           bandwidth is wide enough to allow boards to communicate even when
549           their oscillators are not on exactly the same frequency, performance
550           is best when they are closely matched.
551           Radio frequency calibration requires a calibrated frequency counter.
552           Fortunately, once set, the variation in frequency due to aging and
553           temperature changes is small enough that re-calibration by customers
554           should generally not be required.
555         </p><p>
556           To calibrate the radio frequency, connect the UHF antenna port to a
557           frequency counter, set the board to channel 0, and use the 'C'
558           command to generate a CW carrier.  Wait for the transmitter temperature
559           to stabilize and the frequency to settle down.
560           Then, divide 434.550 Mhz by the
561           measured frequency and multiply by the current radio cal value show
562           in the 'c s' command.  For an unprogrammed board, the default value
563           is 1186611.  Take the resulting integer and program it using the 'c f'
564           command.  Testing with the 'C' command again should show a carrier
565           within a few tens of Hertz of the intended frequency.
566           As with all 'c' sub-commands, follow this with a 'c w' to write the
567           change to the parameter block in the on-board DataFlash chip.
568         </p></div><div class="section" title="Accelerometer"><div class="titlepage"><div><div><h3 class="title"><a name="id2573580"></a>Accelerometer</h3></div></div></div><p>
569           The accelerometer we use has its own 5 volt power supply and
570           the output must be passed through a resistive voltage divider to match
571           the input of our 3.3 volt ADC.  This means that unlike the barometric
572           sensor, the output of the acceleration sensor is not ratiometric to
573           the ADC converter, and calibration is required.  We also support the
574           use of any of several accelerometers from a Freescale family that
575           includes at least +/- 40g, 50g, 100g, and 200g parts.  Using gravity,
576           a simple 2-point calibration yields acceptable results capturing both
577           the different sensitivities and ranges of the different accelerometer
578           parts and any variation in power supply voltages or resistor values
579           in the divider network.
580         </p><p>
581           To calibrate the acceleration sensor, use the 'c a 0' command.  You
582           will be prompted to orient the board vertically with the UHF antenna
583           up and press a key, then to orient the board vertically with the
584           UHF antenna down and press a key.
585           As with all 'c' sub-commands, follow this with a 'c w' to write the
586           change to the parameter block in the on-board DataFlash chip.
587         </p><p>
588           The +1g and -1g calibration points are included in each telemetry
589           frame and are part of the header extracted by ao-dumplog after flight.
590           Note that we always store and return raw ADC samples for each
591           sensor... nothing is permanently "lost" or "damaged" if the
592           calibration is poor.
593         </p><p>
594          In the unlikely event an accel cal that goes badly, it is possible
595          that TeleMetrum may always come up in 'pad mode' and as such not be
596          listening to either the USB or radio interfaces.  If that happens,
597          there is a special hook in the firmware to force the board back
598          in to 'idle mode' so you can re-do the cal.  To use this hook, you
599          just need to ground the SPI clock pin at power-on.  This pin is
600          available as pin 2 on the 8-pin companion connector, and pin 1 is
601          ground.  So either carefully install a fine-gauge wire jumper
602          between the two pins closest to the index hole end of the 8-pin
603          connector, or plug in the programming cable to the 8-pin connector
604          and use a small screwdriver or similar to short the two pins closest
605          to the index post on the 4-pin end of the programming cable, and
606          power up the board.  It should come up in 'idle mode' (two beeps).
607         </p></div></div><div class="section" title="Updating Device Firmware"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2581818"></a>Updating Device Firmware</h2></div></div></div><p>
608       The big conceptual thing to realize is that you have to use a
609       TeleDongle as a programmer to update a TeleMetrum, and vice versa.
610       Due to limited memory resources in the cc1111, we don't support
611       programming either unit directly over USB.
612     </p><p>
613       You may wish to begin by ensuring you have current firmware images.
614       These are distributed as part of the AltOS software bundle that
615       also includes the AltosUI ground station program.  Newer ground
616       station versions typically work fine with older firmware versions,
617       so you don't need to update your devices just to try out new
618       software features.  You can always download the most recent
619       version from <a class="ulink" href="http://www.altusmetrum.org/AltOS/" target="_top">http://www.altusmetrum.org/AltOS/</a>.
620     </p><p>
621       We recommend updating TeleMetrum first, before updating TeleDongle.
622     </p><div class="section" title="Updating TeleMetrum Firmware"><div class="titlepage"><div><div><h3 class="title"><a name="id2554717"></a>Updating TeleMetrum Firmware</h3></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
623           Find the 'programming cable' that you got as part of the starter
624           kit, that has a red 8-pin MicroMaTch connector on one end and a
625           red 4-pin MicroMaTch connector on the other end.
626         </li><li class="listitem">
627           Take the 2 screws out of the TeleDongle case to get access
628           to the circuit board.
629         </li><li class="listitem">
630           Plug the 8-pin end of the programming cable to the
631           matching connector on the TeleDongle, and the 4-pin end to the
632           matching connector on the TeleMetrum.
633           Note that each MicroMaTch connector has an alignment pin that
634           goes through a hole in the PC board when you have the cable
635           oriented correctly.
636         </li><li class="listitem">
637           Attach a battery to the TeleMetrum board.
638         </li><li class="listitem">
639           Plug the TeleDongle into your computer's USB port, and power
640           up the TeleMetrum.
641         </li><li class="listitem">
642           Run AltosUI, and select 'Flash Image' from the File menu.
643         </li><li class="listitem">
644           Pick the TeleDongle device from the list, identifying it as the
645           programming device.
646         </li><li class="listitem">
647           Select the image you want put on the TeleMetrum, which should have a
648           name in the form telemetrum-v1.0-0.7.1.ihx.  It should be visible
649         in the default directory, if not you may have to poke around
650         your system to find it.
651         </li><li class="listitem">
652           Make sure the configuration parameters are reasonable
653           looking. If the serial number and/or RF configuration
654           values aren't right, you'll need to change them.
655         </li><li class="listitem">
656           Hit the 'OK' button and the software should proceed to flash
657           the TeleMetrum with new firmware, showing a progress bar.
658         </li><li class="listitem">
659           Confirm that the TeleMetrum board seems to have updated ok, which you
660           can do by plugging in to it over USB and using a terminal program
661           to connect to the board and issue the 'v' command to check
662           the version, etc.
663         </li><li class="listitem">
664           If something goes wrong, give it another try.
665         </li></ol></div></div><div class="section" title="Updating TeleDongle Firmware"><div class="titlepage"><div><div><h3 class="title"><a name="id2564109"></a>Updating TeleDongle Firmware</h3></div></div></div><p>
666         Updating TeleDongle's firmware is just like updating TeleMetrum
667         firmware, but you switch which board is the programmer and which
668         is the programming target.
669         </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
670           Find the 'programming cable' that you got as part of the starter
671           kit, that has a red 8-pin MicroMaTch connector on one end and a
672           red 4-pin MicroMaTch connector on the other end.
673         </li><li class="listitem">
674           Find the USB cable that you got as part of the starter kit, and
675           plug the "mini" end in to the mating connector on TeleMetrum.
676         </li><li class="listitem">
677           Take the 2 screws out of the TeleDongle case to get access
678           to the circuit board.
679         </li><li class="listitem">
680           Plug the 8-pin end of the programming cable to the (latching)
681           matching connector on the TeleMetrum, and the 4-pin end to the
682           matching connector on the TeleDongle.
683           Note that each MicroMaTch connector has an alignment pin that
684           goes through a hole in the PC board when you have the cable
685           oriented correctly.
686         </li><li class="listitem">
687           Attach a battery to the TeleMetrum board.
688         </li><li class="listitem">
689           Plug both TeleMetrum and TeleDongle into your computer's USB
690           ports, and power up the TeleMetrum.
691         </li><li class="listitem">
692           Run AltosUI, and select 'Flash Image' from the File menu.
693         </li><li class="listitem">
694           Pick the TeleMetrum device from the list, identifying it as the
695           programming device.
696         </li><li class="listitem">
697           Select the image you want put on the TeleDongle, which should have a
698           name in the form teledongle-v0.2-0.7.1.ihx.  It should be visible
699         in the default directory, if not you may have to poke around
700         your system to find it.
701         </li><li class="listitem">
702           Make sure the configuration parameters are reasonable
703           looking. If the serial number and/or RF configuration
704           values aren't right, you'll need to change them.  The TeleDongle
705           serial number is on the "bottom" of the circuit board, and can
706           usually be read through the translucent blue plastic case without
707           needing to remove the board from the case.
708         </li><li class="listitem">
709           Hit the 'OK' button and the software should proceed to flash
710           the TeleDongle with new firmware, showing a progress bar.
711         </li><li class="listitem">
712           Confirm that the TeleDongle board seems to have updated ok, which you
713           can do by plugging in to it over USB and using a terminal program
714           to connect to the board and issue the 'v' command to check
715           the version, etc.  Once you're happy, remove the programming cable
716           and put the cover back on the TeleDongle.
717         </li><li class="listitem">
718           If something goes wrong, give it another try.
719         </li></ol></div><p>
720         Be careful removing the programming cable from the locking 8-pin
721         connector on TeleMetrum.  You'll need a fingernail or perhaps a thin
722         screwdriver or knife blade to gently pry the locking ears out
723         slightly to extract the connector.  We used a locking connector on
724         TeleMetrum to help ensure that the cabling to companion boards
725         used in a rocket don't ever come loose accidentally in flight.
726       </p></div></div></div><div class="chapter" title="Chapter 7. AltosUI"><div class="titlepage"><div><div><h2 class="title"><a name="id2562062"></a>Chapter 7. AltosUI</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#id2578432">Packet Command Mode</a></span></dt><dt><span class="section"><a href="#id2572301">Monitor Flight</a></span></dt><dd><dl><dt><span class="section"><a href="#id2554918">Launch Pad</a></span></dt><dt><span class="section"><a href="#id2574995">Ascent</a></span></dt><dt><span class="section"><a href="#id2576209">Descent</a></span></dt><dt><span class="section"><a href="#id2561512">Landed</a></span></dt><dt><span class="section"><a href="#id2587026">Site Map</a></span></dt></dl></dd><dt><span class="section"><a href="#id2576446">Save Flight Data</a></span></dt><dt><span class="section"><a href="#id2586529">Replay Flight</a></span></dt><dt><span class="section"><a href="#id2573351">Graph Data</a></span></dt><dt><span class="section"><a href="#id2568352">Export Data</a></span></dt><dd><dl><dt><span class="section"><a href="#id2575553">Comma Separated Value Format</a></span></dt><dt><span class="section"><a href="#id2579115">Keyhole Markup Language (for Google Earth)</a></span></dt></dl></dd><dt><span class="section"><a href="#id2570375">Configure TeleMetrum</a></span></dt><dd><dl><dt><span class="section"><a href="#id2559233">Main Deploy Altitude</a></span></dt><dt><span class="section"><a href="#id2552914">Apogee Delay</a></span></dt><dt><span class="section"><a href="#id2582365">Radio Channel</a></span></dt><dt><span class="section"><a href="#id2563940">Radio Calibration</a></span></dt><dt><span class="section"><a href="#id2561819">Callsign</a></span></dt><dt><span class="section"><a href="#id2572471">Maximum Flight Log Size</a></span></dt></dl></dd><dt><span class="section"><a href="#id2564177">Configure AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#id2575461">Voice Settings</a></span></dt><dt><span class="section"><a href="#id2573515">Log Directory</a></span></dt><dt><span class="section"><a href="#id2565097">Callsign</a></span></dt><dt><span class="section"><a href="#id2546395">Serial Debug</a></span></dt></dl></dd><dt><span class="section"><a href="#id2575721">Flash Image</a></span></dt><dt><span class="section"><a href="#id2576287">Fire Igniter</a></span></dt></dl></div><p>
727       The AltosUI program provides a graphical user interface for
728       interacting with the Altus Metrum product family, including
729       TeleMetrum and TeleDongle. AltosUI can monitor telemetry data,
730       configure TeleMetrum and TeleDongle devices and many other
731       tasks. The primary interface window provides a selection of
732       buttons, one for each major activity in the system.  This manual
733       is split into chapters, each of which documents one of the tasks
734       provided from the top-level toolbar.
735     </p><div class="section" title="Packet Command Mode"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2578432"></a>Packet Command Mode</h2></div><div><h3 class="subtitle">Controlling TeleMetrum Over The Radio Link</h3></div></div></div><p>
736         One of the unique features of the Altus Metrum environment is
737         the ability to create a two way command link between TeleDongle
738         and TeleMetrum using the digital radio transceivers built into
739         each device. This allows you to interact with TeleMetrum from
740         afar, as if it were directly connected to the computer.
741       </p><p>
742         Any operation which can be performed with TeleMetrum
743         can either be done with TeleMetrum directly connected to
744         the computer via the USB cable, or through the packet
745         link. Simply select the appropriate TeleDongle device when
746         the list of devices is presented and AltosUI will use packet
747         command mode.
748       </p><p>
749         One oddity in the current interface is how AltosUI selects the
750         channel for packet mode communications. Instead of providing
751         an interface to specifically configure the channel, it uses
752         whatever channel was most recently selected for the target
753         TeleDongle device in Monitor Flight mode. If you haven't ever
754         used that mode with the TeleDongle in question, select the
755         Monitor Flight button from the top level UI, pick the
756         appropriate TeleDongle device. Once the flight monitoring
757         window is open, select the desired channel and then close it
758         down again. All Packet Command Mode operations will now use
759         that channel.
760       </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
761             Save Flight Data&#8212;Recover flight data from the rocket without
762             opening it up.
763           </p></li><li class="listitem"><p>
764             Configure TeleMetrum&#8212;Reset apogee delays or main deploy
765             heights to respond to changing launch conditions. You can
766             also 'reboot' the TeleMetrum device. Use this to remotely
767             enable the flight computer by turning TeleMetrum on while
768             horizontal, then once the airframe is oriented for launch,
769             you can reboot TeleMetrum and have it restart in pad mode
770             without having to climb the scary ladder.
771           </p></li><li class="listitem"><p>
772             Fire Igniters&#8212;Test your deployment charges without snaking
773             wires out through holes in the airframe. Simply assembly the
774             rocket as if for flight with the apogee and main charges
775             loaded, then remotely command TeleMetrum to fire the
776             igniters.
777           </p></li></ul></div><p>
778         Packet command mode uses the same RF channels as telemetry
779         mode. Configure the desired TeleDongle channel using the
780         flight monitor window channel selector and then close that
781         window before performing the desired operation.
782       </p><p>
783         TeleMetrum only enables packet command mode in 'idle' mode, so
784         make sure you have TeleMetrum lying horizontally when you turn
785         it on. Otherwise, TeleMetrum will start in 'pad' mode ready for
786         flight and will not be listening for command packets from TeleDongle.
787       </p><p>
788         When packet command mode is enabled, you can monitor the link
789         by watching the lights on the TeleDongle and TeleMetrum
790         devices. The red LED will flash each time TeleDongle or
791         TeleMetrum transmit a packet while the green LED will light up
792         on TeleDongle while it is waiting to receive a packet from
793         TeleMetrum.
794       </p></div><div class="section" title="Monitor Flight"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2572301"></a>Monitor Flight</h2></div><div><h3 class="subtitle">Receive, Record and Display Telemetry Data</h3></div></div></div><p>
795         Selecting this item brings up a dialog box listing all of the
796         connected TeleDongle devices. When you choose one of these,
797         AltosUI will create a window to display telemetry data as
798         received by the selected TeleDongle device.
799       </p><p>
800         All telemetry data received are automatically recorded in
801         suitable log files. The name of the files includes the current
802         date and rocket serial and flight numbers.
803       </p><p>
804         The radio channel being monitored by the TeleDongle device is
805         displayed at the top of the window. You can configure the
806         channel by clicking on the channel box and selecting the desired
807         channel. AltosUI remembers the last channel selected for each
808         TeleDongle and selects that automatically the next time you use
809         that device.
810       </p><p>
811         Below the TeleDongle channel selector, the window contains a few
812         significant pieces of information about the TeleMetrum providing
813         the telemetry data stream:
814       </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>The TeleMetrum callsign</p></li><li class="listitem"><p>The TeleMetrum serial number</p></li><li class="listitem"><p>The flight number. Each TeleMetrum remembers how many
815             times it has flown.
816           </p></li><li class="listitem"><p>
817             The rocket flight state. Each flight passes through several
818             states including Pad, Boost, Fast, Coast, Drogue, Main and
819             Landed.
820           </p></li><li class="listitem"><p>
821             The Received Signal Strength Indicator value. This lets
822             you know how strong a signal TeleDongle is receiving. The
823             radio inside TeleDongle operates down to about -99dBm;
824             weaker signals may not be receiveable. The packet link uses
825             error correction and detection techniques which prevent
826             incorrect data from being reported.
827           </p></li></ul></div><p>
828         Finally, the largest portion of the window contains a set of
829         tabs, each of which contain some information about the rocket.
830         They're arranged in 'flight order' so that as the flight
831         progresses, the selected tab automatically switches to display
832         data relevant to the current state of the flight. You can select
833         other tabs at any time. The final 'table' tab contains all of
834         the telemetry data in one place.
835       </p><div class="section" title="Launch Pad"><div class="titlepage"><div><div><h3 class="title"><a name="id2554918"></a>Launch Pad</h3></div></div></div><p>
836           The 'Launch Pad' tab shows information used to decide when the
837           rocket is ready for flight. The first elements include red/green
838           indicators, if any of these is red, you'll want to evaluate
839           whether the rocket is ready to launch:
840           </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
841                 Battery Voltage. This indicates whether the LiPo battery
842                 powering the TeleMetrum has sufficient charge to last for
843                 the duration of the flight. A value of more than
844                 3.7V is required for a 'GO' status.
845               </p></li><li class="listitem"><p>
846                 Apogee Igniter Voltage. This indicates whether the apogee
847                 igniter has continuity. If the igniter has a low
848                 resistance, then the voltage measured here will be close
849                 to the LiPo battery voltage. A value greater than 3.2V is
850                 required for a 'GO' status.
851               </p></li><li class="listitem"><p>
852                 Main Igniter Voltage. This indicates whether the main
853                 igniter has continuity. If the igniter has a low
854                 resistance, then the voltage measured here will be close
855                 to the LiPo battery voltage. A value greater than 3.2V is
856                 required for a 'GO' status.
857               </p></li><li class="listitem"><p>
858                 GPS Locked. This indicates whether the GPS receiver is
859                 currently able to compute position information. GPS requires
860                 at least 4 satellites to compute an accurate position.
861               </p></li><li class="listitem"><p>
862                 GPS Ready. This indicates whether GPS has reported at least
863                 10 consecutive positions without losing lock. This ensures
864                 that the GPS receiver has reliable reception from the
865                 satellites.
866               </p></li></ul></div><p>
867           </p><p>
868             The LaunchPad tab also shows the computed launch pad position
869             and altitude, averaging many reported positions to improve the
870             accuracy of the fix.
871           </p><p>
872         </p></div><div class="section" title="Ascent"><div class="titlepage"><div><div><h3 class="title"><a name="id2574995"></a>Ascent</h3></div></div></div><p>
873           This tab is shown during Boost, Fast and Coast
874           phases. The information displayed here helps monitor the
875           rocket as it heads towards apogee.
876         </p><p>
877           The height, speed and acceleration are shown along with the
878           maxium values for each of them. This allows you to quickly
879           answer the most commonly asked questions you'll hear during
880           flight.
881         </p><p>
882           The current latitude and longitude reported by the GPS are
883           also shown. Note that under high acceleration, these values
884           may not get updated as the GPS receiver loses position
885           fix. Once the rocket starts coasting, the receiver should
886           start reporting position again.
887         </p><p>
888           Finally, the current igniter voltages are reported as in the
889           Launch Pad tab. This can help diagnose deployment failures
890           caused by wiring which comes loose under high acceleration.
891         </p></div><div class="section" title="Descent"><div class="titlepage"><div><div><h3 class="title"><a name="id2576209"></a>Descent</h3></div></div></div><p>
892           Once the rocket has reached apogee and (we hope) activated the
893           apogee charge, attention switches to tracking the rocket on
894           the way back to the ground, and for dual-deploy flights,
895           waiting for the main charge to fire.
896         </p><p>
897           To monitor whether the apogee charge operated correctly, the
898           current descent rate is reported along with the current
899           height. Good descent rates generally range from 15-30m/s.
900         </p><p>
901           To help locate the rocket in the sky, use the elevation and
902           bearing information to figure out where to look. Elevation is
903           in degrees above the horizon. Bearing is reported in degrees
904           relative to true north. Range can help figure out how big the
905           rocket will appear. Note that all of these values are relative
906           to the pad location. If the elevation is near 90°, the rocket
907           is over the pad, not over you.
908         </p><p>
909           Finally, the igniter voltages are reported in this tab as
910           well, both to monitor the main charge as well as to see what
911           the status of the apogee charge is.
912         </p></div><div class="section" title="Landed"><div class="titlepage"><div><div><h3 class="title"><a name="id2561512"></a>Landed</h3></div></div></div><p>
913           Once the rocket is on the ground, attention switches to
914           recovery. While the radio signal is generally lost once the
915           rocket is on the ground, the last reported GPS position is
916           generally within a short distance of the actual landing location.
917         </p><p>
918           The last reported GPS position is reported both by
919           latitude and longitude as well as a bearing and distance from
920           the launch pad. The distance should give you a good idea of
921           whether you'll want to walk or hitch a ride. Take the reported
922           latitude and longitude and enter them into your handheld GPS
923           unit and have that compute a track to the landing location.
924         </p><p>
925           Finally, the maximum height, speed and acceleration reported
926           during the flight are displayed for your admiring observers.
927         </p></div><div class="section" title="Site Map"><div class="titlepage"><div><div><h3 class="title"><a name="id2587026"></a>Site Map</h3></div></div></div><p>
928           When the rocket gets a GPS fix, the Site Map tab will map
929           the rocket's position to make it easier for you to locate the
930           rocket, both while it is in the air, and when it has landed. The
931           rocket's state is indicated by colour: white for pad, red for
932           boost, pink for fast, yellow for coast, light blue for drogue,
933           dark blue for main, and black for landed.
934         </p><p>
935           The map's scale is approximately 3m (10ft) per pixel. The map
936           can be dragged using the left mouse button. The map will attempt
937           to keep the rocket roughly centred while data is being received.
938         </p><p>
939           Images are fetched automatically via the Google Maps Static API,
940           and are cached for reuse. If map images cannot be downloaded,
941           the rocket's path will be traced on a dark grey background
942           instead.
943         </p></div></div><div class="section" title="Save Flight Data"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2576446"></a>Save Flight Data</h2></div></div></div><p>
944         TeleMetrum records flight data to its internal flash memory.
945         This data is recorded at a much higher rate than the telemetry
946         system can handle, and is not subject to radio drop-outs. As
947         such, it provides a more complete and precise record of the
948         flight. The 'Save Flight Data' button allows you to read the
949         flash memory and write it to disk.
950       </p><p>
951         Clicking on the 'Save Flight Data' button brings up a list of
952         connected TeleMetrum and TeleDongle devices. If you select a
953         TeleMetrum device, the flight data will be downloaded from that
954         device directly. If you select a TeleDongle device, flight data
955         will be downloaded from a TeleMetrum device connected via the
956         packet command link to the specified TeleDongle. See the chapter
957         on Packet Command Mode for more information about this.
958       </p><p>
959         After the device has been selected, a dialog showing the
960         flight data saved in the device will be shown allowing you to
961         select which flights to download and which to delete. With
962         version 0.9 or newer firmware, you must erase flights in order
963         for the space they consume to be reused by another
964         flight. This prevents you from accidentally losing flight data
965         if you neglect to download data before flying again. Note that
966         if there is no more space available in the device, then no
967         data will be recorded for a flight.
968       </p><p>
969         The filename for each flight log is computed automatically
970         from the recorded flight date, TeleMetrum serial number and
971         flight number information.
972       </p></div><div class="section" title="Replay Flight"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2586529"></a>Replay Flight</h2></div></div></div><p>
973         Select this button and you are prompted to select a flight
974         record file, either a .telem file recording telemetry data or a
975         .eeprom file containing flight data saved from the TeleMetrum
976         flash memory.
977       </p><p>
978         Once a flight record is selected, the flight monitor interface
979         is displayed and the flight is re-enacted in real time. Check
980         the Monitor Flight chapter above to learn how this window operates.
981       </p></div><div class="section" title="Graph Data"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2573351"></a>Graph Data</h2></div></div></div><p>
982         Select this button and you are prompted to select a flight
983         record file, either a .telem file recording telemetry data or a
984         .eeprom file containing flight data saved from the TeleMetrum
985         flash memory.
986       </p><p>
987         Once a flight record is selected, the acceleration (blue),
988         velocity (green) and altitude (red) of the flight are plotted and
989         displayed, measured in metric units.
990       </p><p>
991         The graph can be zoomed into a particular area by clicking and
992         dragging down and to the right. Once zoomed, the graph can be
993         reset by clicking and dragging up and to the left. Holding down
994         control and clicking and dragging allows the graph to be panned.
995         The right mouse button causes a popup menu to be displayed, giving
996         you the option save or print the plot.
997       </p><p>
998         Note that telemetry files will generally produce poor graphs
999         due to the lower sampling rate and missed telemetry packets,
1000         and will also often have significant amounts of data received
1001         while the rocket was waiting on the pad. Use saved flight data
1002         for graphing where possible.
1003       </p></div><div class="section" title="Export Data"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2568352"></a>Export Data</h2></div></div></div><p>
1004         This tool takes the raw data files and makes them available for
1005         external analysis. When you select this button, you are prompted to select a flight
1006         data file (either .eeprom or .telem will do, remember that
1007         .eeprom files contain higher resolution and more continuous
1008         data). Next, a second dialog appears which is used to select
1009         where to write the resulting file. It has a selector to choose
1010         between CSV and KML file formats.
1011       </p><div class="section" title="Comma Separated Value Format"><div class="titlepage"><div><div><h3 class="title"><a name="id2575553"></a>Comma Separated Value Format</h3></div></div></div><p>
1012           This is a text file containing the data in a form suitable for
1013           import into a spreadsheet or other external data analysis
1014           tool. The first few lines of the file contain the version and
1015           configuration information from the TeleMetrum device, then
1016           there is a single header line which labels all of the
1017           fields. All of these lines start with a '#' character which
1018           most tools can be configured to skip over.
1019         </p><p>
1020           The remaining lines of the file contain the data, with each
1021           field separated by a comma and at least one space. All of
1022           the sensor values are converted to standard units, with the
1023           barometric data reported in both pressure, altitude and
1024           height above pad units.
1025         </p></div><div class="section" title="Keyhole Markup Language (for Google Earth)"><div class="titlepage"><div><div><h3 class="title"><a name="id2579115"></a>Keyhole Markup Language (for Google Earth)</h3></div></div></div><p>
1026           This is the format used by
1027           Googleearth to provide an overlay within that
1028           application. With this, you can use Googleearth to see the
1029           whole flight path in 3D.
1030         </p></div></div><div class="section" title="Configure TeleMetrum"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2570375"></a>Configure TeleMetrum</h2></div></div></div><p>
1031         Select this button and then select either a TeleMetrum or
1032         TeleDongle Device from the list provided. Selecting a TeleDongle
1033         device will use Packet Comamnd Mode to configure remote
1034         TeleMetrum device. Learn how to use this in the Packet Command
1035         Mode chapter.
1036       </p><p>
1037         The first few lines of the dialog provide information about the
1038         connected TeleMetrum device, including the product name,
1039         software version and hardware serial number. Below that are the
1040         individual configuration entries.
1041       </p><p>
1042         At the bottom of the dialog, there are four buttons:
1043       </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
1044             Save. This writes any changes to the TeleMetrum
1045             configuration parameter block in flash memory. If you don't
1046             press this button, any changes you make will be lost.
1047           </p></li><li class="listitem"><p>
1048             Reset. This resets the dialog to the most recently saved values,
1049             erasing any changes you have made.
1050           </p></li><li class="listitem"><p>
1051             Reboot. This reboots the TeleMetrum device. Use this to
1052             switch from idle to pad mode by rebooting once the rocket is
1053             oriented for flight.
1054           </p></li><li class="listitem"><p>
1055             Close. This closes the dialog. Any unsaved changes will be
1056             lost.
1057           </p></li></ul></div><p>
1058         The rest of the dialog contains the parameters to be configured.
1059       </p><div class="section" title="Main Deploy Altitude"><div class="titlepage"><div><div><h3 class="title"><a name="id2559233"></a>Main Deploy Altitude</h3></div></div></div><p>
1060           This sets the altitude (above the recorded pad altitude) at
1061           which the 'main' igniter will fire. The drop-down menu shows
1062           some common values, but you can edit the text directly and
1063           choose whatever you like. If the apogee charge fires below
1064           this altitude, then the main charge will fire two seconds
1065           after the apogee charge fires.
1066         </p></div><div class="section" title="Apogee Delay"><div class="titlepage"><div><div><h3 class="title"><a name="id2552914"></a>Apogee Delay</h3></div></div></div><p>
1067           When flying redundant electronics, it's often important to
1068           ensure that multiple apogee charges don't fire at precisely
1069           the same time as that can overpressurize the apogee deployment
1070           bay and cause a structural failure of the airframe. The Apogee
1071           Delay parameter tells the flight computer to fire the apogee
1072           charge a certain number of seconds after apogee has been
1073           detected.
1074         </p></div><div class="section" title="Radio Channel"><div class="titlepage"><div><div><h3 class="title"><a name="id2582365"></a>Radio Channel</h3></div></div></div><p>
1075           This configures which of the 10 radio channels to use for both
1076           telemetry and packet command mode. Note that if you set this
1077           value via packet command mode, you will have to reconfigure
1078           the TeleDongle channel before you will be able to use packet
1079           command mode again.
1080         </p></div><div class="section" title="Radio Calibration"><div class="titlepage"><div><div><h3 class="title"><a name="id2563940"></a>Radio Calibration</h3></div></div></div><p>
1081           The radios in every Altus Metrum device are calibrated at the
1082           factory to ensure that they transmit and receive on the
1083           specified frequency for each channel. You can adjust that
1084           calibration by changing this value. To change the TeleDongle's
1085           calibration, you must reprogram the unit completely.
1086         </p></div><div class="section" title="Callsign"><div class="titlepage"><div><div><h3 class="title"><a name="id2561819"></a>Callsign</h3></div></div></div><p>
1087           This sets the callsign included in each telemetry packet. Set this
1088           as needed to conform to your local radio regulations.
1089         </p></div><div class="section" title="Maximum Flight Log Size"><div class="titlepage"><div><div><h3 class="title"><a name="id2572471"></a>Maximum Flight Log Size</h3></div></div></div><p>
1090           This sets the space (in kilobytes) allocated for each flight
1091           log. The available space will be divided into chunks of this
1092           size. A smaller value will allow more flights to be stored,
1093           a larger value will record data from longer flights.
1094         </p><p>
1095           During ascent, TeleMetrum records barometer and
1096           accelerometer values 100 times per second, other analog
1097           information (voltages and temperature) 6 times per second
1098           and GPS data once per second. During descent, the non-GPS
1099           data is recorded 1/10th as often. Each barometer +
1100           accelerometer record takes 8 bytes.
1101         </p><p>
1102           The default, 192kB, will store over 200 seconds of data at
1103           the ascent rate, or over 2000 seconds of data at the descent
1104           rate. That's plenty for most flights. This leaves enough
1105           storage for five flights in a 1MB system, or 10 flights in a
1106           2MB system.
1107         </p><p>
1108           The configuration block takes the last available block of
1109           memory, on v1.0 boards that's just 256 bytes. However, the
1110           flash part on the v1.1 boards uses 64kB for each block.
1111         </p></div></div><div class="section" title="Configure AltosUI"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2564177"></a>Configure AltosUI</h2></div></div></div><p>
1112         This button presents a dialog so that you can configure the AltosUI global settings.
1113       </p><div class="section" title="Voice Settings"><div class="titlepage"><div><div><h3 class="title"><a name="id2575461"></a>Voice Settings</h3></div></div></div><p>
1114           AltosUI provides voice annoucements during flight so that you
1115           can keep your eyes on the sky and still get information about
1116           the current flight status. However, sometimes you don't want
1117           to hear them.
1118         </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Enable&#8212;turns all voice announcements on and off</p></li><li class="listitem"><p>
1119               Test Voice&#8212;Plays a short message allowing you to verify
1120               that the audio systme is working and the volume settings
1121               are reasonable
1122             </p></li></ul></div></div><div class="section" title="Log Directory"><div class="titlepage"><div><div><h3 class="title"><a name="id2573515"></a>Log Directory</h3></div></div></div><p>
1123           AltosUI logs all telemetry data and saves all TeleMetrum flash
1124           data to this directory. This directory is also used as the
1125           staring point when selecting data files for display or export.
1126         </p><p>
1127           Click on the directory name to bring up a directory choosing
1128           dialog, select a new directory and click 'Select Directory' to
1129           change where AltosUI reads and writes data files.
1130         </p></div><div class="section" title="Callsign"><div class="titlepage"><div><div><h3 class="title"><a name="id2565097"></a>Callsign</h3></div></div></div><p>
1131           This value is used in command packet mode and is transmitted
1132           in each packet sent from TeleDongle and received from
1133           TeleMetrum. It is not used in telemetry mode as that transmits
1134           packets only from TeleMetrum to TeleDongle. Configure this
1135           with the AltosUI operators callsign as needed to comply with
1136           your local radio regulations.
1137         </p></div><div class="section" title="Serial Debug"><div class="titlepage"><div><div><h3 class="title"><a name="id2546395"></a>Serial Debug</h3></div></div></div><p>
1138           This causes all communication with a connected device to be
1139           dumped to the console from which AltosUI was started. If
1140           you've started it from an icon or menu entry, the output
1141           will simply be discarded. This mode can be useful to debug
1142           various serial communication issues.
1143         </p></div></div><div class="section" title="Flash Image"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2575721"></a>Flash Image</h2></div></div></div><p>
1144         This reprograms any Altus Metrum device by using a TeleMetrum or
1145         TeleDongle as a programming dongle. Please read the directions
1146         for connecting the programming cable in the main TeleMetrum
1147         manual before reading these instructions.
1148       </p><p>
1149         Once you have the programmer and target devices connected,
1150         push the 'Flash Image' button. That will present a dialog box
1151         listing all of the connected devices. Carefully select the
1152         programmer device, not the device to be programmed.
1153       </p><p>
1154         Next, select the image to flash to the device. These are named
1155         with the product name and firmware version. The file selector
1156         will start in the directory containing the firmware included
1157         with the AltosUI package. Navigate to the directory containing
1158         the desired firmware if it isn't there.
1159       </p><p>
1160         Next, a small dialog containing the device serial number and
1161         RF calibration values should appear. If these values are
1162         incorrect (possibly due to a corrupted image in the device),
1163         enter the correct values here.
1164       </p><p>
1165         Finally, a dialog containing a progress bar will follow the
1166         programming process.
1167       </p><p>
1168         When programming is complete, the target device will
1169         reboot. Note that if the target device is connected via USB, you
1170         will have to unplug it and then plug it back in for the USB
1171         connection to reset so that you can communicate with the device
1172         again.
1173       </p></div><div class="section" title="Fire Igniter"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2576287"></a>Fire Igniter</h2></div></div></div><p>
1174         This activates the igniter circuits in TeleMetrum to help test
1175         recovery systems deployment. Because this command can operate
1176         over the Packet Command Link, you can prepare the rocket as
1177         for flight and then test the recovery system without needing
1178         to snake wires inside the airframe.
1179       </p><p>
1180         Selecting the 'Fire Igniter' button brings up the usual device
1181         selection dialog. Pick the desired TeleDongle or TeleMetrum
1182         device. This brings up another window which shows the current
1183         continutity test status for both apogee and main charges.
1184       </p><p>
1185         Next, select the desired igniter to fire. This will enable the
1186         'Arm' button.
1187       </p><p>
1188         Select the 'Arm' button. This enables the 'Fire' button. The
1189         word 'Arm' is replaced by a countdown timer indicating that
1190         you have 10 seconds to press the 'Fire' button or the system
1191         will deactivate, at which point you start over again at
1192         selecting the desired igniter.
1193       </p></div></div><div class="chapter" title="Chapter 8. Using Altus Metrum Products"><div class="titlepage"><div><div><h2 class="title"><a name="id2570538"></a>Chapter 8. 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="#id2576134">Being Legal</a></span></dt><dt><span class="section"><a href="#id2573850">In the Rocket</a></span></dt><dt><span class="section"><a href="#id2572694">On the Ground</a></span></dt><dt><span class="section"><a href="#id2579324">Data Analysis</a></span></dt><dt><span class="section"><a href="#id2585899">Future Plans</a></span></dt></dl></div><div class="section" title="Being Legal"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2576134"></a>Being Legal</h2></div></div></div><p>
1194         First off, in the US, you need an <a class="ulink" href="http://www.altusmetrum.org/Radio/" target="_top">amateur radio license</a> or
1195         other authorization to legally operate the radio transmitters that are part
1196         of our products.
1197       </p></div><div class="section" title="In the Rocket"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2573850"></a>In the Rocket</h2></div></div></div><p>
1198           In the rocket itself, you just need a <a class="ulink" href="http://www.altusmetrum.org/TeleMetrum/" target="_top">TeleMetrum</a> board and
1199           a LiPo rechargeable battery.  An 860mAh battery weighs less than a 9V
1200           alkaline battery, and will run a <a class="ulink" href="http://www.altusmetrum.org/TeleMetrum/" target="_top">TeleMetrum</a> for hours.
1201         </p><p>
1202           By default, we ship TeleMetrum with a simple wire antenna.  If your
1203           electronics bay or the airframe it resides within is made of carbon fiber,
1204           which is opaque to RF signals, you may choose to have an SMA connector
1205           installed so that you can run a coaxial cable to an antenna mounted
1206           elsewhere in the rocket.
1207         </p></div><div class="section" title="On the Ground"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2572694"></a>On the Ground</h2></div></div></div><p>
1208           To receive the data stream from the rocket, you need an antenna and short
1209           feedline connected to one of our <a class="ulink" href="http://www.altusmetrum.org/TeleDongle/" target="_top">TeleDongle</a> units.  The
1210           TeleDongle in turn plugs directly into the USB port on a notebook
1211           computer.  Because TeleDongle looks like a simple serial port, your computer
1212           does not require special device drivers... just plug it in.
1213         </p><p>
1214           The GUI tool, AltosUI, is written in Java and runs across
1215           Linux, Mac OS and Windows. There's also a suite of C tools
1216           for Linux which can perform most of the same tasks.
1217         </p><p>
1218           After the flight, you can use the RF link to extract the more detailed data
1219           logged in the rocket, or you can use a mini USB cable to plug into the
1220           TeleMetrum board directly.  Pulling out the data without having to open up
1221           the rocket is pretty cool!  A USB cable is also how you charge the LiPo
1222           battery, so you'll want one of those anyway... the same cable used by lots
1223           of digital cameras and other modern electronic stuff will work fine.
1224         </p><p>
1225           If your rocket lands out of sight, you may enjoy having a hand-held GPS
1226           receiver, so that you can put in a waypoint for the last reported rocket
1227           position before touch-down.  This makes looking for your rocket a lot like
1228           Geo-Cacheing... just go to the waypoint and look around starting from there.
1229         </p><p>
1230           You may also enjoy having a ham radio "HT" that covers the 70cm band... you
1231           can use that with your antenna to direction-find the rocket on the ground
1232           the same way you can use a Walston or Beeline tracker.  This can be handy
1233           if the rocket is hiding in sage brush or a tree, or if the last GPS position
1234           doesn't get you close enough because the rocket dropped into a canyon, or
1235           the wind is blowing it across a dry lake bed, or something like that...  Keith
1236           and Bdale both currently own and use the Yaesu VX-7R at launches.
1237         </p><p>
1238           So, to recap, on the ground the hardware you'll need includes:
1239           </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
1240               an antenna and feedline
1241             </li><li class="listitem">
1242               a TeleDongle
1243             </li><li class="listitem">
1244               a notebook computer
1245             </li><li class="listitem">
1246               optionally, a handheld GPS receiver
1247             </li><li class="listitem">
1248               optionally, an HT or receiver covering 435 Mhz
1249             </li></ol></div><p>
1250         </p><p>
1251           The best hand-held commercial directional antennas we've found for radio
1252           direction finding rockets are from
1253           <a class="ulink" href="http://www.arrowantennas.com/" target="_top">
1254             Arrow Antennas.
1255           </a>
1256           The 440-3 and 440-5 are both good choices for finding a
1257           TeleMetrum-equipped rocket when used with a suitable 70cm HT.
1258         </p></div><div class="section" title="Data Analysis"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2579324"></a>Data Analysis</h2></div></div></div><p>
1259           Our software makes it easy to log the data from each flight, both the
1260           telemetry received over the RF link during the flight itself, and the more
1261           complete data log recorded in the DataFlash memory on the TeleMetrum
1262           board.  Once this data is on your computer, our postflight tools make it
1263           easy to quickly get to the numbers everyone wants, like apogee altitude,
1264           max acceleration, and max velocity.  You can also generate and view a
1265           standard set of plots showing the altitude, acceleration, and
1266           velocity of the rocket during flight.  And you can even export a data file
1267           useable with Google Maps and Google Earth for visualizing the flight path
1268           in two or three dimensions!
1269         </p><p>
1270           Our ultimate goal is to emit a set of files for each flight that can be
1271           published as a web page per flight, or just viewed on your local disk with
1272           a web browser.
1273         </p></div><div class="section" title="Future Plans"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2585899"></a>Future Plans</h2></div></div></div><p>
1274           In the future, we intend to offer "companion boards" for the rocket that will
1275           plug in to TeleMetrum to collect additional data, provide more pyro channels,
1276           and so forth.  A reference design for a companion board will be documented
1277           soon, and will be compatible with open source Arduino programming tools.
1278         </p><p>
1279           We are also working on the design of a hand-held ground terminal that will
1280           allow monitoring the rocket's status, collecting data during flight, and
1281           logging data after flight without the need for a notebook computer on the
1282           flight line.  Particularly since it is so difficult to read most notebook
1283           screens in direct sunlight, we think this will be a great thing to have.
1284         </p><p>
1285           Because all of our work is open, both the hardware designs and the software,
1286           if you have some great idea for an addition to the current Altus Metrum family,
1287           feel free to dive in and help!  Or let us know what you'd like to see that
1288           we aren't already working on, and maybe we'll get excited about it too...
1289         </p></div></div></div></body></html>