new Em batch
[web/altusmetrum] / AltOS / doc / easymini.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta name="generator" content="Asciidoctor 2.0.20">
8 <meta name="author" content="Keith Packard, Bdale Garbee">
9 <meta name="copyright" content="Bdale Garbee and Keith Packard 2022">
10 <title>EasyMini Owner&#8217;s Manual</title>
11 <link rel="stylesheet" href="./am.css">
12 </head>
13 <body class="book">
14 <div id="header">
15 <h1>EasyMini Owner&#8217;s Manual</h1>
16 <div class="details">
17 <span id="author" class="author">Keith Packard</span><br>
18 <span id="email" class="email"><a href="mailto:keithp@keithp.com">keithp@keithp.com</a></span><br>
19 <span id="author2" class="author">Bdale Garbee</span><br>
20 <span id="email2" class="email"><a href="mailto:bdale@gag.com">bdale@gag.com</a></span><br>
21 <span id="revnumber">version v1.9.18,</span>
22 <span id="revdate">28 Apr 2024</span>
23 </div>
24 <div id="toc" class="toc">
25 <div id="toctitle">Table of Contents</div>
26 <ul class="sectlevel1">
27 <li><a href="#_license">License</a></li>
28 <li><a href="#_acknowledgments">Acknowledgments</a></li>
29 <li><a href="#_introduction_and_overview">1. Introduction and Overview</a></li>
30 <li><a href="#_getting_started">2. Getting Started</a>
31 <ul class="sectlevel2">
32 <li><a href="#_batteries">2.1. Batteries</a></li>
33 <li><a href="#_linuxmacwindows_ground_station_software">2.2. Linux/Mac/Windows Ground Station Software</a></li>
34 </ul>
35 </li>
36 <li><a href="#_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</a>
37 <ul class="sectlevel2">
38 <li><a href="#_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</a></li>
39 <li><a href="#_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</a></li>
40 <li><a href="#_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</a></li>
41 <li><a href="#_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</a></li>
42 <li><a href="#_understanding_beeps">3.5. Understanding Beeps</a></li>
43 <li><a href="#_turning_on_the_power">3.6. Turning On the Power</a></li>
44 <li><a href="#_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</a></li>
45 <li><a href="#_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</a></li>
46 <li><a href="#_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</a></li>
47 <li><a href="#_using_packet_link_mode">3.10. Using Packet Link Mode</a></li>
48 </ul>
49 </li>
50 <li><a href="#_easymini">4. EasyMini</a>
51 <ul class="sectlevel2">
52 <li><a href="#_easymini_screw_terminals">4.1. EasyMini Screw Terminals</a></li>
53 <li><a href="#_connecting_a_battery_to_easymini">4.2. Connecting A Battery To EasyMini</a></li>
54 <li><a href="#_charging_lithium_batteries">4.3. Charging Lithium Batteries</a></li>
55 <li><a href="#_using_a_separate_pyro_battery_with_easymini">4.4. Using a Separate Pyro Battery with EasyMini</a></li>
56 <li><a href="#_using_an_active_switch_with_easymini">4.5. Using an Active Switch with EasyMini</a></li>
57 </ul>
58 </li>
59 <li><a href="#_installation">5. Installation</a></li>
60 <li><a href="#_using_altus_metrum_products">6. Using Altus Metrum Products</a>
61 <ul class="sectlevel2">
62 <li><a href="#_in_the_rocket">6.1. In the Rocket</a></li>
63 <li><a href="#_on_the_ground">6.2. On the Ground</a></li>
64 <li><a href="#_data_analysis">6.3. Data Analysis</a></li>
65 <li><a href="#_future_plans">6.4. Future Plans</a></li>
66 </ul>
67 </li>
68 <li><a href="#_altosui">7. AltosUI</a>
69 <ul class="sectlevel2">
70 <li><a href="#_save_flight_data">7.1. Save Flight Data</a></li>
71 <li><a href="#_replay_flight">7.2. Replay Flight</a></li>
72 <li><a href="#_graph_data">7.3. Graph Data</a></li>
73 <li><a href="#_export_data">7.4. Export Data</a></li>
74 <li><a href="#_configure_altimeter">7.5. Configure Altimeter</a></li>
75 <li><a href="#_configure_altosui">7.6. Configure AltosUI</a></li>
76 <li><a href="#_flash_image">7.7. Flash Image</a></li>
77 <li><a href="#_fire_igniter">7.8. Fire Igniter</a></li>
78 </ul>
79 </li>
80 <li><a href="#_system_operation">Appendix A: System Operation</a>
81 <ul class="sectlevel2">
82 <li><a href="#_firmware_modes">A.1. Firmware Modes</a></li>
83 <li><a href="#_ground_testing">A.2. Ground Testing</a></li>
84 <li><a href="#_configurable_parameters">A.3. Configurable Parameters</a></li>
85 </ul>
86 </li>
87 <li><a href="#_handling_precautions">Appendix B: Handling Precautions</a></li>
88 <li><a href="#_updating_device_firmware">Appendix C: Updating Device Firmware</a>
89 <ul class="sectlevel2">
90 <li><a href="#_updating_easymini_firmware">C.1. Updating EasyMini Firmware</a></li>
91 </ul>
92 </li>
93 <li><a href="#_flight_data_recording">Appendix D: Flight Data Recording</a></li>
94 <li><a href="#_altus_metrum_hardware_specifications">Appendix E: Altus Metrum Hardware Specifications</a></li>
95 <li><a href="#_release_notes">Appendix F: Release Notes</a>
96 <ul class="sectlevel2">
97 <li><a href="#_release_notes_for_version_1_9_18">F.1. Release Notes for Version 1.9.18</a></li>
98 <li><a href="#_release_notes_for_version_1_9_17">F.2. Release Notes for Version 1.9.17</a></li>
99 <li><a href="#_release_notes_for_version_1_9_16">F.3. Release Notes for Version 1.9.16</a></li>
100 <li><a href="#_release_notes_for_version_1_9_15">F.4. Release Notes for Version 1.9.15</a></li>
101 <li><a href="#_release_notes_for_version_1_9_14">F.5. Release Notes for Version 1.9.14</a></li>
102 <li><a href="#_release_notes_for_version_1_9_13">F.6. Release Notes for Version 1.9.13</a></li>
103 <li><a href="#_release_notes_for_version_1_9_12">F.7. Release Notes for Version 1.9.12</a></li>
104 <li><a href="#_release_notes_for_version_1_9_11">F.8. Release Notes for Version 1.9.11</a></li>
105 <li><a href="#_release_notes_for_version_1_9_10">F.9. Release Notes for Version 1.9.10</a></li>
106 <li><a href="#_release_notes_for_version_1_9_9">F.10. Release Notes for Version 1.9.9</a></li>
107 <li><a href="#_release_notes_for_version_1_9_8">F.11. Release Notes for Version 1.9.8</a></li>
108 <li><a href="#_release_notes_for_version_1_9_7">F.12. Release Notes for Version 1.9.7</a></li>
109 <li><a href="#_release_notes_for_version_1_9_6">F.13. Release Notes for Version 1.9.6</a></li>
110 <li><a href="#_release_notes_for_version_1_9_5">F.14. Release Notes for Version 1.9.5</a></li>
111 <li><a href="#_release_notes_for_version_1_9_4">F.15. Release Notes for Version 1.9.4</a></li>
112 <li><a href="#_release_notes_for_version_1_9_3">F.16. Release Notes for Version 1.9.3</a></li>
113 <li><a href="#_release_notes_for_version_1_9_1">F.17. Release Notes for Version 1.9.1</a></li>
114 <li><a href="#_release_notes_for_version_1_9">F.18. Release Notes for Version 1.9</a></li>
115 <li><a href="#_release_notes_for_version_1_8_7">F.19. Release Notes for Version 1.8.7</a></li>
116 <li><a href="#_release_notes_for_version_1_8_6">F.20. Release Notes for Version 1.8.6</a></li>
117 <li><a href="#_release_notes_for_version_1_8_5">F.21. Release Notes for Version 1.8.5</a></li>
118 <li><a href="#_release_notes_for_version_1_8_4">F.22. Release Notes for Version 1.8.4</a></li>
119 <li><a href="#_release_notes_for_version_1_8_3">F.23. Release Notes for Version 1.8.3</a></li>
120 <li><a href="#_release_notes_for_version_1_8_2">F.24. Release Notes for Version 1.8.2</a></li>
121 <li><a href="#_release_notes_for_version_1_8_1">F.25. Release Notes for Version 1.8.1</a></li>
122 <li><a href="#_release_notes_for_version_1_8">F.26. Release Notes for Version 1.8</a></li>
123 <li><a href="#_release_notes_for_version_1_7">F.27. Release Notes for Version 1.7</a></li>
124 <li><a href="#_release_notes_for_version_1_6_8">F.28. Release Notes for Version 1.6.8</a></li>
125 <li><a href="#_release_notes_for_version_1_6_5">F.29. Release Notes for Version 1.6.5</a></li>
126 <li><a href="#_release_notes_for_version_1_6_4">F.30. Release Notes for Version 1.6.4</a></li>
127 <li><a href="#_release_notes_for_version_1_6_3">F.31. Release Notes for Version 1.6.3</a></li>
128 <li><a href="#_release_notes_for_version_1_6_2">F.32. Release Notes for Version 1.6.2</a></li>
129 </ul>
130 </li>
131 </ul>
132 </div>
133 </div>
134 <div id="content">
135 <div id="preamble">
136 <div class="sectionbody">
137 <div id="logo" class="imageblock">
138 <div class="content">
139 <a class="image" href="https://altusmetrum.org"><img src="altusmetrum-oneline.svg" alt="Altus Metrum"></a>
140 </div>
141 </div>
142 </div>
143 </div>
144 <div class="sect1">
145 <h2 id="_license">License</h2>
146 <div class="sectionbody">
147 <div class="paragraph">
148 <p>Copyright © 2024 Bdale Garbee and Keith Packard</p>
149 </div>
150 <div class="paragraph">
151 <p>This document is released under the terms of the <a href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons ShareAlike 3.0 License</a></p>
152 </div>
153 </div>
154 </div>
155 <div class="sect1">
156 <h2 id="_acknowledgments">Acknowledgments</h2>
157 <div class="sectionbody">
158 <div class="paragraph">
159 <p>Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing “The
160 Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
161 Kit” which formed the basis of the original Getting Started chapter
162 in this manual.  Bob was one of our first customers for a production
163 TeleMetrum, and his continued enthusiasm and contributions
164 are immensely gratifying and highly appreciated!</p>
165 </div>
166 <div class="paragraph">
167 <p>And thanks to Anthony (AJ) Towns for major contributions including
168 the AltosUI graphing and site map code and associated documentation.
169 Free software means that our customers and friends can become our
170 collaborators, and we certainly appreciate this level of
171 contribution!</p>
172 </div>
173 <div class="paragraph">
174 <p>Have fun using these products, and we hope to meet all of you
175 out on the rocket flight line somewhere.</p>
176 </div>
177 <div class="verseblock">
178 <pre class="content">Bdale Garbee, KB0G
179 NAR #87103, TRA #12201</pre>
180 </div>
181 <div class="verseblock">
182 <pre class="content">Keith Packard, K7WQ
183 NAR #88757, TRA #12200</pre>
184 </div>
185 </div>
186 </div>
187 <div class="sect1">
188 <h2 id="_introduction_and_overview">1. Introduction and Overview</h2>
189 <div class="sectionbody">
190 <div class="paragraph">
191 <p>Welcome to the Altus Metrum community!  Our circuits and software reflect
192 our passion for both hobby rocketry and Free Software.  We hope their
193 capabilities and performance will delight you in every way, but by
194 releasing all of our hardware and software designs under open licenses,
195 we also hope to empower you to take as active a role in our collective
196 future as you wish!</p>
197 </div>
198 <div class="paragraph">
199 <p>Our goal is to include in this document all of the information required
200 to successfully configure and use Altus Metrum products.  But
201 documentation is a lot like software in that it can contain "bugs",
202 and can probably always be improved!  If you have questions that
203 aren&#8217;t answered in this manual, or just need a little help figuring
204 things out, we strongly suggest joining the Altus Metrum user email
205 list, which you can do by visiting
206 <a href="https://lists.gag.com/mailman/listinfo/altusmetrum" class="bare">https://lists.gag.com/mailman/listinfo/altusmetrum</a>.  There&#8217;s a lot
207 of useful information in the mailing list archives!</p>
208 </div>
209 <div class="paragraph">
210 <p>The first device created for our community was TeleMetrum, a dual
211 deploy altimeter with fully integrated GPS and radio telemetry
212 as standard features, and a “companion interface” that will
213 support optional capabilities in the future. The later versions
214 of TeleMetrum, v2 and newer, have all of the same features but with
215 improved sensors and radio to offer increased performance.</p>
216 </div>
217 <div class="paragraph">
218 <p>Our second device was TeleMini, a dual deploy altimeter with
219 radio telemetry and radio direction finding. The first version
220 of this device was only 13mm by 38mm (½ inch by 1½ inches) and
221 could fit easily in an 18mm air-frame. The latest version, v3.0,
222 includes a beeper, higher power radio, extended on-board
223 flight logging and an improved barometric sensor.</p>
224 </div>
225 <div class="paragraph">
226 <p>TeleMega is our most sophisticated device, including six pyro
227 channels (four of which are fully programmable), integrated GPS,
228 integrated gyroscopes for staging/air-start inhibit and high
229 performance telemetry.</p>
230 </div>
231 <div class="paragraph">
232 <p>EasyMini is a dual-deploy altimeter with logging and built-in
233 USB data download.</p>
234 </div>
235 <div class="paragraph">
236 <p>EasyMega is essentially a TeleMega board with the GPS receiver
237 and telemetry transmitter removed. It offers the same 6 pyro
238 channels and integrated gyroscopes for staging/air-start inhibit.</p>
239 </div>
240 <div class="paragraph">
241 <p>TeleDongle v0.2 was our first ground station, providing a USB to RF
242 interfaces for communicating with the altimeters. Combined with
243 your choice of antenna and notebook computer, TeleDongle and our
244 associated user interface software form a complete ground
245 station capable of logging and displaying in-flight telemetry,
246 aiding rocket recovery, then processing and archiving flight
247 data for analysis and review. The latest version, TeleDongle
248 v3, has all new electronics with a higher performance radio
249 for improved range.</p>
250 </div>
251 <div class="paragraph">
252 <p>For a slightly more portable ground station experience that also
253 provides direct rocket recovery support, TeleBT offers flight
254 monitoring and data logging using a  Bluetooth™ connection between
255 the receiver and an Android device that has the AltosDroid
256 application installed from the Google Play store.</p>
257 </div>
258 <div class="paragraph">
259 <p>More products will be added to the Altus Metrum family over time, and
260 we currently envision that this will be a single, comprehensive manual
261 for the entire product family.</p>
262 </div>
263 </div>
264 </div>
265 <div class="sect1">
266 <h2 id="_getting_started">2. Getting Started</h2>
267 <div class="sectionbody">
268 <div class="paragraph">
269 <p>The first thing to do after you open the box is to hook up a
270 battery and charge it if necessary.</p>
271 </div>
272 <div class="sect2">
273 <h3 id="_batteries">2.1. Batteries</h3>
274 <div class="paragraph">
275 <p>The Lithium Polymer
276 EasyMini battery can be charged by disconnecting it
277 from the board and plugging it into a standalone
278 battery charger such as <a href="http://altusmetrum.org/LipoCharger">LipoCharger</a>, and
279 connecting that via a USB cable to a laptop or other
280 USB power source.</p>
281 </div>
282 <div class="paragraph">
283 <p>You can also choose to use another battery with
284 EasyMini, anything supplying between 4 and 12 volts should
285 work fine (like a standard 9V battery), but if you are planning
286 to fire pyro charges, ground testing is required to verify that
287 the battery supplies enough current to fire your chosen e-matches.</p>
288 </div>
289 </div>
290 <div class="sect2">
291 <h3 id="_linuxmacwindows_ground_station_software">2.2. Linux/Mac/Windows Ground Station Software</h3>
292 <div class="paragraph">
293 <p>Next you should obtain and install the AltOS software.
294 The AltOS distribution includes the AltosUI ground
295 station program, current firmware images for all of
296 the hardware, and a number of standalone utilities
297 that are rarely needed.  Pre-built binary packages are
298 available for Linux, Microsoft Windows, Mac OSX. Full
299 source code and build instructions are also
300 available. The latest version may always be downloaded
301 from <a href="http://altusmetrum.org/AltOS" class="bare">http://altusmetrum.org/AltOS</a></p>
302 </div>
303 </div>
304 </div>
305 </div>
306 <div class="sect1">
307 <h2 id="_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</h2>
308 <div class="sectionbody">
309 <div class="paragraph">
310 <p>Here are general instructions for hooking up an Altus Metrum
311 flight computer. Instructions specific to each model will be
312 found in the section devoted to that model below.</p>
313 </div>
314 <div class="sect2">
315 <h3 id="_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</h3>
316 <div class="paragraph">
317 <p>To prevent electrical interference from affecting the
318 operation of the flight computer, it&#8217;s important to always
319 twist pairs of wires connected to the board. Twist the switch
320 leads, the pyro leads and the battery leads. This reduces
321 interference through a mechanism called common mode rejection.</p>
322 </div>
323 </div>
324 <div class="sect2">
325 <h3 id="_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</h3>
326 <div class="paragraph">
327 <p>All Altus Metrum flight computers have a two pin JST PH
328 series connector to connect up a single-cell Lithium Polymer
329 cell (3.7V nominal). You can purchase matching batteries
330 from the Altus Metrum store, or other vendors, or you can
331 make your own. Pin 1 of the connector is positive, pin 2 is
332 negative. Spark Fun sells a cable with the connector
333 attached, which they call a
334 <a href="https://www.sparkfun.com/products/9914">JST Jumper 2 Wire Assembly</a></p>
335 </div>
336 <div class="admonitionblock warning">
337 <table>
338 <tr>
339 <td class="icon">
340 <div class="title">Warning</div>
341 </td>
342 <td class="content">
343 Many RC vendors also sell lithium polymer batteries with
344 this same connector. All that we have found use the opposite
345 polarity, and if you use them that way, you will damage or
346 destroy the flight computer.
347 </td>
348 </tr>
349 </table>
350 </div>
351 </div>
352 <div class="sect2">
353 <h3 id="_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</h3>
354 <div class="paragraph">
355 <p>Altus Metrum flight computers always have two screws for
356 each pyro charge. This means you shouldn&#8217;t need to put two
357 wires into a screw terminal or connect leads from pyro
358 charges together externally.</p>
359 </div>
360 <div class="paragraph">
361 <p>On the flight computer, one lead from each charge is hooked
362 to the positive battery terminal through the power switch.
363 The other lead is connected through the pyro circuit, which
364 is connected to the negative battery terminal when the pyro
365 circuit is fired.</p>
366 </div>
367 </div>
368 <div class="sect2">
369 <h3 id="_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</h3>
370 <div class="paragraph">
371 <p>Altus Metrum flight computers need an external power switch
372 to turn them on. This disconnects both the computer and the
373 pyro charges from the battery, preventing the charges from
374 firing when in the Off position. The switch is in-line with
375 the positive battery terminal.</p>
376 </div>
377 </div>
378 <div class="sect2">
379 <h3 id="_understanding_beeps">3.5. Understanding Beeps</h3>
380 <div class="paragraph">
381 <p>Altus Metrum flight computers include a beeper to
382 provide information about the state of the system.</p>
383 </div>
384 <div class="paragraph">
385 <p>Here&#8217;s a short summary of all of the modes and the
386 beeping
387 that accompanies each mode. In the description of the
388 beeping pattern, “dit” means a short beep while "dah"
389 means a long beep (three times as long). “Brap” means
390 a long dissonant tone.</p>
391 </div>
392 <table class="tableblock frame-all grid-all stretch">
393 <caption class="title">Table 1. AltOS Modes</caption>
394 <colgroup>
395 <col style="width: 16.6666%;">
396 <col style="width: 16.6666%;">
397 <col style="width: 33.3333%;">
398 <col style="width: 33.3335%;">
399 </colgroup>
400 <tbody>
401 <tr>
402 <td class="tableblock halign-left valign-top"><p class="tableblock">Mode Name</p></td>
403 <td class="tableblock halign-left valign-top"><p class="tableblock">Abbreviation</p></td>
404 <td class="tableblock halign-left valign-top"><p class="tableblock">Beeps</p></td>
405 <td class="tableblock halign-left valign-top"><p class="tableblock">Description</p></td>
406 </tr>
407 <tr>
408 <td class="tableblock halign-left valign-top"><p class="tableblock">Startup</p></td>
409 <td class="tableblock halign-left valign-top"><p class="tableblock">S</p></td>
410 <td class="tableblock halign-left valign-top"><p class="tableblock">battery voltage in decivolts</p></td>
411 <td class="tableblock halign-left valign-top"><p class="tableblock">Calibrating sensors, detecting orientation.</p></td>
412 </tr>
413 <tr>
414 <td class="tableblock halign-left valign-top"><p class="tableblock">Idle</p></td>
415 <td class="tableblock halign-left valign-top"><p class="tableblock">I</p></td>
416 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
417 <td class="tableblock halign-left valign-top"><p class="tableblock">Ready to accept commands over USB</p></td>
418 </tr>
419 <tr>
420 <td class="tableblock halign-left valign-top"><p class="tableblock">Pad</p></td>
421 <td class="tableblock halign-left valign-top"><p class="tableblock">P</p></td>
422 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dah dit</p></td>
423 <td class="tableblock halign-left valign-top"><p class="tableblock">Waiting for launch. Not listening for commands.</p></td>
424 </tr>
425 <tr>
426 <td class="tableblock halign-left valign-top"><p class="tableblock">Boost</p></td>
427 <td class="tableblock halign-left valign-top"><p class="tableblock">B</p></td>
428 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dit</p></td>
429 <td class="tableblock halign-left valign-top"><p class="tableblock">Accelerating upwards.</p></td>
430 </tr>
431 <tr>
432 <td class="tableblock halign-left valign-top"><p class="tableblock">Fast</p></td>
433 <td class="tableblock halign-left valign-top"><p class="tableblock">F</p></td>
434 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dah dit</p></td>
435 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, but moving faster than 200m/s.</p></td>
436 </tr>
437 <tr>
438 <td class="tableblock halign-left valign-top"><p class="tableblock">Coast</p></td>
439 <td class="tableblock halign-left valign-top"><p class="tableblock">C</p></td>
440 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dah dit</p></td>
441 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, moving slower than 200m/s</p></td>
442 </tr>
443 <tr>
444 <td class="tableblock halign-left valign-top"><p class="tableblock">Drogue</p></td>
445 <td class="tableblock halign-left valign-top"><p class="tableblock">D</p></td>
446 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit</p></td>
447 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending after apogee. Above main height.</p></td>
448 </tr>
449 <tr>
450 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
451 <td class="tableblock halign-left valign-top"><p class="tableblock">M</p></td>
452 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dah</p></td>
453 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending. Below main height.</p></td>
454 </tr>
455 <tr>
456 <td class="tableblock halign-left valign-top"><p class="tableblock">Landed</p></td>
457 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
458 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dit dit</p></td>
459 <td class="tableblock halign-left valign-top"><p class="tableblock">Stable altitude for at least ten seconds.</p></td>
460 </tr>
461 <tr>
462 <td class="tableblock halign-left valign-top"><p class="tableblock">Sensor error</p></td>
463 <td class="tableblock halign-left valign-top"><p class="tableblock">X</p></td>
464 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dah</p></td>
465 <td class="tableblock halign-left valign-top"><p class="tableblock">Error detected during sensor calibration.</p></td>
466 </tr>
467 </tbody>
468 </table>
469 <div class="paragraph">
470 <p>Here&#8217;s a summary of all of the Pad and Idle mode
471 indications. In Idle mode, you&#8217;ll hear one of these
472 just once after the two short dits indicating idle
473 mode. In Pad mode, after the dit dah dah dit
474 indicating Pad mode, you&#8217;ll hear these once every five
475 seconds.</p>
476 </div>
477 <table class="tableblock frame-all grid-all stretch">
478 <caption class="title">Table 2. Pad/Idle Indications</caption>
479 <colgroup>
480 <col style="width: 20%;">
481 <col style="width: 20%;">
482 <col style="width: 60%;">
483 </colgroup>
484 <thead>
485 <tr>
486 <th class="tableblock halign-left valign-top">Name</th>
487 <th class="tableblock halign-left valign-top">Beeps</th>
488 <th class="tableblock halign-left valign-top">Description</th>
489 </tr>
490 </thead>
491 <tbody>
492 <tr>
493 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
494 <td class="tableblock halign-left valign-top"><p class="tableblock">brap</p></td>
495 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
496 </tr>
497 <tr>
498 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
499 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
500 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
501 </tr>
502 <tr>
503 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
504 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
505 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
506 </tr>
507 <tr>
508 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
509 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
510 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
511 </tr>
512 <tr>
513 <td class="tableblock halign-left valign-top"><p class="tableblock">Storage Full</p></td>
514 <td class="tableblock halign-left valign-top"><p class="tableblock">warble</p></td>
515 <td class="tableblock halign-left valign-top"><p class="tableblock">On-board data logging storage is full. This will
516 not prevent the flight computer from safely
517 controlling the flight or transmitting telemetry
518 signals, but no record of the flight will be
519 stored in on-board flash.</p></td>
520 </tr>
521 </tbody>
522 </table>
523 </div>
524 <div class="sect2">
525 <h3 id="_turning_on_the_power">3.6. Turning On the Power</h3>
526 <div class="paragraph">
527 <p>Connect a battery and power switch and turn the switch
528 to "on". The flight computer will signal power on by
529 reporting the battery voltage and then perform an internal self
530 test and sensor calibration.</p>
531 </div>
532 <div class="paragraph">
533 <p>Once the self test and calibration are complete, there
534 are two modes that an Altus Metrum flight computer can
535 operate in:</p>
536 </div>
537 <div class="dlist">
538 <dl>
539 <dt class="hdlist1">Flight/Pad</dt>
540 <dd>
541 <p>The flight computer is waiting to detect
542 launch and then fly the rocket. In this mode, the USB
543 link is
544 disabled.
545 The only way to get out of this
546 mode is to power the flight computer down. See below for how to get the flight
547 computer to come up in Flight/Pad mode at power on.</p>
548 </dd>
549 <dt class="hdlist1">Idle</dt>
550 <dd>
551 <p>The flight computer is ready to communicate over USB
552 You can configure
553 the flight computer, download data or display
554 the current state. See below for how to get the flight
555 computer to come up in Idle mode at power on.</p>
556 </dd>
557 </dl>
558 </div>
559 <div class="paragraph">
560 <p>For EasyMini, if the USB cable is connected to a
561 computer, it will enter Idle mode. Otherwise, it will
562 enter Flight/Pad mode.</p>
563 </div>
564 <div class="paragraph">
565 <p>You can see in <a href="#_understanding_beeps">Understanding Beeps</a>
566 how to tell which mode the flight computer is in.</p>
567 </div>
568 </div>
569 <div class="sect2">
570 <h3 id="_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</h3>
571 <div class="paragraph">
572 <p>You can use an active switch circuit, such as the
573 Featherweight Magnetic Switch, with any Altus Metrum
574 flight computer. These require three connections, one to
575 the battery, one to the positive power input on the flight
576 computer and one to ground. Find instructions on how to
577 hook these up for each flight computer below. Then follow
578 the instructions that come with your active switch to
579 connect it up.</p>
580 </div>
581 </div>
582 <div class="sect2">
583 <h3 id="_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</h3>
584 <div class="paragraph">
585 <p>As mentioned above in <a href="#_hooking_up_pyro_charges">Hooking Up Pyro Charges</a>, one
586 lead for each of the pyro charges is connected through
587 the power switch directly to the positive battery
588 terminal. The other lead is connected to the pyro
589 circuit, which connects it to the negative battery
590 terminal when the pyro circuit is fired. The pyro
591 circuit on all of the flight computers is designed to
592 handle up to 16V.</p>
593 </div>
594 <div class="paragraph">
595 <p>To use a separate pyro battery, connect the negative pyro
596 battery terminal to the flight computer ground terminal,
597 the the switched positive battery terminal to the igniter
598 and the other
599 igniter lead to the negative pyro terminal on the flight
600 computer. When the pyro channel fires, it will complete the
601 circuit between the negative pyro terminal and the ground
602 terminal, firing the igniter. Specific instructions on how
603 to hook this up for each flight computer will be found
604 in the section below for that flight computer.</p>
605 </div>
606 <div class="paragraph">
607 <p>Note that you must include a switch in the positive lead of
608 the pyro battery for safety, as the on-board power switch
609 circuit on our product only controls current flow from the
610 the primary or system battery!</p>
611 </div>
612 </div>
613 <div class="sect2">
614 <h3 id="_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</h3>
615 <div class="paragraph">
616 <p>EasyMini
617 is
618 designed to use either a
619 lithium polymer battery or any other battery producing
620 between 4 and 12 volts, such as a rectangular 9V
621 battery.</p>
622 </div>
623 </div>
624 <div class="sect2">
625 <h3 id="_using_packet_link_mode">3.10. Using Packet Link Mode</h3>
626 <div class="paragraph">
627 <p>All AltusMetrum flight computers that have a radio can
628 communicate with the ground station software for
629 configuration and other operations using the Packet
630 Link mode. This uses radio communication instead of a
631 USB cable. To set this up, the ground station software
632 must be configured to the correct data rate, frequency
633 and callsign.</p>
634 </div>
635 <div class="paragraph">
636 <p>You can monitor Packet Link mode from TeleBT or
637 TeleDongle by watching the LEDs. Each time the device
638 transmits, the red LED will flash. When the link is
639 busy, or when the link is not working, the device will
640 transmit 10 times per second, so the LED will flash
641 rapidly. When the link is working and there is no data
642 to send, the link will flash once per second, and the
643 LED will flash more slowly.</p>
644 </div>
645 </div>
646 </div>
647 </div>
648 <div class="sect1">
649 <h2 id="_easymini">4. EasyMini</h2>
650 <div class="sectionbody">
651 <div class="imageblock">
652 <div class="content">
653 <img src="easymini-top.jpg" alt="easymini top" width="400">
654 </div>
655 <div class="title">Figure 1. EasyMini Board</div>
656 </div>
657 <div class="paragraph">
658 <p>EasyMini is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
659 designed to fit in a 24mm coupler tube.</p>
660 </div>
661 <div class="paragraph">
662 <p>You usually don&#8217;t need to configure EasyMini at all; it&#8217;s set
663 up to do dual-deployment with an event at apogee to separate
664 the airframe and deploy a drogue and another event at 250m
665 (820ft) to deploy the main. Install EasyMini in your airframe,
666 hook up a battery, igniters and a power switch and you&#8217;re
667 ready to fly.</p>
668 </div>
669 <div class="sect2">
670 <h3 id="_easymini_screw_terminals">4.1. EasyMini Screw Terminals</h3>
671 <div class="paragraph">
672 <p>EasyMini has two sets of four screw terminals near one end of the
673 board. Using the picture
674 above, the top four have connections for the main pyro
675 circuit and an external battery and the bottom four have
676 connections for the apogee pyro circuit and the power
677 switch. Counting from the left, the connections are as follows:</p>
678 </div>
679 <table class="tableblock frame-all grid-all stretch">
680 <caption class="title">Table 3. EasyMini Screw Terminals</caption>
681 <colgroup>
682 <col style="width: 13.3333%;">
683 <col style="width: 20%;">
684 <col style="width: 66.6667%;">
685 </colgroup>
686 <thead>
687 <tr>
688 <th class="tableblock halign-left valign-top">Terminal #</th>
689 <th class="tableblock halign-left valign-top">Terminal Name</th>
690 <th class="tableblock halign-left valign-top">Description</th>
691 </tr>
692 </thead>
693 <tbody>
694 <tr>
695 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
696 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
697 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
698 </tr>
699 <tr>
700 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
701 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
702 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
703 </tr>
704 <tr>
705 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
706 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
707 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
708 </tr>
709 <tr>
710 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
711 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
712 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
713 </tr>
714 <tr>
715 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
716 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
717 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
718 </tr>
719 <tr>
720 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
721 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
722 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
723 </tr>
724 <tr>
725 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
726 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
727 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
728 </tr>
729 <tr>
730 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
731 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
732 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
733 </tr>
734 </tbody>
735 </table>
736 </div>
737 <div class="sect2">
738 <h3 id="_connecting_a_battery_to_easymini">4.2. Connecting A Battery To EasyMini</h3>
739 <div class="paragraph">
740 <p>There are two possible battery connections on
741 EasyMini. You can use either method; both feed
742 through the power switch terminals.</p>
743 </div>
744 <div class="paragraph">
745 <p>One battery connection is the standard Altus Metrum
746 white JST plug. This mates with single-cell Lithium
747 Polymer batteries sold by Altus Metrum.</p>
748 </div>
749 <div class="paragraph">
750 <p>The other is a pair of screw terminals marked 'Battery
751 +' and 'Battery -'. Connect a battery from 4 to 12
752 volts to these terminals, being careful to match polarity.</p>
753 </div>
754 </div>
755 <div class="sect2">
756 <h3 id="_charging_lithium_batteries">4.3. Charging Lithium Batteries</h3>
757 <div class="paragraph">
758 <p>Because EasyMini allows for batteries other than the
759 standard Altus Metrum Lithium Polymer cells, it cannot
760 incorporate a battery charger circuit. Therefore, when
761 using a Litium Polymer cell, you&#8217;ll need an external
762 charger. These are available from Altus Metrum, or
763 from Spark Fun.</p>
764 </div>
765 </div>
766 <div class="sect2">
767 <h3 id="_using_a_separate_pyro_battery_with_easymini">4.4. Using a Separate Pyro Battery with EasyMini</h3>
768 <div class="paragraph">
769 <p>As described above, using an external pyro battery involves
770 connecting the negative battery terminal to the flight
771 computer ground, connecting the positive battery terminal to
772 one of the igniter leads and connecting the other igniter
773 lead to the per-channel pyro circuit connection.</p>
774 </div>
775 <div class="paragraph">
776 <p>To connect the negative pyro battery terminal to EasyMini
777 ground, connect it to the negative external battery
778 connection, top terminal 4.</p>
779 </div>
780 <div class="paragraph">
781 <p>Connecting the switched positive battery terminal to the pyro
782 charges must be done separate from EasyMini, by soldering
783 them together or using some other connector.  Note that for
784 safety, you must put a switch between the pyro battery and
785 the rest of the circuit!</p>
786 </div>
787 <div class="paragraph">
788 <p>The other lead from each pyro charge is then inserted into
789 the appropriate per-pyro channel screw terminal (top
790 terminal 1 for the Main charge, bottom terminal 1 for the
791 Apogee charge).</p>
792 </div>
793 </div>
794 <div class="sect2">
795 <h3 id="_using_an_active_switch_with_easymini">4.5. Using an Active Switch with EasyMini</h3>
796 <div class="paragraph">
797 <p>As explained above, an external active switch requires three
798 connections, one to the positive battery terminal, one to
799 the flight computer positive input and one to ground. Use
800 the negative external battery connection, top terminal 4 for
801 ground.</p>
802 </div>
803 <div class="paragraph">
804 <p>The positive battery terminal is available on bottom
805 terminal 4, the positive flight computer input is on the
806 bottom terminal 3.</p>
807 </div>
808 </div>
809 </div>
810 </div>
811 <div class="sect1">
812 <h2 id="_installation">5. Installation</h2>
813 <div class="sectionbody">
814 <div class="paragraph">
815 <p>A typical installation involves attaching
816 only a suitable battery, a single pole switch for
817 power on/off, and two pairs of wires connecting e-matches for the
818 apogee and main ejection charges.  All Altus Metrum products are
819 designed for use with single-cell batteries with 3.7 volts
820 nominal.
821 EasyMini may also be used with other
822 batteries as long as they supply between 4 and 12 volts.</p>
823 </div>
824 <div class="paragraph">
825 <p>The battery connectors are a standard 2-pin JST connector; you
826 can purchase suitable batteries from the any vendor selling
827 Altus Metrum products. These batteries are
828 single-cell Lithium Polymer batteries that nominally provide 3.7
829 volts.  Other vendors sell similar batteries for RC aircraft
830 using mating connectors, however the polarity for those is
831 generally reversed from the batteries used by Altus Metrum
832 products. In particular, the Tenergy batteries supplied for use
833 in Featherweight flight computers are not compatible with Altus
834 Metrum flight computers or battery chargers.</p>
835 </div>
836 <div class="admonitionblock warning">
837 <table>
838 <tr>
839 <td class="icon">
840 <div class="title">Warning</div>
841 </td>
842 <td class="content">
843 Check polarity and voltage before connecting any battery not
844 purchased from Altus Metrum.
845 </td>
846 </tr>
847 </table>
848 </div>
849 <div class="admonitionblock warning">
850 <table>
851 <tr>
852 <td class="icon">
853 <div class="title">Warning</div>
854 </td>
855 <td class="content">
856 Spark Fun sells batteries that have a matching connector with
857 the correct polarity. However, these batteries include an
858 integrated current limiting circuit. That circuit will cause
859 the battery to shut down when firing the igniter circuit. Do
860 not use these batteries unless you remove the current limiting
861 circuit.
862 </td>
863 </tr>
864 </table>
865 </div>
866 <div class="paragraph">
867 <p>By default, we use the unregulated output of the battery
868 directly to fire ejection charges.  This works marvelously
869 with standard low-current e-matches like the J-Tek from MJG
870 Technologies, and with Quest Q2G2 igniters.  However, if you
871 want or need to use a separate pyro battery, check out
872 <a href="#_using_a_separate_pyro_battery">Using a Separate Pyro Battery</a> for instructions on how to wire
873 that up. The altimeters are designed to work with an external
874 pyro battery of no more than 15 volts.</p>
875 </div>
876 <div class="paragraph">
877 <p>Ejection charges are wired directly to the screw terminal block
878 at the aft end of the altimeter.  You&#8217;ll need a very small straight
879 blade screwdriver for these screws, such as you might find in a
880 jeweler&#8217;s screwdriver set.
881 The screw terminal block is also used for the power switch leads.</p>
882 </div>
883 </div>
884 </div>
885 <div class="sect1">
886 <h2 id="_using_altus_metrum_products">6. Using Altus Metrum Products</h2>
887 <div class="sectionbody">
888 <div class="sect2">
889 <h3 id="_in_the_rocket">6.1. In the Rocket</h3>
890 <div class="paragraph">
891 <p>In the rocket itself, you just need a flight computer
892 and a single-cell, 3.7 volt nominal Li-Po rechargeable
893 battery.
894 A 110mAh battery weighs less
895 than a triple A battery and is a good choice for use
896 with
897 EasyMini.</p>
898 </div>
899 </div>
900 <div class="sect2">
901 <h3 id="_on_the_ground">6.2. On the Ground</h3>
902 <div class="paragraph">
903 <p>The GUI tool, AltosUI, is written in Java and runs
904 across Linux, Mac OS and Windows. There&#8217;s also a suite
905 of C tools for Linux which can perform most of the
906 same tasks.</p>
907 </div>
908 <div class="paragraph">
909 <p>After the flight,
910 you can use a
911 USB cable to plug into the flight computer board directly.
912 A USB cable is also how you
913 charge the Li-Po battery, so you&#8217;ll want one of those
914 anyway. The same cable used by lots of digital
915 cameras and other modern electronic stuff will work
916 fine.</p>
917 </div>
918 </div>
919 <div class="sect2">
920 <h3 id="_data_analysis">6.3. Data Analysis</h3>
921 <div class="paragraph">
922 <p>Our software makes it easy to log the data from each
923 flight, both the telemetry received during the flight
924 itself, and the more complete data log recorded in the
925 flash memory on the altimeter board.  Once this data
926 is on your computer, our post-flight tools make it
927 easy to quickly get to the numbers everyone wants,
928 like apogee altitude, max acceleration, and max
929 velocity.  You can also generate and view a standard
930 set of plots showing the altitude, acceleration, and
931 velocity of the rocket during flight.  And you can
932 even export a flight log in a format usable with Google
933 Maps and Google Earth for visualizing the flight path
934 in two or three dimensions!</p>
935 </div>
936 <div class="paragraph">
937 <p>Our ultimate goal is to emit a set of files for each
938 flight that can be published as a web page per flight,
939 or just viewed on your local disk with a web browser.</p>
940 </div>
941 </div>
942 <div class="sect2">
943 <h3 id="_future_plans">6.4. Future Plans</h3>
944 <div class="paragraph">
945 <p>Because all of our work is open, both the hardware
946 designs and the software, if you have some great idea
947 for an addition to the current Altus Metrum family,
948 feel free to dive in and help!  Or let us know what
949 you&#8217;d like to see that we aren&#8217;t already working on,
950 and maybe we&#8217;ll get excited about it too&#8230;&#8203;</p>
951 </div>
952 <div class="paragraph">
953 <p>Watch our <a href="http://altusmetrum.org/">web site</a> for
954 more news and information as our family of products
955 evolves!</p>
956 </div>
957 </div>
958 </div>
959 </div>
960 <div class="sect1">
961 <h2 id="_altosui">7. AltosUI</h2>
962 <div class="sectionbody">
963 <div class="imageblock">
964 <div class="content">
965 <img src="altosui.png" alt="altosui" width="450">
966 </div>
967 <div class="title">Figure 2. AltosUI Main Window</div>
968 </div>
969 <div class="paragraph">
970 <p>The AltosUI program provides a graphical user interface for
971 interacting with the Altus Metrum product family. AltosUI can
972 monitor telemetry data, configure devices and many other
973 tasks. The primary interface window provides a selection of
974 buttons, one for each major activity in the system.  This
975 chapter is split into sections, each of which documents one of
976 the tasks provided from the top-level toolbar.</p>
977 </div>
978 <div class="sect2">
979 <h3 id="_save_flight_data">7.1. Save Flight Data</h3>
980 <div class="paragraph">
981 <p>The altimeter records flight data to its internal
982 flash memory.
983 The 'Save Flight Data' button allows you to
984 read the flash memory and write it to disk.</p>
985 </div>
986 <div class="paragraph">
987 <p>Clicking on the 'Save Flight Data' button brings up a
988 list of connected flight computers and TeleDongle
989 devices. If you select a flight computer, the flight
990 data will be downloaded from that device directly.</p>
991 </div>
992 <div class="paragraph">
993 <p>After the device has been selected, a dialog showing
994 the flight data saved in the device will be shown
995 allowing you to select which flights to download and
996 which to delete. With version 0.9 or newer firmware,
997 you must erase flights in order for the space they
998 consume to be reused by another flight. This prevents
999 accidentally losing flight data if you neglect to
1000 download data before flying again. Note that if there
1001 is no more space available in the device, then no data
1002 will be recorded during the next flight.</p>
1003 </div>
1004 <div class="paragraph">
1005 <p>The file name for each flight log is computed
1006 automatically from the recorded flight date, altimeter
1007 serial number and flight number information.</p>
1008 </div>
1009 </div>
1010 <div class="sect2">
1011 <h3 id="_replay_flight">7.2. Replay Flight</h3>
1012 <div class="paragraph">
1013 <p>Select this button and you are prompted to select a flight
1014 record file, either a .telem file recording telemetry data or a
1015 .eeprom file containing flight data saved from the altimeter
1016 flash memory.</p>
1017 </div>
1018 <div class="paragraph">
1019 <p>Once a flight record is selected, the flight monitor interface
1020 is displayed and the flight is re-enacted in real
1021 time.</p>
1022 </div>
1023 </div>
1024 <div class="sect2">
1025 <h3 id="_graph_data">7.3. Graph Data</h3>
1026 <div class="paragraph">
1027 <p>Select this button and you are prompted to select a flight
1028 record file, either a .telem file recording telemetry data or a
1029 .eeprom file containing flight data saved from
1030 flash memory.</p>
1031 </div>
1032 <div class="paragraph">
1033 <p>Note that telemetry files will generally produce poor graphs
1034 due to the lower sampling rate and missed telemetry packets.
1035 Use saved flight data in .eeprom files for graphing where possible.</p>
1036 </div>
1037 <div class="paragraph">
1038 <p>Once a flight record is selected, a window with multiple tabs is
1039 opened.</p>
1040 </div>
1041 <div class="sect3">
1042 <h4 id="_flight_graph">7.3.1. Flight Graph</h4>
1043 <div class="imageblock">
1044 <div class="content">
1045 <img src="graph.png" alt="graph" width="400">
1046 </div>
1047 <div class="title">Figure 3. Flight Data Graph</div>
1048 </div>
1049 <div class="paragraph">
1050 <p>By default, the graph contains acceleration (blue),
1051 velocity (green) and altitude (red).</p>
1052 </div>
1053 <div class="paragraph">
1054 <p>The graph can be zoomed into a particular area by
1055 clicking and dragging down and to the right. Once
1056 zoomed, the graph can be reset by clicking and
1057 dragging up and to the left. Holding down control and
1058 clicking and dragging allows the graph to be panned.
1059 The right mouse button causes a pop-up menu to be
1060 displayed, giving you the option save or print the
1061 plot.</p>
1062 </div>
1063 </div>
1064 <div class="sect3">
1065 <h4 id="_configure_graph">7.3.2. Configure Graph</h4>
1066 <div class="imageblock">
1067 <div class="content">
1068 <img src="graph-configure.png" alt="graph configure" width="400">
1069 </div>
1070 <div class="title">Figure 4. Flight Graph Configuration</div>
1071 </div>
1072 <div class="paragraph">
1073 <p>This selects which graph elements to show, and, at the
1074 very bottom. It also lets you configure how
1075 the graph is drawn:</p>
1076 </div>
1077 <div class="ulist">
1078 <ul>
1079 <li>
1080 <p>Whether to use metric or imperial units</p>
1081 </li>
1082 <li>
1083 <p>Whether to show a marker at each data
1084 point. When displaying a small section of
1085 the graph, these can be useful to know what
1086 data values were recorded.</p>
1087 </li>
1088 <li>
1089 <p>How wide to draw the lines in the graph</p>
1090 </li>
1091 <li>
1092 <p>How to filter speed and acceleration data
1093 computed from barometric data. Flight
1094 computers with accelerometers never display
1095 computed acceleration data, and only use
1096 barometric data to compute speed during
1097 descent. Flight computers without
1098 accelerometers always compute both speed and
1099 acceleration from barometric data. A larger
1100 value smooths the data more.</p>
1101 </li>
1102 </ul>
1103 </div>
1104 </div>
1105 <div class="sect3">
1106 <h4 id="_flight_statistics">7.3.3. Flight Statistics</h4>
1107 <div class="imageblock">
1108 <div class="content">
1109 <img src="graph-stats.png" alt="graph stats" width="400">
1110 </div>
1111 <div class="title">Figure 5. Flight Statistics</div>
1112 </div>
1113 <div class="paragraph">
1114 <p>Shows overall data computed from the flight.</p>
1115 </div>
1116 </div>
1117 </div>
1118 <div class="sect2">
1119 <h3 id="_export_data">7.4. Export Data</h3>
1120 <div class="paragraph">
1121 <p>This tool takes the raw data files and makes them
1122 available for external analysis. When you select this
1123 button, you are prompted to select a flight data file,
1124 which can be either a .eeprom or .telem.  The .eeprom
1125 files contain higher resolution and more continuous
1126 data, while .telem files contain receiver signal
1127 strength information.  Next, a second dialog appears
1128 which is used to select where to write the resulting
1129 file.</p>
1130 </div>
1131 <div class="sect3">
1132 <h4 id="_comma_separated_value_format">7.4.1. Comma Separated Value Format</h4>
1133 <div class="paragraph">
1134 <p>This is a text file containing the data in a form
1135 suitable for import into a spreadsheet or other
1136 external data analysis tool. The first few lines of
1137 the file contain the version and configuration
1138 information from the altimeter, then there is a single
1139 header line which labels all of the fields. All of
1140 these lines start with a '#' character which many
1141 tools can be configured to skip over.</p>
1142 </div>
1143 <div class="paragraph">
1144 <p>The remaining lines of the file contain the data, with
1145 each field separated by a comma and at least one
1146 space. All of the sensor values are converted to
1147 standard units, with the barometric data reported in
1148 both pressure, altitude and height above pad units.</p>
1149 </div>
1150 </div>
1151 </div>
1152 <div class="sect2">
1153 <h3 id="_configure_altimeter">7.5. Configure Altimeter</h3>
1154 <div class="imageblock">
1155 <div class="content">
1156 <img src="configure-altimeter.png" alt="configure altimeter" width="350">
1157 </div>
1158 <div class="title">Figure 6. Altimeter Configuration</div>
1159 </div>
1160 <div class="paragraph">
1161 <p>Select this button and then select an altimeter.</p>
1162 </div>
1163 <div class="paragraph">
1164 <p>The first few lines of the dialog provide information about the
1165 connected device, including the product name,
1166 software version and hardware serial number. Below that are the
1167 individual configuration entries.</p>
1168 </div>
1169 <div class="paragraph">
1170 <p>At the bottom of the dialog, there are four buttons:</p>
1171 </div>
1172 <div class="dlist">
1173 <dl>
1174 <dt class="hdlist1">Save</dt>
1175 <dd>
1176 <p>This writes any changes to the configuration parameter
1177 block in flash memory. If you don&#8217;t press this button,
1178 any changes you make will be lost.</p>
1179 </dd>
1180 <dt class="hdlist1">Reset</dt>
1181 <dd>
1182 <p>This resets the dialog to the most recently saved
1183 values, erasing any changes you have made.</p>
1184 </dd>
1185 <dt class="hdlist1">Reboot</dt>
1186 <dd>
1187 <p>This reboots the device. Use this to switch from idle
1188 to pad mode by rebooting once the rocket is oriented
1189 for flight, or to confirm changes you think you saved
1190 are really saved.</p>
1191 </dd>
1192 <dt class="hdlist1">Close</dt>
1193 <dd>
1194 <p>This closes the dialog. Any unsaved changes will be
1195 lost.</p>
1196 </dd>
1197 </dl>
1198 </div>
1199 <div class="paragraph">
1200 <p>The rest of the dialog contains the parameters to be configured.</p>
1201 </div>
1202 <div class="sect3">
1203 <h4 id="_main_deploy_altitude">7.5.1. Main Deploy Altitude</h4>
1204 <div class="paragraph">
1205 <p>This sets the altitude (above the recorded pad
1206 altitude) at which the 'main' igniter will fire. The
1207 drop-down menu shows some common values, but you can
1208 edit the text directly and choose whatever you
1209 like. If the apogee charge fires below this altitude,
1210 then the main charge will fire two seconds after the
1211 apogee charge fires.</p>
1212 </div>
1213 </div>
1214 <div class="sect3">
1215 <h4 id="_apogee_delay">7.5.2. Apogee Delay</h4>
1216 <div class="paragraph">
1217 <p>When flying redundant electronics, it&#8217;s often
1218 important to ensure that multiple apogee charges don&#8217;t
1219 fire at precisely the same time, as that can over
1220 pressurize the apogee deployment bay and cause a
1221 structural failure of the air-frame. The Apogee Delay
1222 parameter tells the flight computer to fire the apogee
1223 charge a certain number of seconds after apogee has
1224 been detected.</p>
1225 </div>
1226 </div>
1227 <div class="sect3">
1228 <h4 id="_apogee_lockout">7.5.3. Apogee Lockout</h4>
1229 <div class="paragraph">
1230 <p>Apogee lockout is the number of seconds after launch
1231 where the flight computer will not fire the apogee
1232 charge, even if the rocket appears to be at
1233 apogee. This is often called 'Mach Delay', as it is
1234 intended to prevent a flight computer from
1235 unintentionally firing apogee charges due to the
1236 pressure spike that occurrs across a mach
1237 transition. Altus Metrum flight computers include a
1238 Kalman filter which is not fooled by this sharp
1239 pressure increase, and so this setting should be left
1240 at the default value of zero to disable it.</p>
1241 </div>
1242 <div class="admonitionblock warning">
1243 <table>
1244 <tr>
1245 <td class="icon">
1246 <div class="title">Warning</div>
1247 </td>
1248 <td class="content">
1249 Firmware versions older than 1.8.6 have a
1250 bug which resets the time since launch to zero each
1251 time a motor starts burning. Update firmware to get
1252 the correct behavior.
1253 </td>
1254 </tr>
1255 </table>
1256 </div>
1257 </div>
1258 <div class="sect3">
1259 <h4 id="_maximum_flight_log_size">7.5.4. Maximum Flight Log Size</h4>
1260 <div class="paragraph">
1261 <p>This sets the space (in kilobytes) allocated
1262 for each flight log. The available space will
1263 be divided into chunks of this size. A smaller
1264 value will allow more flights to be stored, a
1265 larger value will record data from longer
1266 flights.</p>
1267 </div>
1268 </div>
1269 <div class="sect3">
1270 <h4 id="_ignitor_firing_mode">7.5.5. Ignitor Firing Mode</h4>
1271 <div class="paragraph">
1272 <p>This configuration parameter allows the two standard ignitor
1273 channels (Apogee and Main) to be used in different
1274 configurations.</p>
1275 </div>
1276 <div class="dlist">
1277 <dl>
1278 <dt class="hdlist1">Dual Deploy</dt>
1279 <dd>
1280 <p>This is the usual mode of operation; the
1281 'apogee' channel is fired at apogee and the
1282 'main' channel at the height above ground
1283 specified by the 'Main Deploy Altitude' during
1284 descent.</p>
1285 </dd>
1286 <dt class="hdlist1">Redundant Apogee</dt>
1287 <dd>
1288 <p>This fires both channels at apogee, the
1289 'apogee' channel first followed after a two
1290 second delay by the 'main' channel.</p>
1291 </dd>
1292 <dt class="hdlist1">Redundant Main</dt>
1293 <dd>
1294 <p>This fires both channels at the height above
1295 ground specified by the Main Deploy Altitude
1296 setting during descent. The 'apogee' channel
1297 is fired first, followed after a two second
1298 delay by the 'main' channel.</p>
1299 </dd>
1300 <dt class="hdlist1">Separation &amp; Apogee</dt>
1301 <dd>
1302 <p>This fires the 'main' channel when the first motor
1303 burns out and fires the 'apogee' charge at apogee.</p>
1304 </dd>
1305 </dl>
1306 </div>
1307 </div>
1308 <div class="sect3">
1309 <h4 id="_beeper_frequency">7.5.6. Beeper Frequency</h4>
1310 <div class="paragraph">
1311 <p>The beeper on all Altus Metrum flight
1312 computers works best at 4000Hz, however if you
1313 have more than one flight computer in a single
1314 airframe, having all of them sound at the same
1315 frequency can be confusing. This parameter
1316 lets you adjust the base beeper frequency
1317 value.</p>
1318 </div>
1319 </div>
1320 </div>
1321 <div class="sect2">
1322 <h3 id="_configure_altosui">7.6. Configure AltosUI</h3>
1323 <div class="imageblock">
1324 <div class="content">
1325 <img src="configure-altosui.png" alt="configure altosui" width="230">
1326 </div>
1327 <div class="title">Figure 7. Configure AltosUI Dialog</div>
1328 </div>
1329 <div class="paragraph">
1330 <p>This button presents a dialog so that you can
1331 configure the AltosUI global settings.</p>
1332 </div>
1333 <div class="sect3">
1334 <h4 id="_log_directory">7.6.1. Log Directory</h4>
1335 <div class="paragraph">
1336 <p>AltosUI logs all telemetry data and saves all
1337 flash data to this directory. This
1338 directory is also used as the staring point
1339 when selecting data files for display or
1340 export.</p>
1341 </div>
1342 <div class="paragraph">
1343 <p>Click on the directory name to bring up a
1344 directory choosing dialog, select a new
1345 directory and click 'Select Directory' to
1346 change where AltosUI reads and writes data
1347 files.</p>
1348 </div>
1349 </div>
1350 <div class="sect3">
1351 <h4 id="_imperial_units">7.6.2. Imperial Units</h4>
1352 <div class="paragraph">
1353 <p>This switches between metric units (meters)
1354 and imperial units (feet and miles). This
1355 affects the display of values use during
1356 flight monitoring, configuration, data
1357 graphing and all of the voice
1358 announcements. It does not change the units
1359 used when exporting to CSV files, those are
1360 always produced in metric units.</p>
1361 </div>
1362 </div>
1363 <div class="sect3">
1364 <h4 id="_serial_debug">7.6.3. Serial Debug</h4>
1365 <div class="paragraph">
1366 <p>This causes all communication with a connected
1367 device to be dumped to the console from which
1368 AltosUI was started. If you&#8217;ve started it from
1369 an icon or menu entry, the output will simply
1370 be discarded. This mode can be useful to debug
1371 various serial communication issues.</p>
1372 </div>
1373 </div>
1374 <div class="sect3">
1375 <h4 id="_font_size">7.6.4. Font size</h4>
1376 <div class="paragraph">
1377 <p>Selects the set of fonts used in the flight
1378 monitor window. Choose between the small,
1379 medium and large sets.</p>
1380 </div>
1381 </div>
1382 <div class="sect3">
1383 <h4 id="_look_feel">7.6.5. Look &amp; feel</h4>
1384 <div class="paragraph">
1385 <p>Switches between the available Java user
1386 interface appearances. The default selection
1387 is supposed to match the native window system
1388 appearance for the target platform.</p>
1389 </div>
1390 </div>
1391 <div class="sect3">
1392 <h4 id="_menu_position">7.6.6. Menu position</h4>
1393 <div class="paragraph">
1394 <p>Selects the initial position for the main
1395 AltosUI window that includes all of the
1396 command buttons.</p>
1397 </div>
1398 </div>
1399 </div>
1400 <div class="sect2">
1401 <h3 id="_flash_image">7.7. Flash Image</h3>
1402 <div class="paragraph">
1403 <p>This reprograms Altus Metrum devices with new
1404 firmware.
1405 EasyMini is
1406 programmed directly
1407 over USB (self programming). Please read
1408 the directions for flashing devices in
1409 <a href="#_updating_device_firmware">Updating Device Firmware</a>.</p>
1410 </div>
1411 </div>
1412 <div class="sect2">
1413 <h3 id="_fire_igniter">7.8. Fire Igniter</h3>
1414 <div class="imageblock">
1415 <div class="content">
1416 <img src="fire-igniter.png" alt="fire igniter" width="120">
1417 </div>
1418 <div class="title">Figure 8. Fire Igniter Window</div>
1419 </div>
1420 <div class="paragraph">
1421 <p>This activates the igniter circuits in the flight
1422 computer to help test recovery systems
1423 deployment.</p>
1424 </div>
1425 <div class="paragraph">
1426 <p>Selecting the 'Fire Igniter' button brings up the
1427 usual device selection dialog. Pick the desired
1428 device. This brings up another window which shows the
1429 current continuity test status for all of the pyro
1430 channels.</p>
1431 </div>
1432 <div class="paragraph">
1433 <p>Next, select the desired igniter to fire. This will
1434 enable the 'Arm' button.</p>
1435 </div>
1436 <div class="paragraph">
1437 <p>Select the 'Arm' button. This enables the 'Fire'
1438 button. The word 'Arm' is replaced by a countdown
1439 timer indicating that you have 10 seconds to press the
1440 'Fire' button or the system will deactivate, at which
1441 point you start over again at selecting the desired
1442 igniter.</p>
1443 </div>
1444 </div>
1445 </div>
1446 </div>
1447 <div class="sect1">
1448 <h2 id="_system_operation">Appendix A: System Operation</h2>
1449 <div class="sectionbody">
1450 <div class="sect2">
1451 <h3 id="_firmware_modes">A.1. Firmware Modes</h3>
1452 <div class="paragraph">
1453 <p>The AltOS firmware build for the altimeters has two
1454 fundamental modes, “idle” and “flight”.  Which of these modes
1455 the firmware operates in is determined at start up
1456 time.
1457 Since
1458 EasyMini doesn&#8217;t
1459 have an
1460 accelerometer we can use to determine orientation, “idle” mode
1461 is selected if the board is connected via USB to a computer,
1462 otherwise the board enters “flight” mode.</p>
1463 </div>
1464 <div class="paragraph">
1465 <p>At power on, the altimeter will beep out the battery voltage
1466 to the nearest tenth of a volt.  Each digit is represented by
1467 a sequence of short “dit” beeps, with a pause between
1468 digits. A zero digit is represented with one long “dah”
1469 beep. Then there will be a short pause while the altimeter
1470 completes initialization and self test, and decides which mode
1471 to enter next.</p>
1472 </div>
1473 <div class="paragraph">
1474 <p>In flight or “pad” mode, the altimeter engages the flight
1475 state machine, goes into transmit-only mode to send telemetry,
1476 and waits for launch to be detected.  Flight mode is indicated
1477 by an “di-dah-dah-dit” (“P” for pad) on the beeper or lights,
1478 followed by beeps or flashes indicating the state of the
1479 pyrotechnic igniter continuity.  One beep/flash indicates
1480 apogee continuity, two beeps/flashes indicate main continuity,
1481 three beeps/flashes indicate both apogee and main continuity,
1482 and one longer “brap” sound which is made by rapidly
1483 alternating between two tones indicates no continuity.  For a
1484 dual deploy flight, make sure you&#8217;re getting three beeps or
1485 flashes before launching!  For apogee-only or motor eject
1486 flights, do what makes sense.</p>
1487 </div>
1488 <div class="paragraph">
1489 <p>If idle mode is entered, you will hear an audible “di-dit” or
1490 see two short flashes (“I” for idle), and the flight state
1491 machine is disengaged, thus no ejection charges will fire.
1492 Idle mode is useful for configuring the altimeter, for
1493 extracting data from the on-board storage chip after
1494 flight, and for ground testing pyro charges.</p>
1495 </div>
1496 <div class="paragraph">
1497 <p>In “Idle” and “Pad” modes, once the mode indication
1498 beeps/flashes and continuity indication has been sent, if
1499 there is no space available to log the flight in on-board
1500 memory, the flight computer will emit a warbling tone (much
1501 slower than the “no continuity tone”)</p>
1502 </div>
1503 <div class="paragraph">
1504 <p>See <a href="#_understanding_beeps">Understanding Beeps</a> for a summary of all of
1505 the audio signals used.</p>
1506 </div>
1507 <div class="paragraph">
1508 <p>Once landed, the flight computer will signal that by emitting
1509 the “Landed” sound described above, after which it will beep
1510 out the apogee height (in meters). Each digit is represented
1511 by a sequence of short “dit” beeps, with a pause between
1512 digits. A zero digit is represented with one long “dah”
1513 beep. The flight computer will continue to report landed mode
1514 and beep out the maximum height until turned off.</p>
1515 </div>
1516 </div>
1517 <div class="sect2">
1518 <h3 id="_ground_testing">A.2. Ground Testing</h3>
1519 <div class="paragraph">
1520 <p>An important aspect of preparing a rocket using electronic deployment
1521 for flight is ground testing the recovery system.</p>
1522 </div>
1523 <div class="paragraph">
1524 <p>Just prep the rocket for flight, then power up the altimeter
1525 in “idle”
1526 mode.
1527 You can now command the altimeter to fire the apogee
1528 or main charges from a safe distance using your
1529 computer and the Fire Igniter tab to complete ejection testing.</p>
1530 </div>
1531 </div>
1532 <div class="sect2">
1533 <h3 id="_configurable_parameters">A.3. Configurable Parameters</h3>
1534 <div class="paragraph">
1535 <p>Configuring an Altus Metrum altimeter for flight is
1536 very simple.  Even on our baro-only TeleMini and
1537 EasyMini boards, the use of a Kalman filter means
1538 there is no need to set a “mach delay”.  All of the
1539 configurable parameters can be set using AltosUI. Read
1540 <a href="#_configure_altimeter">Configure Altimeter</a> for more information.</p>
1541 </div>
1542 </div>
1543 </div>
1544 </div>
1545 <div class="sect1">
1546 <h2 id="_handling_precautions">Appendix B: Handling Precautions</h2>
1547 <div class="sectionbody">
1548 <div class="paragraph">
1549 <p>All Altus Metrum products are sophisticated electronic devices.
1550 When handled gently and properly installed in an air-frame, they
1551 will deliver impressive results.  However, as with all electronic
1552 devices, there are some precautions you must take.</p>
1553 </div>
1554 <div class="admonitionblock warning">
1555 <table>
1556 <tr>
1557 <td class="icon">
1558 <div class="title">Warning</div>
1559 </td>
1560 <td class="content">
1561 The Lithium Polymer rechargeable batteries have an
1562 extraordinary power density.  This is great because we can fly with
1563 much less battery mass than if we used alkaline batteries or previous
1564 generation rechargeable batteries&#8230;&#8203; but if they are punctured
1565 or their leads are allowed to short, they can and will release their
1566 energy very rapidly!
1567 Thus we recommend that you take some care when handling our batteries
1568 and consider giving them some extra protection in your air-frame.  We
1569 often wrap them in suitable scraps of closed-cell packing foam before
1570 strapping them down, for example.
1571 </td>
1572 </tr>
1573 </table>
1574 </div>
1575 <div class="paragraph">
1576 <p>The barometric sensors used on all of our flight computers are
1577 sensitive to sunlight.  In normal mounting situations, the baro sensor
1578 and all of the other surface mount components
1579 are “down” towards whatever the underlying mounting surface is, so
1580 this is not normally a problem.  Please consider this when designing an
1581 installation in an air-frame with a see-through plastic payload bay.  It
1582 is particularly important to
1583 consider this with TeleMini v1.0, both because the baro sensor is on the
1584 “top” of the board, and because many model rockets with payload bays
1585 use clear plastic for the payload bay!  Replacing these with an opaque
1586 cardboard tube, painting them, or wrapping them with a layer of masking
1587 tape are all reasonable approaches to keep the sensor out of direct
1588 sunlight.</p>
1589 </div>
1590 <div class="paragraph">
1591 <p>The barometric sensor sampling port must be able to “breathe”,
1592 both by not being covered by foam or tape or other materials that might
1593 directly block the hole on the top of the sensor, and also by having a
1594 suitable static vent to outside air.</p>
1595 </div>
1596 <div class="paragraph">
1597 <p>As with all other rocketry electronics, Altus Metrum altimeters must
1598 be protected from exposure to corrosive motor exhaust and ejection
1599 charge gasses.</p>
1600 </div>
1601 </div>
1602 </div>
1603 <div class="sect1">
1604 <h2 id="_updating_device_firmware">Appendix C: Updating Device Firmware</h2>
1605 <div class="sectionbody">
1606 <div class="paragraph">
1607 <p>EasyMini is
1608 programmed directly over their USB connectors (self
1609 programming).</p>
1610 </div>
1611 <div class="paragraph">
1612 <p>TeleMini v3 can be updated directly over USB, but has no USB connector
1613 on the board.  Instead, the USB signals are present on a row of 6
1614 holes adjacent to the copyright assertion in the silk screen.  Thus,
1615 updating firmware on TeleMini v3 requires making up a special cable,
1616 after which you can treat it just like TeleMetrum or TeleMega.  Many
1617 USB cables seem to follow the color code of red is +5V, black is GND,
1618 green is USB +, and white is USB -.  On TeleMini v3, pin 3 which has
1619 a square copper pad is ground, pin 1 is USB -, and pin 2 is USB +.</p>
1620 </div>
1621 <div class="paragraph">
1622 <p>You may wish to begin by ensuring you have current firmware
1623 images.  These are distributed as part of the AltOS software
1624 bundle that also includes the AltosUI ground station program.
1625 Newer ground station versions typically work fine with older
1626 firmware versions, so you don&#8217;t need to update your devices
1627 just to try out new software features.  You can always
1628 download the most recent version from
1629 <a href="http://www.altusmetrum.org/AltOS/" class="bare">http://www.altusmetrum.org/AltOS/</a></p>
1630 </div>
1631 <div class="sect2">
1632 <h3 id="_updating_easymini_firmware">C.1. Updating EasyMini Firmware</h3>
1633 <div class="paragraph">
1634 <p>Self-programmable devices are reprogrammed by
1635 connecting them to your computer over USB.</p>
1636 </div>
1637 <div class="olist arabic">
1638 <ol class="arabic">
1639 <li>
1640 <p>Attach a battery if necessary and power switch to
1641 the target device. Power up the device.</p>
1642 </li>
1643 <li>
1644 <p>Using a Micro USB cable, connect the target device to your
1645 computer&#8217;s USB socket.  If the target is a TeleMini v3,
1646 make up and attach a special USB cable.</p>
1647 </li>
1648 <li>
1649 <p>Run AltosUI, and select 'Flash Image' from the File menu.</p>
1650 </li>
1651 <li>
1652 <p>Select the target device in the Device Selection dialog.</p>
1653 </li>
1654 <li>
1655 <p>Select the image you want to flash to the device,
1656 which should have a name in the form
1657 &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx,
1658 such as EasyMini-v1.0-1.6.0.ihx.</p>
1659 </li>
1660 <li>
1661 <p>Make sure the configuration parameters are
1662 reasonable looking. If the serial number and/or RF
1663 configuration values aren&#8217;t right, you&#8217;ll need to
1664 change them.</p>
1665 </li>
1666 <li>
1667 <p>Hit the 'OK' button and the software should proceed
1668 to flash the device with new firmware, showing a
1669 progress bar.</p>
1670 </li>
1671 <li>
1672 <p>Verify that the device is working by using the
1673 'Configure Altimeter' or 'Configure Groundstation'
1674 item to check over the configuration.</p>
1675 </li>
1676 </ol>
1677 </div>
1678 <div class="sect3">
1679 <h4 id="_recovering_from_self_flashing_failure">C.1.1. Recovering From Self-Flashing Failure</h4>
1680 <div class="paragraph">
1681 <p>If the firmware loading fails, it can leave the device
1682 unable to boot. Not to worry, you can force the device to
1683 start the boot loader instead, which will let you try to
1684 flash the device again.</p>
1685 </div>
1686 <div class="paragraph">
1687 <p>On each device, connecting two pins from one of the exposed
1688 connectors will force the boot loader to start, even if the
1689 regular operating system has been corrupted in some way.</p>
1690 </div>
1691 <div class="dlist">
1692 <dl>
1693 <dt class="hdlist1">EasyMini</dt>
1694 <dd>
1695 <p>Connect pin 6 and pin 1 of the debug connector, which
1696 is the six holes next to the beeper. Pin 1 can be
1697 identified by the square pad around it, and then the
1698 pins count sequentially across the board, making Pin 6
1699 the one on the other end of the row.</p>
1700 </dd>
1701 <dt class="hdlist1">TeleGPS v1</dt>
1702 <dd>
1703 <p>Connect pin 32 on the CPU to ground.  Pin 32 is the
1704 right-most pin on the bottom edge of the CPU when the
1705 board is oriented with the USB and battery connectors
1706 to the right.</p>
1707 </dd>
1708 <dt class="hdlist1">TeleGPS v2</dt>
1709 <dd>
1710 <p>Connect together pins 1 and 5 of the Debug connector.
1711 Pin 1 is the pin with the square pad around the hole.</p>
1712 </dd>
1713 </dl>
1714 </div>
1715 <div class="paragraph">
1716 <p>Once you&#8217;ve located the right pins:</p>
1717 </div>
1718 <div class="olist arabic">
1719 <ol class="arabic">
1720 <li>
1721 <p>Turn the altimeter power off.</p>
1722 </li>
1723 <li>
1724 <p>Connect a battery.</p>
1725 </li>
1726 <li>
1727 <p>Connect the indicated terminals together with a
1728 short piece of wire. Take care not to accidentally
1729 connect anything else.</p>
1730 </li>
1731 <li>
1732 <p>Connect USB</p>
1733 </li>
1734 <li>
1735 <p>Turn the board power on.</p>
1736 </li>
1737 </ol>
1738 </div>
1739 <div class="paragraph">
1740 <p>The board should now be visible over USB as
1741 'AltosFlash' and be ready to receive firmware.  Once
1742 the board has been powered up, you can remove the
1743 piece of wire.</p>
1744 </div>
1745 </div>
1746 </div>
1747 </div>
1748 </div>
1749 <div class="sect1">
1750 <h2 id="_flight_data_recording">Appendix D: Flight Data Recording</h2>
1751 <div class="sectionbody">
1752 <div class="paragraph">
1753 <p>Each flight computer logs data at 100 samples per second
1754 during ascent and 10 samples per second during
1755 descent.
1756 Data are logged to
1757 an on-board flash memory part, which can be partitioned into
1758 several equal-sized blocks, one for each flight.</p>
1759 </div>
1760 <table class="tableblock frame-all grid-all stretch">
1761 <caption class="title">Table 4. Data Storage on Altus Metrum altimeters</caption>
1762 <colgroup>
1763 <col style="width: 25%;">
1764 <col style="width: 25%;">
1765 <col style="width: 25%;">
1766 <col style="width: 25%;">
1767 </colgroup>
1768 <thead>
1769 <tr>
1770 <th class="tableblock halign-left valign-top">Device</th>
1771 <th class="tableblock halign-left valign-top">Bytes per Sample</th>
1772 <th class="tableblock halign-left valign-top">Total Storage</th>
1773 <th class="tableblock halign-left valign-top">Minutes at Full Rate</th>
1774 </tr>
1775 </thead>
1776 <tbody>
1777 <tr>
1778 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
1779 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
1780 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
1781 <td class="tableblock halign-left valign-top"><p class="tableblock">10</p></td>
1782 </tr>
1783 </tbody>
1784 </table>
1785 <div class="paragraph">
1786 <p>The on-board flash is partitioned into separate flight logs,
1787 each of a fixed maximum size. Increase the maximum size of
1788 each log and you reduce the number of flights that can be
1789 stored. Decrease the size and you can store more flights.</p>
1790 </div>
1791 <div class="paragraph">
1792 <p>Configuration data is also stored in the flash memory on
1793 EasyMini.
1794 This consumes 64kB
1795 of flash space.  This configuration space is not available
1796 for storing flight log data.</p>
1797 </div>
1798 <div class="paragraph">
1799 <p>To compute the amount of space needed for a single flight, you
1800 can multiply the expected ascent time (in seconds) by 100
1801 times bytes-per-sample, multiply the expected descent time (in
1802 seconds) by 10 times the bytes per sample and add the two
1803 together. That will slightly under-estimate the storage (in
1804 bytes) needed for the flight.</p>
1805 </div>
1806 <div class="paragraph">
1807 <p>The default size allows for several flights on each flight
1808 computer.
1809 You can adjust the size.</p>
1810 </div>
1811 <div class="paragraph">
1812 <p>Altus Metrum flight computers will not overwrite existing
1813 flight data, so be sure to download flight data and erase it
1814 from the flight computer before it fills up. The flight
1815 computer will still successfully control the flight even if it
1816 cannot log data, so the only thing you will lose is the data.</p>
1817 </div>
1818 </div>
1819 </div>
1820 <div class="sect1">
1821 <h2 id="_altus_metrum_hardware_specifications">Appendix E: Altus Metrum Hardware Specifications</h2>
1822 <div class="sectionbody">
1823 <div class="paragraph">
1824 <p>Here&#8217;s the full set of Altus Metrum products, both in
1825 production and retired.</p>
1826 </div>
1827 <table class="tableblock frame-all grid-all stretch">
1828 <caption class="title">Table 5. Altus Metrum Flight Computer Electronics</caption>
1829 <colgroup>
1830 <col style="width: 12.5%;">
1831 <col style="width: 12.5%;">
1832 <col style="width: 12.5%;">
1833 <col style="width: 12.5%;">
1834 <col style="width: 12.5%;">
1835 <col style="width: 12.5%;">
1836 <col style="width: 12.5%;">
1837 <col style="width: 12.5%;">
1838 </colgroup>
1839 <thead>
1840 <tr>
1841 <th class="tableblock halign-left valign-top">Device</th>
1842 <th class="tableblock halign-left valign-top">Barometer</th>
1843 <th class="tableblock halign-left valign-top">Z-axis accel</th>
1844 <th class="tableblock halign-left valign-top">GPS</th>
1845 <th class="tableblock halign-left valign-top">3D sensors</th>
1846 <th class="tableblock halign-left valign-top">Storage</th>
1847 <th class="tableblock halign-left valign-top">RF Output</th>
1848 <th class="tableblock halign-left valign-top">Battery</th>
1849 </tr>
1850 </thead>
1851 <tbody>
1852 <tr>
1853 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini v1.0-v3.0</p></td>
1854 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
1855 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
1856 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
1857 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
1858 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
1859 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
1860 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
1861 </tr>
1862 </tbody>
1863 </table>
1864 <div style="page-break-after: always;"></div>
1865 <table class="tableblock frame-all grid-all stretch">
1866 <caption class="title">Table 6. Altus Metrum Flight Computer Mechanical Components</caption>
1867 <colgroup>
1868 <col style="width: 16.6666%;">
1869 <col style="width: 16.6666%;">
1870 <col style="width: 16.6666%;">
1871 <col style="width: 16.6666%;">
1872 <col style="width: 16.6666%;">
1873 <col style="width: 16.667%;">
1874 </colgroup>
1875 <thead>
1876 <tr>
1877 <th class="tableblock halign-left valign-top">Device</th>
1878 <th class="tableblock halign-left valign-top">Connectors</th>
1879 <th class="tableblock halign-left valign-top">Screw Terminals</th>
1880 <th class="tableblock halign-left valign-top">Width</th>
1881 <th class="tableblock halign-left valign-top">Length</th>
1882 <th class="tableblock halign-left valign-top">Tube Size</th>
1883 </tr>
1884 </thead>
1885 <tbody>
1886 <tr>
1887 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
1888 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
1889 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery</p></td>
1890 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
1891 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
1892 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
1893 </tr>
1894 </tbody>
1895 </table>
1896 </div>
1897 </div>
1898 <div class="sect1">
1899 <h2 id="_release_notes">Appendix F: Release Notes</h2>
1900 <div class="sectionbody">
1901 <div class="sect2">
1902 <h3 id="_release_notes_for_version_1_9_18">F.1. Release Notes for Version 1.9.18</h3>
1903 <div class="paragraph">
1904 <p>Version 1.9.18</p>
1905 </div>
1906 <div class="sect3">
1907 <h4 id="_altos">F.1.1. AltOS</h4>
1908 <div class="ulist">
1909 <ul>
1910 <li>
1911 <p>Add support for EasyTimer V2. The new version of this
1912 product has on-board storage to log data during flight.</p>
1913 </li>
1914 </ul>
1915 </div>
1916 </div>
1917 <div class="sect3">
1918 <h4 id="_altosui_telegps_application">F.1.2. AltosUI &amp; TeleGPS application</h4>
1919 <div class="ulist">
1920 <ul>
1921 <li>
1922 <p>Add support for EasyTimer V2. This includes support for
1923 analyizing flight data from the on-board logs.</p>
1924 </li>
1925 <li>
1926 <p>Allow on-board beepers to be disabled by setting the
1927 frequency to 0.</p>
1928 </li>
1929 </ul>
1930 </div>
1931 <div style="page-break-after: always;"></div>
1932 </div>
1933 </div>
1934 <div class="sect2">
1935 <h3 id="_release_notes_for_version_1_9_17">F.2. Release Notes for Version 1.9.17</h3>
1936 <div class="paragraph">
1937 <p>Version 1.9.17</p>
1938 </div>
1939 <div class="sect3">
1940 <h4 id="_altos_2">F.2.1. AltOS</h4>
1941 <div class="ulist">
1942 <ul>
1943 <li>
1944 <p>Fix TeleMini v3 Monitor Idle support</p>
1945 </li>
1946 <li>
1947 <p>Support TeleMetrum v4.0 with uBlox-10 GPS module</p>
1948 </li>
1949 <li>
1950 <p>Improve igniter reporting via the beeper.</p>
1951 </li>
1952 </ul>
1953 </div>
1954 </div>
1955 <div class="sect3">
1956 <h4 id="_altosui_telegps_application_2">F.2.2. AltosUI &amp; TeleGPS application</h4>
1957 <div class="ulist">
1958 <ul>
1959 <li>
1960 <p>Add support for EasyMini v3 Monitor Idle</p>
1961 </li>
1962 </ul>
1963 </div>
1964 <div style="page-break-after: always;"></div>
1965 </div>
1966 </div>
1967 <div class="sect2">
1968 <h3 id="_release_notes_for_version_1_9_16">F.3. Release Notes for Version 1.9.16</h3>
1969 <div class="paragraph">
1970 <p>Version 1.9.16</p>
1971 </div>
1972 <div class="sect3">
1973 <h4 id="_altos_3">F.3.1. AltOS</h4>
1974 <div class="ulist">
1975 <ul>
1976 <li>
1977 <p>Add TeleGPS v3.0 support</p>
1978 </li>
1979 </ul>
1980 </div>
1981 </div>
1982 <div class="sect3">
1983 <h4 id="_altosui_telegps_application_3">F.3.2. AltosUI &amp; TeleGPS application</h4>
1984 <div class="ulist">
1985 <ul>
1986 <li>
1987 <p>Add TeleGPS v3.0 support</p>
1988 </li>
1989 </ul>
1990 </div>
1991 <div style="page-break-after: always;"></div>
1992 </div>
1993 </div>
1994 <div class="sect2">
1995 <h3 id="_release_notes_for_version_1_9_15">F.4. Release Notes for Version 1.9.15</h3>
1996 <div class="paragraph">
1997 <p>Version 1.9.15</p>
1998 </div>
1999 <div class="sect3">
2000 <h4 id="_altos_4">F.4.1. AltOS</h4>
2001 <div class="ulist">
2002 <ul>
2003 <li>
2004 <p>Add TeleMega v6.0 support</p>
2005 </li>
2006 <li>
2007 <p>Add TeleMetrum v4.0 support</p>
2008 </li>
2009 <li>
2010 <p>Fix sign of IMU values for TeleMega v5 boards in the
2011 'across' axis. This affects IMU acceleration and gyro reports
2012 for that axis, but has no effect on in-flight operation of
2013 the tilt computation.</p>
2014 </li>
2015 </ul>
2016 </div>
2017 <div style="page-break-after: always;"></div>
2018 </div>
2019 </div>
2020 <div class="sect2">
2021 <h3 id="_release_notes_for_version_1_9_14">F.5. Release Notes for Version 1.9.14</h3>
2022 <div class="paragraph">
2023 <p>Version 1.9.14</p>
2024 </div>
2025 <div class="sect3">
2026 <h4 id="_altos_5">F.5.1. AltOS</h4>
2027 <div class="ulist">
2028 <ul>
2029 <li>
2030 <p>Fix 1.9.13 regression in TeleLCO startup sequence that
2031 detects available TeleFire units.</p>
2032 </li>
2033 </ul>
2034 </div>
2035 <div style="page-break-after: always;"></div>
2036 </div>
2037 </div>
2038 <div class="sect2">
2039 <h3 id="_release_notes_for_version_1_9_13">F.6. Release Notes for Version 1.9.13</h3>
2040 <div class="paragraph">
2041 <p>Version 1.9.13</p>
2042 </div>
2043 <div class="sect3">
2044 <h4 id="_altos_6">F.6.1. AltOS</h4>
2045 <div class="ulist">
2046 <ul>
2047 <li>
2048 <p>Add option to beep max height in feet after landing</p>
2049 </li>
2050 <li>
2051 <p>Fix APRS reports to be sent at the correct time and spacing.</p>
2052 </li>
2053 <li>
2054 <p>Fix possible barometric sensor communication failure when
2055 the CPU is busy talking to the radio at the same time. This
2056 would cause loss of telemetry and failure to track the state
2057 of the rocket during flight. This was aggrevated by the APRS
2058 reports getting sent more often than they should.</p>
2059 </li>
2060 <li>
2061 <p>Change EasyMotor v3 code to base logging on motor pressure
2062 rather than the accelerometer. This allows use of EasyMotor
2063 v3 in a static test stand.</p>
2064 </li>
2065 </ul>
2066 </div>
2067 </div>
2068 <div class="sect3">
2069 <h4 id="_altosui_2">F.6.2. AltosUI</h4>
2070 <div class="ulist">
2071 <ul>
2072 <li>
2073 <p>Add support for configuring the units used to report height
2074 after landing on the beeper.</p>
2075 </li>
2076 </ul>
2077 </div>
2078 <div style="page-break-after: always;"></div>
2079 </div>
2080 </div>
2081 <div class="sect2">
2082 <h3 id="_release_notes_for_version_1_9_12">F.7. Release Notes for Version 1.9.12</h3>
2083 <div class="paragraph">
2084 <p>Version 1.9.12</p>
2085 </div>
2086 <div class="sect3">
2087 <h4 id="_altos_7">F.7.1. AltOS</h4>
2088 <div class="ulist">
2089 <ul>
2090 <li>
2091 <p>Add EasyMini v3.0 and EasyMotor v3.0 support</p>
2092 </li>
2093 <li>
2094 <p>Fix TeleMetrum v2.0 configuration. Saving config would
2095 crash the board.</p>
2096 </li>
2097 </ul>
2098 </div>
2099 </div>
2100 <div class="sect3">
2101 <h4 id="_altosui_3">F.7.2. AltosUI</h4>
2102 <div class="ulist">
2103 <ul>
2104 <li>
2105 <p>Add EasyMotor log parsing and graphing.</p>
2106 </li>
2107 </ul>
2108 </div>
2109 <div style="page-break-after: always;"></div>
2110 </div>
2111 </div>
2112 <div class="sect2">
2113 <h3 id="_release_notes_for_version_1_9_11">F.8. Release Notes for Version 1.9.11</h3>
2114 <div class="paragraph">
2115 <p>Version 1.9.11</p>
2116 </div>
2117 <div class="sect3">
2118 <h4 id="_altos_8">F.8.1. AltOS</h4>
2119 <div class="ulist">
2120 <ul>
2121 <li>
2122 <p>Make Apogee Delay work again.</p>
2123 </li>
2124 <li>
2125 <p>Allow TX power to be limited to 10mW for compliance with
2126 some uses under UK regulations.</p>
2127 </li>
2128 <li>
2129 <p>Fix numerous minor issues with 16- vs 32- bit time values.</p>
2130 </li>
2131 </ul>
2132 </div>
2133 </div>
2134 <div class="sect3">
2135 <h4 id="_altosui_4">F.8.2. AltosUI</h4>
2136 <div class="ulist">
2137 <ul>
2138 <li>
2139 <p>Support M1-based Macs, follow AdoptOpenJDK to Adoptium</p>
2140 </li>
2141 </ul>
2142 </div>
2143 </div>
2144 <div class="sect3">
2145 <h4 id="_altosdroid">F.8.3. AltosDroid</h4>
2146 <div class="ulist">
2147 <ul>
2148 <li>
2149 <p>Handle Bluetooth permissions reliably.</p>
2150 </li>
2151 <li>
2152 <p>Fix some screen rotation bugs.</p>
2153 </li>
2154 </ul>
2155 </div>
2156 <div style="page-break-after: always;"></div>
2157 </div>
2158 </div>
2159 <div class="sect2">
2160 <h3 id="_release_notes_for_version_1_9_10">F.9. Release Notes for Version 1.9.10</h3>
2161 <div class="paragraph">
2162 <p>Version 1.9.10</p>
2163 </div>
2164 <div class="paragraph">
2165 <p>This release contains a couple of bug fixes for ground station software.</p>
2166 </div>
2167 <div class="sect3">
2168 <h4 id="_altosui_5">F.9.1. AltosUI</h4>
2169 <div class="ulist">
2170 <ul>
2171 <li>
2172 <p>Rework the windows DLL build to make AltosUI run on more
2173 instances of Windows 10.</p>
2174 </li>
2175 </ul>
2176 </div>
2177 </div>
2178 <div class="sect3">
2179 <h4 id="_altosdroid_2">F.9.2. AltosDroid</h4>
2180 <div class="ulist">
2181 <ul>
2182 <li>
2183 <p>Adapt to Android security changes which prevent AltosDroid
2184 from storing flights in
2185 /storage/emulated/0/AltusMetrum. Now, flights are stored in
2186 /storage/emulated/0/media/org.altusmetrum.AltosDroid/AltusMetrum
2187 instead.  Also, AltosDroid will display an error message if
2188 flight data cannot be logged.</p>
2189 </li>
2190 </ul>
2191 </div>
2192 <div style="page-break-after: always;"></div>
2193 </div>
2194 </div>
2195 <div class="sect2">
2196 <h3 id="_release_notes_for_version_1_9_9">F.10. Release Notes for Version 1.9.9</h3>
2197 <div class="paragraph">
2198 <p>Version 1.9.9</p>
2199 </div>
2200 <div class="paragraph">
2201 <p>This release contains a critical bug fix for a problem
2202 introduced in version 1.9.8 for TeleMega and EasyMega
2203 boards. This problem occurs when using the stored
2204 configuration from 1.9.7 or earlier.</p>
2205 </div>
2206 <div class="paragraph">
2207 <p>If you are running 1.9.8 or are upgrading from 1.9.8 on any
2208 version of TeleMega or EasyMega, you must reconfigure all pyro
2209 channels, recalibrate accelerometers, reset the APRS interval,
2210 adjust the beep tone and reset the pyro time.</p>
2211 </div>
2212 <div class="sect3">
2213 <h4 id="_altos_9">F.10.1. AltOS</h4>
2214 <div class="ulist">
2215 <ul>
2216 <li>
2217 <p>Fix EasyMega and TeleMega upgrade process from 1.9.7 or
2218 earlier.  1.9.8 introduced larger delay values, which
2219 required modifying the configuration in-place, and the 1.9.8
2220 version had a flaw which broke the pyro channel config and
2221 all of the config values beyond that in memory, including
2222 APRS interval, IMU accel calibation, beep tone and pyro
2223 time.</p>
2224 </li>
2225 <li>
2226 <p>Fix TeleMega v5.0 mag sensor driver. This driver was quite
2227 broken due to developing it in the presence of the magnetic
2228 beeper on the board. Because of that beeper, the values this
2229 sensor records are not accurate. Fortunately, they are not
2230 used for controlling the flight.</p>
2231 </li>
2232 </ul>
2233 </div>
2234 </div>
2235 <div class="sect3">
2236 <h4 id="_altosui_6">F.10.2. AltosUI</h4>
2237 <div class="ulist">
2238 <ul>
2239 <li>
2240 <p>Parse TeleMega v5.0 log files. A missing check in the code
2241 meant that the TeleMega v5.0 log files would cause an error
2242 when attempting to load them. Logs saved with AltosUI
2243 1.9.8 were not affected, only the presentation of the data
2244 was broken.</p>
2245 </li>
2246 </ul>
2247 </div>
2248 <div style="page-break-after: always;"></div>
2249 </div>
2250 </div>
2251 <div class="sect2">
2252 <h3 id="_release_notes_for_version_1_9_8">F.11. Release Notes for Version 1.9.8</h3>
2253 <div class="paragraph">
2254 <p>Version 1.9.8</p>
2255 </div>
2256 <div class="sect3">
2257 <h4 id="_altos_10">F.11.1. AltOS</h4>
2258 <div class="ulist">
2259 <ul>
2260 <li>
2261 <p>Add support for TeleMega v5.0</p>
2262 </li>
2263 <li>
2264 <p>Extend extra pyro channel times to support delay &gt; 327 seconds</p>
2265 </li>
2266 </ul>
2267 </div>
2268 </div>
2269 <div class="sect3">
2270 <h4 id="_altosui_7">F.11.2. AltosUI</h4>
2271 <div class="ulist">
2272 <ul>
2273 <li>
2274 <p>Support ARM devices in Linux binary release</p>
2275 </li>
2276 <li>
2277 <p>Add support for TeleMega v5.0</p>
2278 </li>
2279 </ul>
2280 </div>
2281 </div>
2282 <div class="sect3">
2283 <h4 id="_altosdroid_3">F.11.3. AltosDroid</h4>
2284 <div class="ulist">
2285 <ul>
2286 <li>
2287 <p>Show tilt angle in pad and flight tabs</p>
2288 </li>
2289 <li>
2290 <p>Show altitude as well as height (useful for TeleGPS)</p>
2291 </li>
2292 <li>
2293 <p>Support devices without GPS receivers</p>
2294 </li>
2295 </ul>
2296 </div>
2297 </div>
2298 <div class="sect3">
2299 <h4 id="_micropeak_gui">F.11.4. MicroPeak GUI</h4>
2300 <div class="ulist">
2301 <ul>
2302 <li>
2303 <p>Show error dialog if device open fails</p>
2304 </li>
2305 </ul>
2306 </div>
2307 <div style="page-break-after: always;"></div>
2308 </div>
2309 </div>
2310 <div class="sect2">
2311 <h3 id="_release_notes_for_version_1_9_7">F.12. Release Notes for Version 1.9.7</h3>
2312 <div class="paragraph">
2313 <p>Version 1.9.7</p>
2314 </div>
2315 <div class="sect3">
2316 <h4 id="_altos_11">F.12.1. AltOS</h4>
2317 <div class="ulist">
2318 <ul>
2319 <li>
2320 <p>Fix TeleGPS logging so that new data are appended to an existing log correctly</p>
2321 </li>
2322 </ul>
2323 </div>
2324 </div>
2325 <div class="sect3">
2326 <h4 id="_altosui_8">F.12.2. AltosUI</h4>
2327 <div class="ulist">
2328 <ul>
2329 <li>
2330 <p>Support Mac OS X 11 (Big Sur)</p>
2331 </li>
2332 <li>
2333 <p>Support Monitor Idle on Easy Timer</p>
2334 </li>
2335 <li>
2336 <p>Fix TeleMega v4.0 and TeleMetrum v3.0 configuration in Antenna Down mode</p>
2337 </li>
2338 <li>
2339 <p>Show launch sites in Load Maps view</p>
2340 </li>
2341 <li>
2342 <p>Add IMU header names to CSV files</p>
2343 </li>
2344 <li>
2345 <p>Clean up TeleGPS log corruption due to firmware bugs during firmware update</p>
2346 </li>
2347 </ul>
2348 </div>
2349 </div>
2350 <div class="sect3">
2351 <h4 id="_altosdroid_4">F.12.3. AltosDroid</h4>
2352 <div class="ulist">
2353 <ul>
2354 <li>
2355 <p>Support older devices back to Android version 5.1</p>
2356 </li>
2357 <li>
2358 <p>Fix a number of issues that could result in app crashes</p>
2359 </li>
2360 </ul>
2361 </div>
2362 <div style="page-break-after: always;"></div>
2363 </div>
2364 </div>
2365 <div class="sect2">
2366 <h3 id="_release_notes_for_version_1_9_6">F.13. Release Notes for Version 1.9.6</h3>
2367 <div class="paragraph">
2368 <p>Version 1.9.6</p>
2369 </div>
2370 <div class="sect3">
2371 <h4 id="_altos_12">F.13.1. AltOS</h4>
2372 <div class="ulist">
2373 <ul>
2374 <li>
2375 <p>Fix EasyTimer bug where it might mis-detect boost (either
2376 detect it early or not at all) due to small errors in
2377 accelerometer calibration leading to large accumulated error
2378 in speed.</p>
2379 </li>
2380 <li>
2381 <p>Adjust self-test of new 9-axis IMU (BMX-160) so that it
2382 doesn&#8217;t think the part has a failure when tested sitting
2383 horizontally.</p>
2384 </li>
2385 </ul>
2386 </div>
2387 <div style="page-break-after: always;"></div>
2388 </div>
2389 </div>
2390 <div class="sect2">
2391 <h3 id="_release_notes_for_version_1_9_5">F.14. Release Notes for Version 1.9.5</h3>
2392 <div class="paragraph">
2393 <p>Version 1.9.5</p>
2394 </div>
2395 <div class="sect3">
2396 <h4 id="_altos_13">F.14.1. AltOS</h4>
2397 <div class="ulist">
2398 <ul>
2399 <li>
2400 <p>Add Booster mode for all dual-deploy altimeters. Select
2401 "Separation &amp; Apogee" mode in AltosUI to fire the 'main'
2402 channel at first motor burnout and the 'apogee' channel at
2403 apogee.</p>
2404 </li>
2405 <li>
2406 <p>Improve reliability of stm32l firmware under heavy
2407 load. This was found using Monitor Idle on TeleMega with all
2408 flash slots full of data which would occasionally lock up.</p>
2409 </li>
2410 <li>
2411 <p>Fix orientation label in AltosUI for devices with
2412 radios. This makes the orientation say 'Antenna up' and
2413 'Antenna Down' for TeleMetrum and TeleMega again.</p>
2414 </li>
2415 <li>
2416 <p>Fix log data for pyro channels which were inhibited (often
2417 because of a tilt limit). They used to report 'fired' as
2418 soon as they were inhibited, which was misleading. Now they
2419 never report as having been fired.</p>
2420 </li>
2421 <li>
2422 <p>Allow Igniter Test to fire each igniter more than once.</p>
2423 </li>
2424 </ul>
2425 </div>
2426 </div>
2427 <div class="sect3">
2428 <h4 id="_altosui_9">F.14.2. AltosUI</h4>
2429 <div class="ulist">
2430 <ul>
2431 <li>
2432 <p>Improve performance of Monitor Idle mode by sending less data for each
2433 update.</p>
2434 </li>
2435 <li>
2436 <p>Improve Mac OS X install scripts so that they work on
2437 Catalina. This involves sending the user to get Java from
2438 the AdoptOpenJDK project which provides a version that works
2439 with Java applications.</p>
2440 </li>
2441 <li>
2442 <p>Make larger dialogs scrollable for use on smaller screens.</p>
2443 </li>
2444 <li>
2445 <p>Fix troubles re-flashing EasyMega boards running older
2446 firmware.</p>
2447 </li>
2448 <li>
2449 <p>Add TeleMetrum v3.0 firmware to the Windows
2450 AltosUI packages.</p>
2451 </li>
2452 </ul>
2453 </div>
2454 <div style="page-break-after: always;"></div>
2455 </div>
2456 </div>
2457 <div class="sect2">
2458 <h3 id="_release_notes_for_version_1_9_4">F.15. Release Notes for Version 1.9.4</h3>
2459 <div class="paragraph">
2460 <p>Version 1.9.4</p>
2461 </div>
2462 <div class="sect3">
2463 <h4 id="_altos_14">F.15.1. AltOS</h4>
2464 <div class="ulist">
2465 <ul>
2466 <li>
2467 <p>Fixed firmware for TeleDongle v3.0 and TeleBT v4.0. Version 1.9.3 bricked those
2468 devices requiring them to be opened up to get them working again.</p>
2469 </li>
2470 <li>
2471 <p>Fixed firmware for EasyMini v1.0. Changes in the storage
2472 code caused it to use significantly more RAM which made the
2473 interrupt stack smash into other data structures and cause
2474 the device to panic at startup time.</p>
2475 </li>
2476 </ul>
2477 </div>
2478 </div>
2479 <div class="sect3">
2480 <h4 id="_altosui_10">F.15.2. AltosUI</h4>
2481 <div class="ulist">
2482 <ul>
2483 <li>
2484 <p>Add TeleMetrum v3.0 firmware to the Linux and Mac OSX
2485 AltosUI packages.</p>
2486 </li>
2487 </ul>
2488 </div>
2489 <div style="page-break-after: always;"></div>
2490 </div>
2491 </div>
2492 <div class="sect2">
2493 <h3 id="_release_notes_for_version_1_9_3">F.16. Release Notes for Version 1.9.3</h3>
2494 <div class="paragraph">
2495 <p>Version 1.9.3</p>
2496 </div>
2497 <div class="sect3">
2498 <h4 id="_altos_15">F.16.1. AltOS</h4>
2499 <div class="ulist">
2500 <ul>
2501 <li>
2502 <p>Add APRS offset. Allows multiple APRS transmitters to coordinate when
2503 transmission occurs to allow them to share a frequency.</p>
2504 </li>
2505 <li>
2506 <p>Fix max log size. Flight computer storage is erased in 64kB chunks. Adjust max
2507 log size to be a multiple of this size.</p>
2508 </li>
2509 <li>
2510 <p>Check flight erasing more carefully. Handle interrupting erasing in the
2511 middle.</p>
2512 </li>
2513 <li>
2514 <p>Add EasyTimer support.</p>
2515 </li>
2516 </ul>
2517 </div>
2518 </div>
2519 <div class="sect3">
2520 <h4 id="_altosui_telegps_micropeak">F.16.2. AltosUI, TeleGPS, MicroPeak</h4>
2521 <div class="ulist">
2522 <ul>
2523 <li>
2524 <p>Add configuration support for APRS offset.</p>
2525 </li>
2526 <li>
2527 <p>Adjust flight log sizes to be a multiple of the flight
2528 computer erase block size.</p>
2529 </li>
2530 <li>
2531 <p>Report barometric pad altitude in Pad tab for TeleMini.</p>
2532 </li>
2533 </ul>
2534 </div>
2535 <div style="page-break-after: always;"></div>
2536 </div>
2537 </div>
2538 <div class="sect2">
2539 <h3 id="_release_notes_for_version_1_9_1">F.17. Release Notes for Version 1.9.1</h3>
2540 <div class="paragraph">
2541 <p>Version 1.9.1</p>
2542 </div>
2543 <div class="sect3">
2544 <h4 id="_altos_16">F.17.1. AltOS</h4>
2545 <div class="ulist">
2546 <ul>
2547 <li>
2548 <p>Add support for TeleMetrum v3.0</p>
2549 </li>
2550 <li>
2551 <p>Fix accel cal value when changing EasyMega v2.0 pad orientation</p>
2552 </li>
2553 <li>
2554 <p>Correct EasyMega v2.0 magnetometer data axes</p>
2555 </li>
2556 <li>
2557 <p>Fix EasyMega v2.0 idle monitor display of IMU data</p>
2558 </li>
2559 <li>
2560 <p>Report all sensor failures at power-up time.</p>
2561 </li>
2562 </ul>
2563 </div>
2564 </div>
2565 <div class="sect3">
2566 <h4 id="_altosui_telegps_micropeak_2">F.17.2. AltosUI, TeleGPS, MicroPeak</h4>
2567 <div class="ulist">
2568 <ul>
2569 <li>
2570 <p>Display error message when attempting to graph unknown format file.</p>
2571 </li>
2572 <li>
2573 <p>Make it possible to disable APRS once enabled.</p>
2574 </li>
2575 <li>
2576 <p>Display some data for point near cursor in map tab.</p>
2577 </li>
2578 <li>
2579 <p>Support upgrading devices from pre-1.8 firmware</p>
2580 </li>
2581 <li>
2582 <p>Wait for Windows to prepare new devices during firmware
2583 upgrade. This should avoid the “COMxx: open failed” message.</p>
2584 </li>
2585 </ul>
2586 </div>
2587 <div style="page-break-after: always;"></div>
2588 </div>
2589 </div>
2590 <div class="sect2">
2591 <h3 id="_release_notes_for_version_1_9">F.18. Release Notes for Version 1.9</h3>
2592 <div class="paragraph">
2593 <p>Version 1.9</p>
2594 </div>
2595 <div class="sect3">
2596 <h4 id="_altos_17">F.18.1. AltOS</h4>
2597 <div class="ulist">
2598 <ul>
2599 <li>
2600 <p>Add support for EasyMega v2.0</p>
2601 </li>
2602 <li>
2603 <p>Replace C library for ARM devices</p>
2604 </li>
2605 <li>
2606 <p>Remove support for 8051-based devices and SDCC compiler</p>
2607 </li>
2608 </ul>
2609 </div>
2610 </div>
2611 <div class="sect3">
2612 <h4 id="_altosui_telegps_micropeak_3">F.18.2. AltosUI, TeleGPS, MicroPeak</h4>
2613 <div class="ulist">
2614 <ul>
2615 <li>
2616 <p>Select ROM images based on product name when reflashing</p>
2617 </li>
2618 <li>
2619 <p>Fix TeleGPS v2 battery voltage display</p>
2620 </li>
2621 </ul>
2622 </div>
2623 <div style="page-break-after: always;"></div>
2624 </div>
2625 </div>
2626 <div class="sect2">
2627 <h3 id="_release_notes_for_version_1_8_7">F.19. Release Notes for Version 1.8.7</h3>
2628 <div class="paragraph">
2629 <p>Version 1.8.7</p>
2630 </div>
2631 <div class="sect3">
2632 <h4 id="_altos_18">F.19.1. AltOS</h4>
2633 <div class="ulist">
2634 <ul>
2635 <li>
2636 <p>Include TeleMega v3.0 firmware</p>
2637 </li>
2638 </ul>
2639 </div>
2640 </div>
2641 <div class="sect3">
2642 <h4 id="_altosui_telegps_micropeak_4">F.19.2. AltosUI, TeleGPS, MicroPeak</h4>
2643 <div class="ulist">
2644 <ul>
2645 <li>
2646 <p>Poll for new devices while Device dialog is displayed</p>
2647 </li>
2648 <li>
2649 <p>Wait for device to re-appear when flashing new firmware</p>
2650 </li>
2651 <li>
2652 <p>Fetch correct TeleBT v4.0 RF calibration values from web
2653 site when reflashing.</p>
2654 </li>
2655 <li>
2656 <p>Change gyro headings in .csv files from x/y/z to
2657 roll/pitch/yaw</p>
2658 </li>
2659 <li>
2660 <p>Add documentation about Packet Link mode</p>
2661 </li>
2662 <li>
2663 <p>Add documentation about forcing TeleMini RF parameters to
2664 known values.</p>
2665 </li>
2666 <li>
2667 <p>Create a proxy server for Google Maps to re-enable map
2668 images</p>
2669 </li>
2670 <li>
2671 <p>Fix Java version info in all distributed jar files so that
2672 applications will run with standard Mac OS X Java.</p>
2673 </li>
2674 <li>
2675 <p>Replace JavaApplicationStub for Mac OS X so that
2676 applications will run with Oracle Java.</p>
2677 </li>
2678 </ul>
2679 </div>
2680 <div style="page-break-after: always;"></div>
2681 </div>
2682 </div>
2683 <div class="sect2">
2684 <h3 id="_release_notes_for_version_1_8_6">F.20. Release Notes for Version 1.8.6</h3>
2685 <div class="paragraph">
2686 <p>Version 1.8.6</p>
2687 </div>
2688 <div class="sect3">
2689 <h4 id="_altos_19">F.20.1. AltOS</h4>
2690 <div class="ulist">
2691 <ul>
2692 <li>
2693 <p>Use maximum of 64 previous tilt values in pyro tilt tests</p>
2694 </li>
2695 <li>
2696 <p>Eliminate 100m height requirement for coast detection</p>
2697 </li>
2698 <li>
2699 <p>Change After Motor pyro check to be &gt;= instead of ==</p>
2700 </li>
2701 <li>
2702 <p>Change Time since Boost to be Time since launch.</p>
2703 </li>
2704 </ul>
2705 </div>
2706 </div>
2707 <div class="sect3">
2708 <h4 id="_altosui_telegps">F.20.2. AltosUI, TeleGPS</h4>
2709 <div class="ulist">
2710 <ul>
2711 <li>
2712 <p>Clarify pyro test phrasing</p>
2713 </li>
2714 <li>
2715 <p>Remove ascending/descending from pyro config UI</p>
2716 </li>
2717 <li>
2718 <p>Fix accel calibration in Antenna Down mode</p>
2719 </li>
2720 <li>
2721 <p>Add mag sensor reporting for TeleMega v3 idle monitoring.</p>
2722 </li>
2723 <li>
2724 <p>Fix radio parameter saving at 2400 bps telmetry rate.</p>
2725 </li>
2726 </ul>
2727 </div>
2728 </div>
2729 <div class="sect3">
2730 <h4 id="_micropeak">F.20.3. MicroPeak</h4>
2731 <div class="ulist">
2732 <ul>
2733 <li>
2734 <p>Report altimeter-recorded maximum height value</p>
2735 </li>
2736 </ul>
2737 </div>
2738 <div style="page-break-after: always;"></div>
2739 </div>
2740 </div>
2741 <div class="sect2">
2742 <h3 id="_release_notes_for_version_1_8_5">F.21. Release Notes for Version 1.8.5</h3>
2743 <div class="paragraph">
2744 <p>Version 1.8.5 includes fixes to the ground software support
2745 for TeleBT v4, along with a few other minor updates.</p>
2746 </div>
2747 <div class="sect3">
2748 <h4 id="_altos_20">F.21.1. AltOS</h4>
2749 <div class="ulist">
2750 <ul>
2751 <li>
2752 <p>Fix startup beeps that indicate sensor failures.</p>
2753 </li>
2754 </ul>
2755 </div>
2756 </div>
2757 <div class="sect3">
2758 <h4 id="_altosui_telegps_2">F.21.2. AltosUI, TeleGPS</h4>
2759 <div class="ulist">
2760 <ul>
2761 <li>
2762 <p>When updating device firmware, make sure selected firmware
2763 matches target device.</p>
2764 </li>
2765 <li>
2766 <p>Correct Bluetooth device matching when looking for TeleBT
2767 devices.</p>
2768 </li>
2769 </ul>
2770 </div>
2771 <div style="page-break-after: always;"></div>
2772 </div>
2773 </div>
2774 <div class="sect2">
2775 <h3 id="_release_notes_for_version_1_8_4">F.22. Release Notes for Version 1.8.4</h3>
2776 <div class="paragraph">
2777 <p>Version 1.8.4 includes support for EasyMini version 2.0</p>
2778 </div>
2779 <div class="sect3">
2780 <h4 id="_altos_21">F.22.1. AltOS</h4>
2781 <div class="ulist">
2782 <ul>
2783 <li>
2784 <p>Support for EasyMini version 2.0 hardware.</p>
2785 </li>
2786 </ul>
2787 </div>
2788 <div style="page-break-after: always;"></div>
2789 </div>
2790 </div>
2791 <div class="sect2">
2792 <h3 id="_release_notes_for_version_1_8_3">F.23. Release Notes for Version 1.8.3</h3>
2793 <div class="paragraph">
2794 <p>Version 1.8.3 includes support for TeleMega version 3.0 along
2795 with two important flight computer fixes. This version also
2796 changes KML export data to make Tripoli Record reporting
2797 better and some updates to graph presentation and data
2798 downloading.</p>
2799 </div>
2800 <div class="sect3">
2801 <h4 id="_altos_22">F.23.1. AltOS</h4>
2802 <div class="sect4">
2803 <h5 id="_altos_new_features">AltOS New Features</h5>
2804 <div class="ulist">
2805 <ul>
2806 <li>
2807 <p>Support for TeleMega version 3.0 hardware.</p>
2808 </li>
2809 </ul>
2810 </div>
2811 </div>
2812 <div class="sect4">
2813 <h5 id="_altos_bug_fixes">AltOS Bug Fixes</h5>
2814 <div class="ulist">
2815 <ul>
2816 <li>
2817 <p>Ground testing EasyMega and TeleMega additional pyro
2818 channels could result in a sticky 'fired' status which would
2819 prevent these channels from firing on future flights.</p>
2820 </li>
2821 <li>
2822 <p>Corrupted flight log records could prevent future flights
2823 from capturing log data.</p>
2824 </li>
2825 <li>
2826 <p>Fixed saving of pyro configuration that ended with
2827 'Descending'.</p>
2828 </li>
2829 </ul>
2830 </div>
2831 </div>
2832 </div>
2833 <div class="sect3">
2834 <h4 id="_altosui_and_telegps_applications">F.23.2. AltosUI and TeleGPS Applications</h4>
2835 <div class="sect4">
2836 <h5 id="_altosui_new_features">AltosUI New Features</h5>
2837 <div class="ulist">
2838 <ul>
2839 <li>
2840 <p>Support for TeleMega version 3.0.</p>
2841 </li>
2842 <li>
2843 <p>Graph lines have improved appearance to make them easier to
2844 distinguish. Markers may be placed at data points to show
2845 captured recorded data values.</p>
2846 </li>
2847 <li>
2848 <p>Graphing offers the ability to adjust the smoothing of
2849 computed speed and acceleration data.</p>
2850 </li>
2851 <li>
2852 <p>The download dialog now offers to graph new flights, checks
2853 for existing files to avoid overwriting data and reports if
2854 there are checksum errors in the downloaded data.</p>
2855 </li>
2856 </ul>
2857 </div>
2858 </div>
2859 <div class="sect4">
2860 <h5 id="_altosuitelegps_bug_fixes">AltosUI/TeleGPS Bug Fixes</h5>
2861 <div class="ulist">
2862 <ul>
2863 <li>
2864 <p>Restore TeleGPS tracking behavior.</p>
2865 </li>
2866 <li>
2867 <p>Display flight computer call sign and serial number in
2868 Monitor Idle mode instead of ground station values.</p>
2869 </li>
2870 </ul>
2871 </div>
2872 </div>
2873 <div class="sect4">
2874 <h5 id="_altosui_and_telegps_changes">AltosUI and TeleGPS Changes</h5>
2875 <div class="ulist">
2876 <ul>
2877 <li>
2878 <p>KML export now reports both barometric and GPS altitude data
2879 to make it more useful for Tripoli record reporting.</p>
2880 </li>
2881 <li>
2882 <p>CSV export now includes TeleMega/EasyMega pyro voltages and
2883 tilt angle.</p>
2884 </li>
2885 </ul>
2886 </div>
2887 <div style="page-break-after: always;"></div>
2888 </div>
2889 </div>
2890 </div>
2891 <div class="sect2">
2892 <h3 id="_release_notes_for_version_1_8_2">F.24. Release Notes for Version 1.8.2</h3>
2893 <div class="paragraph">
2894 <p>Version 1.8.2 includes support for TeleGPS version 2.0 along
2895 with accelerometer recalibration support in AltosUI.</p>
2896 </div>
2897 <div class="paragraph">
2898 <p>1.8.2 also contains a couple of minor fixes for AltosUI when
2899 analyzing saved data files.</p>
2900 </div>
2901 <div class="sect3">
2902 <h4 id="_altos_23">F.24.1. AltOS</h4>
2903 <div class="paragraph">
2904 <p>AltOS New Features</p>
2905 </div>
2906 <div class="ulist">
2907 <ul>
2908 <li>
2909 <p>Support for TeleGPS version 2.0 hardware.</p>
2910 </li>
2911 </ul>
2912 </div>
2913 </div>
2914 <div class="sect3">
2915 <h4 id="_altosui_and_telegps_applications_2">F.24.2. AltosUI and TeleGPS Applications</h4>
2916 <div class="paragraph">
2917 <p>AltosUI and TeleGPS New Features</p>
2918 </div>
2919 <div class="ulist">
2920 <ul>
2921 <li>
2922 <p>Support for TeleGPS version 2.0.</p>
2923 </li>
2924 <li>
2925 <p>Accelerometer re-calibration user interface.</p>
2926 </li>
2927 </ul>
2928 </div>
2929 <div class="paragraph">
2930 <p>AltosUI and TeleGPS Bug Fixes</p>
2931 </div>
2932 <div class="ulist">
2933 <ul>
2934 <li>
2935 <p>Prevent some crashes when reading older saved flight data
2936 for graphing or KML export.</p>
2937 </li>
2938 </ul>
2939 </div>
2940 <div style="page-break-after: always;"></div>
2941 </div>
2942 </div>
2943 <div class="sect2">
2944 <h3 id="_release_notes_for_version_1_8_1">F.25. Release Notes for Version 1.8.1</h3>
2945 <div class="paragraph">
2946 <p>Version 1.8.1 includes an important bug fix for Apogee Lockout
2947 operation in all flight computers. Anyone using this option
2948 must update firmware.</p>
2949 </div>
2950 <div class="paragraph">
2951 <p>This release also contains a change in how flight computers
2952 with accelerometers deal with speeds around and above Mach
2953 1. In previous versions, the flight computer would completely
2954 disregard the barometric sensor above 330m/s (around Mach
2955 1). Now, the data from the barometric sensor is reduced in
2956 effect without ever going away entirely. This prevents early
2957 drogue deployment for flights which spend considerable time
2958 above Mach 1.</p>
2959 </div>
2960 <div class="paragraph">
2961 <p>1.8.1 also contains a couple of minor fixes for AltosUI when
2962 analyzing saved data files.</p>
2963 </div>
2964 <div class="sect3">
2965 <h4 id="_altos_24">F.25.1. AltOS</h4>
2966 <div class="paragraph">
2967 <p>AltOS Bug Fixes</p>
2968 </div>
2969 <div class="ulist">
2970 <ul>
2971 <li>
2972 <p>Handle time value wrapping in Apogee Lockout
2973 correctly. Without this, apogee lockout would sometimes
2974 prevent any drogue charge from firing.</p>
2975 </li>
2976 <li>
2977 <p>Change Kalman filter on flight computers with accelerometer
2978 to continue using the barometric sensor even at high speeds
2979 to avoid unintentional drogue deployment during
2980 deceleration.</p>
2981 </li>
2982 </ul>
2983 </div>
2984 </div>
2985 <div class="sect3">
2986 <h4 id="_altosui_and_telegps_applications_3">F.25.2. AltosUI and TeleGPS Applications</h4>
2987 <div class="paragraph">
2988 <p>AltosUI New Features</p>
2989 </div>
2990 <div class="ulist">
2991 <ul>
2992 <li>
2993 <p>Add new 'Huge' font size to make text even bigger on high
2994 resolution monitors.</p>
2995 </li>
2996 </ul>
2997 </div>
2998 <div class="paragraph">
2999 <p>AltosUI Bug Fixes</p>
3000 </div>
3001 <div class="ulist">
3002 <ul>
3003 <li>
3004 <p>Prevent some crashes when reading older saved flight data
3005 for graphing or KML export.</p>
3006 </li>
3007 <li>
3008 <p>Load frequency preference at startup. The loading code was
3009 broken, so you&#8217;d see only the default frequencies.</p>
3010 </li>
3011 </ul>
3012 </div>
3013 <div style="page-break-after: always;"></div>
3014 </div>
3015 </div>
3016 <div class="sect2">
3017 <h3 id="_release_notes_for_version_1_8">F.26. Release Notes for Version 1.8</h3>
3018 <div class="paragraph">
3019 <p>Version 1.8 includes support for our new TeleBT v4.0 ground
3020 station, updates for data analysis in our ground station
3021 software and bug fixes in in the flight software for all our
3022 boards and ground station interfaces.</p>
3023 </div>
3024 <div class="sect3">
3025 <h4 id="_altos_25">F.26.1. AltOS</h4>
3026 <div class="paragraph">
3027 <p>AltOS New Features</p>
3028 </div>
3029 <div class="ulist">
3030 <ul>
3031 <li>
3032 <p>Add support for TeleBT v4.0 boards.</p>
3033 </li>
3034 </ul>
3035 </div>
3036 </div>
3037 <div class="sect3">
3038 <h4 id="_altosui_and_telegps_applications_4">F.26.2. AltosUI and TeleGPS Applications</h4>
3039 <div class="paragraph">
3040 <p>AltosUI New Features</p>
3041 </div>
3042 <div class="ulist">
3043 <ul>
3044 <li>
3045 <p>Add support for TeleBT v4.0 hardware</p>
3046 </li>
3047 <li>
3048 <p>Rewrite graphing and export functions. This code now handles
3049 each data series separately so that graphs are drawn
3050 correctly. Smoothing now uses a filter that looks both
3051 forward and backwards in time to make computed speed and
3052 acceleration data more accurate.</p>
3053 </li>
3054 </ul>
3055 </div>
3056 <div class="paragraph">
3057 <p>AltosUI Bug Fixes</p>
3058 </div>
3059 <div class="ulist">
3060 <ul>
3061 <li>
3062 <p>Correct axis labeling of magnetic sensor in TeleMega and
3063 EasyMega. The Y and Z axes were flipped.</p>
3064 </li>
3065 </ul>
3066 </div>
3067 <div style="page-break-after: always;"></div>
3068 </div>
3069 </div>
3070 <div class="sect2">
3071 <h3 id="_release_notes_for_version_1_7">F.27. Release Notes for Version 1.7</h3>
3072 <div class="paragraph">
3073 <p>Version 1.7 includes support for our new TeleMini v3.0
3074 flight computer and bug fixes in in the flight software for all our boards
3075 and ground station interfaces.</p>
3076 </div>
3077 <div class="sect3">
3078 <h4 id="_altos_26">F.27.1. AltOS</h4>
3079 <div class="paragraph">
3080 <p>AltOS New Features</p>
3081 </div>
3082 <div class="ulist">
3083 <ul>
3084 <li>
3085 <p>Add support for TeleMini v3.0 boards.</p>
3086 </li>
3087 </ul>
3088 </div>
3089 <div class="paragraph">
3090 <p>AltOS Fixes</p>
3091 </div>
3092 <div class="ulist">
3093 <ul>
3094 <li>
3095 <p>Fix interrupt priorities on STM32L processors. Run timer
3096 interrupt at lowest priority so that device interrupts get
3097 serviced first.</p>
3098 </li>
3099 </ul>
3100 </div>
3101 </div>
3102 <div class="sect3">
3103 <h4 id="_altosui_and_telegps_applications_5">F.27.2. AltosUI and TeleGPS Applications</h4>
3104 <div class="paragraph">
3105 <p>AltosUI New Features</p>
3106 </div>
3107 <div class="ulist">
3108 <ul>
3109 <li>
3110 <p>Add support for TeleMini v3.0 hardware</p>
3111 </li>
3112 </ul>
3113 </div>
3114 <div style="page-break-after: always;"></div>
3115 </div>
3116 </div>
3117 <div class="sect2">
3118 <h3 id="_release_notes_for_version_1_6_8">F.28. Release Notes for Version 1.6.8</h3>
3119 <div class="paragraph">
3120 <p>Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where
3121 the device could stop logging data and transmitting
3122 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
3123 v2.0 users should update their flight firmware.</p>
3124 </div>
3125 <div class="sect3">
3126 <h4 id="_altos_27">F.28.1. AltOS</h4>
3127 <div class="paragraph">
3128 <p>AltOS fixes:</p>
3129 </div>
3130 <div class="ulist">
3131 <ul>
3132 <li>
3133 <p>Fix STM32L DMA driver to work around STM32L SoC DMA priority
3134 issue t lock-up in the logging or radio code, either of
3135 which could stop data logging and telemetry.</p>
3136 </li>
3137 <li>
3138 <p>Avoid having TeleBT battery status values smash telemetry
3139 packet data by holding a lock during both operations.</p>
3140 </li>
3141 <li>
3142 <p>Don&#8217;t start reporting 'flight 0' when the log fills in
3143 flight.</p>
3144 </li>
3145 </ul>
3146 </div>
3147 <div class="paragraph">
3148 <p>AltOS changes:</p>
3149 </div>
3150 <div class="ulist">
3151 <ul>
3152 <li>
3153 <p>Flash LEDS on all products briefly during power up so that
3154 they can be tested during production.</p>
3155 </li>
3156 </ul>
3157 </div>
3158 </div>
3159 <div class="sect3">
3160 <h4 id="_altosui_telegps_and_altosdroid_applications">F.28.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
3161 <div class="paragraph">
3162 <p>AltosUI fixes:</p>
3163 </div>
3164 <div class="ulist">
3165 <ul>
3166 <li>
3167 <p>Re-enable go/no-go entries after they&#8217;ve been disabled due
3168 to lack of data. If telemetry information is delayed when
3169 the Ui starts up, sometimes important fields would get
3170 disabled to never re-appear.</p>
3171 </li>
3172 <li>
3173 <p>Deal with ground station failure better during Configure
3174 Ground Station operation by cleaning up pending operations.</p>
3175 </li>
3176 </ul>
3177 </div>
3178 <div style="page-break-after: always;"></div>
3179 </div>
3180 </div>
3181 <div class="sect2">
3182 <h3 id="_release_notes_for_version_1_6_5">F.29. Release Notes for Version 1.6.5</h3>
3183 <div class="paragraph">
3184 <p>Version 1.6.5 fixes a TeleMega and TeleMetrum v2.0 bug where
3185 the device would often stop logging data and transmitting
3186 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
3187 v2.0 users should update their flight firmware.</p>
3188 </div>
3189 <div class="sect3">
3190 <h4 id="_altos_28">F.29.1. AltOS</h4>
3191 <div class="paragraph">
3192 <p>AltOS fixes:</p>
3193 </div>
3194 <div class="ulist">
3195 <ul>
3196 <li>
3197 <p>Fix STM32L SPI driver to prevent lock-up in the logging or
3198 radio code, either of which could stop data logging and
3199 telemetry. Found and characterized by Chuck Haskin, who also
3200 tested the new firmware before release.</p>
3201 </li>
3202 </ul>
3203 </div>
3204 </div>
3205 <div class="sect3">
3206 <h4 id="_altosui_telegps_and_altosdroid_applications_2">F.29.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
3207 <div class="paragraph">
3208 <p>AltosUI fixes:</p>
3209 </div>
3210 <div class="ulist">
3211 <ul>
3212 <li>
3213 <p>Deliver firmward for TeleMega v2.0 and TeleBT v3.0 with
3214 Windows package.</p>
3215 </li>
3216 </ul>
3217 </div>
3218 <div style="page-break-after: always;"></div>
3219 </div>
3220 </div>
3221 <div class="sect2">
3222 <h3 id="_release_notes_for_version_1_6_4">F.30. Release Notes for Version 1.6.4</h3>
3223 <div class="paragraph">
3224 <p>Version 1.6.4 fixes a bluetooth communication problem with
3225 TeleBT v1.0 devices, along with some altosui and altosdroid
3226 minor nits. It also now ships firmware for some newer devices.</p>
3227 </div>
3228 <div class="sect3">
3229 <h4 id="_altos_29">F.30.1. AltOS</h4>
3230 <div class="paragraph">
3231 <p>AltOS fixes:</p>
3232 </div>
3233 <div class="ulist">
3234 <ul>
3235 <li>
3236 <p>Fix hardware flow control on TeleBT v1.0. Hardware RTS/CTS
3237 doesn&#8217;t seem to work, switch from using the hardware to
3238 driving these pins with software.</p>
3239 </li>
3240 <li>
3241 <p>Fix ARM USB drivers to deal with OS restarts. Needed to
3242 reset all USB-related state when the USB bus is reset. These
3243 fixes affect all STM32L, STM32F0 and LPC11U14 based devices.</p>
3244 </li>
3245 </ul>
3246 </div>
3247 </div>
3248 <div class="sect3">
3249 <h4 id="_altosui_telegps_and_altosdroid_applications_3">F.30.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
3250 <div class="paragraph">
3251 <p>AltosUI, TeleGPS and AltosDroid New Features:</p>
3252 </div>
3253 <div class="ulist">
3254 <ul>
3255 <li>
3256 <p>Automatically switch from meters or feet to kilometers or
3257 miles for distance units.</p>
3258 </li>
3259 <li>
3260 <p>Add Monitor Idle mode to TeleGPS application.</p>
3261 </li>
3262 </ul>
3263 </div>
3264 <div class="paragraph">
3265 <p>AltosUI, TeleGPS and AltosDroid Fixes:</p>
3266 </div>
3267 <div class="ulist">
3268 <ul>
3269 <li>
3270 <p>Abort map preloading when the preload map dialog is closed.</p>
3271 </li>
3272 <li>
3273 <p>In AltosDroid, Don&#8217;t reconnect to last device if the user
3274 had disconnected it the last time the application was
3275 active.</p>
3276 </li>
3277 </ul>
3278 </div>
3279 </div>
3280 <div class="sect3">
3281 <h4 id="_documentation">F.30.3. Documentation</h4>
3282 <div class="ulist">
3283 <ul>
3284 <li>
3285 <p>Mention TeleMega v2.0 in hardware specs table.</p>
3286 </li>
3287 <li>
3288 <p>Document TeleGPS RF output in telegps manual.</p>
3289 </li>
3290 </ul>
3291 </div>
3292 </div>
3293 </div>
3294 <div class="sect2">
3295 <h3 id="_release_notes_for_version_1_6_3">F.31. Release Notes for Version 1.6.3</h3>
3296 <div class="paragraph">
3297 <p>Version 1.6.3 adds idle mode to AltosDroid and has bug fixes
3298 for our host software on desktops, laptops an android devices
3299 along with BlueTooth support for Windows.</p>
3300 </div>
3301 <div class="sect3">
3302 <h4 id="_altos_30">F.31.1. AltOS</h4>
3303 <div class="paragraph">
3304 <p>AltOS fixes:</p>
3305 </div>
3306 <div class="ulist">
3307 <ul>
3308 <li>
3309 <p>Fix hardware flow control on TeleBT v3.0. RTS/CTS is
3310 wired backwards on this board, switch from using the
3311 hardware to driving these pins with software.</p>
3312 </li>
3313 </ul>
3314 </div>
3315 </div>
3316 <div class="sect3">
3317 <h4 id="_altosui_and_telegps_applications_6">F.31.2. AltosUI and TeleGPS Applications</h4>
3318 <div class="paragraph">
3319 <p>AltosUI and TeleGPS New Features:</p>
3320 </div>
3321 <div class="ulist">
3322 <ul>
3323 <li>
3324 <p>Add BlueTooth support for Windows operating system. This
3325 supports connections to TeleBT over BlueTooth rather than
3326 just USB.</p>
3327 </li>
3328 </ul>
3329 </div>
3330 <div class="paragraph">
3331 <p>AltosUI and TeleGPS Fixes:</p>
3332 </div>
3333 <div class="ulist">
3334 <ul>
3335 <li>
3336 <p>Change Java detection and install on Windows. Detection is
3337 now done by looking for the 'javaw.exe' program, and
3338 installation by opening a browser on the java.com web site.</p>
3339 </li>
3340 <li>
3341 <p>Delay polling while the Fire Igniters is visible to allow
3342 for TeleMega to report back complete status over the radio.</p>
3343 </li>
3344 <li>
3345 <p>Disallow changing RF calibration numbers in the
3346 configuration UI. There&#8217;s no good reason to change this from
3347 the field, and recovering is really hard if you haven&#8217;t
3348 written down the right number.</p>
3349 </li>
3350 <li>
3351 <p>Fix USB device discovery on Mac OS X El Capitan. This makes
3352 the connected Altus Metrum USB devices appear again.</p>
3353 </li>
3354 <li>
3355 <p>Fix acceleration data presented in MonitorIdle mode for
3356 TeleMetrum v2.0 flight computers.</p>
3357 </li>
3358 </ul>
3359 </div>
3360 </div>
3361 <div class="sect3">
3362 <h4 id="_altosdroid_5">F.31.3. AltosDroid</h4>
3363 <div class="paragraph">
3364 <p>AltosDroid new features:</p>
3365 </div>
3366 <div class="ulist">
3367 <ul>
3368 <li>
3369 <p>Monitor Idle mode. Check state of flight computer while in
3370 idle mode over the radio link</p>
3371 </li>
3372 <li>
3373 <p>Fire Igniters. Remotely fire ignires for recovery system
3374 ground tests.</p>
3375 </li>
3376 <li>
3377 <p>Remote reboot. Cause the flight computer to reboot over the
3378 radio link. This provides a method for switching the flight
3379 computer from idle to flight mode without needing to reach
3380 the power switch.</p>
3381 </li>
3382 <li>
3383 <p>Configurable frequency menu. Change the set of available
3384 frequencies and provide more descriptive names.</p>
3385 </li>
3386 </ul>
3387 </div>
3388 <div class="paragraph">
3389 <p>AltosDroid bug fixes:</p>
3390 </div>
3391 <div class="ulist">
3392 <ul>
3393 <li>
3394 <p>Don&#8217;t set target location if GPS hasn&#8217;t locked yet.</p>
3395 </li>
3396 <li>
3397 <p>Fix saving target states so they can be reloaded when the
3398 application restarts. When the application is shut down and
3399 restarted, all previous target state information will be
3400 restored (including GPS position if available).</p>
3401 </li>
3402 <li>
3403 <p>Fix crash on some Android devices for offline maps when
3404 changing the map scale or location.</p>
3405 </li>
3406 <li>
3407 <p>Don&#8217;t require USB OTG support. This kept the latest
3408 AltosDroid from being offered on devices without USB device
3409 support, although it can work without that just fine using
3410 BlueTooth.</p>
3411 </li>
3412 <li>
3413 <p>Don&#8217;t require bluetooth to be enabled. This allows the
3414 application to operate with USB devices or just show old
3415 data without turning on the bluetooth radio.</p>
3416 </li>
3417 <li>
3418 <p>Recover old tracker positions when restarting
3419 application. This finally allows you to safely stop and
3420 restart the application without losing the last known
3421 location of any tracker.</p>
3422 </li>
3423 </ul>
3424 </div>
3425 </div>
3426 <div class="sect3">
3427 <h4 id="_documentation_2">F.31.4. Documentation</h4>
3428 <div class="ulist">
3429 <ul>
3430 <li>
3431 <p>Document TeleMega and EasyMega additional pyro channel
3432 continuity audio alert pattern.</p>
3433 </li>
3434 </ul>
3435 </div>
3436 <div style="page-break-after: always;"></div>
3437 </div>
3438 </div>
3439 <div class="sect2">
3440 <h3 id="_release_notes_for_version_1_6_2">F.32. Release Notes for Version 1.6.2</h3>
3441 <div class="paragraph">
3442 <p>Version 1.6.2 includes support for our updated TeleMega v2.0
3443 product and bug fixes in in the flight software for all our boards
3444 and ground station interfaces.</p>
3445 </div>
3446 <div class="sect3">
3447 <h4 id="_altos_31">F.32.1. AltOS</h4>
3448 <div class="paragraph">
3449 <p>AltOS New Features:</p>
3450 </div>
3451 <div class="ulist">
3452 <ul>
3453 <li>
3454 <p>Add support for TeleMega v2.0 boards.</p>
3455 </li>
3456 <li>
3457 <p>Add PWM servo driver. There&#8217;s no higher level code using
3458 this yet, but the driver allows testing of the TeleMega v2.0
3459 servo output connector.</p>
3460 </li>
3461 </ul>
3462 </div>
3463 <div class="paragraph">
3464 <p>AltOS Fixes:</p>
3465 </div>
3466 <div class="ulist">
3467 <ul>
3468 <li>
3469 <p>Slow down telemetry packets to allow receiver to keep
3470 up.</p>
3471 </li>
3472 </ul>
3473 </div>
3474 </div>
3475 <div class="sect3">
3476 <h4 id="_altosui_and_telegps_applications_7">F.32.2. AltosUI and TeleGPS Applications</h4>
3477 <div class="paragraph">
3478 <p>AltosUI and TeleGPS Fixes:</p>
3479 </div>
3480 <div class="ulist">
3481 <ul>
3482 <li>
3483 <p>Fix post-flight orientation computation when processing
3484 TeleMega and EasyMega eeprom data files.</p>
3485 </li>
3486 <li>
3487 <p>Capture complete eeprom data even when there are invalid
3488 entries in the data. This keeps reading eeprom contents and
3489 writing the associated .eeprom file when an error is detected.</p>
3490 </li>
3491 </ul>
3492 </div>
3493 </div>
3494 <div class="sect3">
3495 <h4 id="_documentation_3">F.32.3. Documentation</h4>
3496 <div class="paragraph">
3497 <p>We spent a bunch of time trying to improve our documentation</p>
3498 </div>
3499 <div class="ulist">
3500 <ul>
3501 <li>
3502 <p>HTML versions now have a table of contents on the left side.</p>
3503 </li>
3504 <li>
3505 <p>EasyMini now has its own shorter manual.</p>
3506 </li>
3507 <li>
3508 <p>Provide links between sections in each document.</p>
3509 </li>
3510 <li>
3511 <p>Lots of minor rewriting and restructuring to avoid
3512 duplication of information</p>
3513 </li>
3514 </ul>
3515 </div>
3516 </div>
3517 </div>
3518 </div>
3519 </div>
3520 </div>
3521 <div id="footer">
3522 <div id="footer-text">
3523 Version v1.9.18<br>
3524 Last updated 2024-04-28 19:57:58 -0600
3525 </div>
3526 </div>
3527 </body>
3528 </html>