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.78.1"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book"><div class="titlepage"><div><div><h1 class="title"><a name="idp6137024"></a>The Altus Metrum System</h1></div><div><h2 class="subtitle">An Owner's Manual for Altus Metrum Rocketry Electronics</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 © 2014 Bdale Garbee and Keith Packard</p></div><div><div class="legalnotice"><a name="idp32480400"></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 style="border-style:solid; width:100%;" summary="Revision History"><tr><th align="left" valign="top" colspan="2"><b>Revision History</b></th></tr><tr><td align="left">Revision 1.4</td><td align="left">15 June 2014</td></tr><tr><td align="left" colspan="2">
8           Major release adding TeleGPS support.
9         </td></tr><tr><td align="left">Revision 1.3.2</td><td align="left">24 January 2014</td></tr><tr><td align="left" colspan="2">
10           Bug fixes for TeleMega and AltosUI.
11         </td></tr><tr><td align="left">Revision 1.3.1</td><td align="left">21 January 2014</td></tr><tr><td align="left" colspan="2">
12           Bug fixes for TeleMega and TeleMetrum v2.0 along with a few
13           small UI improvements.
14         </td></tr><tr><td align="left">Revision 1.3</td><td align="left">12 November 2013</td></tr><tr><td align="left" colspan="2">
15           Updated for software version 1.3. Version 1.3 adds support
16           for TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini
17           and fixes bugs in AltosUI and the AltOS firmware.
18         </td></tr><tr><td align="left">Revision 1.2.1</td><td align="left">21 May 2013</td></tr><tr><td align="left" colspan="2">
19           Updated for software version 1.2. Version 1.2 adds support
20           for TeleBT and AltosDroid. It also adds a few minor features
21           and fixes bugs in AltosUI and the AltOS firmware.
22         </td></tr><tr><td align="left">Revision 1.2</td><td align="left">18 April 2013</td></tr><tr><td align="left" colspan="2">
23           Updated for software version 1.2. Version 1.2 adds support
24           for MicroPeak and the MicroPeak USB interface.
25         </td></tr><tr><td align="left">Revision 1.1.1</td><td align="left">16 September 2012</td></tr><tr><td align="left" colspan="2">
26           Updated for software version 1.1.1 Version 1.1.1 fixes a few
27           bugs found in version 1.1.
28         </td></tr><tr><td align="left">Revision 1.1</td><td align="left">13 September 2012</td></tr><tr><td align="left" colspan="2">
29           Updated for software version 1.1. Version 1.1 has new
30           features but is otherwise compatible with version 1.0.
31         </td></tr><tr><td align="left">Revision 1.0</td><td align="left">24 August 2011</td></tr><tr><td align="left" colspan="2">
32           Updated for software version 1.0.  Note that 1.0 represents a
33           telemetry format change, meaning both ends of a link 
34           (TeleMetrum/TeleMini and TeleDongle) must be updated or 
35           communications will fail.
36         </td></tr><tr><td align="left">Revision 0.9</td><td align="left">18 January 2011</td></tr><tr><td align="left" colspan="2">
37           Updated for software version 0.9.  Note that 0.9 represents a
38           telemetry format change, meaning both ends of a link (TeleMetrum and
39           TeleDongle) must be updated or communications will fail.
40         </td></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="dedication"><div class="titlepage"><div><div><h1 class="title"><a name="idp32650960"></a>Acknowledgments</h1></div></div></div><p>
41       Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing &#8220;The
42       Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
43       Kit&#8221; which formed the basis of the original Getting Started chapter 
44       in this manual.  Bob was one of our first customers for a production
45       TeleMetrum, and his continued enthusiasm and contributions
46       are immensely gratifying and highly appreciated!
47     </p><p>
48       And thanks to Anthony (AJ) Towns for major contributions including
49       the AltosUI graphing and site map code and associated documentation. 
50       Free software means that our customers and friends can become our
51       collaborators, and we certainly appreciate this level of
52       contribution!
53     </p><p>
54       Have fun using these products, and we hope to meet all of you
55       out on the rocket flight line somewhere.
56       </p><div class="literallayout"><p><br>
57 Bdale Garbee, KB0G<br>
58 NAR #87103, TRA #12201<br>
59 <br>
60 Keith Packard, KD7SQG<br>
61 NAR #88757, TRA #12200<br>
62       </p></div><p>
63     </p></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="#idp32655168">1. Introduction and Overview</a></span></dt><dt><span class="chapter"><a href="#idp32662928">2. Getting Started</a></span></dt><dt><span class="chapter"><a href="#idp32491744">3. Handling Precautions</a></span></dt><dt><span class="chapter"><a href="#idp32497232">4. Altus Metrum Hardware</a></span></dt><dd><dl><dt><span class="section"><a href="#idp32497904">1. General Usage Instructions</a></span></dt><dd><dl><dt><span class="section"><a href="#idp32499872">1.1. Hooking Up Lithium Polymer Batteries</a></span></dt><dt><span class="section"><a href="#idp32502832">1.2. Hooking Up Pyro Charges</a></span></dt><dt><span class="section"><a href="#idp32504912">1.3. Hooking Up a Power Switch</a></span></dt><dt><span class="section"><a href="#idp32508128">1.4. Using a Separate Pyro Battery</a></span></dt><dt><span class="section"><a href="#idp32510640">1.5. Using a Different Kind of Battery</a></span></dt></dl></dd><dt><span class="section"><a href="#idp32512368">2. Specifications</a></span></dt><dt><span class="section"><a href="#idp38112928">3. TeleMetrum</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38117824">3.1. TeleMetrum Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38137040">3.2. Using a Separate Pyro Battery with TeleMetrum</a></span></dt><dt><span class="section"><a href="#idp38140288">3.3. Using an Active Switch with TeleMetrum</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38142416">4. TeleMini v1.0</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38147312">4.1. TeleMini v1.0 Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38166656">4.2. Using a Separate Pyro Battery with TeleMini v1.0</a></span></dt><dt><span class="section"><a href="#idp38170032">4.3. Using an Active Switch with TeleMini v1.0</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38172240">5. TeleMini v2.0</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38176256">5.1. TeleMini v2.0 Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38198640">5.2. Using a Separate Pyro Battery with TeleMini v2.0</a></span></dt><dt><span class="section"><a href="#idp38201840">5.3. Using an Active Switch with TeleMini v2.0</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38203936">6. EasyMini</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38207792">6.1. EasyMini Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38238912">6.2. Using a Separate Pyro Battery with EasyMini</a></span></dt><dt><span class="section"><a href="#idp38242096">6.3. Using an Active Switch with EasyMini</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38244192">7. TeleMega</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38248160">7.1. TeleMega Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38285664">7.2. Using a Separate Pyro Battery with TeleMega</a></span></dt><dt><span class="section"><a href="#idp38287264">7.3. Using Only One Battery With TeleMega</a></span></dt><dt><span class="section"><a href="#idp38289184">7.4. Using an Active Switch with TeleMega</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38291232">8. Flight Data Recording</a></span></dt><dt><span class="section"><a href="#idp38320064">9. Installation</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38326800">5. System Operation</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38327440">1. Firmware Modes </a></span></dt><dt><span class="section"><a href="#idp38395728">2. GPS </a></span></dt><dt><span class="section"><a href="#idp38398512">3. Controlling An Altimeter Over The Radio Link</a></span></dt><dt><span class="section"><a href="#idp38410432">4. Ground Testing </a></span></dt><dt><span class="section"><a href="#idp38413184">5. Radio Link </a></span></dt><dt><span class="section"><a href="#idp38417184">6. APRS</a></span></dt><dt><span class="section"><a href="#idp38439152">7. Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38441072">7.1. Radio Frequency</a></span></dt><dt><span class="section"><a href="#idp38443120">7.2. Callsign</a></span></dt><dt><span class="section"><a href="#idp38444656">7.3. Telemetry/RDF/APRS Enable</a></span></dt><dt><span class="section"><a href="#idp38445952">7.4. APRS Interval</a></span></dt><dt><span class="section"><a href="#idp38447424">7.5. Apogee Delay</a></span></dt><dt><span class="section"><a href="#idp38450016">7.6. Apogee Lockout</a></span></dt><dt><span class="section"><a href="#idp38451744">7.7. Main Deployment Altitude</a></span></dt><dt><span class="section"><a href="#idp38453440">7.8. Maximum Flight Log</a></span></dt><dt><span class="section"><a href="#idp38455584">7.9. Ignite Mode</a></span></dt><dt><span class="section"><a href="#idp38457696">7.10. Pad Orientation</a></span></dt><dt><span class="section"><a href="#idp38459904">7.11. Configurable Pyro Channels</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#idp38482480">6. AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38486096">1. Monitor Flight</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38498816">1.1. Launch Pad</a></span></dt><dt><span class="section"><a href="#idp38515104">1.2. Ascent</a></span></dt><dt><span class="section"><a href="#idp38520560">1.3. Descent</a></span></dt><dt><span class="section"><a href="#idp38527424">1.4. Landed</a></span></dt><dt><span class="section"><a href="#idp38533856">1.5. Table</a></span></dt><dt><span class="section"><a href="#idp38537440">1.6. Site Map</a></span></dt><dt><span class="section"><a href="#idp38543760">1.7. Ignitor</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38547536">2. Save Flight Data</a></span></dt><dt><span class="section"><a href="#idp38551488">3. Replay Flight</a></span></dt><dt><span class="section"><a href="#idp38553520">4. Graph Data</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38555904">4.1. Flight Graph</a></span></dt><dt><span class="section"><a href="#idp38560352">4.2. Configure Graph</a></span></dt><dt><span class="section"><a href="#idp38564016">4.3. Flight Statistics</a></span></dt><dt><span class="section"><a href="#idp38567536">4.4. Map</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38571392">5. Export Data</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38572960">5.1. Comma Separated Value Format</a></span></dt><dt><span class="section"><a href="#idp38575312">5.2. Keyhole Markup Language (for Google Earth)</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38576800">6. Configure Altimeter</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38589104">6.1. Main Deploy Altitude</a></span></dt><dt><span class="section"><a href="#idp38590672">6.2. Apogee Delay</a></span></dt><dt><span class="section"><a href="#idp38592288">6.3. Apogee Lockoug</a></span></dt><dt><span class="section"><a href="#idp38594016">6.4. Frequency</a></span></dt><dt><span class="section"><a href="#idp38595520">6.5. RF Calibration</a></span></dt><dt><span class="section"><a href="#idp38597168">6.6. Telemetry/RDF/APRS Enable</a></span></dt><dt><span class="section"><a href="#idp38598464">6.7. APRS Interval</a></span></dt><dt><span class="section"><a href="#idp38600032">6.8. Callsign</a></span></dt><dt><span class="section"><a href="#idp38601344">6.9. Maximum Flight Log Size</a></span></dt><dt><span class="section"><a href="#idp38602784">6.10. Ignitor Firing Mode</a></span></dt><dt><span class="section"><a href="#idp38609696">6.11. Pad Orientation</a></span></dt><dt><span class="section"><a href="#idp38614912">6.12. Beeper Frequency</a></span></dt><dt><span class="section"><a href="#idp38616368">6.13. Configure Pyro Channels</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38622736">7. Configure AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38626240">7.1. Voice Settings</a></span></dt><dt><span class="section"><a href="#idp38631264">7.2. Log Directory</a></span></dt><dt><span class="section"><a href="#idp38633264">7.3. Callsign</a></span></dt><dt><span class="section"><a href="#idp38635504">7.4. Imperial Units</a></span></dt><dt><span class="section"><a href="#idp38637008">7.5. Font Size</a></span></dt><dt><span class="section"><a href="#idp38638288">7.6. Serial Debug</a></span></dt><dt><span class="section"><a href="#idp38639792">7.7. Manage Frequencies</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38641424">8. Configure Groundstation</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38652544">8.1. Frequency</a></span></dt><dt><span class="section"><a href="#idp38654112">8.2. Radio Calibration</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38655744">9. Flash Image</a></span></dt><dt><span class="section"><a href="#idp38657376">10. Fire Igniter</a></span></dt><dt><span class="section"><a href="#idp38663008">11. Scan Channels</a></span></dt><dt><span class="section"><a href="#idp38666864">12. Load Maps</a></span></dt><dt><span class="section"><a href="#idp38680752">13. Monitor Idle</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38682848">7. AltosDroid</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38685232">1. Installing AltosDroid</a></span></dt><dt><span class="section"><a href="#idp38687168">2. Connecting to TeleBT</a></span></dt><dt><span class="section"><a href="#idp38689168">3. Configuring AltosDroid</a></span></dt><dt><span class="section"><a href="#idp38690624">4. AltosDroid Flight Monitoring</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38691936">4.1. Pad</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38705488">5. Downloading Flight Logs</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38707152">8. Using Altus Metrum Products</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38707792">1. Being Legal</a></span></dt><dt><span class="section"><a href="#idp38709696">2. In the Rocket</a></span></dt><dt><span class="section"><a href="#idp38712160">3. On the Ground</a></span></dt><dt><span class="section"><a href="#idp38725552">4. Data Analysis</a></span></dt><dt><span class="section"><a href="#idp38728096">5. Future Plans</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38732480">9. Altimeter Installation Recommendations</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38733936">1. Mounting the Altimeter</a></span></dt><dt><span class="section"><a href="#idp38738768">2. Dealing with the Antenna</a></span></dt><dt><span class="section"><a href="#idp38744336">3. Preserving GPS Reception</a></span></dt><dt><span class="section"><a href="#idp38749120">4. Radio Frequency Interference</a></span></dt><dt><span class="section"><a href="#idp38756688">5. The Barometric Sensor</a></span></dt><dt><span class="section"><a href="#idp38759488">6. Ground Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38762656">10. Updating Device Firmware</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38766672">1. 
64         Updating TeleMega, TeleMetrum v2 or EasyMini Firmware
65       </a></span></dt><dd><dl><dt><span class="section"><a href="#idp38775728">1.1. Recovering From Self-Flashing Failure</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38784704">2. Pair Programming</a></span></dt><dt><span class="section"><a href="#idp38786144">3. Updating TeleMetrum v1.x Firmware</a></span></dt><dt><span class="section"><a href="#idp38799344">4. Updating TeleMini Firmware</a></span></dt><dt><span class="section"><a href="#idp38812896">5. Updating TeleDongle Firmware</a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38829520">11. Hardware Specifications</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38830160">1. 
66         TeleMega Specifications
67       </a></span></dt><dt><span class="section"><a href="#idp38841632">2. 
68         TeleMetrum v2 Specifications
69       </a></span></dt><dt><span class="section"><a href="#idp38852192">3. TeleMetrum v1 Specifications</a></span></dt><dt><span class="section"><a href="#idp38862752">4. 
70         TeleMini v2.0 Specifications
71       </a></span></dt><dt><span class="section"><a href="#idp38871584">5. 
72         TeleMini v1.0 Specifications
73       </a></span></dt><dt><span class="section"><a href="#idp38880384">6. 
74         EasyMini Specifications
75       </a></span></dt></dl></dd><dt><span class="chapter"><a href="#idp38888496">12. FAQ</a></span></dt><dt><span class="appendix"><a href="#idp38897344">A. Notes for Older Software</a></span></dt><dt><span class="appendix"><a href="#idp38919744">B. Drill Templates</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38920912">1. TeleMega template</a></span></dt><dt><span class="section"><a href="#idp38937600">2. TeleMetrum template</a></span></dt><dt><span class="section"><a href="#idp38941984">3. TeleMini v2/EasyMini template</a></span></dt><dt><span class="section"><a href="#idp38946384">4. TeleMini v1 template</a></span></dt></dl></dd><dt><span class="appendix"><a href="#idp38950896">C. Calibration</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38952448">1. Radio Frequency</a></span></dt><dt><span class="section"><a href="#idp38956992">2. TeleMetrum and TeleMega Accelerometers</a></span></dt></dl></dd><dt><span class="appendix"><a href="#idp38962096">D. Release Notes</a></span></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>4.1. <a href="#idp32513424">Altus Metrum Electronics</a></dt><dt>4.2. <a href="#idp35629456">Altus Metrum Boards</a></dt><dt>4.3. <a href="#idp38119136">TeleMetrum Screw Terminals</a></dt><dt>4.4. <a href="#idp38148752">TeleMini v1.0 Connections</a></dt><dt>4.5. <a href="#idp38177664">TeleMini v2.0 Connections</a></dt><dt>4.6. <a href="#idp32434928">EasyMini Connections</a></dt><dt>4.7. <a href="#idp38249328">TeleMega Screw Terminals</a></dt><dt>4.8. <a href="#idp38292640">Data Storage on Altus Metrum altimeters</a></dt><dt>5.1. <a href="#idp38332800">AltOS Modes</a></dt><dt>5.2. <a href="#idp38369888">Pad/Idle Indications</a></dt><dt>5.3. <a href="#idp38420192">Altus Metrum APRS Comments</a></dt></dl></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp32655168"></a>Chapter 1. Introduction and Overview</h1></div></div></div><p>
76       Welcome to the Altus Metrum community!  Our circuits and software reflect
77       our passion for both hobby rocketry and Free Software.  We hope their
78       capabilities and performance will delight you in every way, but by
79       releasing all of our hardware and software designs under open licenses,
80       we also hope to empower you to take as active a role in our collective
81       future as you wish!
82     </p><p>
83       The first device created for our community was TeleMetrum, a dual
84       deploy altimeter with fully integrated GPS and radio telemetry
85       as standard features, and a &#8220;companion interface&#8221; that will
86       support optional capabilities in the future. The latest version
87       of TeleMetrum, v2.0, has all of the same features but with
88       improved sensors and radio to offer increased performance.
89     </p><p>
90       Our second device was TeleMini, a dual deploy altimeter with
91       radio telemetry and radio direction finding. The first version
92       of this device was only 13mm by 38mm (½ inch by 1½ inches) and
93       could fit easily in an 18mm air-frame. The latest version, v2.0,
94       includes a beeper, USB data download and extended on-board
95       flight logging, along with an improved barometric sensor.
96     </p><p>
97       TeleMega is our most sophisticated device, including six pyro
98       channels (four of which are fully programmable), integrated GPS,
99       integrated gyroscopes for staging/air-start inhibit and high
100       performance telemetry.
101     </p><p>
102       EasyMini is a dual-deploy altimeter with logging and built-in
103       USB data download.
104     </p><p>
105       TeleDongle was our first ground station, providing a USB to RF
106       interfaces for communicating with the altimeters. Combined with
107       your choice of antenna and notebook computer, TeleDongle and our
108       associated user interface software form a complete ground
109       station capable of logging and displaying in-flight telemetry,
110       aiding rocket recovery, then processing and archiving flight
111       data for analysis and review.
112     </p><p>
113       For a slightly more portable ground station experience that also
114       provides direct rocket recovery support, TeleBT offers flight
115       monitoring and data logging using a  Bluetooth&#8482; connection between
116       the receiver and an Android device that has the AltosDroid
117       application installed from the Google Play store.
118     </p><p>
119       More products will be added to the Altus Metrum family over time, and
120       we currently envision that this will be a single, comprehensive manual
121       for the entire product family.
122     </p></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp32662928"></a>Chapter 2. Getting Started</h1></div></div></div><p>
123       The first thing to do after you check the inventory of parts in your
124       &#8220;starter kit&#8221; is to charge the battery.
125     </p><p>
126       For TeleMetrum and TeleMega, the battery can be charged by plugging it into the
127       corresponding socket of the device and then using the USB
128       cable to plug the flight computer into your computer's USB socket. The
129       on-board circuitry will charge the battery whenever it is plugged
130       in, because the on-off switch does NOT control the
131       charging circuitry.
132     </p><p>
133       On TeleMetrum v1 boards, when the GPS chip is initially
134       searching for satellites, TeleMetrum will consume more current
135       than it pulls from the USB port, so the battery must be
136       attached in order to get satellite lock.  Once GPS is locked,
137       the current consumption goes back down enough to enable charging
138       while running. So it's a good idea to fully charge the battery
139       as your first item of business so there is no issue getting and
140       maintaining satellite lock.  The yellow charge indicator led
141       will go out when the battery is nearly full and the charger goes
142       to trickle charge. It can take several hours to fully recharge a
143       deeply discharged battery.
144     </p><p>
145       TeleMetrum v2.0 and TeleMega use a higher power battery charger,
146       allowing them to charge the battery while running the board at
147       maximum power. When the battery is charging, or when the board
148       is consuming a lot of power, the red LED will be lit. When the
149       battery is fully charged, the green LED will be lit. When the
150       battery is damaged or missing, both LEDs will be lit, which
151       appears yellow.
152     </p><p>
153       The Lithium Polymer TeleMini and EasyMini battery can be charged by
154       disconnecting it from the board and plugging it into a
155       standalone battery charger such as the LipoCharger product
156       included in TeleMini Starter Kits, and connecting that via a USB
157       cable to a laptop or other USB power source.
158     </p><p>
159       You can also choose to use another battery with TeleMini v2.0
160       and EasyMini, anything supplying between 4 and 12 volts should
161       work fine (like a standard 9V battery), but if you are planning
162       to fire pyro charges, ground testing is required to verify that
163       the battery supplies enough current to fire your chosen e-matches.
164     </p><p>
165       The other active device in the starter kit is the TeleDongle USB to
166       RF interface.  If you plug it in to your Mac or Linux computer it should
167       &#8220;just work&#8221;, showing up as a serial port device.  Windows systems need
168       driver information that is part of the AltOS download to know that the
169       existing USB modem driver will work.  We therefore recommend installing
170       our software before plugging in TeleDongle if you are using a Windows
171       computer.  If you are using an older version of Linux and are having 
172       problems, try moving to a fresher kernel (2.6.33 or newer). 
173     </p><p>
174       Next you should obtain and install the AltOS software.  The AltOS
175       distribution includes the AltosUI ground station program, current 
176       firmware
177       images for all of the hardware, and a number of standalone
178       utilities that are rarely needed.  Pre-built binary packages are
179       available for Linux, Microsoft Windows, and recent MacOSX
180       versions.  Full source code and build instructions are also
181       available.  The latest version may always be downloaded from
182       <a class="ulink" href="http://altusmetrum.org/AltOS" target="_top">http://altusmetrum.org/AltOS</a>.
183     </p><p>
184       If you're using a TeleBT instead of the TeleDongle, you'll want to 
185       install the AltosDroid application from the Google Play store on an 
186       Android device. You don't need a data plan to use AltosDroid, but 
187       without network access, the Map view will be less useful as it
188       won't contain any map data. You can also use TeleBT connected
189       over USB with your laptop computer; it acts exactly like a
190       TeleDongle. Anywhere this manual talks about TeleDongle, you can
191       also read that as 'and TeleBT when connected via USB'.
192     </p></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp32491744"></a>Chapter 3. Handling Precautions</h1></div></div></div><p>
193       All Altus Metrum products are sophisticated electronic devices.  
194       When handled gently and properly installed in an air-frame, they
195       will deliver impressive results.  However, as with all electronic 
196       devices, there are some precautions you must take.
197     </p><p>
198       The Lithium Polymer rechargeable batteries have an
199       extraordinary power density.  This is great because we can fly with
200       much less battery mass than if we used alkaline batteries or previous
201       generation rechargeable batteries... but if they are punctured
202       or their leads are allowed to short, they can and will release their
203       energy very rapidly!
204       Thus we recommend that you take some care when handling our batteries
205       and consider giving them some extra protection in your air-frame.  We
206       often wrap them in suitable scraps of closed-cell packing foam before
207       strapping them down, for example.
208     </p><p>
209       The barometric sensors used on all of our flight computers are 
210       sensitive to sunlight.  In normal mounting situations, the baro sensor
211       and all of the other surface mount components
212       are &#8220;down&#8221; towards whatever the underlying mounting surface is, so
213       this is not normally a problem.  Please consider this when designing an 
214       installation in an air-frame with a see-through plastic payload bay.  It
215       is particularly important to
216       consider this with TeleMini v1.0, both because the baro sensor is on the
217       &#8220;top&#8221; of the board, and because many model rockets with payload bays
218       use clear plastic for the payload bay!  Replacing these with an opaque
219       cardboard tube, painting them, or wrapping them with a layer of masking
220       tape are all reasonable approaches to keep the sensor out of direct
221       sunlight.
222     </p><p>
223       The barometric sensor sampling port must be able to &#8220;breathe&#8221;,
224       both by not being covered by foam or tape or other materials that might
225       directly block the hole on the top of the sensor, and also by having a
226       suitable static vent to outside air.
227     </p><p>
228       As with all other rocketry electronics, Altus Metrum altimeters must 
229       be protected from exposure to corrosive motor exhaust and ejection 
230       charge gasses.
231     </p></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp32497232"></a>Chapter 4. Altus Metrum Hardware</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp32497904">1. General Usage Instructions</a></span></dt><dd><dl><dt><span class="section"><a href="#idp32499872">1.1. Hooking Up Lithium Polymer Batteries</a></span></dt><dt><span class="section"><a href="#idp32502832">1.2. Hooking Up Pyro Charges</a></span></dt><dt><span class="section"><a href="#idp32504912">1.3. Hooking Up a Power Switch</a></span></dt><dt><span class="section"><a href="#idp32508128">1.4. Using a Separate Pyro Battery</a></span></dt><dt><span class="section"><a href="#idp32510640">1.5. Using a Different Kind of Battery</a></span></dt></dl></dd><dt><span class="section"><a href="#idp32512368">2. Specifications</a></span></dt><dt><span class="section"><a href="#idp38112928">3. TeleMetrum</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38117824">3.1. TeleMetrum Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38137040">3.2. Using a Separate Pyro Battery with TeleMetrum</a></span></dt><dt><span class="section"><a href="#idp38140288">3.3. Using an Active Switch with TeleMetrum</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38142416">4. TeleMini v1.0</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38147312">4.1. TeleMini v1.0 Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38166656">4.2. Using a Separate Pyro Battery with TeleMini v1.0</a></span></dt><dt><span class="section"><a href="#idp38170032">4.3. Using an Active Switch with TeleMini v1.0</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38172240">5. TeleMini v2.0</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38176256">5.1. TeleMini v2.0 Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38198640">5.2. Using a Separate Pyro Battery with TeleMini v2.0</a></span></dt><dt><span class="section"><a href="#idp38201840">5.3. Using an Active Switch with TeleMini v2.0</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38203936">6. EasyMini</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38207792">6.1. EasyMini Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38238912">6.2. Using a Separate Pyro Battery with EasyMini</a></span></dt><dt><span class="section"><a href="#idp38242096">6.3. Using an Active Switch with EasyMini</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38244192">7. TeleMega</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38248160">7.1. TeleMega Screw Terminals</a></span></dt><dt><span class="section"><a href="#idp38285664">7.2. Using a Separate Pyro Battery with TeleMega</a></span></dt><dt><span class="section"><a href="#idp38287264">7.3. Using Only One Battery With TeleMega</a></span></dt><dt><span class="section"><a href="#idp38289184">7.4. Using an Active Switch with TeleMega</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38291232">8. Flight Data Recording</a></span></dt><dt><span class="section"><a href="#idp38320064">9. Installation</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp32497904"></a>1. General Usage Instructions</h2></div></div></div><p>
232         Here are general instructions for hooking up an Altus Metrum
233         flight computer. Instructions specific to each model will be
234         found in the section devoted to that model below.
235       </p><p>
236         To prevent electrical interference from affecting the
237         operation of the flight computer, it's important to always
238         twist pairs of wires connected to the board. Twist the switch
239         leads, the pyro leads and the battery leads. This reduces
240         interference through a mechanism called common mode rejection.
241       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp32499872"></a>1.1. Hooking Up Lithium Polymer Batteries</h3></div></div></div><p>
242           All Altus Metrum flight computers have a two pin JST PH
243           series connector to connect up a single-cell Lithium Polymer
244           cell (3.7V nominal). You can purchase matching batteries
245           from the Altus Metrum store, or other vendors, or you can
246           make your own. Pin 1 of the connector is positive, pin 2 is
247           negative. Spark Fun sells a cable with the connector
248           attached, which they call a <a class="ulink" href="https://www.sparkfun.com/products/9914" target="_top">JST Jumper 2
249           Wire Assembly</a>.
250         </p><p>
251           Many RC vendors also sell lithium polymer batteries with
252           this same connector. All that we have found use the opposite
253           polarity, and if you use them that way, you will damage or
254           destroy the flight computer.
255         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp32502832"></a>1.2. Hooking Up Pyro Charges</h3></div></div></div><p>
256           Altus Metrum flight computers always have two screws for
257           each pyro charge. This means you shouldn't need to put two
258           wires into a screw terminal or connect leads from pyro
259           charges together externally.
260         </p><p>
261           On the flight computer, one lead from each charge is hooked
262           to the positive battery terminal through the power switch.
263           The other lead is connected through the pyro circuit, which
264           is connected to the negative battery terminal when the pyro
265           circuit is fired.
266         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp32504912"></a>1.3. Hooking Up a Power Switch</h3></div></div></div><p>
267           Altus Metrum flight computers need an external power switch
268           to turn them on. This disconnects both the computer and the
269           pyro charges from the battery, preventing the charges from
270           firing when in the Off position. The switch is in-line with
271           the positive battery terminal.
272         </p><div class="section"><div class="titlepage"><div><div><h4 class="title"><a name="idp32506288"></a>1.3.1. Using an External Active Switch Circuit</h4></div></div></div><p>
273             You can use an active switch circuit, such as the
274             Featherweight Magnetic Switch, with any Altus Metrum
275             flight computer. These require three connections, one to
276             the battery, one to the positive power input on the flight
277             computer and one to ground. Find instructions on how to
278             hook these up for each flight computer below. The follow
279             the instructions that come with your active switch to
280             connect it up.
281           </p></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp32508128"></a>1.4. Using a Separate Pyro Battery</h3></div></div></div><p>
282           As mentioned above in the section on hooking up pyro
283           charges, one lead for each of the pyro charges is connected
284           through the power switch directly to the positive battery
285           terminal. The other lead is connected to the pyro circuit,
286           which connects it to the negative battery terminal when the
287           pyro circuit is fired. The pyro circuit on all of the flight
288           computers is designed to handle up to 16V.
289         </p><p>
290           To use a separate pyro battery, connect the negative pyro
291           battery terminal to the flight computer ground terminal,
292           the positive battery terminal to the igniter and the other
293           igniter lead to the negative pyro terminal on the flight
294           computer. When the pyro channel fires, it will complete the
295           circuit between the negative pyro terminal and the ground
296           terminal, firing the igniter. Specific instructions on how
297           to hook this up will be found in each section below.
298         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp32510640"></a>1.5. Using a Different Kind of Battery</h3></div></div></div><p>
299           EasyMini and TeleMini v2 are designed to use either a
300           lithium polymer battery or any other battery producing
301           between 4 and 12 volts, such as a rectangular 9V
302           battery. TeleMega and TeleMetrum are not designed for this,
303           and must only be powered by a lithium polymer battery. Find
304           instructions on how to use other batteries in the EasyMini
305           and TeleMini sections below.
306         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp32512368"></a>2. Specifications</h2></div></div></div><p>
307         Here's the full set of Altus Metrum products, both in
308         production and retired.
309       </p><div class="table"><a name="idp32513424"></a><p class="title"><b>Table 4.1. Altus Metrum Electronics</b></p><div class="table-contents"><table summary="Altus Metrum Electronics" border="1"><colgroup><col align="center" class="Device"><col align="center" class="Barometer"><col align="center" class="Z-axis accelerometer"><col align="center" class="GPS"><col align="center" class="3D sensors"><col align="center" class="Storage"><col align="center" class="RF"><col align="center" class="Battery"></colgroup><thead><tr><th align="center">Device</th><th align="center">Barometer</th><th align="center">Z-axis accelerometer</th><th align="center">GPS</th><th align="center">3D sensors</th><th align="center">Storage</th><th align="center">RF Output</th><th align="center">Battery</th></tr></thead><tbody><tr><td align="center">TeleMetrum v1.0</td><td align="center"><p>MP3H6115 10km (33k')</p></td><td align="center"><p>MMA2202 50g</p></td><td align="center">SkyTraq</td><td align="center">-</td><td align="center">1MB</td><td align="center">10mW</td><td align="center">3.7V</td></tr><tr><td align="center">TeleMetrum v1.1</td><td align="center"><p>MP3H6115 10km (33k')</p></td><td align="center"><p>MMA2202 50g</p></td><td align="center">SkyTraq</td><td align="center">-</td><td align="center">2MB</td><td align="center">10mW</td><td align="center">3.7V</td></tr><tr><td align="center">TeleMetrum v1.2</td><td align="center"><p>MP3H6115 10km (33k')</p></td><td align="center"><p>ADXL78 70g</p></td><td align="center">SkyTraq</td><td align="center">-</td><td align="center">2MB</td><td align="center">10mW</td><td align="center">3.7V</td></tr><tr><td align="center">TeleMetrum v2.0</td><td align="center"><p>MS5607 30km (100k')</p></td><td align="center"><p>MMA6555 102g</p></td><td align="center">uBlox Max-7Q</td><td align="center">-</td><td align="center">8MB</td><td align="center">40mW</td><td align="center">3.7V</td></tr><tr><td align="center"><p>TeleMini v1.0</p></td><td align="center"><p>MP3H6115 10km (33k')</p></td><td align="center">-</td><td align="center">-</td><td align="center">-</td><td align="center">5kB</td><td align="center">10mW</td><td align="center">3.7V</td></tr><tr><td align="center">TeleMini v2.0</td><td align="center"><p>MS5607 30km (100k')</p></td><td align="center">-</td><td align="center">-</td><td align="center">-</td><td align="center">1MB</td><td align="center">10mW</td><td align="center">3.7-12V</td></tr><tr><td align="center">EasyMini v1.0</td><td align="center"><p>MS5607 30km (100k')</p></td><td align="center">-</td><td align="center">-</td><td align="center">-</td><td align="center">1MB</td><td align="center">-</td><td align="center">3.7-12V</td></tr><tr><td align="center">TeleMega v1.0</td><td align="center"><p>MS5607 30km (100k')</p></td><td align="center"><p>MMA6555 102g</p></td><td align="center">uBlox Max-7Q</td><td align="center"><p>MPU6000 HMC5883</p></td><td align="center">8MB</td><td align="center">40mW</td><td align="center">3.7V</td></tr></tbody></table></div></div><br class="table-break"><div class="table"><a name="idp35629456"></a><p class="title"><b>Table 4.2. Altus Metrum Boards</b></p><div class="table-contents"><table summary="Altus Metrum Boards" border="1"><colgroup><col align="center" class="Device"><col align="center" class="Connectors"><col align="center" class="Screw Terminals"><col align="center" class="Width"><col align="center" class="Length"><col align="center" class="Tube Size"></colgroup><thead><tr><th align="center">Device</th><th align="center">Connectors</th><th align="center">Screw Terminals</th><th align="center">Width</th><th align="center">Length</th><th align="center">Tube Size</th></tr></thead><tbody><tr><td align="center">TeleMetrum</td><td align="center"><p>
310                 Antenna
311                 Debug
312                 Companion
313                 USB
314                 Battery
315               </p></td><td align="center"><p>Apogee pyro Main pyro Switch</p></td><td align="center">1 inch (2.54cm)</td><td align="center">2 ¾ inch (6.99cm)</td><td align="center">29mm coupler</td></tr><tr><td align="center"><p>TeleMini v1.0</p></td><td align="center"><p>
316                 Antenna
317                 Debug
318                 Battery
319               </p></td><td align="center"><p>
320                 Apogee pyro 
321                 Main pyro
322               </p></td><td align="center">½ inch (1.27cm)</td><td align="center">1½ inch (3.81cm)</td><td align="center">18mm coupler</td></tr><tr><td align="center">TeleMini v2.0</td><td align="center"><p>
323                 Antenna
324                 Debug
325                 USB
326                 Battery
327               </p></td><td align="center"><p>
328                 Apogee pyro 
329                 Main pyro 
330                 Battery 
331                 Switch
332                 </p></td><td align="center">0.8 inch (2.03cm)</td><td align="center">1½ inch (3.81cm)</td><td align="center">24mm coupler</td></tr><tr><td align="center">EasyMini</td><td align="center"><p>
333                 Debug
334                 USB
335                 Battery
336               </p></td><td align="center"><p>
337                 Apogee pyro 
338                 Main pyro 
339                 Battery 
340                 Switch
341                 </p></td><td align="center">0.8 inch (2.03cm)</td><td align="center">1½ inch (3.81cm)</td><td align="center">24mm coupler</td></tr><tr><td align="center">TeleMega</td><td align="center"><p>
342                 Antenna
343                 Debug
344                 Companion
345                 USB
346                 Battery
347               </p></td><td align="center"><p>
348                 Apogee pyro 
349                 Main pyro
350                 Pyro A-D
351                 Switch
352                 Pyro battery
353               </p></td><td align="center">1¼ inch (3.18cm)</td><td align="center">3¼ inch (8.26cm)</td><td align="center">38mm coupler</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38112928"></a>3. TeleMetrum</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="telemetrum-v1.1-thside.jpg" width="495"></td></tr></table></div></div><p>
354         TeleMetrum is a 1 inch by 2¾ inch circuit board.  It was designed to
355         fit inside coupler for 29mm air-frame tubing, but using it in a tube that
356         small in diameter may require some creativity in mounting and wiring
357         to succeed!  The presence of an accelerometer means TeleMetrum should
358         be aligned along the flight axis of the airframe, and by default the ¼
359         wave UHF wire antenna should be on the nose-cone end of the board.  The
360         antenna wire is about 7 inches long, and wiring for a power switch and
361         the e-matches for apogee and main ejection charges depart from the
362         fin can end of the board, meaning an ideal &#8220;simple&#8221; avionics
363         bay for TeleMetrum should have at least 10 inches of interior length.
364       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38117824"></a>3.1. TeleMetrum Screw Terminals</h3></div></div></div><p>
365           TeleMetrum has six screw terminals on the end of the board
366           opposite the telemetry antenna. Two are for the power
367           switch, and two each for the apogee and main igniter
368           circuits. Using the picture above and starting from the top,
369           the terminals are as follows:
370         </p><div class="table"><a name="idp38119136"></a><p class="title"><b>Table 4.3. TeleMetrum Screw Terminals</b></p><div class="table-contents"><table summary="TeleMetrum Screw Terminals" border="1"><colgroup><col align="center" class="Pin #"><col align="center" class="Pin Name"><col align="left" class="Description"></colgroup><thead><tr><th align="center">Terminal #</th><th align="center">Terminal Name</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">Switch Output</td><td align="left">Switch connection to flight computer</td></tr><tr><td align="center">2</td><td align="center">Switch Input</td><td align="left">Switch connection to positive battery terminal</td></tr><tr><td align="center">3</td><td align="center">Main +</td><td align="left">Main pyro channel common connection to battery +</td></tr><tr><td align="center">4</td><td align="center">Main -</td><td align="left">Main pyro channel connection to pyro circuit</td></tr><tr><td align="center">5</td><td align="center">Apogee +</td><td align="left">Apogee pyro channel common connection to battery +</td></tr><tr><td align="center">6</td><td align="center">Apogee -</td><td align="left">Apogee pyro channel connection to pyro circuit</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38137040"></a>3.2. Using a Separate Pyro Battery with TeleMetrum</h3></div></div></div><p>
371           As described above, using an external pyro battery involves
372           connecting the negative battery terminal to the flight
373           computer ground, connecting the positive battery terminal to
374           one of the igniter leads and connecting the other igniter
375           lead to the per-channel pyro circuit connection.
376         </p><p>
377           To connect the negative battery terminal to the TeleMetrum
378           ground, insert a small piece of wire, 24 to 28 gauge
379           stranded, into the GND hole just above the screw terminal
380           strip and solder it in place.
381         </p><p>
382           Connecting the positive battery terminal to the pyro
383           charges must be done separate from TeleMetrum, by soldering
384           them together or using some other connector.
385         </p><p>
386           The other lead from each pyro charge is then inserted into
387           the appropriate per-pyro channel screw terminal (terminal 4 for the
388           Main charge, terminal 6 for the Apogee charge).
389         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38140288"></a>3.3. Using an Active Switch with TeleMetrum</h3></div></div></div><p>
390           As explained above, an external active switch requires three
391           connections, one to the positive battery terminal, one to
392           the flight computer positive input and one to ground.
393         </p><p>
394           The positive battery terminal is available on screw terminal
395           2, the positive flight computer input is on terminal 1. To
396           hook a lead to ground, solder a piece of wire, 24 to 28
397           gauge stranded, to the GND hole just above terminal 1.
398         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38142416"></a>4. TeleMini v1.0</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="telemini-v1-top.jpg" width="495"></td></tr></table></div></div><p>
399         TeleMini v1.0 is ½ inches by 1½ inches.  It was
400         designed to fit inside an 18mm air-frame tube, but using it in
401         a tube that small in diameter may require some creativity in
402         mounting and wiring to succeed!  Since there is no
403         accelerometer, TeleMini can be mounted in any convenient
404         orientation.  The default ¼ wave UHF wire antenna attached to
405         the center of one end of the board is about 7 inches long. Two
406         wires for the power switch are connected to holes in the
407         middle of the board. Screw terminals for the e-matches for
408         apogee and main ejection charges depart from the other end of
409         the board, meaning an ideal &#8220;simple&#8221; avionics bay for TeleMini
410         should have at least 9 inches of interior length.
411       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38147312"></a>4.1. TeleMini v1.0 Screw Terminals</h3></div></div></div><p>
412           TeleMini v1.0 has four screw terminals on the end of the
413           board opposite the telemetry antenna. Two are for the apogee
414           and two are for main igniter circuits. There are also wires
415           soldered to the board for the power switch.  Using the
416           picture above and starting from the top for the terminals
417           and from the left for the power switch wires, the
418           connections are as follows:
419         </p><div class="table"><a name="idp38148752"></a><p class="title"><b>Table 4.4. TeleMini v1.0 Connections</b></p><div class="table-contents"><table summary="TeleMini v1.0 Connections" border="1"><colgroup><col align="center" class="Pin #"><col align="center" class="Pin Name"><col align="left" class="Description"></colgroup><thead><tr><th align="center">Terminal #</th><th align="center">Terminal Name</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">Apogee -</td><td align="left">Apogee pyro channel connection to pyro circuit</td></tr><tr><td align="center">2</td><td align="center">Apogee +</td><td align="left">Apogee pyro channel common connection to battery +</td></tr><tr><td align="center">3</td><td align="center">Main -</td><td align="left">Main pyro channel connection to pyro circuit</td></tr><tr><td align="center">4</td><td align="center">Main +</td><td align="left">Main pyro channel common connection to battery +</td></tr><tr><td align="center">Left</td><td align="center">Switch Output</td><td align="left">Switch connection to flight computer</td></tr><tr><td align="center">Right</td><td align="center">Switch Input</td><td align="left">Switch connection to positive battery terminal</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38166656"></a>4.2. Using a Separate Pyro Battery with TeleMini v1.0</h3></div></div></div><p>
420           As described above, using an external pyro battery involves
421           connecting the negative battery terminal to the flight
422           computer ground, connecting the positive battery terminal to
423           one of the igniter leads and connecting the other igniter
424           lead to the per-channel pyro circuit connection. Because
425           there is no solid ground connection to use on TeleMini, this
426           is not recommended.
427         </p><p>
428           The only available ground connection on TeleMini v1.0 are
429           the two mounting holes next to the telemetry
430           antenna. Somehow connect a small piece of wire to one of
431           those holes and hook it to the negative pyro battery terminal.
432         </p><p>
433           Connecting the positive battery terminal to the pyro
434           charges must be done separate from TeleMini v1.0, by soldering
435           them together or using some other connector.
436         </p><p>
437           The other lead from each pyro charge is then inserted into
438           the appropriate per-pyro channel screw terminal (terminal 3 for the
439           Main charge, terminal 1 for the Apogee charge).
440         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38170032"></a>4.3. Using an Active Switch with TeleMini v1.0</h3></div></div></div><p>
441           As explained above, an external active switch requires three
442           connections, one to the positive battery terminal, one to
443           the flight computer positive input and one to ground. Again,
444           because TeleMini doesn't have any good ground connection,
445           this is not recommended.
446         </p><p>
447           The positive battery terminal is available on the Right
448           power switch wire, the positive flight computer input is on
449           the left power switch wire. Hook a lead to either of the
450           mounting holes for a ground connection.
451         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38172240"></a>5. TeleMini v2.0</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="telemini-v2-top.jpg" width="495"></td></tr></table></div></div><p>
452         TeleMini v2.0 is 0.8 inches by 1½ inches. It adds more
453         on-board data logging memory, a built-in USB connector and
454         screw terminals for the battery and power switch. The larger
455         board fits in a 24mm coupler. There's also a battery connector
456         for a LiPo battery if you want to use one of those.
457       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38176256"></a>5.1. TeleMini v2.0 Screw Terminals</h3></div></div></div><p>
458           TeleMini v2.0 has two sets of four screw terminals on the end of the
459           board opposite the telemetry antenna. Using the picture
460           above, the top four have connections for the main pyro
461           circuit and an external battery and the bottom four have
462           connections for the apogee pyro circuit and the power
463           switch. Counting from the left, the connections are as follows:
464         </p><div class="table"><a name="idp38177664"></a><p class="title"><b>Table 4.5. TeleMini v2.0 Connections</b></p><div class="table-contents"><table summary="TeleMini v2.0 Connections" border="1"><colgroup><col align="center" class="Pin #"><col align="center" class="Pin Name"><col align="left" class="Description"></colgroup><thead><tr><th align="center">Terminal #</th><th align="center">Terminal Name</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Top 1</td><td align="center">Main -</td><td align="left">Main pyro channel connection to pyro circuit</td></tr><tr><td align="center">Top 2</td><td align="center">Main +</td><td align="left">Main pyro channel common connection to battery +</td></tr><tr><td align="center">Top 3</td><td align="center">Battery +</td><td align="left">Positive external battery terminal</td></tr><tr><td align="center">Top 4</td><td align="center">Battery -</td><td align="left">Negative external battery terminal</td></tr><tr><td align="center">Bottom 1</td><td align="center">Apogee -</td><td align="left">Apogee pyro channel connection to pyro circuit</td></tr><tr><td align="center">Bottom 2</td><td align="center">Apogee +</td><td align="left">Apogee pyro channel common connection to
465                 battery +</td></tr><tr><td align="center">Bottom 3</td><td align="center">Switch Output</td><td align="left">Switch connection to flight computer</td></tr><tr><td align="center">Bottom 4</td><td align="center">Switch Input</td><td align="left">Switch connection to positive battery terminal</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38198640"></a>5.2. Using a Separate Pyro Battery with TeleMini v2.0</h3></div></div></div><p>
466           As described above, using an external pyro battery involves
467           connecting the negative battery terminal to the flight
468           computer ground, connecting the positive battery terminal to
469           one of the igniter leads and connecting the other igniter
470           lead to the per-channel pyro circuit connection.
471         </p><p>
472           To connect the negative pyro battery terminal to TeleMini
473           ground, connect it to the negative external battery
474           connection, top terminal 4.
475         </p><p>
476           Connecting the positive battery terminal to the pyro
477           charges must be done separate from TeleMini v2.0, by soldering
478           them together or using some other connector.
479         </p><p>
480           The other lead from each pyro charge is then inserted into
481           the appropriate per-pyro channel screw terminal (top
482           terminal 1 for the Main charge, bottom terminal 1 for the
483           Apogee charge).
484         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38201840"></a>5.3. Using an Active Switch with TeleMini v2.0</h3></div></div></div><p>
485           As explained above, an external active switch requires three
486           connections, one to the positive battery terminal, one to
487           the flight computer positive input and one to ground. Use
488           the negative external battery connection, top terminal 4 for
489           ground.
490         </p><p>
491           The positive battery terminal is available on bottom
492           terminal 4, the positive flight computer input is on the
493           bottom terminal 3.
494         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38203936"></a>6. EasyMini</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="easymini-top.jpg" width="495"></td></tr></table></div></div><p>
495         EasyMini is built on a 0.8 inch by 1½ inch circuit board. It's
496         designed to fit in a 24mm coupler tube. The connectors and
497         screw terminals match TeleMini v2.0, so you can easily swap between
498         EasyMini and TeleMini.
499       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38207792"></a>6.1. EasyMini Screw Terminals</h3></div></div></div><p>
500           EasyMini has two sets of four screw terminals on the end of the
501           board opposite the telemetry antenna. Using the picture
502           above, the top four have connections for the main pyro
503           circuit and an external battery and the bottom four have
504           connections for the apogee pyro circuit and the power
505           switch. Counting from the left, the connections are as follows:
506         </p><div class="table"><a name="idp32434928"></a><p class="title"><b>Table 4.6. EasyMini Connections</b></p><div class="table-contents"><table summary="EasyMini Connections" border="1"><colgroup><col align="center" class="Pin #"><col align="center" class="Pin Name"><col align="left" class="Description"></colgroup><thead><tr><th align="center">Terminal #</th><th align="center">Terminal Name</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Top 1</td><td align="center">Main -</td><td align="left">Main pyro channel connection to pyro circuit</td></tr><tr><td align="center">Top 2</td><td align="center">Main +</td><td align="left">Main pyro channel common connection to battery +</td></tr><tr><td align="center">Top 3</td><td align="center">Battery +</td><td align="left">Positive external battery terminal</td></tr><tr><td align="center">Top 4</td><td align="center">Battery -</td><td align="left">Negative external battery terminal</td></tr><tr><td align="center">Bottom 1</td><td align="center">Apogee -</td><td align="left">Apogee pyro channel connection to pyro circuit</td></tr><tr><td align="center">Bottom 2</td><td align="center">Apogee +</td><td align="left">Apogee pyro channel common connection to
507                 battery +</td></tr><tr><td align="center">Bottom 3</td><td align="center">Switch Output</td><td align="left">Switch connection to flight computer</td></tr><tr><td align="center">Bottom 4</td><td align="center">Switch Input</td><td align="left">Switch connection to positive battery terminal</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38238912"></a>6.2. Using a Separate Pyro Battery with EasyMini</h3></div></div></div><p>
508           As described above, using an external pyro battery involves
509           connecting the negative battery terminal to the flight
510           computer ground, connecting the positive battery terminal to
511           one of the igniter leads and connecting the other igniter
512           lead to the per-channel pyro circuit connection.
513         </p><p>
514           To connect the negative pyro battery terminal to TeleMini
515           ground, connect it to the negative external battery
516           connection, top terminal 4.
517         </p><p>
518           Connecting the positive battery terminal to the pyro
519           charges must be done separate from EasyMini, by soldering
520           them together or using some other connector.
521         </p><p>
522           The other lead from each pyro charge is then inserted into
523           the appropriate per-pyro channel screw terminal (top
524           terminal 1 for the Main charge, bottom terminal 1 for the
525           Apogee charge).
526         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38242096"></a>6.3. Using an Active Switch with EasyMini</h3></div></div></div><p>
527           As explained above, an external active switch requires three
528           connections, one to the positive battery terminal, one to
529           the flight computer positive input and one to ground. Use
530           the negative external battery connection, top terminal 4 for
531           ground.
532         </p><p>
533           The positive battery terminal is available on bottom
534           terminal 4, the positive flight computer input is on the
535           bottom terminal 3.
536         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38244192"></a>7. TeleMega</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="telemega-v1.0-top.jpg" width="495"></td></tr></table></div></div><p>
537         TeleMega is a 1¼ inch by 3¼ inch circuit board. It was
538         designed to easily fit in a 38mm coupler. Like TeleMetrum,
539         TeleMega has an accelerometer and so it must be mounted so that
540         the board is aligned with the flight axis. It can be mounted
541         either antenna up or down.
542       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38248160"></a>7.1. TeleMega Screw Terminals</h3></div></div></div><p>
543           TeleMega has two sets of nine screw terminals on the end of
544           the board opposite the telemetry antenna. They are as follows:
545         </p><div class="table"><a name="idp38249328"></a><p class="title"><b>Table 4.7. TeleMega Screw Terminals</b></p><div class="table-contents"><table summary="TeleMega Screw Terminals" border="1"><colgroup><col align="center" class="Pin #"><col align="center" class="Pin Name"><col align="left" class="Description"></colgroup><thead><tr><th align="center">Terminal #</th><th align="center">Terminal Name</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Top 1</td><td align="center">Switch Input</td><td align="left">Switch connection to positive battery terminal</td></tr><tr><td align="center">Top 2</td><td align="center">Switch Output</td><td align="left">Switch connection to flight computer</td></tr><tr><td align="center">Top 3</td><td align="center">GND</td><td align="left">Ground connection for use with external active switch</td></tr><tr><td align="center">Top 4</td><td align="center">Main -</td><td align="left">Main pyro channel connection to pyro circuit</td></tr><tr><td align="center">Top 5</td><td align="center">Main +</td><td align="left">Main pyro channel common connection to battery +</td></tr><tr><td align="center">Top 6</td><td align="center">Apogee -</td><td align="left">Apogee pyro channel connection to pyro circuit</td></tr><tr><td align="center">Top 7</td><td align="center">Apogee +</td><td align="left">Apogee pyro channel common connection to battery +</td></tr><tr><td align="center">Top 8</td><td align="center">D -</td><td align="left">D pyro channel connection to pyro circuit</td></tr><tr><td align="center">Top 9</td><td align="center">D +</td><td align="left">D pyro channel common connection to battery +</td></tr><tr><td align="center">Bottom 1</td><td align="center">GND</td><td align="left">Ground connection for negative pyro battery terminal</td></tr><tr><td align="center">Bottom 2</td><td align="center">Pyro</td><td align="left">Positive pyro battery terminal</td></tr><tr><td align="center">Bottom 3</td><td align="center">Lipo</td><td align="left">
546                   Power switch output. Use to connect main battery to
547                   pyro battery input
548                 </td></tr><tr><td align="center">Bottom 4</td><td align="center">A -</td><td align="left">A pyro channel connection to pyro circuit</td></tr><tr><td align="center">Bottom 5</td><td align="center">A +</td><td align="left">A pyro channel common connection to battery +</td></tr><tr><td align="center">Bottom 6</td><td align="center">B -</td><td align="left">B pyro channel connection to pyro circuit</td></tr><tr><td align="center">Bottom 7</td><td align="center">B +</td><td align="left">B pyro channel common connection to battery +</td></tr><tr><td align="center">Bottom 8</td><td align="center">C -</td><td align="left">C pyro channel connection to pyro circuit</td></tr><tr><td align="center">Bottom 9</td><td align="center">C +</td><td align="left">C pyro channel common connection to battery +</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38285664"></a>7.2. Using a Separate Pyro Battery with TeleMega</h3></div></div></div><p>
549           TeleMega provides explicit support for an external pyro
550           battery. All that is required is to remove the jumper
551           between the lipo terminal (Bottom 3) and the pyro terminal
552           (Bottom 2). Then hook the negative pyro battery terminal to ground
553           (Bottom 1) and the positive pyro battery to the pyro battery
554           input (Bottom 2). You can then use the existing pyro screw
555           terminals to hook up all of the pyro charges.
556         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38287264"></a>7.3. Using Only One Battery With TeleMega</h3></div></div></div><p>
557           Because TeleMega has built-in support for a separate pyro
558           battery, if you want to fly with just one battery running
559           both the computer and firing the charges, you need to
560           connect the flight computer battery to the pyro
561           circuit. TeleMega has two screw terminals for this&#8212;hook a
562           wire from the Lipo terminal (Bottom 3) to the Pyro terminal
563           (Bottom 2).
564         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38289184"></a>7.4. Using an Active Switch with TeleMega</h3></div></div></div><p>
565           As explained above, an external active switch requires three
566           connections, one to the positive battery terminal, one to
567           the flight computer positive input and one to ground.
568         </p><p>
569           The positive battery terminal is available on Top terminal
570           1, the positive flight computer input is on Top terminal
571           2. Ground is on Top terminal 3.
572         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38291232"></a>8. Flight Data Recording</h2></div></div></div><p>
573         Each flight computer logs data at 100 samples per second
574         during ascent and 10 samples per second during descent, except
575         for TeleMini v1.0, which records ascent at 10 samples per
576         second and descent at 1 sample per second. Data are logged to
577         an on-board flash memory part, which can be partitioned into
578         several equal-sized blocks, one for each flight.
579       </p><div class="table"><a name="idp38292640"></a><p class="title"><b>Table 4.8. Data Storage on Altus Metrum altimeters</b></p><div class="table-contents"><table summary="Data Storage on Altus Metrum altimeters" border="1"><colgroup><col align="center" class="Device"><col align="center" class="Bytes per sample"><col align="center" class="Total storage"><col align="center" class="Minutes of        full-rate"></colgroup><thead><tr><th align="center">Device</th><th align="center">Bytes per Sample</th><th align="center">Total Storage</th><th align="center">Minutes at Full Rate</th></tr></thead><tbody><tr><td align="center">TeleMetrum v1.0</td><td align="center">8</td><td align="center">1MB</td><td align="center">20</td></tr><tr><td align="center">TeleMetrum v1.1 v1.2</td><td align="center">8</td><td align="center">2MB</td><td align="center">40</td></tr><tr><td align="center">TeleMetrum v2.0</td><td align="center">16</td><td align="center">8MB</td><td align="center">80</td></tr><tr><td align="center">TeleMini v1.0</td><td align="center">2</td><td align="center">5kB</td><td align="center">4</td></tr><tr><td align="center">TeleMini v2.0</td><td align="center">16</td><td align="center">1MB</td><td align="center">10</td></tr><tr><td align="center">EasyMini</td><td align="center">16</td><td align="center">1MB</td><td align="center">10</td></tr><tr><td align="center">TeleMega</td><td align="center">32</td><td align="center">8MB</td><td align="center">40</td></tr></tbody></table></div></div><br class="table-break"><p>
580         The on-board flash is partitioned into separate flight logs,
581         each of a fixed maximum size. Increase the maximum size of
582         each log and you reduce the number of flights that can be
583         stored. Decrease the size and you can store more flights.
584       </p><p>
585         Configuration data is also stored in the flash memory on
586         TeleMetrum v1.x, TeleMini and EasyMini. This consumes 64kB
587         of flash space.  This configuration space is not available
588         for storing flight log data. TeleMetrum v2.0 and TeleMega
589         store configuration data in a bit of eeprom available within
590         the processor chip, leaving that space available in flash for
591         more flight data.
592       </p><p>
593         To compute the amount of space needed for a single flight, you
594         can multiply the expected ascent time (in seconds) by 100
595         times bytes-per-sample, multiply the expected descent time (in
596         seconds) by 10 times the bytes per sample and add the two
597         together. That will slightly under-estimate the storage (in
598         bytes) needed for the flight. For instance, a TeleMetrum v2.0 flight spending
599         20 seconds in ascent and 150 seconds in descent will take
600         about (20 * 1600) + (150 * 160) = 56000 bytes of storage. You
601         could store dozens of these flights in the on-board flash.
602       </p><p>
603         The default size allows for several flights on each flight
604         computer, except for TeleMini v1.0, which only holds data for a
605         single flight. You can adjust the size.
606       </p><p>
607         Altus Metrum flight computers will not overwrite existing
608         flight data, so be sure to download flight data and erase it
609         from the flight computer before it fills up. The flight
610         computer will still successfully control the flight even if it
611         cannot log data, so the only thing you will lose is the data.
612       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38320064"></a>9. Installation</h2></div></div></div><p>
613         A typical installation involves attaching 
614         only a suitable battery, a single pole switch for 
615         power on/off, and two pairs of wires connecting e-matches for the 
616         apogee and main ejection charges.  All Altus Metrum products are 
617         designed for use with single-cell batteries with 3.7 volts
618         nominal. TeleMini v2.0 and EasyMini may also be used with other
619         batteries as long as they supply between 4 and 12 volts. 
620       </p><p>
621         The battery connectors are a standard 2-pin JST connector and
622         match batteries sold by Spark Fun. These batteries are
623         single-cell Lithium Polymer batteries that nominally provide 3.7
624         volts.  Other vendors sell similar batteries for RC aircraft
625         using mating connectors, however the polarity for those is
626         generally reversed from the batteries used by Altus Metrum
627         products. In particular, the Tenergy batteries supplied for use
628         in Featherweight flight computers are not compatible with Altus
629         Metrum flight computers or battery chargers. <span class="emphasis"><em>Check
630         polarity and voltage before connecting any battery not purchased
631         from Altus Metrum or Spark Fun.</em></span>
632       </p><p>
633         By default, we use the unregulated output of the battery directly
634         to fire ejection charges.  This works marvelously with standard
635         low-current e-matches like the J-Tek from MJG Technologies, and with
636         Quest Q2G2 igniters.  However, if you want or need to use a separate 
637         pyro battery, check out the &#8220;External Pyro Battery&#8221; section in this 
638         manual for instructions on how to wire that up. The altimeters are 
639         designed to work with an external pyro battery of no more than 15 volts.
640       </p><p>
641         Ejection charges are wired directly to the screw terminal block
642         at the aft end of the altimeter.  You'll need a very small straight 
643         blade screwdriver for these screws, such as you might find in a 
644         jeweler's screwdriver set.
645       </p><p>
646         Except for TeleMini v1.0, the flight computers also use the
647         screw terminal block for the power switch leads. On TeleMini v1.0,
648         the power switch leads are soldered directly to the board and
649         can be connected directly to a switch.
650       </p><p>
651         For most air-frames, the integrated antennas are more than
652         adequate.   However, if you are installing in a carbon-fiber or
653         metal electronics bay which is opaque to RF signals, you may need to
654         use off-board external antennas instead.  In this case, you can
655         replace the stock UHF antenna wire with an edge-launched SMA connector,
656         and, on TeleMetrum v1, you can unplug the integrated GPS
657         antenna and select an appropriate off-board GPS antenna with
658         cable terminating in a U.FL connector.
659       </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38326800"></a>Chapter 5. System Operation</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38327440">1. Firmware Modes </a></span></dt><dt><span class="section"><a href="#idp38395728">2. GPS </a></span></dt><dt><span class="section"><a href="#idp38398512">3. Controlling An Altimeter Over The Radio Link</a></span></dt><dt><span class="section"><a href="#idp38410432">4. Ground Testing </a></span></dt><dt><span class="section"><a href="#idp38413184">5. Radio Link </a></span></dt><dt><span class="section"><a href="#idp38417184">6. APRS</a></span></dt><dt><span class="section"><a href="#idp38439152">7. Configurable Parameters</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38441072">7.1. Radio Frequency</a></span></dt><dt><span class="section"><a href="#idp38443120">7.2. Callsign</a></span></dt><dt><span class="section"><a href="#idp38444656">7.3. Telemetry/RDF/APRS Enable</a></span></dt><dt><span class="section"><a href="#idp38445952">7.4. APRS Interval</a></span></dt><dt><span class="section"><a href="#idp38447424">7.5. Apogee Delay</a></span></dt><dt><span class="section"><a href="#idp38450016">7.6. Apogee Lockout</a></span></dt><dt><span class="section"><a href="#idp38451744">7.7. Main Deployment Altitude</a></span></dt><dt><span class="section"><a href="#idp38453440">7.8. Maximum Flight Log</a></span></dt><dt><span class="section"><a href="#idp38455584">7.9. Ignite Mode</a></span></dt><dt><span class="section"><a href="#idp38457696">7.10. Pad Orientation</a></span></dt><dt><span class="section"><a href="#idp38459904">7.11. Configurable Pyro Channels</a></span></dt></dl></dd></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38327440"></a>1. Firmware Modes </h2></div></div></div><p>
660         The AltOS firmware build for the altimeters has two
661         fundamental modes, &#8220;idle&#8221; and &#8220;flight&#8221;.  Which of these modes
662         the firmware operates in is determined at start up time. For
663         TeleMetrum and TeleMega, which have accelerometers, the mode is 
664         controlled by the orientation of the
665         rocket (well, actually the board, of course...) at the time
666         power is switched on.  If the rocket is &#8220;nose up&#8221;, then
667         the flight computer assumes it's on a rail or rod being prepared for
668         launch, so the firmware chooses flight mode.  However, if the
669         rocket is more or less horizontal, the firmware instead enters
670         idle mode.  Since TeleMini v2.0 and EasyMini don't have an
671         accelerometer we can use to determine orientation, &#8220;idle&#8221; mode
672         is selected if the board is connected via USB to a computer,
673         otherwise the board enters &#8220;flight&#8221; mode. TeleMini v1.0
674         selects &#8220;idle&#8221; mode if it receives a command packet within the
675         first five seconds of operation.
676       </p><p>
677         At power on, the altimeter will beep out the battery voltage
678         to the nearest tenth of a volt.  Each digit is represented by
679         a sequence of short &#8220;dit&#8221; beeps, with a pause between
680         digits. A zero digit is represented with one long &#8220;dah&#8221;
681         beep. Then there will be a short pause while the altimeter
682         completes initialization and self test, and decides which mode
683         to enter next.
684       </p><p>
685         Here's a short summary of all of the modes and the beeping (or
686         flashing, in the case of TeleMini v1) that accompanies each
687         mode. In the description of the beeping pattern, &#8220;dit&#8221; means a
688         short beep while "dah" means a long beep (three times as
689         long). &#8220;Brap&#8221; means a long dissonant tone.
690         </p><div class="table"><a name="idp38332800"></a><p class="title"><b>Table 5.1. AltOS Modes</b></p><div class="table-contents"><table summary="AltOS Modes" border="1"><colgroup><col align="center" class="Mode Name"><col align="center" class="Letter"><col align="center" class="Beeps"><col align="center" class="Description"></colgroup><thead><tr><th align="center">Mode Name</th><th align="center">Abbreviation</th><th align="center">Beeps</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Startup</td><td align="center">S</td><td align="center">battery voltage in decivolts</td><td align="center">
691                   <p>
692                     Calibrating sensors, detecting orientation.
693                   </p>
694                 </td></tr><tr><td align="center">Idle</td><td align="center">I</td><td align="center">dit dit</td><td align="center">
695                   <p>
696                     Ready to accept commands over USB or radio link.
697                   </p>
698                 </td></tr><tr><td align="center">Pad</td><td align="center">P</td><td align="center">dit dah dah dit</td><td align="center">
699                   <p>
700                     Waiting for launch. Not listening for commands.
701                   </p>
702                 </td></tr><tr><td align="center">Boost</td><td align="center">B</td><td align="center">dah dit dit dit</td><td align="center">
703                   <p>
704                     Accelerating upwards.
705                   </p>
706                 </td></tr><tr><td align="center">Fast</td><td align="center">F</td><td align="center">dit dit dah dit</td><td align="center">
707                   <p>
708                     Decelerating, but moving faster than 200m/s.
709                   </p>
710                 </td></tr><tr><td align="center">Coast</td><td align="center">C</td><td align="center">dah dit dah dit</td><td align="center">
711                   <p>
712                     Decelerating, moving slower than 200m/s
713                   </p>
714                 </td></tr><tr><td align="center">Drogue</td><td align="center">D</td><td align="center">dah dit dit</td><td align="center">
715                   <p>
716                     Descending after apogee. Above main height.
717                   </p>
718                 </td></tr><tr><td align="center">Main</td><td align="center">M</td><td align="center">dah dah</td><td align="center">
719                   <p>
720                     Descending. Below main height.
721                   </p>
722                 </td></tr><tr><td align="center">Landed</td><td align="center">L</td><td align="center">dit dah dit dit</td><td align="center">
723                   <p>
724                     Stable altitude for at least ten seconds.
725                   </p>
726                 </td></tr><tr><td align="center">Sensor error</td><td align="center">X</td><td align="center">dah dit dit dah</td><td align="center">
727                   <p>
728                     Error detected during sensor calibration.
729                   </p>
730                 </td></tr></tbody></table></div></div><p><br class="table-break">
731       </p><p>
732         In flight or &#8220;pad&#8221; mode, the altimeter engages the flight
733         state machine, goes into transmit-only mode to send telemetry,
734         and waits for launch to be detected.  Flight mode is indicated
735         by an &#8220;di-dah-dah-dit&#8221; (&#8220;P&#8221; for pad) on the beeper or lights,
736         followed by beeps or flashes indicating the state of the
737         pyrotechnic igniter continuity.  One beep/flash indicates
738         apogee continuity, two beeps/flashes indicate main continuity,
739         three beeps/flashes indicate both apogee and main continuity,
740         and one longer &#8220;brap&#8221; sound which is made by rapidly
741         alternating between two tones indicates no continuity.  For a
742         dual deploy flight, make sure you're getting three beeps or
743         flashes before launching!  For apogee-only or motor eject
744         flights, do what makes sense.
745       </p><p>
746         If idle mode is entered, you will hear an audible &#8220;di-dit&#8221; or
747         see two short flashes (&#8220;I&#8221; for idle), and the flight state
748         machine is disengaged, thus no ejection charges will fire.
749         The altimeters also listen for the radio link when in idle
750         mode for requests sent via TeleDongle.  Commands can be issued
751         in idle mode over either USB or the radio link
752         equivalently. TeleMini v1.0 only has the radio link.  Idle
753         mode is useful for configuring the altimeter, for extracting
754         data from the on-board storage chip after flight, and for
755         ground testing pyro charges.
756       </p><p>
757         In &#8220;Idle&#8221; and &#8220;Pad&#8221; modes, once the mode indication
758         beeps/flashes and continuity indication has been sent, if
759         there is no space available to log the flight in on-board
760         memory, the flight computer will emit a warbling tone (much
761         slower than the &#8220;no continuity tone&#8221;)
762       </p><p>
763         Here's a summary of all of the &#8220;pad&#8221; and &#8220;idle&#8221; mode indications.
764         </p><div class="table"><a name="idp38369888"></a><p class="title"><b>Table 5.2. Pad/Idle Indications</b></p><div class="table-contents"><table summary="Pad/Idle Indications" border="1"><colgroup><col align="center" class="Name"><col align="center" class="Beeps"><col align="center" class="Description"></colgroup><thead><tr><th align="center">Name</th><th align="center">Beeps</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Neither</td><td align="center">brap</td><td align="center">
765                   <p>
766                     No continuity detected on either apogee or main
767                     igniters.
768                   </p>
769                 </td></tr><tr><td align="center">Apogee</td><td align="center">dit</td><td align="center">
770                   <p>
771                     Continuity detected only on apogee igniter.
772                   </p>
773                 </td></tr><tr><td align="center">Main</td><td align="center">dit dit</td><td align="center">
774                   <p>
775                     Continuity detected only on main igniter.
776                   </p>
777                 </td></tr><tr><td align="center">Both</td><td align="center">dit dit dit</td><td align="center">
778                   <p>
779                     Continuity detected on both igniters.
780                   </p>
781                 </td></tr><tr><td align="center">Storage Full</td><td align="center">warble</td><td align="center">
782                   <p>
783                     On-board data logging storage is full. This will
784                     not prevent the flight computer from safely
785                     controlling the flight or transmitting telemetry
786                     signals, but no record of the flight will be
787                     stored in on-board flash.
788                   </p>
789                 </td></tr></tbody></table></div></div><p><br class="table-break">
790       </p><p>
791         Once landed, the flight computer will signal that by emitting
792         the &#8220;Landed&#8221; sound described above, after which it will beep
793         out the apogee height (in meters). Each digit is represented
794         by a sequence of short &#8220;dit&#8221; beeps, with a pause between
795         digits. A zero digit is represented with one long &#8220;dah&#8221;
796         beep. The flight computer will continue to report landed mode
797         and beep out the maximum height until turned off.
798       </p><p>
799         One &#8220;neat trick&#8221; of particular value when TeleMetrum or TeleMega are used with 
800         very large air-frames, is that you can power the board up while the 
801         rocket is horizontal, such that it comes up in idle mode.  Then you can
802         raise the air-frame to launch position, and issue a 'reset' command 
803         via TeleDongle over the radio link to cause the altimeter to reboot and 
804         come up in flight mode.  This is much safer than standing on the top 
805         step of a rickety step-ladder or hanging off the side of a launch 
806         tower with a screw-driver trying to turn on your avionics before 
807         installing igniters!
808       </p><p>
809         TeleMini v1.0 is configured solely via the radio link. Of course, that
810         means you need to know the TeleMini radio configuration values
811         or you won't be able to communicate with it. For situations
812         when you don't have the radio configuration values, TeleMini v1.0
813         offers an 'emergency recovery' mode. In this mode, TeleMini is
814         configured as follows:
815         </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
816             Sets the radio frequency to 434.550MHz
817             </p></li><li class="listitem"><p>
818             Sets the radio calibration back to the factory value.
819             </p></li><li class="listitem"><p>
820             Sets the callsign to N0CALL
821             </p></li><li class="listitem"><p>
822             Does not go to 'pad' mode after five seconds.
823             </p></li></ul></div><p>
824       </p><p>
825         To get into 'emergency recovery' mode, first find the row of
826         four small holes opposite the switch wiring. Using a short
827         piece of small gauge wire, connect the outer two holes
828         together, then power TeleMini up. Once the red LED is lit,
829         disconnect the wire and the board should signal that it's in
830         'idle' mode after the initial five second startup period.
831       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38395728"></a>2. GPS </h2></div></div></div><p>
832         TeleMetrum and TeleMega include a complete GPS receiver.  A
833         complete explanation of how GPS works is beyond the scope of
834         this manual, but the bottom line is that the GPS receiver
835         needs to lock onto at least four satellites to obtain a solid
836         3 dimensional position fix and know what time it is.
837       </p><p>
838         The flight computers provide backup power to the GPS chip any time a 
839         battery is connected.  This allows the receiver to &#8220;warm start&#8221; on
840         the launch rail much faster than if every power-on were a GPS 
841         &#8220;cold start&#8221;.  In typical operations, powering up
842         on the flight line in idle mode while performing final air-frame
843         preparation will be sufficient to allow the GPS receiver to cold
844         start and acquire lock.  Then the board can be powered down during
845         RSO review and installation on a launch rod or rail.  When the board
846         is turned back on, the GPS system should lock very quickly, typically
847         long before igniter installation and return to the flight line are
848         complete.
849       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38398512"></a>3. Controlling An Altimeter Over The Radio Link</h2></div></div></div><p>
850         One of the unique features of the Altus Metrum system is the
851         ability to create a two way command link between TeleDongle
852         and an altimeter using the digital radio transceivers
853         built into each device. This allows you to interact with the
854         altimeter from afar, as if it were directly connected to the
855         computer.
856       </p><p>
857         Any operation which can be performed with a flight computer can
858         either be done with the device directly connected to the
859         computer via the USB cable, or through the radio
860         link. TeleMini v1.0 doesn't provide a USB connector and so it is
861         always communicated with over radio.  Select the appropriate 
862         TeleDongle device when the list of devices is presented and 
863         AltosUI will interact with an altimeter over the radio link.
864       </p><p>
865         One oddity in the current interface is how AltosUI selects the
866         frequency for radio communications. Instead of providing
867         an interface to specifically configure the frequency, it uses
868         whatever frequency was most recently selected for the target
869         TeleDongle device in Monitor Flight mode. If you haven't ever
870         used that mode with the TeleDongle in question, select the
871         Monitor Flight button from the top level UI, and pick the
872         appropriate TeleDongle device.  Once the flight monitoring
873         window is open, select the desired frequency and then close it
874         down again. All radio communications will now use that frequency.
875       </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
876             Save Flight Data&#8212;Recover flight data from the rocket without
877             opening it up.
878           </p></li><li class="listitem"><p>
879             Configure altimeter apogee delays, main deploy heights
880             and additional pyro event conditions
881             to respond to changing launch conditions. You can also
882             'reboot' the altimeter. Use this to remotely enable the
883             flight computer by turning TeleMetrum or TeleMega on in &#8220;idle&#8221; mode,
884             then once the air-frame is oriented for launch, you can
885             reboot the altimeter and have it restart in pad mode
886             without having to climb the scary ladder.
887           </p></li><li class="listitem"><p>
888             Fire Igniters&#8212;Test your deployment charges without snaking
889             wires out through holes in the air-frame. Simply assemble the
890             rocket as if for flight with the apogee and main charges
891             loaded, then remotely command the altimeter to fire the
892             igniters.
893           </p></li></ul></div><p>
894         Operation over the radio link for configuring an altimeter, ground
895         testing igniters, and so forth uses the same RF frequencies as flight
896         telemetry.  To configure the desired TeleDongle frequency, select
897         the monitor flight tab, then use the frequency selector and 
898         close the window before performing other desired radio operations.
899       </p><p>
900         The flight computers only enable radio commanding in 'idle' mode.
901         TeleMetrum and TeleMega use the accelerometer to detect which orientation they
902         start up in, so make sure you have the flight computer lying horizontally when you turn
903         it on. Otherwise, it will start in 'pad' mode ready for
904         flight, and will not be listening for command packets from TeleDongle.
905       </p><p>
906         TeleMini listens for a command packet for five seconds after
907         first being turned on, if it doesn't hear anything, it enters
908         'pad' mode, ready for flight and will no longer listen for
909         command packets. The easiest way to connect to TeleMini is to
910         initiate the command and select the TeleDongle device. At this
911         point, the TeleDongle will be attempting to communicate with
912         the TeleMini. Now turn TeleMini on, and it should immediately
913         start communicating with the TeleDongle and the desired
914         operation can be performed.
915       </p><p>
916         You can monitor the operation of the radio link by watching the 
917         lights on the devices. The red LED will flash each time a packet
918         is transmitted, while the green LED will light up on TeleDongle when 
919         it is waiting to receive a packet from the altimeter.
920       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38410432"></a>4. Ground Testing </h2></div></div></div><p>
921         An important aspect of preparing a rocket using electronic deployment
922         for flight is ground testing the recovery system.  Thanks
923         to the bi-directional radio link central to the Altus Metrum system,
924         this can be accomplished in a TeleMega, TeleMetrum or TeleMini equipped rocket 
925         with less work than you may be accustomed to with other systems.  It 
926         can even be fun!
927       </p><p>
928         Just prep the rocket for flight, then power up the altimeter
929         in &#8220;idle&#8221; mode (placing air-frame horizontal for TeleMetrum or TeleMega, or
930         selecting the Configure Altimeter tab for TeleMini).  This will cause 
931         the firmware to go into &#8220;idle&#8221; mode, in which the normal flight
932         state machine is disabled and charges will not fire without
933         manual command.  You can now command the altimeter to fire the apogee
934         or main charges from a safe distance using your computer and 
935         TeleDongle and the Fire Igniter tab to complete ejection testing.
936       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38413184"></a>5. Radio Link </h2></div></div></div><p>
937         Our flight computers all incorporate an RF transceiver, but
938         it's not a full duplex system... each end can only be transmitting or
939         receiving at any given moment.  So we had to decide how to manage the
940         link.
941       </p><p>
942         By design, the altimeter firmware listens for the radio link when
943         it's in &#8220;idle mode&#8221;, which
944         allows us to use the radio link to configure the rocket, do things like
945         ejection tests, and extract data after a flight without having to
946         crack open the air-frame.  However, when the board is in &#8220;flight
947         mode&#8221;, the altimeter only
948         transmits and doesn't listen at all.  That's because we want to put
949         ultimate priority on event detection and getting telemetry out of
950         the rocket through
951         the radio in case the rocket crashes and we aren't able to extract
952         data later...
953       </p><p>
954         We don't generally use a 'normal packet radio' mode like APRS
955         because they're just too inefficient.  The GFSK modulation we
956         use is FSK with the base-band pulses passed through a Gaussian
957         filter before they go into the modulator to limit the
958         transmitted bandwidth.  When combined with forward error
959         correction and interleaving, this allows us to have a very
960         robust 19.2 kilobit data link with only 10-40 milliwatts of
961         transmit power, a whip antenna in the rocket, and a hand-held
962         Yagi on the ground.  We've had flights to above 21k feet AGL
963         with great reception, and calculations suggest we should be
964         good to well over 40k feet AGL with a 5-element yagi on the
965         ground with our 10mW units and over 100k feet AGL with the
966         40mW devices.  We hope to fly boards to higher altitudes over
967         time, and would of course appreciate customer feedback on
968         performance in higher altitude flights!
969       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38417184"></a>6. APRS</h2></div></div></div><p>
970         TeleMetrum v2.0 and TeleMega can send APRS if desired, and the
971         interval between APRS packets can be configured. As each APRS
972         packet takes a full second to transmit, we recommend an
973         interval of at least 5 seconds to avoid consuming too much
974         battery power or radio channel bandwidth. You can configure
975         the APRS interval using AltosUI; that process is described in
976         the Configure Altimeter section of the AltosUI chapter.
977       </p><p>
978         AltOS uses the APRS compressed position report data format,
979         which provides for higher position precision and shorter
980         packets than the original APRS format. It also includes
981         altitude data, which is invaluable when tracking rockets. We
982         haven't found a receiver which doesn't handle compressed
983         positions, but it's just possible that you have one, so if you
984         have an older device that can receive the raw packets but
985         isn't displaying position information, it's possible that this
986         is the cause.
987       </p><p>
988         The APRS packet format includes a comment field that can have
989         arbitrary text in it. AltOS uses this to send status
990         information about the flight computer. It sends four fields as
991         shown in the following table.
992       </p><div class="table"><a name="idp38420192"></a><p class="title"><b>Table 5.3. Altus Metrum APRS Comments</b></p><div class="table-contents"><table summary="Altus Metrum APRS Comments" border="1"><colgroup><col align="center" class="Field"><col align="center" class="Example"><col align="center" class="Description"></colgroup><thead><tr><th align="center">Field</th><th align="center">Example</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">L</td><td align="center">GPS Status U for unlocked, L for locked</td></tr><tr><td align="center">2</td><td align="center">6</td><td align="center">Number of Satellites in View</td></tr><tr><td align="center">3</td><td align="center">B4.0</td><td align="center">Altimeter Battery Voltage</td></tr><tr><td align="center">4</td><td align="center">A3.7</td><td align="center">Apogee Igniter Voltage</td></tr><tr><td align="center">5</td><td align="center">M3.7</td><td align="center">Main Igniter Voltage</td></tr></tbody></table></div></div><br class="table-break"><p>
993         Here's an example of an APRS comment showing GPS lock with 6
994         satellites in view, a primary battery at 4.0V, and
995         apogee and main igniters both at 3.7V.
996         </p><pre class="screen">
997           L6 B4.0 A3.7 M3.7
998         </pre><p>
999       </p><p>
1000         Make sure your primary battery is above 3.8V, any connected
1001         igniters are above 3.5V and GPS is locked with at least 5 or 6
1002         satellites in view before flying. If GPS is switching between
1003         L and U regularly, then it doesn't have a good lock and you
1004         should wait until it becomes stable.
1005       </p><p>
1006         If the GPS receiver loses lock, the APRS data transmitted will
1007         contain the last position for which GPS lock was
1008         available. You can tell that this has happened by noticing
1009         that the GPS status character switches from 'L' to 'U'. Before
1010         GPS has locked, APRS will transmit zero for latitude,
1011         longitude and altitude.
1012       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38439152"></a>7. Configurable Parameters</h2></div></div></div><p>
1013         Configuring an Altus Metrum altimeter for flight is very
1014         simple.  Even on our baro-only TeleMini and EasyMini boards,
1015         the use of a Kalman filter means there is no need to set a
1016         &#8220;mach delay&#8221;.  The few configurable parameters can all be set
1017         using AltosUI over USB or or radio link via TeleDongle. Read
1018         the Configure Altimeter section in the AltosUI chapter below
1019         for more information.
1020       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38441072"></a>7.1. Radio Frequency</h3></div></div></div><p>
1021           Altus Metrum boards support radio frequencies in the 70cm
1022           band. By default, the configuration interface provides a
1023           list of 10 &#8220;standard&#8221; frequencies in 100kHz channels starting at
1024           434.550MHz.  However, the firmware supports use of
1025           any 50kHz multiple within the 70cm band. At any given
1026           launch, we highly recommend coordinating when and by whom each
1027           frequency will be used to avoid interference.  And of course, both
1028           altimeter and TeleDongle must be configured to the same
1029           frequency to successfully communicate with each other.
1030         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38443120"></a>7.2. Callsign</h3></div></div></div><p>
1031           This sets the callsign used for telemetry, APRS and the
1032           packet link. For telemetry and APRS, this is used to
1033           identify the device. For the packet link, the callsign must
1034           match that configured in AltosUI or the link will not
1035           work. This is to prevent accidental configuration of another
1036           Altus Metrum flight computer operating on the same frequency nearby.
1037         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38444656"></a>7.3. Telemetry/RDF/APRS Enable</h3></div></div></div><p>
1038           You can completely disable the radio while in flight, if
1039           necessary. This doesn't disable the packet link in idle
1040           mode.
1041         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38445952"></a>7.4. APRS Interval</h3></div></div></div><p>
1042           This selects how often APRS packets are transmitted. Set
1043           this to zero to disable APRS without also disabling the
1044           regular telemetry and RDF transmissions. As APRS takes a
1045           full second to transmit a single position report, we
1046           recommend sending packets no more than once every 5 seconds.
1047         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38447424"></a>7.5. Apogee Delay</h3></div></div></div><p>
1048           Apogee delay is the number of seconds after the altimeter detects flight
1049           apogee that the drogue charge should be fired.  In most cases, this
1050           should be left at the default of 0.  However, if you are flying
1051           redundant electronics such as for an L3 certification, you may wish
1052           to set one of your altimeters to a positive delay so that both
1053           primary and backup pyrotechnic charges do not fire simultaneously.
1054         </p><p>
1055           The Altus Metrum apogee detection algorithm fires exactly at
1056           apogee.  If you are also flying an altimeter like the
1057           PerfectFlite MAWD, which only supports selecting 0 or 1
1058           seconds of apogee delay, you may wish to set the MAWD to 0
1059           seconds delay and set the TeleMetrum to fire your backup 2
1060           or 3 seconds later to avoid any chance of both charges
1061           firing simultaneously.  We've flown several air-frames this
1062           way quite happily, including Keith's successful L3 cert.
1063         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38450016"></a>7.6. Apogee Lockout</h3></div></div></div><p>
1064           Apogee lockout is the number of seconds after boost where
1065           the flight computer will not fire the apogee charge, even if
1066           the rocket appears to be at apogee. This is often called
1067           'Mach Delay', as it is intended to prevent a flight computer
1068           from unintentionally firing apogee charges due to the pressure
1069           spike that occurrs across a mach transition. Altus Metrum
1070           flight computers include a Kalman filter which is not fooled
1071           by this sharp pressure increase, and so this setting should
1072           be left at the default value of zero to disable it.
1073         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38451744"></a>7.7. Main Deployment Altitude</h3></div></div></div><p>
1074           By default, the altimeter will fire the main deployment charge at an
1075           elevation of 250 meters (about 820 feet) above ground.  We think this
1076           is a good elevation for most air-frames, but feel free to change this
1077           to suit.  In particular, if you are flying two altimeters, you may
1078           wish to set the
1079           deployment elevation for the backup altimeter to be something lower
1080           than the primary so that both pyrotechnic charges don't fire
1081           simultaneously.
1082         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38453440"></a>7.8. Maximum Flight Log</h3></div></div></div><p>
1083           Changing this value will set the maximum amount of flight
1084           log storage that an individual flight will use. The
1085           available storage is divided into as many flights of the
1086           specified size as can fit in the available space. You can
1087           download and erase individual flight logs. If you fill up
1088           the available storage, future flights will not get logged
1089           until you erase some of the stored ones.
1090         </p><p>
1091           Even though our flight computers (except TeleMini v1.0) can store
1092           multiple flights, we strongly recommend downloading and saving
1093           flight data after each flight.
1094         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38455584"></a>7.9. Ignite Mode</h3></div></div></div><p>
1095           Instead of firing one charge at apogee and another charge at
1096           a fixed height above the ground, you can configure the
1097           altimeter to fire both at apogee or both during
1098           descent. This was added to support an airframe Bdale designed that 
1099           had two altimeters, one in the fin can and one in the nose.
1100         </p><p>
1101           Providing the ability to use both igniters for apogee or
1102           main allows some level of redundancy without needing two
1103           flight computers.  In Redundant Apogee or Redundant Main
1104           mode, the two charges will be fired two seconds apart.
1105         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38457696"></a>7.10. Pad Orientation</h3></div></div></div><p>
1106           TeleMetrum and TeleMega measure acceleration along the axis
1107           of the board. Which way the board is oriented affects the
1108           sign of the acceleration value. Instead of trying to guess
1109           which way the board is mounted in the air frame, the
1110           altimeter must be explicitly configured for either Antenna
1111           Up or Antenna Down. The default, Antenna Up, expects the end
1112           of the board connected to the 70cm antenna to be nearest the
1113           nose of the rocket, with the end containing the screw
1114           terminals nearest the tail.
1115         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38459904"></a>7.11. Configurable Pyro Channels</h3></div></div></div><p>
1116           In addition to the usual Apogee and Main pyro channels,
1117           TeleMega has four additional channels that can be configured
1118           to activate when various flight conditions are
1119           satisfied. You can select as many conditions as necessary;
1120           all of them must be met in order to activate the
1121           channel. The conditions available are:
1122         </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
1123               Acceleration away from the ground. Select a value, and
1124               then choose whether acceleration should be above or
1125               below that value. Acceleration is positive upwards, so
1126               accelerating towards the ground would produce negative
1127               numbers. Acceleration during descent is noisy and
1128               inaccurate, so be careful when using it during these
1129               phases of the flight.
1130             </p></li><li class="listitem"><p>
1131               Vertical speed.  Select a value, and then choose whether
1132               vertical speed should be above or below that
1133               value. Speed is positive upwards, so moving towards the
1134               ground would produce negative numbers. Speed during
1135               descent is a bit noisy and so be careful when using it
1136               during these phases of the flight.
1137             </p></li><li class="listitem"><p>
1138               Height. Select a value, and then choose whether the
1139               height above the launch pad should be above or below
1140               that value.
1141             </p></li><li class="listitem"><p>
1142               Orientation. TeleMega contains a 3-axis gyroscope and
1143               accelerometer which is used to measure the current
1144               angle. Note that this angle is not the change in angle
1145               from the launch pad, but rather absolute relative to
1146               gravity; the 3-axis accelerometer is used to compute the
1147               angle of the rocket on the launch pad and initialize the
1148               system. Because this value is computed by integrating
1149               rate gyros, it gets progressively less accurate as the
1150               flight goes on. It should have an accumulated error of
1151               less than 0.2°/second (after 10 seconds of flight, the
1152               error should be less than 2°).
1153             </p><p>
1154               The usual use of the orientation configuration is to
1155               ensure that the rocket is traveling mostly upwards when
1156               deciding whether to ignite air starts or additional
1157               stages. For that, choose a reasonable maximum angle
1158               (like 20°) and set the motor igniter to require an angle
1159               of less than that value.
1160             </p></li><li class="listitem"><p>
1161               Flight Time. Time since boost was detected. Select a
1162               value and choose whether to activate the pyro channel
1163               before or after that amount of time.
1164             </p></li><li class="listitem"><p>
1165               Ascending. A simple test saying whether the rocket is
1166               going up or not. This is exactly equivalent to testing
1167               whether the speed is &gt; 0.
1168             </p></li><li class="listitem"><p>
1169               Descending. A simple test saying whether the rocket is
1170               going down or not. This is exactly equivalent to testing
1171               whether the speed is &lt; 0.
1172             </p></li><li class="listitem"><p>
1173               After Motor. The flight software counts each time the
1174               rocket starts accelerating (presumably due to a motor or
1175               motors igniting). Use this value to count ignitions for
1176               multi-staged or multi-airstart launches.
1177             </p></li><li class="listitem"><p>
1178               Delay. This value doesn't perform any checks, instead it
1179               inserts a delay between the time when the other
1180               parameters become true and when the pyro channel is
1181               activated.
1182             </p></li><li class="listitem"><p>
1183               Flight State. The flight software tracks the flight
1184               through a sequence of states:
1185               </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
1186                     Boost. The motor has lit and the rocket is
1187                     accelerating upwards.
1188                   </p></li><li class="listitem"><p>
1189                     Fast. The motor has burned out and the rocket is
1190                     decelerating, but it is going faster than 200m/s.
1191                   </p></li><li class="listitem"><p>
1192                     Coast. The rocket is still moving upwards and
1193                     decelerating, but the speed is less than 200m/s.
1194                   </p></li><li class="listitem"><p>
1195                     Drogue. The rocket has reached apogee and is heading
1196                     back down, but is above the configured Main
1197                     altitude.
1198                   </p></li><li class="listitem"><p>
1199                     Main. The rocket is still descending, and is below
1200                     the Main altitude
1201                   </p></li><li class="listitem"><p>
1202                     Landed. The rocket is no longer moving.
1203                   </p></li></ol></div><p>
1204             </p><p>
1205               You can select a state to limit when the pyro channel
1206               may activate; note that the check is based on when the
1207               rocket transitions <span class="emphasis"><em>into</em></span> the state, and so checking for
1208               &#8220;greater than Boost&#8221; means that the rocket is currently
1209               in boost or some later state.
1210             </p><p>
1211               When a motor burns out, the rocket enters either Fast or
1212               Coast state (depending on how fast it is moving). If the
1213               computer detects upwards acceleration again, it will
1214               move back to Boost state.
1215             </p></li></ul></div></div></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38482480"></a>Chapter 6. AltosUI</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38486096">1. Monitor Flight</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38498816">1.1. Launch Pad</a></span></dt><dt><span class="section"><a href="#idp38515104">1.2. Ascent</a></span></dt><dt><span class="section"><a href="#idp38520560">1.3. Descent</a></span></dt><dt><span class="section"><a href="#idp38527424">1.4. Landed</a></span></dt><dt><span class="section"><a href="#idp38533856">1.5. Table</a></span></dt><dt><span class="section"><a href="#idp38537440">1.6. Site Map</a></span></dt><dt><span class="section"><a href="#idp38543760">1.7. Ignitor</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38547536">2. Save Flight Data</a></span></dt><dt><span class="section"><a href="#idp38551488">3. Replay Flight</a></span></dt><dt><span class="section"><a href="#idp38553520">4. Graph Data</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38555904">4.1. Flight Graph</a></span></dt><dt><span class="section"><a href="#idp38560352">4.2. Configure Graph</a></span></dt><dt><span class="section"><a href="#idp38564016">4.3. Flight Statistics</a></span></dt><dt><span class="section"><a href="#idp38567536">4.4. Map</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38571392">5. Export Data</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38572960">5.1. Comma Separated Value Format</a></span></dt><dt><span class="section"><a href="#idp38575312">5.2. Keyhole Markup Language (for Google Earth)</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38576800">6. Configure Altimeter</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38589104">6.1. Main Deploy Altitude</a></span></dt><dt><span class="section"><a href="#idp38590672">6.2. Apogee Delay</a></span></dt><dt><span class="section"><a href="#idp38592288">6.3. Apogee Lockoug</a></span></dt><dt><span class="section"><a href="#idp38594016">6.4. Frequency</a></span></dt><dt><span class="section"><a href="#idp38595520">6.5. RF Calibration</a></span></dt><dt><span class="section"><a href="#idp38597168">6.6. Telemetry/RDF/APRS Enable</a></span></dt><dt><span class="section"><a href="#idp38598464">6.7. APRS Interval</a></span></dt><dt><span class="section"><a href="#idp38600032">6.8. Callsign</a></span></dt><dt><span class="section"><a href="#idp38601344">6.9. Maximum Flight Log Size</a></span></dt><dt><span class="section"><a href="#idp38602784">6.10. Ignitor Firing Mode</a></span></dt><dt><span class="section"><a href="#idp38609696">6.11. Pad Orientation</a></span></dt><dt><span class="section"><a href="#idp38614912">6.12. Beeper Frequency</a></span></dt><dt><span class="section"><a href="#idp38616368">6.13. Configure Pyro Channels</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38622736">7. Configure AltosUI</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38626240">7.1. Voice Settings</a></span></dt><dt><span class="section"><a href="#idp38631264">7.2. Log Directory</a></span></dt><dt><span class="section"><a href="#idp38633264">7.3. Callsign</a></span></dt><dt><span class="section"><a href="#idp38635504">7.4. Imperial Units</a></span></dt><dt><span class="section"><a href="#idp38637008">7.5. Font Size</a></span></dt><dt><span class="section"><a href="#idp38638288">7.6. Serial Debug</a></span></dt><dt><span class="section"><a href="#idp38639792">7.7. Manage Frequencies</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38641424">8. Configure Groundstation</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38652544">8.1. Frequency</a></span></dt><dt><span class="section"><a href="#idp38654112">8.2. Radio Calibration</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38655744">9. Flash Image</a></span></dt><dt><span class="section"><a href="#idp38657376">10. Fire Igniter</a></span></dt><dt><span class="section"><a href="#idp38663008">11. Scan Channels</a></span></dt><dt><span class="section"><a href="#idp38666864">12. Load Maps</a></span></dt><dt><span class="section"><a href="#idp38680752">13. Monitor Idle</a></span></dt></dl></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="414"><tr><td><img src="altosui.png" width="414"></td></tr></table></div></div><p>
1216       The AltosUI program provides a graphical user interface for
1217       interacting with the Altus Metrum product family. AltosUI can
1218       monitor telemetry data, configure devices and many other
1219       tasks. The primary interface window provides a selection of
1220       buttons, one for each major activity in the system.  This chapter
1221       is split into sections, each of which documents one of the tasks
1222       provided from the top-level toolbar.
1223     </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38486096"></a>1. Monitor Flight</h2></div><div><h3 class="subtitle">Receive, Record and Display Telemetry Data</h3></div></div></div><p>
1224         Selecting this item brings up a dialog box listing all of the
1225         connected TeleDongle devices. When you choose one of these,
1226         AltosUI will create a window to display telemetry data as
1227         received by the selected TeleDongle device.
1228       </p><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="279"><tr><td><img src="device-selection.png" width="279"></td></tr></table></div></div><p>
1229         All telemetry data received are automatically recorded in
1230         suitable log files. The name of the files includes the current
1231         date and rocket serial and flight numbers.
1232       </p><p>
1233         The radio frequency being monitored by the TeleDongle device is
1234         displayed at the top of the window. You can configure the
1235         frequency by clicking on the frequency box and selecting the desired
1236         frequency. AltosUI remembers the last frequency selected for each
1237         TeleDongle and selects that automatically the next time you use
1238         that device.
1239       </p><p>
1240         Below the TeleDongle frequency selector, the window contains a few
1241         significant pieces of information about the altimeter providing
1242         the telemetry data stream:
1243       </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>The configured call-sign</p></li><li class="listitem"><p>The device serial number</p></li><li class="listitem"><p>The flight number. Each altimeter remembers how many
1244             times it has flown.
1245           </p></li><li class="listitem"><p>
1246             The rocket flight state. Each flight passes through several
1247             states including Pad, Boost, Fast, Coast, Drogue, Main and
1248             Landed.
1249           </p></li><li class="listitem"><p>
1250             The Received Signal Strength Indicator value. This lets
1251             you know how strong a signal TeleDongle is receiving. The
1252             radio inside TeleDongle operates down to about -99dBm;
1253             weaker signals may not be receivable. The packet link uses
1254             error detection and correction techniques which prevent
1255             incorrect data from being reported.
1256           </p></li><li class="listitem"><p>
1257             The age of the displayed data, in seconds since the last 
1258             successfully received telemetry packet.  In normal operation
1259             this will stay in the low single digits.  If the number starts
1260             counting up, then you are no longer receiving data over the radio
1261             link from the flight computer.
1262           </p></li></ul></div><p>
1263         Finally, the largest portion of the window contains a set of
1264         tabs, each of which contain some information about the rocket.
1265         They're arranged in 'flight order' so that as the flight
1266         progresses, the selected tab automatically switches to display
1267         data relevant to the current state of the flight. You can select
1268         other tabs at any time. The final 'table' tab displays all of
1269         the raw telemetry values in one place in a spreadsheet-like format.
1270       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38498816"></a>1.1. Launch Pad</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="launch-pad.png" width="495"></td></tr></table></div></div><p>
1271           The 'Launch Pad' tab shows information used to decide when the
1272           rocket is ready for flight. The first elements include red/green
1273           indicators, if any of these is red, you'll want to evaluate
1274           whether the rocket is ready to launch:
1275           </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Battery Voltage</span></dt><dd><p>
1276                   This indicates whether the Li-Po battery powering the 
1277                   flight computer has sufficient charge to last for
1278                   the duration of the flight. A value of more than
1279                   3.8V is required for a 'GO' status.
1280                 </p></dd><dt><span class="term">Apogee Igniter Voltage</span></dt><dd><p>
1281                   This indicates whether the apogee
1282                   igniter has continuity. If the igniter has a low
1283                   resistance, then the voltage measured here will be close
1284                   to the Li-Po battery voltage. A value greater than 3.2V is
1285                   required for a 'GO' status.
1286                 </p></dd><dt><span class="term">Main Igniter Voltage</span></dt><dd><p>
1287                   This indicates whether the main
1288                   igniter has continuity. If the igniter has a low
1289                   resistance, then the voltage measured here will be close
1290                   to the Li-Po battery voltage. A value greater than 3.2V is
1291                   required for a 'GO' status.
1292                 </p></dd><dt><span class="term">On-board Data Logging</span></dt><dd><p>
1293                   This indicates whether there is
1294                   space remaining on-board to store flight data for the
1295                   upcoming flight. If you've downloaded data, but failed
1296                   to erase flights, there may not be any space
1297                   left. Most of our flight computers can store multiple 
1298                   flights, depending on the configured maximum flight log 
1299                   size. TeleMini v1.0 stores only a single flight, so it 
1300                   will need to be
1301                   downloaded and erased after each flight to capture
1302                   data. This only affects on-board flight logging; the
1303                   altimeter will still transmit telemetry and fire
1304                   ejection charges at the proper times even if the flight
1305                   data storage is full.
1306                 </p></dd><dt><span class="term">GPS Locked</span></dt><dd><p>
1307                   For a TeleMetrum or TeleMega device, this indicates whether the GPS receiver is
1308                   currently able to compute position information. GPS requires
1309                   at least 4 satellites to compute an accurate position.
1310                 </p></dd><dt><span class="term">GPS Ready</span></dt><dd><p>
1311                   For a TeleMetrum or TeleMega device, this indicates whether GPS has reported at least
1312                   10 consecutive positions without losing lock. This ensures
1313                   that the GPS receiver has reliable reception from the
1314                   satellites.
1315                 </p></dd></dl></div><p>
1316         </p><p>
1317           The Launchpad tab also shows the computed launch pad position
1318           and altitude, averaging many reported positions to improve the
1319           accuracy of the fix.
1320         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38515104"></a>1.2. Ascent</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="ascent.png" width="495"></td></tr></table></div></div><p>
1321           This tab is shown during Boost, Fast and Coast
1322           phases. The information displayed here helps monitor the
1323           rocket as it heads towards apogee.
1324         </p><p>
1325           The height, speed, acceleration and tilt are shown along
1326           with the maximum values for each of them. This allows you to
1327           quickly answer the most commonly asked questions you'll hear
1328           during flight.
1329         </p><p>
1330           The current latitude and longitude reported by the GPS are
1331           also shown. Note that under high acceleration, these values
1332           may not get updated as the GPS receiver loses position
1333           fix. Once the rocket starts coasting, the receiver should
1334           start reporting position again.
1335         </p><p>
1336           Finally, the current igniter voltages are reported as in the
1337           Launch Pad tab. This can help diagnose deployment failures
1338           caused by wiring which comes loose under high acceleration.
1339         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38520560"></a>1.3. Descent</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="descent.png" width="495"></td></tr></table></div></div><p>
1340           Once the rocket has reached apogee and (we hope) activated the
1341           apogee charge, attention switches to tracking the rocket on
1342           the way back to the ground, and for dual-deploy flights,
1343           waiting for the main charge to fire.
1344         </p><p>
1345           To monitor whether the apogee charge operated correctly, the
1346           current descent rate is reported along with the current
1347           height. Good descent rates vary based on the choice of recovery
1348           components, but generally range from 15-30m/s on drogue and should
1349           be below 10m/s when under the main parachute in a dual-deploy flight.
1350         </p><p>
1351           With GPS-equipped flight computers, you can locate the rocket in the
1352           sky using the elevation and bearing information to figure
1353           out where to look. Elevation is in degrees above the
1354           horizon. Bearing is reported in degrees relative to true
1355           north. Range can help figure out how big the rocket will
1356           appear. Ground Distance shows how far it is to a point
1357           directly under the rocket and can help figure out where the
1358           rocket is likely to land. Note that all of these values are
1359           relative to the pad location. If the elevation is near 90°,
1360           the rocket is over the pad, not over you.
1361         </p><p>
1362           Finally, the igniter voltages are reported in this tab as
1363           well, both to monitor the main charge as well as to see what
1364           the status of the apogee charge is.  Note that some commercial
1365           e-matches are designed to retain continuity even after being
1366           fired, and will continue to show as green or return from red to
1367           green after firing.
1368         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38527424"></a>1.4. Landed</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="landed.png" width="495"></td></tr></table></div></div><p>
1369           Once the rocket is on the ground, attention switches to
1370           recovery. While the radio signal is often lost once the
1371           rocket is on the ground, the last reported GPS position is
1372           generally within a short distance of the actual landing location.
1373         </p><p>
1374           The last reported GPS position is reported both by
1375           latitude and longitude as well as a bearing and distance from
1376           the launch pad. The distance should give you a good idea of
1377           whether to walk or hitch a ride.  Take the reported
1378           latitude and longitude and enter them into your hand-held GPS
1379           unit and have that compute a track to the landing location.
1380         </p><p>
1381           Our flight computers will continue to transmit RDF
1382           tones after landing, allowing you to locate the rocket by
1383           following the radio signal if necessary. You may need to get 
1384           away from the clutter of the flight line, or even get up on 
1385           a hill (or your neighbor's RV roof) to receive the RDF signal.
1386         </p><p>
1387           The maximum height, speed and acceleration reported
1388           during the flight are displayed for your admiring observers.
1389           The accuracy of these immediate values depends on the quality
1390           of your radio link and how many packets were received.  
1391           Recovering the on-board data after flight may yield
1392           more precise results.
1393         </p><p>
1394           To get more detailed information about the flight, you can
1395           click on the 'Graph Flight' button which will bring up a
1396           graph window for the current flight.
1397         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38533856"></a>1.5. Table</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="table.png" width="495"></td></tr></table></div></div><p>
1398           The table view shows all of the data available from the
1399           flight computer. Probably the most useful data on
1400           this tab is the detailed GPS information, which includes
1401           horizontal dilution of precision information, and
1402           information about the signal being received from the satellites.
1403         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38537440"></a>1.6. Site Map</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="site-map.png" width="495"></td></tr></table></div></div><p>
1404           When the TeleMetrum has a GPS fix, the Site Map tab will map
1405           the rocket's position to make it easier for you to locate the
1406           rocket, both while it is in the air, and when it has landed. The
1407           rocket's state is indicated by color: white for pad, red for
1408           boost, pink for fast, yellow for coast, light blue for drogue,
1409           dark blue for main, and black for landed.
1410         </p><p>
1411           The map's default scale is approximately 3m (10ft) per pixel. The map
1412           can be dragged using the left mouse button. The map will attempt
1413           to keep the rocket roughly centered while data is being received.
1414         </p><p>
1415           You can adjust the style of map and the zoom level with
1416           buttons on the right side of the map window. You can draw a
1417           line on the map by moving the mouse over the map with a
1418           button other than the left one pressed, or by pressing the
1419           left button while also holding down the shift key. The
1420           length of the line in real-world units will be shown at the
1421           start of the line.
1422         </p><p>
1423           Images are fetched automatically via the Google Maps Static API,
1424           and cached on disk for reuse. If map images cannot be downloaded,
1425           the rocket's path will be traced on a dark gray background
1426           instead.
1427         </p><p>
1428           You can pre-load images for your favorite launch sites
1429           before you leave home; check out the 'Preload Maps' section below.
1430         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38543760"></a>1.7. Ignitor</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="495"><tr><td><img src="ignitor.png" width="495"></td></tr></table></div></div><p>
1431           TeleMega includes four additional programmable pyro
1432           channels. The Ignitor tab shows whether each of them has
1433           continuity. If an ignitor has a low resistance, then the
1434           voltage measured here will be close to the pyro battery
1435           voltage. A value greater than 3.2V is required for a 'GO'
1436           status.
1437         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38547536"></a>2. Save Flight Data</h2></div></div></div><p>
1438         The altimeter records flight data to its internal flash memory.
1439         TeleMetrum data is recorded at a much higher rate than the telemetry
1440         system can handle, and is not subject to radio drop-outs. As
1441         such, it provides a more complete and precise record of the
1442         flight. The 'Save Flight Data' button allows you to read the
1443         flash memory and write it to disk. 
1444       </p><p>
1445         Clicking on the 'Save Flight Data' button brings up a list of
1446         connected flight computers and TeleDongle devices. If you select a
1447         flight computer, the flight data will be downloaded from that
1448         device directly. If you select a TeleDongle device, flight data
1449         will be downloaded from a flight computer over radio link via the 
1450         specified TeleDongle. See the chapter on Controlling An Altimeter 
1451         Over The Radio Link for more information.
1452       </p><p>
1453         After the device has been selected, a dialog showing the
1454         flight data saved in the device will be shown allowing you to
1455         select which flights to download and which to delete. With
1456         version 0.9 or newer firmware, you must erase flights in order
1457         for the space they consume to be reused by another
1458         flight. This prevents accidentally losing flight data
1459         if you neglect to download data before flying again. Note that
1460         if there is no more space available in the device, then no
1461         data will be recorded during the next flight.
1462       </p><p>
1463         The file name for each flight log is computed automatically
1464         from the recorded flight date, altimeter serial number and
1465         flight number information.
1466       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38551488"></a>3. Replay Flight</h2></div></div></div><p>
1467         Select this button and you are prompted to select a flight
1468         record file, either a .telem file recording telemetry data or a
1469         .eeprom file containing flight data saved from the altimeter
1470         flash memory.
1471       </p><p>
1472         Once a flight record is selected, the flight monitor interface
1473         is displayed and the flight is re-enacted in real time. Check
1474         the Monitor Flight chapter above to learn how this window operates.
1475       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38553520"></a>4. Graph Data</h2></div></div></div><p>
1476         Select this button and you are prompted to select a flight
1477         record file, either a .telem file recording telemetry data or a
1478         .eeprom file containing flight data saved from
1479         flash memory.
1480       </p><p>
1481         Note that telemetry files will generally produce poor graphs
1482         due to the lower sampling rate and missed telemetry packets.
1483         Use saved flight data in .eeprom files for graphing where possible.
1484       </p><p>
1485         Once a flight record is selected, a window with multiple tabs is
1486         opened.
1487       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38555904"></a>4.1. Flight Graph</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="540"><tr><td><img src="graph.png" width="540"></td></tr></table></div></div><p>
1488           By default, the graph contains acceleration (blue),
1489           velocity (green) and altitude (red).
1490         </p><p>
1491         The graph can be zoomed into a particular area by clicking and
1492         dragging down and to the right. Once zoomed, the graph can be
1493         reset by clicking and dragging up and to the left. Holding down
1494         control and clicking and dragging allows the graph to be panned.
1495         The right mouse button causes a pop-up menu to be displayed, giving
1496         you the option save or print the plot.
1497       </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38560352"></a>4.2. Configure Graph</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="540"><tr><td><img src="graph-configure.png" width="540"></td></tr></table></div></div><p>
1498           This selects which graph elements to show, and, at the
1499           very bottom, lets you switch between metric and
1500           imperial units
1501         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38564016"></a>4.3. Flight Statistics</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="540"><tr><td><img src="graph-stats.png" width="540"></td></tr></table></div></div><p>
1502           Shows overall data computed from the flight.
1503         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38567536"></a>4.4. Map</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="540"><tr><td><img src="graph-map.png" width="540"></td></tr></table></div></div><p>
1504           Shows a satellite image of the flight area overlaid
1505           with the path of the flight. The red concentric
1506           circles mark the launch pad, the black concentric
1507           circles mark the landing location.
1508         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38571392"></a>5. Export Data</h2></div></div></div><p>
1509         This tool takes the raw data files and makes them available for
1510         external analysis. When you select this button, you are prompted to 
1511         select a flight data file, which can be either a .eeprom or .telem.
1512         The .eeprom files contain higher resolution and more continuous data, 
1513         while .telem files contain receiver signal strength information.  
1514         Next, a second dialog appears which is used to select
1515         where to write the resulting file. It has a selector to choose
1516         between CSV and KML file formats.
1517       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38572960"></a>5.1. Comma Separated Value Format</h3></div></div></div><p>
1518           This is a text file containing the data in a form suitable for
1519           import into a spreadsheet or other external data analysis
1520           tool. The first few lines of the file contain the version and
1521           configuration information from the altimeter, then
1522           there is a single header line which labels all of the
1523           fields. All of these lines start with a '#' character which
1524           many tools can be configured to skip over.
1525         </p><p>
1526           The remaining lines of the file contain the data, with each
1527           field separated by a comma and at least one space. All of
1528           the sensor values are converted to standard units, with the
1529           barometric data reported in both pressure, altitude and
1530           height above pad units.
1531         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38575312"></a>5.2. Keyhole Markup Language (for Google Earth)</h3></div></div></div><p>
1532           This is the format used by Google Earth to provide an overlay 
1533           within that application. With this, you can use Google Earth to 
1534           see the whole flight path in 3D.
1535         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38576800"></a>6. Configure Altimeter</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="324"><tr><td><img src="configure-altimeter.png" width="324"></td></tr></table></div></div><p>
1536         Select this button and then select either an altimeter or
1537         TeleDongle Device from the list provided. Selecting a TeleDongle
1538         device will use the radio link to configure a remote altimeter. 
1539       </p><p>
1540         The first few lines of the dialog provide information about the
1541         connected device, including the product name,
1542         software version and hardware serial number. Below that are the
1543         individual configuration entries.
1544       </p><p>
1545         At the bottom of the dialog, there are four buttons:
1546       </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Save</span></dt><dd><p>
1547               This writes any changes to the
1548               configuration parameter block in flash memory. If you don't
1549               press this button, any changes you make will be lost.
1550             </p></dd><dt><span class="term">Reset</span></dt><dd><p>
1551               This resets the dialog to the most recently saved values,
1552               erasing any changes you have made.
1553             </p></dd><dt><span class="term">Reboot</span></dt><dd><p>
1554               This reboots the device. Use this to
1555               switch from idle to pad mode by rebooting once the rocket is
1556               oriented for flight, or to confirm changes you think you saved 
1557               are really saved.
1558             </p></dd><dt><span class="term">Close</span></dt><dd><p>
1559               This closes the dialog. Any unsaved changes will be
1560               lost.
1561             </p></dd></dl></div><p>
1562         The rest of the dialog contains the parameters to be configured.
1563       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38589104"></a>6.1. Main Deploy Altitude</h3></div></div></div><p>
1564           This sets the altitude (above the recorded pad altitude) at
1565           which the 'main' igniter will fire. The drop-down menu shows
1566           some common values, but you can edit the text directly and
1567           choose whatever you like. If the apogee charge fires below
1568           this altitude, then the main charge will fire two seconds
1569           after the apogee charge fires.
1570         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38590672"></a>6.2. Apogee Delay</h3></div></div></div><p>
1571           When flying redundant electronics, it's often important to
1572           ensure that multiple apogee charges don't fire at precisely
1573           the same time, as that can over pressurize the apogee deployment
1574           bay and cause a structural failure of the air-frame. The Apogee
1575           Delay parameter tells the flight computer to fire the apogee
1576           charge a certain number of seconds after apogee has been
1577           detected.
1578         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38592288"></a>6.3. Apogee Lockoug</h3></div></div></div><p>
1579           Apogee lockout is the number of seconds after boost where
1580           the flight computer will not fire the apogee charge, even if
1581           the rocket appears to be at apogee. This is often called
1582           'Mach Delay', as it is intended to prevent a flight computer
1583           from unintentionally firing apogee charges due to the pressure
1584           spike that occurrs across a mach transition. Altus Metrum
1585           flight computers include a Kalman filter which is not fooled
1586           by this sharp pressure increase, and so this setting should
1587           be left at the default value of zero to disable it.
1588         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38594016"></a>6.4. Frequency</h3></div></div></div><p>
1589           This configures which of the frequencies to use for both
1590           telemetry and packet command mode. Note that if you set this
1591           value via packet command mode, the TeleDongle frequency will
1592           also be automatically reconfigured to match so that
1593           communication will continue afterwards.
1594         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38595520"></a>6.5. RF Calibration</h3></div></div></div><p>
1595           The radios in every Altus Metrum device are calibrated at the
1596           factory to ensure that they transmit and receive on the
1597           specified frequency.  If you need to you can adjust the calibration 
1598           by changing this value.  Do not do this without understanding what
1599           the value means, read the appendix on calibration and/or the source
1600           code for more information.  To change a TeleDongle's calibration, 
1601           you must reprogram the unit completely.
1602         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38597168"></a>6.6. Telemetry/RDF/APRS Enable</h3></div></div></div><p>
1603           Enables the radio for transmission during flight. When
1604           disabled, the radio will not transmit anything during flight
1605           at all.
1606         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38598464"></a>6.7. APRS Interval</h3></div></div></div><p>
1607           How often to transmit GPS information via APRS (in
1608           seconds). When set to zero, APRS transmission is
1609           disabled. This option is available on TeleMetrum v2 and
1610           TeleMega boards. TeleMetrum v1 boards cannot transmit APRS
1611           packets. Note that a single APRS packet takes nearly a full
1612           second to transmit, so enabling this option will prevent
1613           sending any other telemetry during that time.
1614         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38600032"></a>6.8. Callsign</h3></div></div></div><p>
1615           This sets the call sign included in each telemetry packet. Set this
1616           as needed to conform to your local radio regulations.
1617         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38601344"></a>6.9. Maximum Flight Log Size</h3></div></div></div><p>
1618           This sets the space (in kilobytes) allocated for each flight
1619           log. The available space will be divided into chunks of this
1620           size. A smaller value will allow more flights to be stored,
1621           a larger value will record data from longer flights.
1622         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38602784"></a>6.10. Ignitor Firing Mode</h3></div></div></div><p>
1623           This configuration parameter allows the two standard ignitor
1624           channels (Apogee and Main) to be used in different
1625           configurations.
1626         </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Dual Deploy</span></dt><dd><p>
1627                   This is the usual mode of operation; the
1628                   'apogee' channel is fired at apogee and the 'main'
1629                   channel at the height above ground specified by the
1630                   'Main Deploy Altitude' during descent.
1631                 </p></dd><dt><span class="term">Redundant Apogee</span></dt><dd><p>
1632                   This fires both channels at
1633                   apogee, the 'apogee' channel first followed after a two second
1634                   delay by the 'main' channel.
1635                 </p></dd><dt><span class="term">Redundant Main</span></dt><dd><p>
1636                   This fires both channels at the
1637                   height above ground specified by the Main Deploy
1638                   Altitude setting during descent. The 'apogee'
1639                   channel is fired first, followed after a two second
1640                   delay by the 'main' channel.
1641                 </p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38609696"></a>6.11. Pad Orientation</h3></div></div></div><p>
1642           Because they include accelerometers, TeleMetrum and
1643           TeleMega are sensitive to the orientation of the board. By
1644           default, they expect the antenna end to point forward. This
1645           parameter allows that default to be changed, permitting the
1646           board to be mounted with the antenna pointing aft instead.
1647         </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Antenna Up</span></dt><dd><p>
1648                 In this mode, the antenna end of the
1649                 flight computer must point forward, in line with the
1650                 expected flight path.
1651               </p></dd><dt><span class="term">Antenna Down</span></dt><dd><p>
1652                 In this mode, the antenna end of the
1653                 flight computer must point aft, in line with the
1654                 expected flight path.
1655               </p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38614912"></a>6.12. Beeper Frequency</h3></div></div></div><p>
1656           The beeper on all Altus Metrum flight computers works best
1657           at 4000Hz, however if you have more than one flight computer
1658           in a single airframe, having all of them sound at the same
1659           frequency can be confusing. This parameter lets you adjust
1660           the base beeper frequency value.
1661         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38616368"></a>6.13. Configure Pyro Channels</h3></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="540"><tr><td><img src="configure-pyro.png" width="540"></td></tr></table></div></div><p>
1662           This opens a separate window to configure the additional
1663           pyro channels available on TeleMega.  One column is
1664           presented for each channel. Each row represents a single
1665           parameter, if enabled the parameter must meet the specified
1666           test for the pyro channel to be fired. See the Pyro Channels
1667           section in the System Operation chapter above for a
1668           description of these parameters.
1669         </p><p>
1670           Select conditions and set the related value; the pyro
1671           channel will be activated when <span class="emphasis"><em>all</em></span> of the
1672           conditions are met. Each pyro channel has a separate set of
1673           configuration values, so you can use different values for
1674           the same condition with different channels.
1675         </p><p>
1676           At the bottom of the window, the 'Pyro Firing Time'
1677           configuration sets the length of time (in seconds) which
1678           each of these pyro channels will fire for.
1679         </p><p>
1680           Once you have selected the appropriate configuration for all
1681           of the necessary pyro channels, you can save the pyro
1682           configuration along with the rest of the flight computer
1683           configuration by pressing the 'Save' button in the main
1684           Configure Flight Computer window.
1685         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38622736"></a>7. Configure AltosUI</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="216"><tr><td><img src="configure-altosui.png" width="216"></td></tr></table></div></div><p>
1686         This button presents a dialog so that you can configure the AltosUI global settings.
1687       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38626240"></a>7.1. Voice Settings</h3></div></div></div><p>
1688           AltosUI provides voice announcements during flight so that you
1689           can keep your eyes on the sky and still get information about
1690           the current flight status. However, sometimes you don't want
1691           to hear them.
1692         </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Enable</span></dt><dd><p>Turns all voice announcements on and off</p></dd><dt><span class="term">Test Voice</span></dt><dd><p>
1693                 Plays a short message allowing you to verify
1694                 that the audio system is working and the volume settings
1695                 are reasonable
1696               </p></dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38631264"></a>7.2. Log Directory</h3></div></div></div><p>
1697           AltosUI logs all telemetry data and saves all TeleMetrum flash
1698           data to this directory. This directory is also used as the
1699           staring point when selecting data files for display or export.
1700         </p><p>
1701           Click on the directory name to bring up a directory choosing
1702           dialog, select a new directory and click 'Select Directory' to
1703           change where AltosUI reads and writes data files.
1704         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38633264"></a>7.3. Callsign</h3></div></div></div><p>
1705           This value is transmitted in each command packet sent from 
1706           TeleDongle and received from an altimeter.  It is not used in 
1707           telemetry mode, as the callsign configured in the altimeter board
1708           is included in all telemetry packets.  Configure this
1709           with the AltosUI operators call sign as needed to comply with
1710           your local radio regulations.
1711         </p><p>
1712           Note that to successfully command a flight computer over the radio
1713           (to configure the altimeter, monitor idle, or fire pyro charges), 
1714           the callsign configured here must exactly match the callsign
1715           configured in the flight computer.  This matching is case 
1716           sensitive.
1717         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38635504"></a>7.4. Imperial Units</h3></div></div></div><p>
1718           This switches between metric units (meters) and imperial
1719           units (feet and miles). This affects the display of values
1720           use during flight monitoring, configuration, data graphing
1721           and all of the voice announcements. It does not change the
1722           units used when exporting to CSV files, those are always
1723           produced in metric units.
1724         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38637008"></a>7.5. Font Size</h3></div></div></div><p>
1725           Selects the set of fonts used in the flight monitor
1726           window. Choose between the small, medium and large sets.
1727         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38638288"></a>7.6. Serial Debug</h3></div></div></div><p>
1728           This causes all communication with a connected device to be
1729           dumped to the console from which AltosUI was started. If
1730           you've started it from an icon or menu entry, the output
1731           will simply be discarded. This mode can be useful to debug
1732           various serial communication issues.
1733         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38639792"></a>7.7. Manage Frequencies</h3></div></div></div><p>
1734           This brings up a dialog where you can configure the set of
1735           frequencies shown in the various frequency menus. You can
1736           add as many as you like, or even reconfigure the default
1737           set. Changing this list does not affect the frequency
1738           settings of any devices, it only changes the set of
1739           frequencies shown in the menus.
1740         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38641424"></a>8. Configure Groundstation</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="279"><tr><td><img src="configure-groundstation.png" width="279"></td></tr></table></div></div><p>
1741         Select this button and then select a TeleDongle Device from the list provided.
1742       </p><p>
1743         The first few lines of the dialog provide information about the
1744         connected device, including the product name,
1745         software version and hardware serial number. Below that are the
1746         individual configuration entries.
1747       </p><p>
1748         Note that the TeleDongle itself doesn't save any configuration
1749         data, the settings here are recorded on the local machine in
1750         the Java preferences database. Moving the TeleDongle to
1751         another machine, or using a different user account on the same
1752         machine will cause settings made here to have no effect.
1753       </p><p>
1754         At the bottom of the dialog, there are three buttons:
1755       </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Save</span></dt><dd><p>
1756               This writes any changes to the
1757               local Java preferences file. If you don't
1758               press this button, any changes you make will be lost.
1759             </p></dd><dt><span class="term">Reset</span></dt><dd><p>
1760               This resets the dialog to the most recently saved values,
1761               erasing any changes you have made.
1762             </p></dd><dt><span class="term">Close</span></dt><dd><p>
1763               This closes the dialog. Any unsaved changes will be
1764               lost.
1765             </p></dd></dl></div><p>
1766         The rest of the dialog contains the parameters to be configured.
1767       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38652544"></a>8.1. Frequency</h3></div></div></div><p>
1768           This configures the frequency to use for both telemetry and
1769           packet command mode. Set this before starting any operation
1770           involving packet command mode so that it will use the right
1771           frequency. Telemetry monitoring mode also provides a menu to
1772           change the frequency, and that menu also sets the same Java
1773           preference value used here.
1774         </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38654112"></a>8.2. Radio Calibration</h3></div></div></div><p>
1775           The radios in every Altus Metrum device are calibrated at the
1776           factory to ensure that they transmit and receive on the
1777           specified frequency.  To change a TeleDongle's calibration, 
1778           you must reprogram the unit completely, so this entry simply
1779           shows the current value and doesn't allow any changes.
1780         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38655744"></a>9. Flash Image</h2></div></div></div><p>
1781         This reprograms Altus Metrum devices with new
1782         firmware. TeleMetrum v1.x, TeleDongle, TeleMini and TeleBT are
1783         all reprogrammed by using another similar unit as a
1784         programming dongle (pair programming). TeleMega, TeleMetrum v2
1785         and EasyMini are all programmed directly over their USB ports
1786         (self programming).  Please read the directions for flashing
1787         devices in the Updating Device Firmware chapter below.
1788       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38657376"></a>10. Fire Igniter</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="108"><tr><td><img src="fire-igniter.png" width="108"></td></tr></table></div></div><p>
1789         This activates the igniter circuits in the flight computer to help 
1790         test recovery systems deployment. Because this command can operate
1791         over the Packet Command Link, you can prepare the rocket as
1792         for flight and then test the recovery system without needing
1793         to snake wires inside the air-frame.
1794       </p><p>
1795         Selecting the 'Fire Igniter' button brings up the usual device
1796         selection dialog. Pick the desired device. This brings up another 
1797         window which shows the current continuity test status for all
1798         of the pyro channels.
1799       </p><p>
1800         Next, select the desired igniter to fire. This will enable the
1801         'Arm' button.
1802       </p><p>
1803         Select the 'Arm' button. This enables the 'Fire' button. The
1804         word 'Arm' is replaced by a countdown timer indicating that
1805         you have 10 seconds to press the 'Fire' button or the system
1806         will deactivate, at which point you start over again at
1807         selecting the desired igniter.
1808       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38663008"></a>11. Scan Channels</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="288"><tr><td><img src="scan-channels.png" width="288"></td></tr></table></div></div><p>
1809         This listens for telemetry packets on all of the configured
1810         frequencies, displaying information about each device it
1811         receives a packet from. You can select which of the three
1812         telemetry formats should be tried; by default, it only listens
1813         for the standard telemetry packets used in v1.0 and later
1814         firmware.
1815       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38666864"></a>12. Load Maps</h2></div></div></div><div class="informalfigure"><div class="mediaobject"><table border="0" summary="manufactured viewport for HTML img" style="cellpadding: 0; cellspacing: 0;" width="468"><tr><td><img src="load-maps.png" width="468"></td></tr></table></div></div><p>
1816         Before heading out to a new launch site, you can use this to
1817         load satellite images in case you don't have internet
1818         connectivity at the site. This loads a fairly large area
1819         around the launch site, which should cover any flight you're likely to make.
1820       </p><p>
1821         There's a drop-down menu of launch sites we know about; if
1822         your favorites aren't there, please let us know the lat/lon
1823         and name of the site. The contents of this list are actually
1824         downloaded from our server at run-time, so as new sites are sent 
1825         in, they'll get automatically added to this list.
1826         If the launch site isn't in the list, you can manually enter the lat/lon values
1827       </p><p>
1828         There are four different kinds of maps you can view; you can
1829         select which to download by selecting as many as you like from
1830         the available types:
1831         </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Hybrid</span></dt><dd><p>
1832                 A combination of satellite imagery and road data. This
1833                 is the default view.
1834               </p></dd><dt><span class="term">Satellite</span></dt><dd><p>
1835                 Just the satellite imagery without any annotation.
1836               </p></dd><dt><span class="term">Roadmap</span></dt><dd><p>
1837                 Roads, political boundaries and a few geographic features.
1838               </p></dd><dt><span class="term">Terrain</span></dt><dd><p>
1839                 Contour intervals and shading that show hills and
1840                 valleys.
1841               </p></dd></dl></div><p>
1842       </p><p>
1843         You can specify the range of zoom levels to download; smaller
1844         numbers show more area with less resolution. The default
1845         level, 0, shows about 3m/pixel. One zoom level change
1846         doubles or halves that number.
1847       </p><p>
1848         The Tile Radius value sets how large an area around the center
1849         point to download. Each tile is 512x512 pixels, and the
1850         'radius' value specifies how many tiles away from the center
1851         will be downloaded. Specify a radius of 0 and you get only the
1852         center tile. A radius of 1 loads a 3x3 grid, centered on the
1853         specified location.
1854       </p><p>
1855         Clicking the 'Load Map' button will fetch images from Google
1856         Maps; note that Google limits how many images you can fetch at
1857         once, so if you load more than one launch site, you may get
1858         some gray areas in the map which indicate that Google is tired
1859         of sending data to you. Try again later.
1860       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38680752"></a>13. Monitor Idle</h2></div></div></div><p>
1861         This brings up a dialog similar to the Monitor Flight UI,
1862         except it works with the altimeter in &#8220;idle&#8221; mode by sending
1863         query commands to discover the current state rather than
1864         listening for telemetry packets. Because this uses command
1865         mode, it needs to have the TeleDongle and flight computer
1866         callsigns match exactly. If you can receive telemetry, but
1867         cannot manage to run Monitor Idle, then it's very likely that
1868         your callsigns are different in some way.
1869       </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38682848"></a>Chapter 7. AltosDroid</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38685232">1. Installing AltosDroid</a></span></dt><dt><span class="section"><a href="#idp38687168">2. Connecting to TeleBT</a></span></dt><dt><span class="section"><a href="#idp38689168">3. Configuring AltosDroid</a></span></dt><dt><span class="section"><a href="#idp38690624">4. AltosDroid Flight Monitoring</a></span></dt><dd><dl><dt><span class="section"><a href="#idp38691936">4.1. Pad</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38705488">5. Downloading Flight Logs</a></span></dt></dl></div><p>
1870       AltosDroid provides the same flight monitoring capabilities as
1871       AltosUI, but runs on Android devices and is designed to connect
1872       to a TeleBT receiver over Bluetooth&#8482;. AltosDroid monitors
1873       telemetry data, logging it to internal storage in the Android
1874       device, and presents that data in a UI the same way the 'Monitor
1875       Flight' window does in AltosUI.
1876     </p><p>
1877       This manual will explain how to configure AltosDroid, connect
1878       to TeleBT, operate the flight monitoring interface and describe
1879       what the displayed data means.
1880     </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38685232"></a>1. Installing AltosDroid</h2></div></div></div><p>
1881         AltosDroid is available from the Google Play store. To install
1882         it on your Android device, open the Google Play Store
1883         application and search for &#8220;altosdroid&#8221;. Make sure you don't
1884         have a space between &#8220;altos&#8221; and &#8220;droid&#8221; or you probably won't
1885         find what you want. That should bring you to the right page
1886         from which you can download and install the application.
1887       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38687168"></a>2. Connecting to TeleBT</h2></div></div></div><p>
1888         Press the Android 'Menu' button or soft-key to see the
1889         configuration options available. Select the 'Connect a device'
1890         option and then the 'Scan for devices' entry at the bottom to
1891         look for your TeleBT device. Select your device, and when it
1892         asks for the code, enter '1234'.
1893       </p><p>
1894         Subsequent connections will not require you to enter that
1895         code, and your 'paired' device will appear in the list without
1896         scanning.
1897       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38689168"></a>3. Configuring AltosDroid</h2></div></div></div><p>
1898         The only configuration option available for AltosDroid is
1899         which frequency to listen on. Press the Android 'Menu' button
1900         or soft-key and pick the 'Select radio frequency' entry. That
1901         brings up a menu of pre-set radio frequencies; pick the one
1902         which matches your altimeter.
1903       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38690624"></a>4. AltosDroid Flight Monitoring</h2></div></div></div><p>
1904         AltosDroid is designed to mimic the AltosUI flight monitoring
1905         display, providing separate tabs for each stage of your rocket
1906         flight along with a tab containing a map of the local area
1907         with icons marking the current location of the altimeter and
1908         the Android device.
1909       </p><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38691936"></a>4.1. Pad</h3></div></div></div><p>
1910           The 'Launch Pad' tab shows information used to decide when the
1911           rocket is ready for flight. The first elements include red/green
1912           indicators, if any of these is red, you'll want to evaluate
1913           whether the rocket is ready to launch:
1914           </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Battery Voltage</span></dt><dd><p>
1915                   This indicates whether the Li-Po battery
1916                   powering the TeleMetrum has sufficient charge to last for
1917                   the duration of the flight. A value of more than
1918                   3.8V is required for a 'GO' status.
1919                 </p></dd><dt><span class="term">Apogee Igniter Voltage</span></dt><dd><p>
1920                   This indicates whether the apogee
1921                   igniter has continuity. If the igniter has a low
1922                   resistance, then the voltage measured here will be close
1923                   to the Li-Po battery voltage. A value greater than 3.2V is
1924                   required for a 'GO' status.
1925                 </p></dd><dt><span class="term">Main Igniter Voltage</span></dt><dd><p>
1926                   This indicates whether the main
1927                   igniter has continuity. If the igniter has a low
1928                   resistance, then the voltage measured here will be close
1929                   to the Li-Po battery voltage. A value greater than 3.2V is
1930                   required for a 'GO' status.
1931                 </p></dd><dt><span class="term">On-board Data Logging</span></dt><dd><p>
1932                   This indicates whether there is
1933                   space remaining on-board to store flight data for the
1934                   upcoming flight. If you've downloaded data, but failed
1935                   to erase flights, there may not be any space
1936                   left. TeleMetrum can store multiple flights, depending
1937                   on the configured maximum flight log size. TeleMini
1938                   stores only a single flight, so it will need to be
1939                   downloaded and erased after each flight to capture
1940                   data. This only affects on-board flight logging; the
1941                   altimeter will still transmit telemetry and fire
1942                   ejection charges at the proper times.
1943                 </p></dd><dt><span class="term">GPS Locked</span></dt><dd><p>
1944                   For a TeleMetrum or TeleMega device, this indicates whether the GPS receiver is
1945                   currently able to compute position information. GPS requires
1946                   at least 4 satellites to compute an accurate position.
1947                 </p></dd><dt><span class="term">GPS Ready</span></dt><dd><p>
1948                   For a TeleMetrum or TeleMega device, this indicates whether GPS has reported at least
1949                   10 consecutive positions without losing lock. This ensures
1950                   that the GPS receiver has reliable reception from the
1951                   satellites.
1952                 </p></dd></dl></div><p>
1953         </p><p>
1954           The Launchpad tab also shows the computed launch pad position
1955           and altitude, averaging many reported positions to improve the
1956           accuracy of the fix.
1957         </p></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38705488"></a>5. Downloading Flight Logs</h2></div></div></div><p>
1958         AltosDroid always saves every bit of telemetry data it
1959         receives. To download that to a computer for use with AltosUI,
1960         simply remove the SD card from your Android device, or connect
1961         your device to your computer's USB port and browse the files
1962         on that device. You will find '.telem' files in the TeleMetrum
1963         directory that will work with AltosUI directly.
1964       </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38707152"></a>Chapter 8. Using Altus Metrum Products</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38707792">1. Being Legal</a></span></dt><dt><span class="section"><a href="#idp38709696">2. In the Rocket</a></span></dt><dt><span class="section"><a href="#idp38712160">3. On the Ground</a></span></dt><dt><span class="section"><a href="#idp38725552">4. Data Analysis</a></span></dt><dt><span class="section"><a href="#idp38728096">5. Future Plans</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38707792"></a>1. Being Legal</h2></div></div></div><p>
1965         First off, in the US, you need an <a class="ulink" href="http://www.altusmetrum.org/Radio/" target="_top">amateur radio license</a> or
1966         other authorization to legally operate the radio transmitters that are part
1967         of our products.
1968       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38709696"></a>2. In the Rocket</h2></div></div></div><p>
1969           In the rocket itself, you just need a flight computer and
1970           a single-cell, 3.7 volt nominal Li-Po rechargeable battery.  An 
1971           850mAh battery weighs less than a 9V alkaline battery, and will 
1972           run a TeleMetrum or TeleMega for hours.
1973           A 110mAh battery weighs less than a triple A battery and is a good
1974           choice for use with TeleMini.
1975         </p><p>
1976           By default, we ship flight computers with a simple wire antenna.  
1977           If your electronics bay or the air-frame it resides within is made 
1978           of carbon fiber, which is opaque to RF signals, you may prefer to 
1979           install an SMA connector so that you can run a coaxial cable to an 
1980           antenna mounted elsewhere in the rocket.  However, note that the 
1981           GPS antenna is fixed on all current products, so you really want
1982           to install the flight computer in a bay made of RF-transparent
1983           materials if at all possible.
1984         </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38712160"></a>3. On the Ground</h2></div></div></div><p>
1985           To receive the data stream from the rocket, you need an antenna and short
1986           feed-line connected to one of our <a class="ulink" href="http://www.altusmetrum.org/TeleDongle/" target="_top">TeleDongle</a> units.  If possible, use an SMA to BNC 
1987         adapter instead of feedline between the antenna feedpoint and 
1988         TeleDongle, as this will give you the best performance.  The
1989           TeleDongle in turn plugs directly into the USB port on a notebook
1990           computer.  Because TeleDongle looks like a simple serial port, your computer
1991           does not require special device drivers... just plug it in.
1992         </p><p>
1993           The GUI tool, AltosUI, is written in Java and runs across
1994           Linux, Mac OS and Windows. There's also a suite of C tools
1995           for Linux which can perform most of the same tasks.
1996         </p><p>
1997           Alternatively, a TeleBT attached with an SMA to BNC adapter at the
1998           feed point of a hand-held yagi used in conjunction with an Android
1999           device running AltosDroid makes an outstanding ground station.
2000         </p><p>
2001           After the flight, you can use the radio link to extract the more detailed data
2002           logged in either TeleMetrum or TeleMini devices, or you can use a mini USB cable to plug into the
2003           TeleMetrum board directly.  Pulling out the data without having to open up
2004           the rocket is pretty cool!  A USB cable is also how you charge the Li-Po
2005           battery, so you'll want one of those anyway... the same cable used by lots
2006           of digital cameras and other modern electronic stuff will work fine.
2007         </p><p>
2008           If your rocket lands out of sight, you may enjoy having a hand-held 
2009           GPS receiver, so that you can put in a way-point for the last 
2010           reported rocket position before touch-down.  This makes looking for 
2011           your rocket a lot like Geo-Caching... just go to the way-point and 
2012           look around starting from there.  AltosDroid on an Android device
2013           with GPS receiver works great for this, too!
2014         </p><p>
2015           You may also enjoy having a ham radio &#8220;HT&#8221; that covers the 70cm band... you
2016           can use that with your antenna to direction-find the rocket on the ground
2017           the same way you can use a Walston or Beeline tracker.  This can be handy
2018           if the rocket is hiding in sage brush or a tree, or if the last GPS position
2019           doesn't get you close enough because the rocket dropped into a canyon, or
2020           the wind is blowing it across a dry lake bed, or something like that...  Keith
2021           currently uses a Yaesu VX-7R, Bdale has a Baofung UV-5R
2022           which isn't as nice, but was a whole lot cheaper.
2023         </p><p>
2024           So, to recap, on the ground the hardware you'll need includes:
2025           </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2026               an antenna and feed-line or adapter
2027               </p></li><li class="listitem"><p>
2028               a TeleDongle
2029               </p></li><li class="listitem"><p>
2030               a notebook computer
2031               </p></li><li class="listitem"><p>
2032               optionally, a hand-held GPS receiver
2033               </p></li><li class="listitem"><p>
2034               optionally, an HT or receiver covering 435 MHz
2035               </p></li></ol></div><p>
2036         </p><p>
2037           The best hand-held commercial directional antennas we've found for radio
2038           direction finding rockets are from
2039           <a class="ulink" href="http://www.arrowantennas.com/" target="_top">
2040             Arrow Antennas.
2041           </a>
2042           The 440-3 and 440-5 are both good choices for finding a
2043           TeleMetrum- or TeleMini- equipped rocket when used with a suitable 
2044           70cm HT.  TeleDongle and an SMA to BNC adapter fit perfectly
2045           between the driven element and reflector of Arrow antennas.
2046         </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38725552"></a>4. Data Analysis</h2></div></div></div><p>
2047           Our software makes it easy to log the data from each flight, both the
2048           telemetry received during the flight itself, and the more
2049           complete data log recorded in the flash memory on the altimeter
2050           board.  Once this data is on your computer, our post-flight tools make it
2051           easy to quickly get to the numbers everyone wants, like apogee altitude,
2052           max acceleration, and max velocity.  You can also generate and view a
2053           standard set of plots showing the altitude, acceleration, and
2054           velocity of the rocket during flight.  And you can even export a TeleMetrum data file
2055           usable with Google Maps and Google Earth for visualizing the flight path
2056           in two or three dimensions!
2057         </p><p>
2058           Our ultimate goal is to emit a set of files for each flight that can be
2059           published as a web page per flight, or just viewed on your local disk with
2060           a web browser.
2061         </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38728096"></a>5. Future Plans</h2></div></div></div><p>
2062           We've designed a simple GPS based radio tracker called TeleGPS.  
2063           If all goes well, we hope to introduce this in the first
2064           half of 2014.
2065         </p><p>
2066           We have designed and prototyped several &#8220;companion boards&#8221; that 
2067           can attach to the companion connector on TeleMetrum and TeleMega
2068           flight computers to collect more data, provide more pyro channels, 
2069           and so forth.  We do not yet know if or when any of these boards
2070           will be produced in enough quantity to sell.  If you have specific
2071           interests for data collection or control of events in your rockets
2072           beyond the capabilities of our existing productions, please let 
2073           us know!
2074         </p><p>
2075           Because all of our work is open, both the hardware designs and the 
2076           software, if you have some great idea for an addition to the current 
2077           Altus Metrum family, feel free to dive in and help!  Or let us know 
2078           what you'd like to see that we aren't already working on, and maybe 
2079           we'll get excited about it too...
2080         </p><p>
2081           Watch our 
2082           <a class="ulink" href="http://altusmetrum.org/" target="_top">web site</a> for more news 
2083           and information as our family of products evolves!
2084         </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38732480"></a>Chapter 9. Altimeter Installation Recommendations</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38733936">1. Mounting the Altimeter</a></span></dt><dt><span class="section"><a href="#idp38738768">2. Dealing with the Antenna</a></span></dt><dt><span class="section"><a href="#idp38744336">3. Preserving GPS Reception</a></span></dt><dt><span class="section"><a href="#idp38749120">4. Radio Frequency Interference</a></span></dt><dt><span class="section"><a href="#idp38756688">5. The Barometric Sensor</a></span></dt><dt><span class="section"><a href="#idp38759488">6. Ground Testing</a></span></dt></dl></div><p>
2085       Building high-power rockets that fly safely is hard enough. Mix
2086       in some sophisticated electronics and a bunch of radio energy
2087       and some creativity and/or compromise may be required. This chapter
2088       contains some suggestions about how to install Altus Metrum
2089       products into a rocket air-frame, including how to safely and
2090       reliably mix a variety of electronics into the same air-frame.
2091     </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38733936"></a>1. Mounting the Altimeter</h2></div></div></div><p>
2092         The first consideration is to ensure that the altimeter is
2093         securely fastened to the air-frame. For most of our products, we 
2094         prefer nylon standoffs and nylon screws; they're good to at least 50G
2095         and cannot cause any electrical issues on the board.  Metal screws
2096         and standoffs are fine, too, just be careful to avoid electrical
2097         shorts!  For TeleMini v1.0, we usually cut small pieces of 1/16 inch 
2098         balsa to fit
2099         under the screw holes, and then take 2x56 nylon screws and
2100         screw them through the TeleMini mounting holes, through the
2101         balsa and into the underlying material.
2102       </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2103             Make sure accelerometer-equipped products like TeleMetrum and
2104             TeleMega are aligned precisely along the axis of
2105             acceleration so that the accelerometer can accurately
2106             capture data during the flight.
2107           </p></li><li class="listitem"><p>
2108             Watch for any metal touching components on the
2109             board. Shorting out connections on the bottom of the board
2110             can cause the altimeter to fail during flight.
2111           </p></li></ol></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38738768"></a>2. Dealing with the Antenna</h2></div></div></div><p>
2112         The antenna supplied is just a piece of solid, insulated,
2113         wire. If it gets damaged or broken, it can be easily
2114         replaced. It should be kept straight and not cut; bending or
2115         cutting it will change the resonant frequency and/or
2116         impedance, making it a less efficient radiator and thus
2117         reducing the range of the telemetry signal.
2118       </p><p>
2119         Keeping metal away from the antenna will provide better range
2120         and a more even radiation pattern. In most rockets, it's not
2121         entirely possible to isolate the antenna from metal
2122         components; there are often bolts, all-thread and wires from other
2123         electronics to contend with. Just be aware that the more stuff
2124         like this around the antenna, the lower the range.
2125       </p><p>
2126         Make sure the antenna is not inside a tube made or covered
2127         with conducting material. Carbon fiber is the most common
2128         culprit here -- CF is a good conductor and will effectively
2129         shield the antenna, dramatically reducing signal strength and
2130         range. Metallic flake paint is another effective shielding
2131         material which should be avoided around any antennas.
2132       </p><p>
2133         If the ebay is large enough, it can be convenient to simply
2134         mount the altimeter at one end and stretch the antenna out
2135         inside. Taping the antenna to the sled can keep it straight
2136         under acceleration. If there are metal rods, keep the
2137         antenna as far away as possible.
2138       </p><p>
2139         For a shorter ebay, it's quite practical to have the antenna
2140         run through a bulkhead and into an adjacent bay. Drill a small
2141         hole in the bulkhead, pass the antenna wire through it and
2142         then seal it up with glue or clay. We've also used acrylic
2143         tubing to create a cavity for the antenna wire. This works a
2144         bit better in that the antenna is known to stay straight and
2145         not get folded by recovery components in the bay. Angle the
2146         tubing towards the side wall of the rocket and it ends up
2147         consuming very little space.
2148       </p><p>
2149         If you need to place the UHF antenna at a distance from the
2150         altimeter, you can replace the antenna with an edge-mounted
2151         SMA connector, and then run 50&#937; coax from the board to the
2152         antenna. Building a remote antenna is beyond the scope of this
2153         manual.
2154       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38744336"></a>3. Preserving GPS Reception</h2></div></div></div><p>
2155         The GPS antenna and receiver used in TeleMetrum and TeleMega is 
2156         highly sensitive and normally have no trouble tracking enough
2157         satellites to provide accurate position information for
2158         recovering the rocket. However, there are many ways the GPS signal
2159         can end up attenuated, negatively affecting GPS performance. 
2160       </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2161             Conductive tubing or coatings. Carbon fiber and metal
2162             tubing, or metallic paint will all dramatically attenuate the
2163             GPS signal. We've never heard of anyone successfully
2164             receiving GPS from inside these materials.
2165           </p></li><li class="listitem"><p>
2166             Metal components near the GPS patch antenna. These will
2167             de-tune the patch antenna, changing the resonant frequency
2168             away from the L1 carrier and reduce the effectiveness of the
2169             antenna. You can place as much stuff as you like beneath the
2170             antenna as that's covered with a ground plane. But, keep
2171             wires and metal out from above the patch antenna.
2172           </p></li></ol></div><p>
2173       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38749120"></a>4. Radio Frequency Interference</h2></div></div></div><p>
2174         Any altimeter will generate RFI; the digital circuits use
2175         high-frequency clocks that spray radio interference across a
2176         wide band. Altus Metrum altimeters generate intentional radio
2177         signals as well, increasing the amount of RF energy around the board.
2178       </p><p>
2179         Rocketry altimeters also use precise sensors measuring air
2180         pressure and acceleration. Tiny changes in voltage can cause
2181         these sensor readings to vary by a huge amount. When the
2182         sensors start mis-reporting data, the altimeter can either
2183         fire the igniters at the wrong time, or not fire them at all.
2184       </p><p>
2185         Voltages are induced when radio frequency energy is
2186         transmitted from one circuit to another. Here are things that
2187         influence the induced voltage and current:
2188       </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2189             Keep wires from different circuits apart. Moving circuits
2190             further apart will reduce RFI.
2191           </p></li><li class="listitem"><p>
2192           Avoid parallel wires from different circuits. The longer two
2193           wires run parallel to one another, the larger the amount of
2194           transferred energy. Cross wires at right angles to reduce
2195           RFI.
2196           </p></li><li class="listitem"><p>
2197           Twist wires from the same circuits. Two wires the same
2198           distance from the transmitter will get the same amount of
2199           induced energy which will then cancel out. Any time you have
2200           a wire pair running together, twist the pair together to
2201           even out distances and reduce RFI. For altimeters, this
2202           includes battery leads, switch hookups and igniter
2203           circuits.
2204           </p></li><li class="listitem"><p>
2205           Avoid resonant lengths. Know what frequencies are present
2206           in the environment and avoid having wire lengths near a
2207           natural resonant length. Altus Metrum products transmit on the
2208           70cm amateur band, so you should avoid lengths that are a
2209           simple ratio of that length; essentially any multiple of ¼
2210           of the wavelength (17.5cm).
2211           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38756688"></a>5. The Barometric Sensor</h2></div></div></div><p>
2212         Altusmetrum altimeters measure altitude with a barometric
2213         sensor, essentially measuring the amount of air above the
2214         rocket to figure out how high it is. A large number of
2215         measurements are taken as the altimeter initializes itself to
2216         figure out the pad altitude. Subsequent measurements are then
2217         used to compute the height above the pad.
2218       </p><p>
2219         To accurately measure atmospheric pressure, the ebay
2220         containing the altimeter must be vented outside the
2221         air-frame. The vent must be placed in a region of linear
2222         airflow, have smooth edges, and away from areas of increasing or 
2223         decreasing pressure.
2224       </p><p>
2225         All barometric sensors are quite sensitive to chemical damage from 
2226         the products of APCP or BP combustion, so make sure the ebay is 
2227         carefully sealed from any compartment which contains ejection 
2228         charges or motors.
2229       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38759488"></a>6. Ground Testing</h2></div></div></div><p>
2230         The most important aspect of any installation is careful
2231         ground testing. Bringing an air-frame up to the LCO table which
2232         hasn't been ground tested can lead to delays or ejection
2233         charges firing on the pad, or, even worse, a recovery system
2234         failure.
2235       </p><p>
2236         Do a 'full systems' test that includes wiring up all igniters
2237         without any BP and turning on all of the electronics in flight
2238         mode. This will catch any mistakes in wiring and any residual
2239         RFI issues that might accidentally fire igniters at the wrong
2240         time. Let the air-frame sit for several minutes, checking for
2241         adequate telemetry signal strength and GPS lock.  If any igniters
2242         fire unexpectedly, find and resolve the issue before loading any
2243         BP charges!
2244       </p><p>
2245         Ground test the ejection charges. Prepare the rocket for
2246         flight, loading ejection charges and igniters. Completely
2247         assemble the air-frame and then use the 'Fire Igniters'
2248         interface through a TeleDongle to command each charge to
2249         fire. Make sure the charge is sufficient to robustly separate
2250         the air-frame and deploy the recovery system.
2251       </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38762656"></a>Chapter 10. Updating Device Firmware</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38766672">1. 
2252         Updating TeleMega, TeleMetrum v2 or EasyMini Firmware
2253       </a></span></dt><dd><dl><dt><span class="section"><a href="#idp38775728">1.1. Recovering From Self-Flashing Failure</a></span></dt></dl></dd><dt><span class="section"><a href="#idp38784704">2. Pair Programming</a></span></dt><dt><span class="section"><a href="#idp38786144">3. Updating TeleMetrum v1.x Firmware</a></span></dt><dt><span class="section"><a href="#idp38799344">4. Updating TeleMini Firmware</a></span></dt><dt><span class="section"><a href="#idp38812896">5. Updating TeleDongle Firmware</a></span></dt></dl></div><p>
2254       TeleMega, TeleMetrum v2 and EasyMini are all programmed directly
2255       over their USB connectors (self programming). TeleMetrum v1, TeleMini and
2256       TeleDongle are all programmed by using another device as a
2257       programmer (pair programming). It's important to recognize which
2258       kind of devices you have before trying to reprogram them.
2259     </p><p>
2260       You may wish to begin by ensuring you have current firmware images.
2261       These are distributed as part of the AltOS software bundle that
2262       also includes the AltosUI ground station program.  Newer ground
2263       station versions typically work fine with older firmware versions,
2264       so you don't need to update your devices just to try out new
2265       software features.  You can always download the most recent
2266       version from <a class="ulink" href="http://www.altusmetrum.org/AltOS/" target="_top">http://www.altusmetrum.org/AltOS/</a>.
2267     </p><p>
2268       If you need to update the firmware on a TeleDongle, we recommend 
2269       updating the altimeter first, before updating TeleDongle.  However,
2270       note that TeleDongle rarely need to be updated.  Any firmware version
2271       1.0.1 or later will work, version 1.2.1 may have improved receiver
2272       performance slightly.
2273     </p><p>
2274       Self-programmable devices (TeleMega, TeleMetrum v2 and EasyMini)
2275       are reprogrammed by connecting them to your computer over USB
2276     </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38766672"></a>1. 
2277         Updating TeleMega, TeleMetrum v2 or EasyMini Firmware
2278       </h2></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2279             Attach a battery and power switch to the target
2280             device. Power up the device.
2281           </p></li><li class="listitem"><p>
2282             Using a Micro USB cable, connect the target device to your
2283             computer's USB socket.
2284           </p></li><li class="listitem"><p>
2285             Run AltosUI, and select 'Flash Image' from the File menu.
2286           </p></li><li class="listitem"><p>
2287             Select the target device in the Device Selection dialog.
2288           </p></li><li class="listitem"><p>
2289             Select the image you want to flash to the device, which
2290             should have a name in the form
2291             &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx, such
2292             as TeleMega-v1.0-1.3.0.ihx.
2293           </p></li><li class="listitem"><p>
2294             Make sure the configuration parameters are reasonable
2295             looking. If the serial number and/or RF configuration
2296             values aren't right, you'll need to change them.
2297           </p></li><li class="listitem"><p>
2298             Hit the 'OK' button and the software should proceed to flash
2299             the device with new firmware, showing a progress bar.
2300           </p></li><li class="listitem"><p>
2301             Verify that the device is working by using the 'Configure
2302             Altimeter' item to check over the configuration.
2303           </p></li></ol></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idp38775728"></a>1.1. Recovering From Self-Flashing Failure</h3></div></div></div><p>
2304           If the firmware loading fails, it can leave the device
2305           unable to boot. Not to worry, you can force the device to
2306           start the boot loader instead, which will let you try to
2307           flash the device again.
2308         </p><p>
2309           On each device, connecting two pins from one of the exposed
2310           connectors will force the boot loader to start, even if the
2311           regular operating system has been corrupted in some way.
2312         </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">TeleMega</span></dt><dd><p>
2313                 Connect pin 6 and pin 1 of the companion connector. Pin 1
2314                 can be identified by the square pad around it, and then
2315                 the pins could sequentially across the board. Be very
2316                 careful to <span class="emphasis"><em>not</em></span> short pin 8 to
2317                 anything as that is connected directly to the battery. Pin
2318                 7 carries 3.3V and the board will crash if that is
2319                 connected to pin 1, but shouldn't damage the board.
2320               </p></dd><dt><span class="term">TeleMetrum v2</span></dt><dd><p>
2321                 Connect pin 6 and pin 1 of the companion connector. Pin 1
2322                 can be identified by the square pad around it, and then
2323                 the pins could sequentially across the board. Be very
2324                 careful to <span class="emphasis"><em>not</em></span> short pin 8 to
2325                 anything as that is connected directly to the battery. Pin
2326                 7 carries 3.3V and the board will crash if that is
2327                 connected to pin 1, but shouldn't damage the board.
2328               </p></dd><dt><span class="term">EasyMini</span></dt><dd><p>
2329                 Connect pin 6 and pin 1 of the debug connector, which is
2330                 the six holes next to the beeper. Pin 1 can be identified
2331                 by the square pad around it, and then the pins could
2332                 sequentially across the board, making Pin 6 the one on the
2333                 other end of the row.
2334               </p></dd></dl></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38784704"></a>2. Pair Programming</h2></div></div></div><p>
2335         The big concept to understand is that you have to use a
2336         TeleMega, TeleMetrum or TeleDongle as a programmer to update a
2337         pair programmed device. Due to limited memory resources in the
2338         cc1111, we don't support programming directly over USB for these
2339         devices.
2340       </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38786144"></a>3. Updating TeleMetrum v1.x Firmware</h2></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2341           Find the 'programming cable' that you got as part of the starter
2342           kit, that has a red 8-pin MicroMaTch connector on one end and a
2343           red 4-pin MicroMaTch connector on the other end.
2344           </p></li><li class="listitem"><p>
2345           Take the 2 screws out of the TeleDongle case to get access
2346           to the circuit board.
2347           </p></li><li class="listitem"><p>
2348           Plug the 8-pin end of the programming cable to the
2349           matching connector on the TeleDongle, and the 4-pin end to the
2350           matching connector on the TeleMetrum.
2351           Note that each MicroMaTch connector has an alignment pin that
2352           goes through a hole in the PC board when you have the cable
2353           oriented correctly.
2354           </p></li><li class="listitem"><p>
2355           Attach a battery to the TeleMetrum board.
2356           </p></li><li class="listitem"><p>
2357           Plug the TeleDongle into your computer's USB port, and power
2358           up the TeleMetrum.
2359           </p></li><li class="listitem"><p>
2360           Run AltosUI, and select 'Flash Image' from the File menu.
2361           </p></li><li class="listitem"><p>
2362           Pick the TeleDongle device from the list, identifying it as the
2363           programming device.
2364           </p></li><li class="listitem"><p>
2365           Select the image you want put on the TeleMetrum, which should have a
2366           name in the form telemetrum-v1.2-1.0.0.ihx.  It should be visible
2367         in the default directory, if not you may have to poke around
2368         your system to find it.
2369           </p></li><li class="listitem"><p>
2370           Make sure the configuration parameters are reasonable
2371           looking. If the serial number and/or RF configuration
2372           values aren't right, you'll need to change them.
2373           </p></li><li class="listitem"><p>
2374           Hit the 'OK' button and the software should proceed to flash
2375           the TeleMetrum with new firmware, showing a progress bar.
2376           </p></li><li class="listitem"><p>
2377           Confirm that the TeleMetrum board seems to have updated OK, which you
2378           can do by plugging in to it over USB and using a terminal program
2379           to connect to the board and issue the 'v' command to check
2380           the version, etc.
2381           </p></li><li class="listitem"><p>
2382           If something goes wrong, give it another try.
2383           </p></li></ol></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38799344"></a>4. Updating TeleMini Firmware</h2></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2384           You'll need a special 'programming cable' to reprogram the
2385           TeleMini.  You can make your own using an 8-pin MicroMaTch 
2386           connector on one end and a set of four pins on the other.
2387         </p></li><li class="listitem"><p>
2388           Take the 2 screws out of the TeleDongle case to get access
2389           to the circuit board.
2390         </p></li><li class="listitem"><p>
2391           Plug the 8-pin end of the programming cable to the matching
2392           connector on the TeleDongle, and the 4-pins into the holes
2393           in the TeleMini circuit board.  Note that the MicroMaTch
2394           connector has an alignment pin that goes through a hole in
2395           the PC board when you have the cable oriented correctly, and
2396           that pin 1 on the TeleMini board is marked with a square pad
2397           while the other pins have round pads.
2398         </p></li><li class="listitem"><p>
2399           Attach a battery to the TeleMini board.
2400         </p></li><li class="listitem"><p>
2401           Plug the TeleDongle into your computer's USB port, and power
2402           up the TeleMini
2403         </p></li><li class="listitem"><p>
2404           Run AltosUI, and select 'Flash Image' from the File menu.
2405         </p></li><li class="listitem"><p>
2406           Pick the TeleDongle device from the list, identifying it as the
2407           programming device.
2408         </p></li><li class="listitem"><p>
2409           Select the image you want put on the TeleMini, which should have a
2410           name in the form telemini-v1.0-1.0.0.ihx.  It should be visible
2411         in the default directory, if not you may have to poke around
2412         your system to find it.
2413         </p></li><li class="listitem"><p>
2414           Make sure the configuration parameters are reasonable
2415           looking. If the serial number and/or RF configuration
2416           values aren't right, you'll need to change them.
2417         </p></li><li class="listitem"><p>
2418           Hit the 'OK' button and the software should proceed to flash
2419           the TeleMini with new firmware, showing a progress bar.
2420         </p></li><li class="listitem"><p>
2421           Confirm that the TeleMini board seems to have updated OK, which you
2422           can do by configuring it over the radio link through the TeleDongle, or
2423           letting it come up in &#8220;flight&#8221; mode and listening for telemetry.
2424         </p></li><li class="listitem"><p>
2425           If something goes wrong, give it another try.
2426         </p></li></ol></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38812896"></a>5. Updating TeleDongle Firmware</h2></div></div></div><p>
2427         Updating TeleDongle's firmware is just like updating TeleMetrum or TeleMini
2428         firmware, but you use either a TeleMetrum or another TeleDongle as the programmer.
2429         </p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
2430           Find the 'programming cable' that you got as part of the starter
2431           kit, that has a red 8-pin MicroMaTch connector on one end and a
2432           red 4-pin MicroMaTch connector on the other end.
2433         </p></li><li class="listitem"><p>
2434           Find the USB cable that you got as part of the starter kit, and
2435           plug the &#8220;mini&#8221; end in to the mating connector on TeleMetrum or TeleDongle.
2436         </p></li><li class="listitem"><p>
2437           Take the 2 screws out of the TeleDongle case to get access
2438           to the circuit board.
2439         </p></li><li class="listitem"><p>
2440           Plug the 8-pin end of the programming cable to the
2441           matching connector on the programmer, and the 4-pin end to the
2442           matching connector on the TeleDongle.
2443           Note that each MicroMaTch connector has an alignment pin that
2444           goes through a hole in the PC board when you have the cable
2445           oriented correctly.
2446         </p></li><li class="listitem"><p>
2447           Attach a battery to the TeleMetrum board if you're using one.
2448         </p></li><li class="listitem"><p>
2449           Plug both the programmer and the TeleDongle into your computer's USB
2450           ports, and power up the programmer.
2451         </p></li><li class="listitem"><p>
2452           Run AltosUI, and select 'Flash Image' from the File menu.
2453         </p></li><li class="listitem"><p>
2454           Pick the programmer device from the list, identifying it as the
2455           programming device.
2456         </p></li><li class="listitem"><p>
2457           Select the image you want put on the TeleDongle, which should have a
2458           name in the form teledongle-v0.2-1.0.0.ihx.  It should be visible
2459         in the default directory, if not you may have to poke around
2460         your system to find it.
2461         </p></li><li class="listitem"><p>
2462           Make sure the configuration parameters are reasonable
2463           looking. If the serial number and/or RF configuration
2464           values aren't right, you'll need to change them.  The TeleDongle
2465           serial number is on the &#8220;bottom&#8221; of the circuit board, and can
2466           usually be read through the translucent blue plastic case without
2467           needing to remove the board from the case.
2468         </p></li><li class="listitem"><p>
2469           Hit the 'OK' button and the software should proceed to flash
2470           the TeleDongle with new firmware, showing a progress bar.
2471         </p></li><li class="listitem"><p>
2472           Confirm that the TeleDongle board seems to have updated OK, which you
2473           can do by plugging in to it over USB and using a terminal program
2474           to connect to the board and issue the 'v' command to check
2475           the version, etc.  Once you're happy, remove the programming cable
2476           and put the cover back on the TeleDongle.
2477         </p></li><li class="listitem"><p>
2478           If something goes wrong, give it another try.
2479         </p></li></ol></div><p>
2480         Be careful removing the programming cable from the locking 8-pin
2481         connector on TeleMetrum.  You'll need a fingernail or perhaps a thin
2482         screwdriver or knife blade to gently pry the locking ears out
2483         slightly to extract the connector.  We used a locking connector on
2484         TeleMetrum to help ensure that the cabling to companion boards
2485         used in a rocket don't ever come loose accidentally in flight.
2486       </p></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38829520"></a>Chapter 11. Hardware Specifications</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38830160">1. 
2487         TeleMega Specifications
2488       </a></span></dt><dt><span class="section"><a href="#idp38841632">2. 
2489         TeleMetrum v2 Specifications
2490       </a></span></dt><dt><span class="section"><a href="#idp38852192">3. TeleMetrum v1 Specifications</a></span></dt><dt><span class="section"><a href="#idp38862752">4. 
2491         TeleMini v2.0 Specifications
2492       </a></span></dt><dt><span class="section"><a href="#idp38871584">5. 
2493         TeleMini v1.0 Specifications
2494       </a></span></dt><dt><span class="section"><a href="#idp38880384">6. 
2495         EasyMini Specifications
2496       </a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38830160"></a>1. 
2497         TeleMega Specifications
2498       </h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2499             Recording altimeter for model rocketry.
2500           </p></li><li class="listitem"><p>
2501             Supports dual deployment and four auxiliary pyro channels
2502             (a total of 6 events).
2503           </p></li><li class="listitem"><p>
2504             70cm 40mW ham-band transceiver for telemetry down-link.
2505           </p></li><li class="listitem"><p>
2506             Barometric pressure sensor good to 100k feet MSL.
2507           </p></li><li class="listitem"><p>
2508             1-axis high-g accelerometer for motor characterization, capable of
2509             +/- 102g.
2510           </p></li><li class="listitem"><p>
2511             9-axis IMU including integrated 3-axis accelerometer,
2512             3-axis gyroscope and 3-axis magnetometer.
2513           </p></li><li class="listitem"><p>
2514             On-board, integrated uBlox Max 7 GPS receiver with 5Hz update rate capability.
2515           </p></li><li class="listitem"><p>
2516             On-board 8 Megabyte non-volatile memory for flight data storage.
2517           </p></li><li class="listitem"><p>
2518             USB interface for battery charging, configuration, and data recovery.
2519           </p></li><li class="listitem"><p>
2520             Fully integrated support for Li-Po rechargeable batteries.
2521           </p></li><li class="listitem"><p>
2522             Can use either main system Li-Po or optional separate pyro battery
2523             to fire e-matches.
2524           </p></li><li class="listitem"><p>
2525             3.25 x 1.25 inch board designed to fit inside 38mm air-frame coupler tube.
2526           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38841632"></a>2. 
2527         TeleMetrum v2 Specifications
2528       </h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2529             Recording altimeter for model rocketry.
2530           </p></li><li class="listitem"><p>
2531             Supports dual deployment (can fire 2 ejection charges).
2532           </p></li><li class="listitem"><p>
2533             70cm, 40mW ham-band transceiver for telemetry down-link.
2534           </p></li><li class="listitem"><p>
2535             Barometric pressure sensor good to 100k feet MSL.
2536           </p></li><li class="listitem"><p>
2537             1-axis high-g accelerometer for motor characterization, capable of
2538             +/- 102g.
2539           </p></li><li class="listitem"><p>
2540             On-board, integrated uBlox Max 7 GPS receiver with 5Hz update rate capability.
2541           </p></li><li class="listitem"><p>
2542             On-board 8 Megabyte non-volatile memory for flight data storage.
2543           </p></li><li class="listitem"><p>
2544             USB interface for battery charging, configuration, and data recovery.
2545           </p></li><li class="listitem"><p>
2546             Fully integrated support for Li-Po rechargeable batteries.
2547           </p></li><li class="listitem"><p>
2548             Uses Li-Po to fire e-matches, can be modified to support 
2549             optional separate pyro battery if needed.
2550           </p></li><li class="listitem"><p>
2551             2.75 x 1 inch board designed to fit inside 29mm air-frame coupler tube.
2552           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38852192"></a>3. TeleMetrum v1 Specifications</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2553             Recording altimeter for model rocketry.
2554           </p></li><li class="listitem"><p>
2555             Supports dual deployment (can fire 2 ejection charges).
2556           </p></li><li class="listitem"><p>
2557             70cm, 10mW ham-band transceiver for telemetry down-link.
2558           </p></li><li class="listitem"><p>
2559             Barometric pressure sensor good to 45k feet MSL.
2560           </p></li><li class="listitem"><p>
2561             1-axis high-g accelerometer for motor characterization, capable of
2562             +/- 50g using default part.
2563           </p></li><li class="listitem"><p>
2564             On-board, integrated GPS receiver with 5Hz update rate capability.
2565           </p></li><li class="listitem"><p>
2566             On-board 1 megabyte non-volatile memory for flight data storage.
2567           </p></li><li class="listitem"><p>
2568             USB interface for battery charging, configuration, and data recovery.
2569           </p></li><li class="listitem"><p>
2570             Fully integrated support for Li-Po rechargeable batteries.
2571           </p></li><li class="listitem"><p>
2572             Uses Li-Po to fire e-matches, can be modified to support 
2573             optional separate pyro battery if needed.
2574           </p></li><li class="listitem"><p>
2575             2.75 x 1 inch board designed to fit inside 29mm air-frame coupler tube.
2576           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38862752"></a>4. 
2577         TeleMini v2.0 Specifications
2578       </h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2579             Recording altimeter for model rocketry.
2580           </p></li><li class="listitem"><p>
2581             Supports dual deployment (can fire 2 ejection charges).
2582           </p></li><li class="listitem"><p>
2583             70cm, 10mW ham-band transceiver for telemetry down-link.
2584           </p></li><li class="listitem"><p>
2585             Barometric pressure sensor good to 100k feet MSL.
2586           </p></li><li class="listitem"><p>
2587             On-board 1 megabyte non-volatile memory for flight data storage.
2588           </p></li><li class="listitem"><p>
2589             USB interface for configuration, and data recovery.
2590           </p></li><li class="listitem"><p>
2591             Support for Li-Po rechargeable batteries (using an
2592             external charger), or any 3.7-15V external battery.
2593           </p></li><li class="listitem"><p>
2594             Uses Li-Po to fire e-matches, can be modified to support 
2595             optional separate pyro battery if needed.
2596           </p></li><li class="listitem"><p>
2597             1.5 x .8 inch board designed to fit inside 24mm air-frame coupler tube.
2598           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38871584"></a>5. 
2599         TeleMini v1.0 Specifications
2600       </h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2601             Recording altimeter for model rocketry.
2602           </p></li><li class="listitem"><p>
2603             Supports dual deployment (can fire 2 ejection charges).
2604           </p></li><li class="listitem"><p>
2605             70cm, 10mW ham-band transceiver for telemetry down-link.
2606           </p></li><li class="listitem"><p>
2607             Barometric pressure sensor good to 45k feet MSL.
2608           </p></li><li class="listitem"><p>
2609             On-board 5 kilobyte non-volatile memory for flight data storage.
2610           </p></li><li class="listitem"><p>
2611             RF interface for configuration, and data recovery.
2612           </p></li><li class="listitem"><p>
2613             Support for Li-Po rechargeable batteries, using an external charger.
2614           </p></li><li class="listitem"><p>
2615             Uses Li-Po to fire e-matches, can be modified to support 
2616             optional separate pyro battery if needed.
2617           </p></li><li class="listitem"><p>
2618             1.5 x .5 inch board designed to fit inside 18mm air-frame coupler tube.
2619           </p></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38880384"></a>6. 
2620         EasyMini Specifications
2621       </h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2622             Recording altimeter for model rocketry.
2623           </p></li><li class="listitem"><p>
2624             Supports dual deployment (can fire 2 ejection charges).
2625           </p></li><li class="listitem"><p>
2626             Barometric pressure sensor good to 100k feet MSL.
2627           </p></li><li class="listitem"><p>
2628             On-board 1 megabyte non-volatile memory for flight data storage.
2629           </p></li><li class="listitem"><p>
2630             USB interface for configuration, and data recovery.
2631           </p></li><li class="listitem"><p>
2632             Support for Li-Po rechargeable batteries (using an
2633             external charger), or any 3.7-15V external battery.
2634           </p></li><li class="listitem"><p>
2635             Uses Li-Po to fire e-matches, can be modified to support 
2636             optional separate pyro battery if needed.
2637           </p></li><li class="listitem"><p>
2638             1.5 x .8 inch board designed to fit inside 24mm air-frame coupler tube.
2639           </p></li></ul></div></div></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="idp38888496"></a>Chapter 12. FAQ</h1></div></div></div><p>
2640         <span class="emphasis"><em>TeleMetrum seems to shut off when disconnected from the
2641         computer.</em></span>  
2642         Make sure the battery is adequately charged.  Remember the
2643         unit will pull more power than the USB port can deliver before the
2644         GPS enters &#8220;locked&#8221; mode.  The battery charges best when TeleMetrum
2645         is turned off.
2646       </p><p>
2647         <span class="emphasis"><em>It's impossible to stop the TeleDongle when it's in &#8220;p&#8221; mode, I have
2648         to unplug the USB cable? </em></span>
2649         Make sure you have tried to &#8220;escape out&#8221; of
2650         this mode.  If this doesn't work the reboot procedure for the
2651         TeleDongle *is* to simply unplug it. 'cu' however will retain it's
2652         outgoing buffer IF your &#8220;escape out&#8221; ('~~') does not work.
2653         At this point using either 'ao-view' (or possibly
2654         'cutemon') instead of 'cu' will 'clear' the issue and allow renewed
2655         communication.
2656       </p><p>
2657         <span class="emphasis"><em>The amber LED (on the TeleMetrum) lights up when both
2658         battery and USB are connected. Does this mean it's charging? 
2659         </em></span>
2660         Yes, the yellow LED indicates the charging at the 'regular' rate.
2661         If the led is out but the unit is still plugged into a USB port,
2662         then the battery is being charged at a 'trickle' rate.
2663       </p><p>
2664         <span class="emphasis"><em>There are no &#8220;dit-dah-dah-dit&#8221; sound or lights like the manual 
2665         mentions?</em></span>
2666         That's the &#8220;pad&#8221; mode.  Weak batteries might be the problem.
2667         It is also possible that the flight computer is horizontal and the 
2668         output
2669         is instead a &#8220;dit-dit&#8221; meaning 'idle'. For TeleMini, it's possible that
2670         it received a command packet which would have left it in &#8220;pad&#8221; mode.
2671       </p><p>
2672         <span class="emphasis"><em>How do I save flight data?</em></span>
2673         Live telemetry is written to file(s) whenever AltosUI is connected
2674         to the TeleDongle.  The file area defaults to ~/TeleMetrum
2675         but is easily changed using the menus in AltosUI. The files that
2676         are written end in '.telem'. The after-flight
2677         data-dumped files will end in .eeprom and represent continuous data
2678         unlike the .telem files that are subject to losses
2679         along the RF data path.
2680         See the above instructions on what and how to save the eeprom stored
2681         data after physically retrieving your altimeter.  Make sure to save
2682         the on-board data after each flight; while the TeleMetrum can store
2683         multiple flights, you never know when you'll lose the altimeter...
2684       </p></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a name="idp38897344"></a>Appendix A. Notes for Older Software</h1></div></div></div><p>
2685       <span class="emphasis"><em>
2686       Before AltosUI was written, using Altus Metrum devices required
2687       some finesse with the Linux command line. There was a limited
2688       GUI tool, ao-view, which provided functionality similar to the
2689       Monitor Flight window in AltosUI, but everything else was a
2690       fairly 80's experience. This appendix includes documentation for
2691       using that software.
2692       </em></span>
2693     </p><p>
2694       Both TeleMetrum and TeleDongle can be directly communicated
2695       with using USB ports. The first thing you should try after getting
2696       both units plugged into to your computer's USB port(s) is to run
2697       'ao-list' from a terminal-window to see what port-device-name each
2698       device has been assigned by the operating system.
2699       You will need this information to access the devices via their
2700       respective on-board firmware and data using other command line
2701       programs in the AltOS software suite.
2702     </p><p>
2703       TeleMini can be communicated with through a TeleDongle device
2704       over the radio link. When first booted, TeleMini listens for a
2705       TeleDongle device and if it receives a packet, it goes into
2706       'idle' mode. Otherwise, it goes into 'pad' mode and waits to be
2707       launched. The easiest way to get it talking is to start the
2708       communication link on the TeleDongle and the power up the
2709       TeleMini board.
2710     </p><p>
2711       To access the device's firmware for configuration you need a terminal
2712       program such as you would use to talk to a modem.  The software
2713       authors prefer using the program 'cu' which comes from the UUCP package
2714       on most Unix-like systems such as Linux.  An example command line for
2715       cu might be 'cu -l /dev/ttyACM0', substituting the correct number
2716       indicated from running the
2717       ao-list program.  Another reasonable terminal program for Linux is
2718       'cutecom'.  The default 'escape'
2719       character used by CU (i.e. the character you use to
2720       issue commands to cu itself instead of sending the command as input
2721       to the connected device) is a '~'. You will need this for use in
2722       only two different ways during normal operations. First is to exit
2723       the program by sending a '~.' which is called a 'escape-disconnect'
2724       and allows you to close-out from 'cu'. The
2725       second use will be outlined later.
2726     </p><p>
2727       All of the Altus Metrum devices share the concept of a two level
2728       command set in their firmware.
2729       The first layer has several single letter commands. Once
2730       you are using 'cu' (or 'cutecom') sending (typing) a '?'
2731       returns a full list of these
2732       commands. The second level are configuration sub-commands accessed
2733       using the 'c' command, for
2734       instance typing 'c?' will give you this second level of commands
2735       (all of which require the
2736       letter 'c' to access).  Please note that most configuration options
2737       are stored only in Flash memory; TeleDongle doesn't provide any storage
2738       for these options and so they'll all be lost when you unplug it.
2739     </p><p>
2740       Try setting these configuration ('c' or second level menu) values.  A good
2741       place to start is by setting your call sign.  By default, the boards
2742       use 'N0CALL' which is cute, but not exactly legal!
2743       Spend a few minutes getting comfortable with the units, their
2744       firmware, and 'cu' (or possibly 'cutecom').
2745       For instance, try to send
2746       (type) a 'c r 2' and verify the channel change by sending a 'c s'.
2747       Verify you can connect and disconnect from the units while in your
2748       terminal program by sending the escape-disconnect mentioned above.
2749     </p><p>
2750           To set the radio frequency, use the 'c R' command to specify the
2751           radio transceiver configuration parameter. This parameter is computed
2752           using the desired frequency, 'F', the radio calibration parameter, 'C' (showed by the 'c s' command) and
2753           the standard calibration reference frequency, 'S', (normally 434.550MHz):
2754           </p><pre class="programlisting">
2755             R = F / S * C
2756           </pre><p>
2757           Round the result to the nearest integer value.
2758           As with all 'c' sub-commands, follow this with a 'c w' to write the
2759           change to the parameter block in the on-board flash on
2760           your altimeter board if you want the change to stay in place across reboots.
2761         </p><p>
2762           To set the apogee delay, use the 'c d' command.
2763           As with all 'c' sub-commands, follow this with a 'c w' to write the
2764           change to the parameter block in the on-board DataFlash chip.
2765         </p><p>
2766           To set the main deployment altitude, use the 'c m' command.
2767           As with all 'c' sub-commands, follow this with a 'c w' to write the
2768           change to the parameter block in the on-board DataFlash chip.
2769         </p><p>
2770           To calibrate the radio frequency, connect the UHF antenna port to a
2771           frequency counter, set the board to 434.550MHz, and use the 'C'
2772           command to generate a CW carrier.  Wait for the transmitter temperature
2773           to stabilize and the frequency to settle down.
2774           Then, divide 434.550 MHz by the
2775           measured frequency and multiply by the current radio cal value show
2776           in the 'c s' command.  For an unprogrammed board, the default value
2777           is 1186611 for cc1111 based products and 7119667 for cc1120
2778           based products.  Take the resulting integer and program it using the 'c f'
2779           command.  Testing with the 'C' command again should show a carrier
2780           within a few tens of Hertz of the intended frequency.
2781           As with all 'c' sub-commands, follow this with a 'c w' to write the
2782           change to the configuration memory.
2783         </p><p>
2784       Note that the 'reboot' command, which is very useful on the altimeters,
2785       will likely just cause problems with the dongle.  The *correct* way
2786       to reset the dongle is just to unplug and re-plug it.
2787     </p><p>
2788       A fun thing to do at the launch site and something you can do while
2789       learning how to use these units is to play with the radio link access
2790       between an altimeter and the TeleDongle.  Be aware that you *must* create
2791       some physical separation between the devices, otherwise the link will
2792       not function due to signal overload in the receivers in each device.
2793     </p><p>
2794       Now might be a good time to take a break and read the rest of this
2795       manual, particularly about the two &#8220;modes&#8221; that the altimeters
2796       can be placed in. TeleMetrum uses the position of the device when booting
2797       up will determine whether the unit is in &#8220;pad&#8221; or &#8220;idle&#8221; mode. TeleMini
2798       enters &#8220;idle&#8221; mode when it receives a command packet within the first 5 seconds
2799       of being powered up, otherwise it enters &#8220;pad&#8221; mode.
2800     </p><p>
2801       You can access an altimeter in idle mode from the TeleDongle's USB
2802       connection using the radio link
2803       by issuing a 'p' command to the TeleDongle. Practice connecting and
2804       disconnecting ('~~' while using 'cu') from the altimeter.  If
2805       you cannot escape out of the &#8220;p&#8221; command, (by using a '~~' when in
2806       CU) then it is likely that your kernel has issues.  Try a newer version.
2807     </p><p>
2808       Using this radio link allows you to configure the altimeter, test
2809       fire e-matches and igniters from the flight line, check pyro-match
2810       continuity and so forth. You can leave the unit turned on while it
2811       is in 'idle mode' and then place the
2812       rocket vertically on the launch pad, walk away and then issue a
2813       reboot command.  The altimeter will reboot and start sending data
2814       having changed to the &#8220;pad&#8221; mode. If the TeleDongle is not receiving
2815       this data, you can disconnect 'cu' from the TeleDongle using the
2816       procedures mentioned above and THEN connect to the TeleDongle from
2817       inside 'ao-view'. If this doesn't work, disconnect from the
2818       TeleDongle, unplug it, and try again after plugging it back in.
2819     </p><p>
2820       In order to reduce the chance of accidental firing of pyrotechnic
2821       charges, the command to fire a charge is intentionally somewhat
2822       difficult to type, and the built-in help is slightly cryptic to
2823       prevent accidental echoing of characters from the help text back at
2824       the board from firing a charge.  The command to fire the apogee
2825       drogue charge is 'i DoIt drogue' and the command to fire the main
2826       charge is 'i DoIt main'.
2827     </p><p>
2828       On TeleMetrum, the GPS will eventually find enough satellites, lock in on them,
2829       and 'ao-view' will both auditorily announce and visually indicate
2830       that GPS is ready.
2831       Now you can launch knowing that you have a good data path and
2832       good satellite lock for flight data and recovery.  Remember
2833       you MUST tell ao-view to connect to the TeleDongle explicitly in
2834       order for ao-view to be able to receive data.
2835     </p><p>
2836       The altimeters provide RDF (radio direction finding) tones on
2837       the pad, during descent and after landing. These can be used to
2838       locate the rocket using a directional antenna; the signal
2839       strength providing an indication of the direction from receiver to rocket.
2840     </p><p>
2841       TeleMetrum also provides GPS tracking data, which can further simplify
2842       locating the rocket once it has landed. (The last good GPS data
2843       received before touch-down will be on the data screen of 'ao-view'.)
2844     </p><p>
2845       Once you have recovered the rocket you can download the eeprom
2846       contents using either 'ao-dumplog' (or possibly 'ao-eeprom'), over
2847       either a USB cable or over the radio link using TeleDongle.
2848       And by following the man page for 'ao-postflight' you can create
2849       various data output reports, graphs, and even KML data to see the
2850       flight trajectory in Google-earth. (Moving the viewing angle making
2851       sure to connect the yellow lines while in Google-earth is the proper
2852       technique.)
2853     </p><p>
2854       As for ao-view.... some things are in the menu but don't do anything
2855       very useful.  The developers have stopped working on ao-view to focus
2856       on a new, cross-platform ground station program.  So ao-view may or
2857       may not be updated in the future.  Mostly you just use
2858       the Log and Device menus.  It has a wonderful display of the incoming
2859       flight data and I am sure you will enjoy what it has to say to you
2860       once you enable the voice output!
2861     </p></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a name="idp38919744"></a>Appendix B. Drill Templates</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38920912">1. TeleMega template</a></span></dt><dt><span class="section"><a href="#idp38937600">2. TeleMetrum template</a></span></dt><dt><span class="section"><a href="#idp38941984">3. TeleMini v2/EasyMini template</a></span></dt><dt><span class="section"><a href="#idp38946384">4. TeleMini v1 template</a></span></dt></dl></div><p>
2862       These images, when printed, provide precise templates for the
2863       mounting holes in Altus Metrum flight computers
2864     </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38920912"></a>1. TeleMega template</h2></div></div></div><p>
2865         TeleMega has overall dimensions of 1.250 x 3.250 inches, and
2866         the mounting holes are sized for use with 4-40 or M3 screws.
2867       </p><div class="informalfigure"><div class="mediaobject" align="center"><a name="TeleMegaTemplate"></a><object type="image/svg+xml" data="telemega.svg" align="middle"></object></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38937600"></a>2. TeleMetrum template</h2></div></div></div><p>
2868         TeleMetrum has overall dimensions of 1.000 x 2.750 inches, and the
2869         mounting holes are sized for use with 4-40 or M3 screws.
2870       </p><div class="informalfigure"><div class="mediaobject" align="center"><a name="TeleMetrumTemplate"></a><object type="image/svg+xml" data="telemetrum.svg" align="middle"></object></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38941984"></a>3. TeleMini v2/EasyMini template</h2></div></div></div><p>
2871         TeleMini v2 and EasyMini have overall dimensions of 0.800 x 1.500 inches, and the
2872         mounting holes are sized for use with 4-40 or M3 screws.
2873       </p><div class="informalfigure"><div class="mediaobject" align="center"><a name="MiniTemplate"></a><object type="image/svg+xml" data="easymini.svg" align="middle"></object></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38946384"></a>4. TeleMini v1 template</h2></div></div></div><p>
2874         TeleMini has overall dimensions of 0.500 x 1.500 inches, and the
2875         mounting holes are sized for use with 2-56 or M2 screws.
2876       </p><div class="informalfigure"><div class="mediaobject" align="center"><a name="TeleMiniTemplate"></a><object type="image/svg+xml" data="telemini.svg" align="middle"></object></div></div></div></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a name="idp38950896"></a>Appendix C. Calibration</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="#idp38952448">1. Radio Frequency</a></span></dt><dt><span class="section"><a href="#idp38956992">2. TeleMetrum and TeleMega Accelerometers</a></span></dt></dl></div><p>
2877         There are only two calibrations required for TeleMetrum and
2878         TeleMega, and only one for TeleDongle, TeleMini and EasyMini.
2879         All boards are shipped from the factory pre-calibrated, but
2880         the procedures are documented here in case they are ever
2881         needed.  Re-calibration is not supported by AltosUI, you must
2882         connect to the board with a serial terminal program and
2883         interact directly with the on-board command interpreter to
2884         effect calibration.
2885       </p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38952448"></a>1. Radio Frequency</h2></div></div></div><p>
2886           The radio frequency is synthesized from a clock based on the
2887           crystal on the board.  The actual frequency of this oscillator 
2888           must be measured to generate a calibration constant.  While our 
2889           GFSK modulation
2890           bandwidth is wide enough to allow boards to communicate even when
2891           their oscillators are not on exactly the same frequency, performance
2892           is best when they are closely matched.
2893           Radio frequency calibration requires a calibrated frequency counter.
2894           Fortunately, once set, the variation in frequency due to aging and
2895           temperature changes is small enough that re-calibration by customers
2896           should generally not be required.
2897         </p><p>
2898           To calibrate the radio frequency, connect the UHF antenna
2899           port to a frequency counter, set the board to 434.550MHz,
2900           and use the 'C' command in the on-board command interpreter
2901           to generate a CW carrier.  For USB-enabled boards, this is
2902           best done over USB.  For TeleMini v1, note that the only way
2903           to escape the 'C' command is via power cycle since the board
2904           will no longer be listening for commands once it starts
2905           generating a CW carrier.
2906         </p><p>
2907           Wait for the transmitter temperature to stabilize and the frequency 
2908           to settle down.  Then, divide 434.550 MHz by the
2909           measured frequency and multiply by the current radio cal value show
2910           in the 'c s' command.  For an unprogrammed board, the default value
2911           is 1186611.  Take the resulting integer and program it using the 'c f'
2912           command.  Testing with the 'C' command again should show a carrier
2913           within a few tens of Hertz of the intended frequency.
2914           As with all 'c' sub-commands, follow this with a 'c w' to write the
2915           change to the parameter block in the on-board storage chip.
2916         </p><p>
2917           Note that any time you re-do the radio frequency calibration, the
2918           radio frequency is reset to the default 434.550 Mhz.  If you want
2919           to use another frequency, you will have to set that again after
2920           calibration is completed.
2921         </p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38956992"></a>2. TeleMetrum and TeleMega Accelerometers</h2></div></div></div><p>
2922           While barometric sensors are factory-calibrated,
2923           accelerometers are not, and so each must be calibrated once
2924           installed in a flight computer.  Explicitly calibrating the
2925           accelerometers also allows us to load any compatible device.
2926           We perform a two-point calibration using gravity.
2927         </p><p>
2928           To calibrate the acceleration sensor, use the 'c a 0' command.  You
2929           will be prompted to orient the board vertically with the UHF antenna
2930           up and press a key, then to orient the board vertically with the
2931           UHF antenna down and press a key.  Note that the accuracy of this
2932           calibration depends primarily on how perfectly vertical and still
2933           the board is held during the cal process.  As with all 'c' 
2934           sub-commands, follow this with a 'c w' to write the
2935           change to the parameter block in the on-board DataFlash chip.
2936         </p><p>
2937           The +1g and -1g calibration points are included in each telemetry
2938           frame and are part of the header stored in onboard flash to be
2939           downloaded after flight.  We always store and return raw ADC 
2940           samples for each sensor... so nothing is permanently &#8220;lost&#8221; or 
2941           &#8220;damaged&#8221; if the calibration is poor.
2942         </p><p>
2943          In the unlikely event an accel cal goes badly, it is possible
2944          that TeleMetrum or TeleMega may always come up in 'pad mode'
2945          and as such not be listening to either the USB or radio link.
2946          If that happens, there is a special hook in the firmware to
2947          force the board back in to 'idle mode' so you can re-do the
2948          cal.  To use this hook, you just need to ground the SPI clock
2949          pin at power-on.  This pin is available as pin 2 on the 8-pin
2950          companion connector, and pin 1 is ground.  So either
2951          carefully install a fine-gauge wire jumper between the two
2952          pins closest to the index hole end of the 8-pin connector, or
2953          plug in the programming cable to the 8-pin connector and use
2954          a small screwdriver or similar to short the two pins closest
2955          to the index post on the 4-pin end of the programming cable,
2956          and power up the board.  It should come up in 'idle mode'
2957          (two beeps), allowing a re-cal.
2958         </p></div></div><div class="appendix"><div class="titlepage"><div><div><h1 class="title"><a name="idp38962096"></a>Appendix D. Release Notes</h1></div></div></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38962736"></a>Version 1.4</h2></div></div></div><p>
2959     Version 1.4 is a major release. It includes support for our new
2960     TeleGPS product, new features and bug fixes in in the flight
2961     software for all our boards and the AltosUI ground station
2962   </p><p>
2963     AltOS New Features
2964     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2965           Add support for TeleGPS boards.
2966         </p></li><li class="listitem"><p>
2967           Replace the 'dit dit dit' tones at startup with the current
2968           battery voltage, measured in tenths of a volt. This lets you
2969           check the battery voltage without needing telemetry, which
2970           is especially useful on EasyMini.
2971         </p></li><li class="listitem"><p>
2972           Change state beeping to "Farnsworth spacing", which means
2973           they're quite a bit faster than before, and so they take
2974           less time to send.
2975         </p></li><li class="listitem"><p>
2976           Make the beeper tone configurable, making it possible to
2977           distinguish between two Altus Metrum products in the same ebay.
2978         </p></li><li class="listitem"><p>
2979           Make the firing time for extra pyro channels configurable,
2980           allowing longer (or shorter) than the default 50ms.  Only relevant
2981           for TeleMega at this time.
2982         </p></li></ul></div><p>
2983   </p><p>
2984     AltOS Fixes
2985     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2986           Fix bug preventing the selection of the 'Flight State After'
2987           mode in pyro configuration.
2988         </p></li><li class="listitem"><p>
2989           Fix bug where erasing flights would reset the flight number
2990           to 2 on TeleMega and TeleMetrum v2.
2991         </p></li><li class="listitem"><p>
2992           Fix u-Blox GPS driver to mark course and speed data as being
2993           present.
2994         </p></li></ul></div><p>
2995   </p><p>
2996     AltosUI New Features
2997     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
2998           Add zooming and new content types (terrain and road maps) to
2999           map view. Change map storage format from PNG to Jpeg, which
3000           saves a huge amount of disk space. You will need to
3001           re-download all of your pre-loaded map images.
3002         </p></li><li class="listitem"><p>
3003           Add a distance measuring device to the maps view. Select
3004           this by using any button other than the left one, or by
3005           pressing shift or control on the keyboard while using the
3006           left button.
3007         </p></li><li class="listitem"><p>
3008           Add new 'Ignitor' tab to the flight monitor display for
3009           TeleMega's extra ignitors.
3010         </p></li><li class="listitem"><p>
3011           Increase the width of data lines in the graphs to make them
3012           easier to read.
3013         </p></li><li class="listitem"><p>
3014           Add additional ignitor firing marks and voltages to the
3015           graph so you can see when the ignitors fired, along with
3016           the ignitor voltages.
3017         </p></li><li class="listitem"><p>
3018           Add GPS course, ground speed and climb rate as optional
3019           graph elements.
3020         </p></li></ul></div><p>
3021   </p><p>
3022     AltosUI Fixes
3023     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3024           When flashing new firmware, re-try opening the device as
3025           sometimes it takes a while for the underlying operating
3026           system to recognize that the device has rebooted in
3027           preparation for the flashing operation.
3028         </p></li><li class="listitem"><p>
3029           Hide Tilt Angle in ascent tab for devices that don't have a gyro.
3030         </p></li><li class="listitem"><p>
3031           Filter out speed and acceleration spikes caused by ejection
3032           charge firing when computing the maximum values. This
3033           provides a more accurate reading of those maximums.
3034         </p></li><li class="listitem"><p>
3035           Fix EasyMini voltage displays. Early EasyMini prototypes
3036           used a 3.0V regulator, and AltosUI still used that value as
3037           the basis of the computation. Production EasyMini boards
3038           have always shipped with a 3.3V regulator. Also, purple
3039           EasyMini boards sensed the battery voltage past the blocking
3040           diode, resulting in a drop of about 150mV from the true
3041           battery voltage. Compensate for that when displaying the
3042           value.
3043         </p></li><li class="listitem"><p>
3044           Display error message when trying to configure maximum
3045           flight log size while the flight computer still has flight
3046           data stored.
3047         </p></li><li class="listitem"><p>
3048           Handle TeleMetrum and TeleMini eeprom files generated with
3049           pre-1.0 firmware. Those ancient versions didn't report the
3050           log format, so just use the product name instead.
3051         </p></li></ul></div><p>
3052   </p><p>
3053     TeleGPS Application
3054     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3055           New application designed for use with TeleGPS boards.
3056         </p></li><li class="listitem"><p>
3057           Shares code with AltosUI, mostly just trimmed down to focus
3058           on TeleGPS-related functions.
3059         </p></li></ul></div><p>
3060   </p><p>
3061     Documentation changes
3062     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3063           Re-create the drill template images; they should print
3064           correctly from Firefox at least. Ship these as individual
3065           PDF files so they're easy to print.
3066         </p></li><li class="listitem"><p>
3067           Add a description of the 'Apogee Lockout' setting, which
3068           prevents the apogee charge from firing for a configurable
3069           amount of time after boost.
3070         </p></li></ul></div><p>
3071   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38964336"></a>Version 1.3.2</h2></div></div></div><p>
3072     Version 1.3.2 is a minor release. It includes small bug fixes for
3073     the TeleMega flight software and AltosUI ground station
3074   </p><p>
3075     AltOS Firmware Changes
3076     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3077           On TeleMega, limit number of logged GPS status information
3078           to 12 satellites. That's all there is room for in the log
3079           structure.
3080         </p></li><li class="listitem"><p>
3081           Improve APRS behavior. Remembers last known GPS position and
3082           keeps sending that if we lose GPS lock. Marks
3083           locked/unlocked by sending L/U in the APRS comment field
3084           along with the number of sats in view and voltages.
3085         </p></li></ul></div><p>
3086   </p><p>
3087     AltosUI changes
3088     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3089           If the TeleMega flight firmware reports that it has logged
3090           information about more than 12 satellites, don't believe it
3091           as the log only holds 12 satellite records.
3092         </p></li><li class="listitem"><p>
3093           Track the maximum height as computed from GPS altitude
3094           data and report that in the flight summary data.
3095         </p></li><li class="listitem"><p>
3096           Use letters (A, B, C, D) for alternate pyro channel names
3097           instead of numbers (0, 1, 2, 3) in the Fire Igniter dialog.
3098         </p></li></ul></div><p>
3099   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38965936"></a>Version 1.3.1</h2></div></div></div><p>
3100     Version 1.3.1 is a minor release. It improves support for TeleMega,
3101     TeleMetrum v2.0, TeleMini v2.0 and EasyMini.
3102   </p><p>
3103     AltOS Firmware Changes
3104     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3105           Improve sensor boot code. If sensors fail to self-test, the
3106           device will still boot up and check for pad/idle modes. If
3107           in idle mode, the device will warn the user with a distinct
3108           beep, if in Pad mode, the unit will operate as best it
3109           can. Also, the Z-axis accelerometer now uses the factory
3110           calibration values instead of re-calibrating on the pad each
3111           time. This avoids accidental boost detect when moving the
3112           device around while in Pad mode.
3113         </p></li><li class="listitem"><p>
3114           Fix antenna-down mode accelerometer configuration. Antenna
3115           down mode wasn't working because the accelerometer
3116           calibration values were getting re-computed incorrectly in
3117           inverted mode.
3118         </p></li><li class="listitem"><p>
3119           Improved APRS mode. Now uses compressed position format for
3120           smaller data size, improved precision and to include
3121           altitude data as well as latitude and longitude. Also added
3122           battery and pyro voltage reports in the APRS comment field
3123           so you can confirm that the unit is ready for launch.
3124         </p></li></ul></div><p>
3125   </p><p>
3126     AltosUI changes
3127     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3128           Display additional TeleMega sensor values in real
3129           units. Make all of these values available for
3130           plotting. Display TeleMega orientation value in the Ascent
3131           and Table tabs.
3132         </p></li><li class="listitem"><p>
3133           Support additional TeleMega pyro channels in the Fire
3134           Igniter dialog. This lets you do remote testing of all of
3135           the channels, rather than just Apogee and Main.
3136         </p></li><li class="listitem"><p>
3137           Limit data rate when downloading satellite images from
3138           Google to make sure we stay within their limits so that all
3139           of the map tiles download successfully.
3140         </p></li></ul></div><p>
3141   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38967440"></a>Version 1.3</h2></div></div></div><p>
3142     Version 1.3 is a major release. It adds support for TeleMega,
3143     TeleMetrum v2.0, TeleMini v2.0 and EasyMini.
3144   </p><p>
3145     AltOS Firmware Changes
3146     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3147           Add STM32L processor support. This includes enhancements to
3148           the scheduler to support products with many threads.
3149         </p></li><li class="listitem"><p>
3150           Add NXP LPC11U14 processor support.
3151         </p></li><li class="listitem"><p>
3152           Support additional pyro channels. These are configurable
3153           through the UI to handle air starts, staging, additional
3154           recovery events and external devices such as cameras.
3155         </p></li><li class="listitem"><p>
3156           Add 3-axis gyro support for orientation tracking. This
3157           integrates the gyros to compute the angle from vertical during
3158           flight, allowing the additional pyro events to be controlled
3159           by this value.
3160         </p></li><li class="listitem"><p>
3161           Many more device drivers, including u-Blox Max 7Q GPS,
3162           Freescale MMA6555 digital single-axis accelerometer,
3163           Invensense MPU6000 3-axis accelerometer + 3 axis gyro,
3164           Honeywell HMC5883 3-axis magnetic sensor and the TI CC1120 and
3165           CC115L digital FM transceivers
3166         </p></li></ul></div><p>
3167   </p><p>
3168     AltosUI changes
3169     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3170           Support TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini telemetry and log formats.
3171         </p></li><li class="listitem"><p>
3172           Use preferred units for main deployment height configuration,
3173           instead of always doing configuration in meters.
3174         </p></li></ul></div><p>
3175   </p><p>
3176     MicroPeak UI changes
3177     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3178           Add 'Download' button to menu bar.
3179         </p></li><li class="listitem"><p>
3180           Save the last log directory and offer that as the default for new downloads
3181         </p></li></ul></div><p>
3182   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38968944"></a>Version 1.2.1</h2></div></div></div><p>
3183     Version 1.2.1 is a minor release. It adds support for TeleBT and
3184     the AltosDroid application, provides several new features in
3185     AltosUI and fixes some bugs in the AltOS firmware.
3186   </p><p>
3187     AltOS Firmware Changes
3188     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3189         Add support for TeleBT
3190       </p></li><li class="listitem"><p>
3191         In TeleMini recovery mode (when booted with the outer two
3192         debug pins connected together), the radio parameters are also
3193         set back to defaults (434.550MHz, N0CALL, factory radio cal).
3194       </p></li><li class="listitem"><p>
3195         Add support for reflashing the SkyTraq GPS chips. This
3196         requires special host-side code which currently only exists
3197         for Linux.
3198       </p></li><li class="listitem"><p>
3199         Correct Kalman filter model error covariance matrix. The
3200         values used previously assumed continuous measurements instead
3201         of discrete measurements.
3202       </p></li><li class="listitem"><p>
3203         Fix some bugs in the USB driver for TeleMetrum and TeleDongle
3204         that affected Windows users.
3205       </p></li><li class="listitem"><p>
3206         Adjusted the automatic gain control parameters that affect
3207         receive performance for TeleDongle. Field tests indicate that this
3208         may improve receive performance somewhat.
3209       </p></li></ul></div><p>
3210   </p><p>
3211     AltosUI Changes
3212     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3213         Handle missing GPS lock in 'Descent' tab. Previously, if the
3214         GPS position of the pad was unknown, an exception would be
3215         raised, breaking the Descent tab contents.
3216       </p></li><li class="listitem"><p>
3217         Improve the graph, adding tool-tips to show values near the
3218         cursor and making the displayed set of values configurable,
3219         adding all of the flight data as options while leaving the
3220         default settings alone so that the graph starts by showing
3221         height, speed and acceleration.
3222       </p></li><li class="listitem"><p>
3223         Make the initial position of the AltosUI top level window
3224         configurable. Along with this change, the other windows will
3225         pop up at 'sensible' places now, instead of on top of one
3226         another.
3227       </p></li><li class="listitem"><p>
3228         Add callsign to Monitor idle window and connecting
3229         dialogs. This makes it clear which callsign is being used so
3230         that the operator will be aware that it must match the flight
3231         computer value or no communication will work.
3232       </p></li><li class="listitem"><p>
3233         When downloading flight data, display the block number so that
3234         the user has some sense of progress. Unfortunately, we don't
3235         know how many blocks will need to be downloaded, but at least
3236         it isn't just sitting there doing nothing for a long time.
3237       </p></li><li class="listitem"><p>
3238         Add GPS data and a map to the graph window. This lets you see
3239         a complete summary of the flight without needing to 'replay'
3240         the whole thing.
3241       </p></li></ul></div><p>
3242   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38970448"></a>Version 1.2</h2></div></div></div><p>
3243     Version 1.2 is a major release. It adds support for MicroPeak and
3244     the MicroPeak USB adapter.
3245   </p><p>
3246     AltOS Firmware Changes
3247     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3248         Add MicroPeak support. This includes support for the ATtiny85
3249         processor and adaptations to the core code to allow for
3250         devices too small to run the multi-tasking scheduler.
3251       </p></li></ul></div><p>
3252   </p><p>
3253     MicroPeak UI changes
3254     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3255         Added this new application
3256       </p></li></ul></div><p>
3257   </p><p>
3258     Distribution Changes
3259     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3260         Distribute Mac OS X packages in disk image ('.dmg') format to
3261         greatly simplify installation.
3262       </p></li><li class="listitem"><p>
3263         Provide version numbers for the shared Java libraries to
3264         ensure that upgrades work properly, and to allow for multiple
3265         Altus Metrum software packages to be installed in the same
3266         directory at the same time.
3267       </p></li></ul></div><p>
3268   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38971952"></a>Version 1.1.1</h2></div></div></div><p>
3269     Version 1.1.1 is a bug-fix release. It fixes a couple of bugs in
3270     AltosUI and one firmware bug that affects TeleMetrum version 1.0
3271     boards. Thanks to Bob Brown for help diagnosing the Google Earth
3272     file export issue, and for suggesting the addition of the Ground
3273     Distance value in the Descent tab.
3274   </p><p>
3275     AltOS Firmware Changes
3276     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3277         TeleMetrum v1.0 boards use the AT45DB081D flash memory part to
3278         store flight data, which is different from later TeleMetrum
3279         boards. The AltOS v1.1 driver for this chip couldn't erase
3280         memory, leaving it impossible to delete flight data or update
3281         configuration values. This bug doesn't affect newer TeleMetrum
3282         boards, and it doesn't affect the safety of rockets flying
3283         version 1.1 firmware.
3284       </p></li></ul></div><p>
3285   </p><p>
3286     AltosUI Changes
3287     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3288         Creating a Google Earth file (KML) from on-board flight data
3289         (EEPROM) would generate an empty file. The code responsible
3290         for reading the EEPROM file wasn't ever setting the GPS valid
3291         bits, and so the KML export code thought there was no GPS data
3292         in the file.
3293       </p></li><li class="listitem"><p>
3294         The &#8220;Landed&#8221; tab was displaying all values in metric units,
3295         even when AltosUI was configured to display imperial
3296         units. Somehow I just missed this tab when doing the units stuff.
3297       </p></li><li class="listitem"><p>
3298         The &#8220;Descent&#8221; tab displays the range to the rocket, which is a
3299         combination of the over-the-ground distance to the rockets
3300         current latitude/longitude and the height of the rocket. As
3301         such, it's useful for knowing how far away the rocket is, but
3302         difficult to use when estimating where the rocket might
3303         eventually land. A new &#8220;Ground Distance&#8221; field has been added
3304         which displays the distance to a spot right underneath the
3305         rocket.
3306       </p></li><li class="listitem"><p>
3307         Sensor data wasn't being displayed for TeleMini flight
3308         computers in Monitor Idle mode, including things like battery
3309         voltage. The code that picked which kinds of data to fetch
3310         from the flight computer was missing a check for TeleMini when
3311         deciding whether to fetch the analog sensor data.
3312       </p></li></ul></div><p>
3313   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38973456"></a>Version 1.1</h2></div></div></div><p>
3314     Version 1.1 is a minor release. It provides a few new features in AltosUI
3315     and the AltOS firmware and fixes bugs.
3316   </p><p>
3317     AltOS Firmware Changes
3318     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3319         Add apogee-lockout value. Overrides the apogee detection logic to
3320         prevent incorrect apogee charge firing.
3321       </p></li><li class="listitem"><p>
3322         Fix a bug where the data reported in telemetry packets was
3323         from 320ms ago.
3324       </p></li><li class="listitem"><p>
3325         Force the radio frequency to 434.550MHz when the debug clock
3326         pin is connected to ground at boot time. This provides a way
3327         to talk to a TeleMini which is configured to some unknown frequency.
3328       </p></li><li class="listitem"><p>
3329         Provide RSSI values for Monitor Idle mode. This makes it easy to check radio
3330         range without needing to go to flight mode.
3331       </p></li><li class="listitem"><p>
3332         Fix a bug which caused the old received telemetry packets to
3333         be retransmitted over the USB link when the radio was turned
3334         off and back on.
3335       </p></li></ul></div><p>
3336   </p><p>
3337     AltosUI Changes
3338     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3339         Fix a bug that caused GPS ready to happen too quickly. The
3340         software was using every telemetry packet to signal new GPS
3341         data, which caused GPS ready to be signalled after 10 packets
3342         instead of 10 GPS updates.
3343       </p></li><li class="listitem"><p>
3344         Fix Google Earth data export to work with recent versions. The
3345         google earth file loading code got a lot pickier, requiring
3346         some minor white space changes in the export code.
3347       </p></li><li class="listitem"><p>
3348         Make the look-n-feel configurable, providing a choice from
3349         the available options.
3350       </p></li><li class="listitem"><p>
3351         Add an 'Age' element to mark how long since a telemetry packet
3352         has been received. Useful to quickly gauge whether
3353         communications with the rocket are still active.
3354       </p></li><li class="listitem"><p>
3355         Add 'Configure Ground Station' dialog to set the radio
3356         frequency used by a particular TeleDongle without having to go
3357         through the flight monitor UI.
3358       </p></li><li class="listitem"><p>
3359         Add configuration for the new apogee-lockout value. A menu provides a list of
3360         reasonable values, or the value can be set by hand.
3361       </p></li><li class="listitem"><p>
3362         Changed how flight data are downloaded. Now there's an initial
3363         dialog asking which flights to download, and after that
3364         finishes, a second dialog comes up asking which flights to delete.
3365       </p></li><li class="listitem"><p>
3366         Re-compute time spent in each state for the flight graph; this
3367         figures out the actual boost and landing times instead of
3368         using the conservative values provide by the flight
3369         electronics. This improves the accuracy of the boost
3370         acceleration and main descent rate computations.
3371       </p></li><li class="listitem"><p>
3372         Make AltosUI run on Mac OS Lion. The default Java heap space
3373         was dramatically reduced for this release causing much of the
3374         UI to fail randomly. This most often affected the satellite
3375         mapping download and displays.
3376       </p></li><li class="listitem"><p>
3377         Change how data are displayed in the 'table' tab of the flight
3378         monitoring window. This eliminates entries duplicated from the
3379         header and adds both current altitude and pad altitude, which
3380         are useful in 'Monitor Idle' mode.
3381       </p></li><li class="listitem"><p>
3382         Add Imperial units mode to present data in feet instead of
3383         meters.
3384       </p></li></ul></div><p>
3385   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38974960"></a>Version 1.0.1</h2></div></div></div><p>
3386     Version 1.0.1 is a major release, adding support for the TeleMini
3387     device and lots of new AltosUI features
3388   </p><p>
3389     AltOS Firmware Changes
3390     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3391         Add TeleMini v1.0 support. Firmware images for TeleMini are
3392         included in AltOS releases.
3393       </p></li><li class="listitem"><p>
3394         Change telemetry to be encoded in multiple 32-byte packets. This
3395         enables support for TeleMini and other devices without requiring
3396         further updates to the TeleDongle firmware.
3397       </p></li><li class="listitem"><p>
3398         Support operation of TeleMetrum with the antenna pointing
3399         aft. Previous firmware versions required the antenna to be
3400         pointing upwards, now there is a configuration option allowing
3401         the antenna to point aft, to aid installation in some airframes.
3402       </p></li><li class="listitem"><p>
3403         Ability to disable telemetry. For airframes where an antenna
3404         just isn't possible, or where radio transmissions might cause
3405         trouble with other electronics, there's a configuration option
3406         to disable all telemetry. Note that the board will still
3407         enable the radio link in idle mode.
3408       </p></li><li class="listitem"><p>
3409         Arbitrary frequency selection. The radios in Altus Metrum
3410         devices can be programmed to a wide range of frequencies, so
3411         instead of limiting devices to 10 pre-selected 'channels', the
3412         new firmware allows the user to choose any frequency in the
3413         70cm band. Note that the RF matching circuit on the boards is
3414         tuned for around 435MHz, so frequencies far from that may
3415         reduce the available range.
3416       </p></li><li class="listitem"><p>
3417         Kalman-filter based flight-tracking. The model based sensor
3418         fusion approach of a Kalman filter means that AltOS now
3419         computes apogee much more accurately than before, generally
3420         within a fraction of a second. In addition, this approach
3421         allows the baro-only TeleMini device to correctly identify
3422         Mach transitions, avoiding the error-prone selection of a Mach
3423         delay.
3424       </p></li></ul></div><p>
3425   </p><p>
3426     AltosUI Changes
3427     </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3428         Wait for altimeter when using packet mode. Instead of quicly
3429         timing out when trying to initialize a packet mode
3430         configuration connection, AltosUI now waits indefinitely for
3431         the remote device to appear, providing a cancel button should
3432         the user get bored. This is necessary as the TeleMini can only
3433         be placed in "Idle" mode if AltosUI is polling it.
3434       </p></li><li class="listitem"><p>
3435         Add main/apogee voltage graphs to the data plot. This provides
3436         a visual indication if the igniters fail before being fired.
3437       </p></li><li class="listitem"><p>
3438         Scan for altimeter devices by watching the defined telemetry
3439         frequencies. This avoids the problem of remembering what
3440         frequency a device was configured to use, which is especially
3441         important with TeleMini which does not include a USB connection.
3442       </p></li><li class="listitem"><p>
3443         Monitor altimeter state in "Idle" mode. This provides much of
3444         the information presented in the "Pad" dialog from the Monitor
3445         Flight command, monitoring the igniters, battery and GPS
3446         status withing requiring the flight computer to be armed and
3447         ready for flight.
3448       </p></li><li class="listitem"><p>
3449         Pre-load map images from home. For those launch sites which
3450         don't provide free Wi-Fi, this allows you to download the
3451         necessary satellite images given the location of the launch
3452         site. A list of known launch sites is maintained at
3453         altusmetrum.org which AltosUI downloads to populate a menu; if
3454         you've got a launch site not on that list, please send the
3455         name of it, latitude and longitude along with a link to the
3456         web site of the controlling club to the altusmetrum mailing list.
3457       </p></li><li class="listitem"><p>
3458         Flight statistics are now displayed in the Graph data
3459         window. These include max height/speed/accel, average descent
3460         rates and a few other bits of information. The Graph Data
3461         window can now be reached from the 'Landed' tab in the Monitor
3462         Flight window so you can immediately see the results of a
3463         flight.
3464       </p></li></ul></div><p>
3465   </p></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38976464"></a>Version 0.9.2</h2></div></div></div><p>
3466     Version 0.9.2 is an AltosUI bug-fix release, with no firmware changes.
3467   </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3468       Fix plotting problems due to missing file in the Mac OS install image.
3469 </p></li><li class="listitem"><p>
3470       Always read whole eeprom blocks, mark empty records invalid, display parsing errors to user.
3471 </p></li><li class="listitem"><p>
3472       Add software version to Configure AltosUI dialog
3473 </p></li></ul></div></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38977968"></a>Version 0.9</h2></div></div></div><p>
3474     Version 0.9 adds a few new firmware features and accompanying
3475     AltosUI changes, along with new hardware support.
3476   </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3477       Support for TeleMetrum v1.1 hardware. Sources for the flash
3478       memory part used in v1.0 dried up, so v1.1 uses a different part
3479       which required a new driver and support for explicit flight log
3480       erasing.
3481 </p></li><li class="listitem"><p>
3482       Multiple flight log support. This stores more than one flight
3483       log in the on-board flash memory. It also requires the user to
3484       explicitly erase flights so that you won't lose flight logs just
3485       because you fly the same board twice in one day.
3486 </p></li><li class="listitem"><p>
3487       Telemetry support for devices with serial number &gt;=
3488       256. Previous versions used a telemetry packet format that
3489       provided only 8 bits for the device serial number. This change
3490       requires that both ends of the telemetry link be running the 0.9
3491       firmware or they will not communicate.
3492 </p></li></ul></div></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38979472"></a>Version 0.8</h2></div></div></div><p>
3493     Version 0.8 offers a major upgrade in the AltosUI
3494     interface. Significant new features include:
3495   </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3496       Post-flight graphing tool. This lets you explore the behaviour
3497       of your rocket after flight with a scroll-able and zoom-able
3498       chart showing the altitude, speed and acceleration of the
3499       airframe along with events recorded by the flight computer. You
3500       can export graphs to PNG files, or print them directly.
3501     </p></li><li class="listitem"><p>
3502       Real-time moving map which overlays the in-progress flight on
3503       satellite imagery fetched from Google Maps. This lets you see in
3504       pictures where your rocket has landed, allowing you to plan
3505       recovery activities more accurately.
3506     </p></li><li class="listitem"><p>
3507       Wireless recovery system testing. Prep your rocket for flight
3508       and test fire the deployment charges to make sure things work as
3509       expected. All without threading wires through holes in your
3510       airframe.
3511     </p></li><li class="listitem"><p>
3512       Optimized flight status displays. Each flight state now has it's
3513       own custom 'tab' in the flight monitoring window so you can
3514       focus on the most important details. Pre-flight, the system
3515       shows a set of red/green status indicators for battery voltage,
3516       apogee/main igniter continutity and GPS reception. Wait until
3517       they're all green and your rocket is ready for flight. There are
3518       also tabs for ascent, descent and landing along with the
3519       original tabular view of the data.
3520     </p></li><li class="listitem"><p>
3521       Monitor multiple flights simultaneously. If you have more than
3522       one TeleDongle, you can monitor a flight with each one on the
3523       same computer.
3524     </p></li><li class="listitem"><p>
3525       Automatic flight monitoring at startup. Plug TeleDongle into the
3526       machine before starting AltosUI and it will automatically
3527       connect to it and prepare to monitor a flight.
3528     </p></li><li class="listitem"><p>
3529       Exports Google Earth flight tracks. Using the Keyhole Markup
3530       Language (.kml) file format, this provides a 3D view of your
3531       rocket flight through the Google Earth program.
3532     </p></li></ul></div></div><div class="simplesect"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idp38980976"></a>Version 0.7.1</h2></div></div></div><p>
3533 Version 0.7.1 is the first release containing our new cross-platform Java-based user interface. AltosUI can:
3534   </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
3535       Receive and log telemetry from a connected TeleDongle
3536       device. All data received is saved to log files named with the
3537       current date and the connected rocket serial and flight
3538       numbers. There is no mode in which telemetry data will not be
3539       saved.
3540     </p></li><li class="listitem"><p>
3541       Download logged data from TeleMetrum devices, either through a
3542       direct USB connection or over the air through a TeleDongle
3543       device.
3544     </p></li><li class="listitem"><p>
3545       Configure a TeleMetrum device, setting the radio channel,
3546       callsign, apogee delay and main deploy height. This can be done
3547       through either a USB connection or over a radio link via a
3548       TeleDongle device.
3549     </p></li><li class="listitem"><p>
3550       Replay a flight in real-time. This takes a saved telemetry log
3551       or eeprom download and replays it through the user interface so
3552       you can relive your favorite rocket flights.
3553     </p></li><li class="listitem"><p>
3554       Reprogram Altus Metrum devices. Using an Altus Metrum device
3555       connected via USB, another Altus Metrum device can be
3556       reprogrammed using the supplied programming cable between the
3557       two devices.
3558     </p></li><li class="listitem"><p>
3559       Export Flight data to a comma-separated-values file. This takes
3560       either telemetry or on-board flight data and generates data
3561       suitable for use in external applications. All data is exported
3562       using standard units so that no device-specific knowledge is
3563       needed to handle the data.
3564     </p></li><li class="listitem"><p>
3565       Speak to you during the flight. Instead of spending the flight
3566       hunched over your laptop looking at the screen, enjoy the view
3567       while the computer tells you what&#8217;s going on up there. During
3568       ascent, you hear the current flight state and altitude
3569       information. During descent, you get azimuth, elevation and
3570       range information to try and help you find your rocket in the
3571       air. Once on the ground, the direction and distance are
3572       reported.
3573     </p></li></ul></div></div></div></div></body></html>