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