update docs
[web/altusmetrum] / AltOS / doc / altusmetrum.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.17">
8 <meta name="author" content="Keith Packard, Bdale Garbee, Bob Finch, Anthony Towns">
9 <meta name="copyright" content="Bdale Garbee and Keith Packard 2022">
10 <title>The Altus Metrum System: An Owner&#8217;s Manual for Altus Metrum Rocketry Electronics</title>
11 <link rel="stylesheet" href="./am.css">
12 </head>
13 <body class="book">
14 <div id="header">
15 <h1>The Altus Metrum System: An Owner&#8217;s Manual for Altus Metrum Rocketry Electronics</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="author3" class="author">Bob Finch</span><br>
22 <span id="author4" class="author">Anthony Towns</span><br>
23 <span id="revnumber">version v1.9.12,</span>
24 <span id="revdate">28 Oct 2022</span>
25 </div>
26 <div id="toc" class="toc">
27 <div id="toctitle">Table of Contents</div>
28 <ul class="sectlevel1">
29 <li><a href="#_license">License</a></li>
30 <li><a href="#_acknowledgments">Acknowledgments</a></li>
31 <li><a href="#_introduction_and_overview">1. Introduction and Overview</a></li>
32 <li><a href="#_getting_started">2. Getting Started</a>
33 <ul class="sectlevel2">
34 <li><a href="#_batteries">2.1. Batteries</a></li>
35 <li><a href="#_ground_station_hardware">2.2. Ground Station Hardware</a></li>
36 <li><a href="#_linuxmacwindows_ground_station_software">2.3. Linux/Mac/Windows Ground Station Software</a></li>
37 <li><a href="#_android_ground_station_software">2.4. Android Ground Station Software</a></li>
38 </ul>
39 </li>
40 <li><a href="#_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</a>
41 <ul class="sectlevel2">
42 <li><a href="#_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</a></li>
43 <li><a href="#_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</a></li>
44 <li><a href="#_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</a></li>
45 <li><a href="#_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</a></li>
46 <li><a href="#_understanding_beeps">3.5. Understanding Beeps</a></li>
47 <li><a href="#_turning_on_the_power">3.6. Turning On the Power</a></li>
48 <li><a href="#_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</a></li>
49 <li><a href="#_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</a></li>
50 <li><a href="#_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</a></li>
51 <li><a href="#_using_packet_link_mode">3.10. Using Packet Link Mode</a></li>
52 </ul>
53 </li>
54 <li><a href="#_telemetrum">4. TeleMetrum</a>
55 <ul class="sectlevel2">
56 <li><a href="#_telemetrum_screw_terminals">4.1. TeleMetrum Screw Terminals</a></li>
57 <li><a href="#_using_a_separate_pyro_battery_with_telemetrum">4.2. Using a Separate Pyro Battery with TeleMetrum</a></li>
58 <li><a href="#_using_an_active_switch_with_telemetrum">4.3. Using an Active Switch with TeleMetrum</a></li>
59 </ul>
60 </li>
61 <li><a href="#_telemini">5. TeleMini</a>
62 <ul class="sectlevel2">
63 <li><a href="#_telemini_v3_screw_terminals">5.1. TeleMini v3 Screw Terminals</a></li>
64 <li><a href="#_using_a_separate_pyro_battery_with_telemini_v3">5.2. Using a Separate Pyro Battery with TeleMini v3</a></li>
65 <li><a href="#_using_an_active_switch_with_telemini_v3">5.3. Using an Active Switch with TeleMini v3</a></li>
66 <li><a href="#_using_packet_link_mode_with_telemini">5.4. Using Packet Link Mode with TeleMini</a></li>
67 <li><a href="#_forcing_telemini_radio_parameters_to_known_defaults">5.5. Forcing TeleMini radio parameters to known defaults</a></li>
68 <li><a href="#_telemini_v1">5.6. TeleMini v1</a></li>
69 </ul>
70 </li>
71 <li><a href="#_easymini">6. EasyMini</a>
72 <ul class="sectlevel2">
73 <li><a href="#_easymini_screw_terminals">6.1. EasyMini Screw Terminals</a></li>
74 <li><a href="#_connecting_a_battery_to_easymini">6.2. Connecting A Battery To EasyMini</a></li>
75 <li><a href="#_charging_lithium_batteries">6.3. Charging Lithium Batteries</a></li>
76 <li><a href="#_using_a_separate_pyro_battery_with_easymini">6.4. Using a Separate Pyro Battery with EasyMini</a></li>
77 <li><a href="#_using_an_active_switch_with_easymini">6.5. Using an Active Switch with EasyMini</a></li>
78 </ul>
79 </li>
80 <li><a href="#_telemega">7. TeleMega</a>
81 <ul class="sectlevel2">
82 <li><a href="#_telemega_screw_terminals">7.1. TeleMega Screw Terminals</a></li>
83 <li><a href="#_using_a_separate_pyro_battery_with_telemega">7.2. Using a Separate Pyro Battery with TeleMega</a></li>
84 <li><a href="#_using_only_one_battery_with_telemega">7.3. Using Only One Battery With TeleMega</a></li>
85 <li><a href="#_using_an_active_switch_with_telemega">7.4. Using an Active Switch with TeleMega</a></li>
86 </ul>
87 </li>
88 <li><a href="#_easymega">8. EasyMega</a>
89 <ul class="sectlevel2">
90 <li><a href="#_easymega_screw_terminals">8.1. EasyMega Screw Terminals</a></li>
91 <li><a href="#_using_a_separate_pyro_battery_with_easymega">8.2. Using a Separate Pyro Battery with EasyMega</a></li>
92 <li><a href="#_using_only_one_battery_with_easymega">8.3. Using Only One Battery With EasyMega</a></li>
93 <li><a href="#_using_an_active_switch_with_easymega">8.4. Using an Active Switch with EasyMega</a></li>
94 </ul>
95 </li>
96 <li><a href="#_easytimer">9. EasyTimer</a>
97 <ul class="sectlevel2">
98 <li><a href="#_easytimer_screw_terminals">9.1. EasyTimer Screw Terminals</a></li>
99 <li><a href="#_connecting_a_battery_to_easytimer">9.2. Connecting A Battery To EasyTimer</a></li>
100 <li><a href="#_charging_lithium_batteries_2">9.3. Charging Lithium Batteries</a></li>
101 <li><a href="#_using_a_separate_pyro_battery_with_easytimer">9.4. Using a Separate Pyro Battery with EasyTimer</a></li>
102 <li><a href="#_using_an_active_switch_with_easytimer">9.5. Using an Active Switch with EasyTimer</a></li>
103 </ul>
104 </li>
105 <li><a href="#_installation">10. Installation</a></li>
106 <li><a href="#_using_altus_metrum_products">11. Using Altus Metrum Products</a>
107 <ul class="sectlevel2">
108 <li><a href="#_being_legal">11.1. Being Legal</a></li>
109 <li><a href="#_in_the_rocket">11.2. In the Rocket</a></li>
110 <li><a href="#_on_the_ground">11.3. On the Ground</a></li>
111 <li><a href="#_data_analysis">11.4. Data Analysis</a></li>
112 <li><a href="#_future_plans">11.5. Future Plans</a></li>
113 </ul>
114 </li>
115 <li><a href="#_altosui">12. AltosUI</a>
116 <ul class="sectlevel2">
117 <li><a href="#_monitor_flight">12.1. Monitor Flight</a></li>
118 <li><a href="#_save_flight_data">12.2. Save Flight Data</a></li>
119 <li><a href="#_replay_flight">12.3. Replay Flight</a></li>
120 <li><a href="#_graph_data">12.4. Graph Data</a></li>
121 <li><a href="#_export_data">12.5. Export Data</a></li>
122 <li><a href="#_configure_altimeter">12.6. Configure Altimeter</a></li>
123 <li><a href="#_configure_altosui">12.7. Configure AltosUI</a></li>
124 <li><a href="#_configure_groundstation">12.8. Configure Groundstation</a></li>
125 <li><a href="#_flash_image">12.9. Flash Image</a></li>
126 <li><a href="#_fire_igniter">12.10. Fire Igniter</a></li>
127 <li><a href="#_scan_channels">12.11. Scan Channels</a></li>
128 <li><a href="#_load_maps">12.12. Load Maps</a></li>
129 <li><a href="#_monitor_idle">12.13. Monitor Idle</a></li>
130 </ul>
131 </li>
132 <li><a href="#_altosdroid">13. AltosDroid</a>
133 <ul class="sectlevel2">
134 <li><a href="#_installing_altosdroid">13.1. Installing AltosDroid</a></li>
135 <li><a href="#_charging_telebt_battery">13.2. Charging TeleBT Battery</a></li>
136 <li><a href="#_connecting_to_telebt_over_bluetooth">13.3. Connecting to TeleBT over Bluetooth™</a></li>
137 <li><a href="#_connecting_to_teledongle_or_telebt_over_usb">13.4. Connecting to TeleDongle or TeleBT over USB</a></li>
138 <li><a href="#_altosdroid_menu">13.5. AltosDroid Menu</a></li>
139 <li><a href="#_setup">13.6. Setup</a></li>
140 <li><a href="#_idle_mode">13.7. Idle Mode</a></li>
141 <li><a href="#_altosdroid_flight_monitoring">13.8. AltosDroid Flight Monitoring</a></li>
142 <li><a href="#_pad">13.9. Pad</a></li>
143 <li><a href="#_flight">13.10. Flight</a></li>
144 <li><a href="#_recover">13.11. Recover</a></li>
145 <li><a href="#_map_2">13.12. Map</a></li>
146 <li><a href="#_downloading_flight_logs">13.13. Downloading Flight Logs</a></li>
147 </ul>
148 </li>
149 <li><a href="#_system_operation">Appendix A: System Operation</a>
150 <ul class="sectlevel2">
151 <li><a href="#_firmware_modes">A.1. Firmware Modes</a></li>
152 <li><a href="#_gps">A.2. GPS</a></li>
153 <li><a href="#_controlling_an_altimeter_over_the_radio_link">A.3. Controlling An Altimeter Over The Radio Link</a></li>
154 <li><a href="#_ground_testing">A.4. Ground Testing</a></li>
155 <li><a href="#_radio_link">A.5. Radio Link</a></li>
156 <li><a href="#_aprs">A.6. APRS</a></li>
157 <li><a href="#_configurable_parameters">A.7. Configurable Parameters</a></li>
158 </ul>
159 </li>
160 <li><a href="#_example_pyro_channel_configurations">Appendix B: Example Pyro Channel Configurations</a>
161 <ul class="sectlevel2">
162 <li><a href="#_two_stage_flights">B.1. Two-Stage Flights</a></li>
163 <li><a href="#_triggered_clusters_and_air_starts">B.2. Triggered Clusters and Air Starts</a></li>
164 <li><a href="#_redundant_apogee">B.3. Redundant Apogee</a></li>
165 <li><a href="#_redundant_main">B.4. Redundant Main</a></li>
166 <li><a href="#_apogee_above_baro_sensor_limit">B.5. Apogee Above Baro Sensor Limit</a></li>
167 </ul>
168 </li>
169 <li><a href="#_handling_precautions">Appendix C: Handling Precautions</a></li>
170 <li><a href="#_updating_device_firmware">Appendix D: Updating Device Firmware</a>
171 <ul class="sectlevel2">
172 <li><a href="#_updating_telemega_telemetrum_v2_or_newer_telemini_v3_easymega_easymini_teledongle_v3_or_telebt_v3_firmware">D.1. Updating TeleMega, TeleMetrum v2 or newer, TeleMini v3, EasyMega, EasyMini, TeleDongle v3 or TeleBT v3 Firmware</a></li>
173 <li><a href="#_pair_programming">D.2. Pair Programming</a></li>
174 </ul>
175 </li>
176 <li><a href="#_frequency_calibration">Appendix E: Frequency Calibration</a>
177 <ul class="sectlevel2">
178 <li><a href="#_background_information">E.1. Background Information</a></li>
179 <li><a href="#_required_equipment">E.2. Required Equipment</a></li>
180 <li><a href="#_rf_calibration_procedure">E.3. RF Calibration Procedure</a></li>
181 </ul>
182 </li>
183 <li><a href="#_flight_data_recording">Appendix F: Flight Data Recording</a></li>
184 <li><a href="#_altus_metrum_hardware_specifications">Appendix G: Altus Metrum Hardware Specifications</a></li>
185 <li><a href="#_release_notes">Appendix H: Release Notes</a>
186 <ul class="sectlevel2">
187 <li><a href="#_release_notes_for_version_1_9_12">H.1. Release Notes for Version 1.9.12</a></li>
188 <li><a href="#_release_notes_for_version_1_9_11">H.2. Release Notes for Version 1.9.11</a></li>
189 <li><a href="#_release_notes_for_version_1_9_10">H.3. Release Notes for Version 1.9.10</a></li>
190 <li><a href="#_release_notes_for_version_1_9_9">H.4. Release Notes for Version 1.9.9</a></li>
191 <li><a href="#_release_notes_for_version_1_9_8">H.5. Release Notes for Version 1.9.8</a></li>
192 <li><a href="#_release_notes_for_version_1_9_7">H.6. Release Notes for Version 1.9.7</a></li>
193 <li><a href="#_release_notes_for_version_1_9_6">H.7. Release Notes for Version 1.9.6</a></li>
194 <li><a href="#_release_notes_for_version_1_9_5">H.8. Release Notes for Version 1.9.5</a></li>
195 <li><a href="#_release_notes_for_version_1_9_4">H.9. Release Notes for Version 1.9.4</a></li>
196 <li><a href="#_release_notes_for_version_1_9_3">H.10. Release Notes for Version 1.9.3</a></li>
197 <li><a href="#_release_notes_for_version_1_9_2">H.11. Release Notes for Version 1.9.2</a></li>
198 <li><a href="#_release_notes_for_version_1_9_1">H.12. Release Notes for Version 1.9.1</a></li>
199 <li><a href="#_release_notes_for_version_1_9">H.13. Release Notes for Version 1.9</a></li>
200 <li><a href="#_release_notes_for_version_1_8_7">H.14. Release Notes for Version 1.8.7</a></li>
201 <li><a href="#_release_notes_for_version_1_8_6">H.15. Release Notes for Version 1.8.6</a></li>
202 <li><a href="#_release_notes_for_version_1_8_5">H.16. Release Notes for Version 1.8.5</a></li>
203 <li><a href="#_release_notes_for_version_1_8_4">H.17. Release Notes for Version 1.8.4</a></li>
204 <li><a href="#_release_notes_for_version_1_8_3">H.18. Release Notes for Version 1.8.3</a></li>
205 <li><a href="#_release_notes_for_version_1_8_2">H.19. Release Notes for Version 1.8.2</a></li>
206 <li><a href="#_release_notes_for_version_1_8_1">H.20. Release Notes for Version 1.8.1</a></li>
207 <li><a href="#_release_notes_for_version_1_8">H.21. Release Notes for Version 1.8</a></li>
208 <li><a href="#_release_notes_for_version_1_7">H.22. Release Notes for Version 1.7</a></li>
209 <li><a href="#_release_notes_for_version_1_6_8">H.23. Release Notes for Version 1.6.8</a></li>
210 <li><a href="#_release_notes_for_version_1_6_5">H.24. Release Notes for Version 1.6.5</a></li>
211 <li><a href="#_release_notes_for_version_1_6_4">H.25. Release Notes for Version 1.6.4</a></li>
212 <li><a href="#_release_notes_for_version_1_6_3">H.26. Release Notes for Version 1.6.3</a></li>
213 <li><a href="#_release_notes_for_version_1_6_2">H.27. Release Notes for Version 1.6.2</a></li>
214 <li><a href="#_release_notes_for_version_1_6_1">H.28. Release Notes for Version 1.6.1</a></li>
215 <li><a href="#_release_notes_for_version_1_6">H.29. Release Notes for Version 1.6</a></li>
216 <li><a href="#_release_notes_for_version_1_5">H.30. Release Notes for Version 1.5</a></li>
217 <li><a href="#_release_notes_for_version_1_4_2">H.31. Release Notes for Version 1.4.2</a></li>
218 <li><a href="#_release_notes_for_version_1_4_1">H.32. Release Notes for Version 1.4.1</a></li>
219 <li><a href="#_release_notes_for_version_1_4">H.33. Release Notes for Version 1.4</a></li>
220 <li><a href="#_release_notes_for_version_1_3_2">H.34. Release Notes for Version 1.3.2</a></li>
221 <li><a href="#_release_notes_for_version_1_3_1">H.35. Release Notes for Version 1.3.1</a></li>
222 <li><a href="#_release_notes_for_version_1_3">H.36. Release Notes for Version 1.3</a></li>
223 <li><a href="#_release_notes_for_version_1_2_1">H.37. Release Notes for Version 1.2.1</a></li>
224 <li><a href="#_release_notes_for_version_1_2">H.38. Release Notes for Version 1.2</a></li>
225 <li><a href="#_release_notes_for_version_1_1">H.39. Release Notes for Version 1.1</a></li>
226 <li><a href="#_release_notes_for_version_1_1_2">H.40. Release Notes for Version 1.1</a></li>
227 <li><a href="#_release_notes_for_version_1_0_1">H.41. Release Notes for Version 1.0.1</a></li>
228 <li><a href="#_release_notes_for_version_0_9_2">H.42. Release Notes for Version 0.9.2</a></li>
229 <li><a href="#_release_notes_for_version_0_9">H.43. Release Notes for Version 0.9</a></li>
230 <li><a href="#_release_notes_for_version_0_8">H.44. Release Notes for Version 0.8</a></li>
231 <li><a href="#_release_notes_for_version_0_7_1">H.45. Release Notes for Version 0.7.1</a></li>
232 </ul>
233 </li>
234 </ul>
235 </div>
236 </div>
237 <div id="content">
238 <div id="preamble">
239 <div class="sectionbody">
240 <div id="logo" class="imageblock">
241 <div class="content">
242 <a class="image" href="https://altusmetrum.org"><img src="altusmetrum-oneline.svg" alt="Altus Metrum"></a>
243 </div>
244 </div>
245 </div>
246 </div>
247 <div class="sect1">
248 <h2 id="_license">License</h2>
249 <div class="sectionbody">
250 <div class="paragraph">
251 <p>Copyright © 2022 Bdale Garbee and Keith Packard</p>
252 </div>
253 <div class="paragraph">
254 <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>
255 </div>
256 </div>
257 </div>
258 <div class="sect1">
259 <h2 id="_acknowledgments">Acknowledgments</h2>
260 <div class="sectionbody">
261 <div class="paragraph">
262 <p>Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing “The
263 Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
264 Kit” which formed the basis of the original Getting Started chapter
265 in this manual.  Bob was one of our first customers for a production
266 TeleMetrum, and his continued enthusiasm and contributions
267 are immensely gratifying and highly appreciated!</p>
268 </div>
269 <div class="paragraph">
270 <p>And thanks to Anthony (AJ) Towns for major contributions including
271 the AltosUI graphing and site map code and associated documentation.
272 Free software means that our customers and friends can become our
273 collaborators, and we certainly appreciate this level of
274 contribution!</p>
275 </div>
276 <div class="paragraph">
277 <p>Have fun using these products, and we hope to meet all of you
278 out on the rocket flight line somewhere.</p>
279 </div>
280 <div class="verseblock">
281 <pre class="content">Bdale Garbee, KB0G
282 NAR #87103, TRA #12201</pre>
283 </div>
284 <div class="verseblock">
285 <pre class="content">Keith Packard, K7WQ
286 NAR #88757, TRA #12200</pre>
287 </div>
288 </div>
289 </div>
290 <div class="sect1">
291 <h2 id="_introduction_and_overview">1. Introduction and Overview</h2>
292 <div class="sectionbody">
293 <div class="paragraph">
294 <p>Welcome to the Altus Metrum community!  Our circuits and software reflect
295 our passion for both hobby rocketry and Free Software.  We hope their
296 capabilities and performance will delight you in every way, but by
297 releasing all of our hardware and software designs under open licenses,
298 we also hope to empower you to take as active a role in our collective
299 future as you wish!</p>
300 </div>
301 <div class="paragraph">
302 <p>Our goal is to include in this document all of the information required
303 to successfully configure and use Altus Metrum products.  But
304 documentation is a lot like software in that it can contain "bugs",
305 and can probably always be improved!  If you have questions that
306 aren&#8217;t answered in this manual, or just need a little help figuring
307 things out, we strongly suggest joining the Altus Metrum user email
308 list, which you can do by visiting
309 <a href="https://lists.gag.com/mailman/listinfo/altusmetrum" class="bare">https://lists.gag.com/mailman/listinfo/altusmetrum</a>.  There&#8217;s a lot
310 of useful information in the mailing list archives!</p>
311 </div>
312 <div class="paragraph">
313 <p>The first device created for our community was TeleMetrum, a dual
314 deploy altimeter with fully integrated GPS and radio telemetry
315 as standard features, and a “companion interface” that will
316 support optional capabilities in the future. The later versions
317 of TeleMetrum, v2 and newer, have all of the same features but with
318 improved sensors and radio to offer increased performance.</p>
319 </div>
320 <div class="paragraph">
321 <p>Our second device was TeleMini, a dual deploy altimeter with
322 radio telemetry and radio direction finding. The first version
323 of this device was only 13mm by 38mm (½ inch by 1½ inches) and
324 could fit easily in an 18mm air-frame. The latest version, v3.0,
325 includes a beeper, higher power radio, extended on-board
326 flight logging and an improved barometric sensor.</p>
327 </div>
328 <div class="paragraph">
329 <p>TeleMega is our most sophisticated device, including six pyro
330 channels (four of which are fully programmable), integrated GPS,
331 integrated gyroscopes for staging/air-start inhibit and high
332 performance telemetry.</p>
333 </div>
334 <div class="paragraph">
335 <p>EasyMini is a dual-deploy altimeter with logging and built-in
336 USB data download.</p>
337 </div>
338 <div class="paragraph">
339 <p>EasyMega is essentially a TeleMega board with the GPS receiver
340 and telemetry transmitter removed. It offers the same 6 pyro
341 channels and integrated gyroscopes for staging/air-start inhibit.</p>
342 </div>
343 <div class="paragraph">
344 <p>TeleDongle v0.2 was our first ground station, providing a USB to RF
345 interfaces for communicating with the altimeters. Combined with
346 your choice of antenna and notebook computer, TeleDongle and our
347 associated user interface software form a complete ground
348 station capable of logging and displaying in-flight telemetry,
349 aiding rocket recovery, then processing and archiving flight
350 data for analysis and review. The latest version, TeleDongle
351 v3, has all new electronics with a higher performance radio
352 for improved range.</p>
353 </div>
354 <div class="paragraph">
355 <p>For a slightly more portable ground station experience that also
356 provides direct rocket recovery support, TeleBT offers flight
357 monitoring and data logging using a  Bluetooth™ connection between
358 the receiver and an Android device that has the AltosDroid
359 application installed from the Google Play store.</p>
360 </div>
361 <div class="paragraph">
362 <p>More products will be added to the Altus Metrum family over time, and
363 we currently envision that this will be a single, comprehensive manual
364 for the entire product family.</p>
365 </div>
366 </div>
367 </div>
368 <div class="sect1">
369 <h2 id="_getting_started">2. Getting Started</h2>
370 <div class="sectionbody">
371 <div class="paragraph">
372 <p>The first thing to do after you open the box is to hook up a
373 battery and charge it if necessary.</p>
374 </div>
375 <div class="sect2">
376 <h3 id="_batteries">2.1. Batteries</h3>
377 <div class="paragraph">
378 <p>For TeleMetrum, TeleMega and EasyMega, the battery can be charged by plugging it into the
379 corresponding socket of the device and then using the USB
380 cable to plug the flight computer into your computer&#8217;s USB socket. The
381 on-board circuitry will charge the battery whenever it is plugged
382 in, because the on-off switch does NOT control the
383 charging circuitry.
384 The Lithium Polymer
385 EasyTimer,
386 TeleMini and
387 EasyMini battery can be charged by disconnecting it
388 from the board and plugging it into a standalone
389 battery charger such as <a href="http://altusmetrum.org/LipoCharger">LipoCharger</a>, and
390 connecting that via a USB cable to a laptop or other
391 USB power source.</p>
392 </div>
393 <div class="paragraph">
394 <p>You can also choose to use another battery with
395 EasyTimer and
396 EasyMini, anything supplying between 4 and 12 volts should
397 work fine (like a standard 9V battery), but if you are planning
398 to fire pyro charges, ground testing is required to verify that
399 the battery supplies enough current to fire your chosen e-matches.</p>
400 </div>
401 <div class="admonitionblock note">
402 <table>
403 <tr>
404 <td class="icon">
405 <img src="./images/icons/note.svg" alt="Note">
406 </td>
407 <td class="content">
408 <div class="paragraph">
409 <p>On TeleMetrum v1 boards, when the GPS chip is initially
410 searching for satellites, TeleMetrum will consume more current
411 than it pulls from the USB port, so the battery must be
412 attached in order to get satellite lock.  Once GPS is locked,
413 the current consumption goes back down enough to enable charging
414 while running. So it&#8217;s a good idea to fully charge the battery
415 as your first item of business so there is no issue getting and
416 maintaining satellite lock.  The yellow charge indicator led
417 will go out when the battery is nearly full and the charger goes
418 to trickle charge. It can take several hours to fully recharge a
419 deeply discharged battery.</p>
420 </div>
421 <div class="paragraph">
422 <p>TeleMetrum v2 or newer, TeleMega and EasyMega use a
423 higher power battery charger, allowing them to charge
424 the battery while running the board at maximum
425 power. When the battery is charging, or when the board
426 is consuming a lot of power, the red LED will be
427 lit. When the battery is fully charged, the green LED
428 will be lit. When the battery is damaged or missing,
429 both LEDs will be lit, which appears yellow.</p>
430 </div>
431 </td>
432 </tr>
433 </table>
434 </div>
435 </div>
436 <div class="sect2">
437 <h3 id="_ground_station_hardware">2.2. Ground Station Hardware</h3>
438 <div class="paragraph">
439 <p>There are two ground stations available, the TeleDongle USB to
440 RF interface and the TeleBT Bluetooth/USB to RF interface.  If
441 you plug either of these in to your Mac or Linux computer it should
442 “just work”, showing up as a serial port device.  Windows systems need
443 driver information that is part of the AltOS download to know that the
444 existing USB modem driver will work.  We therefore recommend installing
445 our software before plugging in TeleDongle if you are using a Windows
446 computer.  If you are using an older version of Linux and are having
447 problems, try moving to a fresher kernel (2.6.33 or
448 newer).</p>
449 </div>
450 </div>
451 <div class="sect2">
452 <h3 id="_linuxmacwindows_ground_station_software">2.3. Linux/Mac/Windows Ground Station Software</h3>
453 <div class="paragraph">
454 <p>Next you should obtain and install the AltOS software.
455 The AltOS distribution includes the AltosUI ground
456 station program, current firmware images for all of
457 the hardware, and a number of standalone utilities
458 that are rarely needed.  Pre-built binary packages are
459 available for Linux, Microsoft Windows, Mac OSX. Full
460 source code and build instructions are also
461 available. The latest version may always be downloaded
462 from <a href="http://altusmetrum.org/AltOS" class="bare">http://altusmetrum.org/AltOS</a></p>
463 </div>
464 </div>
465 <div class="sect2">
466 <h3 id="_android_ground_station_software">2.4. Android Ground Station Software</h3>
467 <div class="paragraph">
468 <p>TeleBT can also connect to an Android device over
469 BlueTooth or USB. The
470 <a href="https://play.google.com/store/apps/details?id=org.altusmetrum.AltosDroid">AltosDroid
471 Android application</a> is available from the
472 <a href="https://play.google.com">Google Play system</a>.</p>
473 </div>
474 <div class="paragraph">
475 <p>You don&#8217;t need a data plan to use AltosDroid, but
476 without network access, you&#8217;ll want to download
477 offline map data before wandering away from the
478 network.</p>
479 </div>
480 </div>
481 </div>
482 </div>
483 <div class="sect1">
484 <h2 id="_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</h2>
485 <div class="sectionbody">
486 <div class="paragraph">
487 <p>Here are general instructions for hooking up an Altus Metrum
488 flight computer. Instructions specific to each model will be
489 found in the section devoted to that model below.</p>
490 </div>
491 <div class="sect2">
492 <h3 id="_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</h3>
493 <div class="paragraph">
494 <p>To prevent electrical interference from affecting the
495 operation of the flight computer, it&#8217;s important to always
496 twist pairs of wires connected to the board. Twist the switch
497 leads, the pyro leads and the battery leads. This reduces
498 interference through a mechanism called common mode rejection.</p>
499 </div>
500 </div>
501 <div class="sect2">
502 <h3 id="_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</h3>
503 <div class="paragraph">
504 <p>All Altus Metrum flight computers have a two pin JST PH
505 series connector to connect up a single-cell Lithium Polymer
506 cell (3.7V nominal). You can purchase matching batteries
507 from the Altus Metrum store, or other vendors, or you can
508 make your own. Pin 1 of the connector is positive, pin 2 is
509 negative. Spark Fun sells a cable with the connector
510 attached, which they call a
511 <a href="https://www.sparkfun.com/products/9914">JST Jumper 2 Wire Assembly</a></p>
512 </div>
513 <div class="admonitionblock warning">
514 <table>
515 <tr>
516 <td class="icon">
517 <img src="./images/icons/warning.svg" alt="Warning">
518 </td>
519 <td class="content">
520 Many RC vendors also sell lithium polymer batteries with
521 this same connector. All that we have found use the opposite
522 polarity, and if you use them that way, you will damage or
523 destroy the flight computer.
524 </td>
525 </tr>
526 </table>
527 </div>
528 </div>
529 <div class="sect2">
530 <h3 id="_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</h3>
531 <div class="paragraph">
532 <p>Altus Metrum flight computers always have two screws for
533 each pyro charge. This means you shouldn&#8217;t need to put two
534 wires into a screw terminal or connect leads from pyro
535 charges together externally.</p>
536 </div>
537 <div class="paragraph">
538 <p>On the flight computer, one lead from each charge is hooked
539 to the positive battery terminal through the power switch.
540 The other lead is connected through the pyro circuit, which
541 is connected to the negative battery terminal when the pyro
542 circuit is fired.</p>
543 </div>
544 </div>
545 <div class="sect2">
546 <h3 id="_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</h3>
547 <div class="paragraph">
548 <p>Altus Metrum flight computers need an external power switch
549 to turn them on. This disconnects both the computer and the
550 pyro charges from the battery, preventing the charges from
551 firing when in the Off position. The switch is in-line with
552 the positive battery terminal.</p>
553 </div>
554 </div>
555 <div class="sect2">
556 <h3 id="_understanding_beeps">3.5. Understanding Beeps</h3>
557 <div class="paragraph">
558 <p>Altus Metrum flight computers include a beeper to
559 provide information about the state of the system.
560 TeleMini doesn&#8217;t have room for a beeper, so instead it
561 uses an LED, which works the same, except for every
562 beep is replaced with the flash of the LED.</p>
563 </div>
564 <div class="paragraph">
565 <p>Here&#8217;s a short summary of all of the modes and the
566 beeping
567 (or flashing, in the case of TeleMini v1)
568 that accompanies each mode. In the description of the
569 beeping pattern, “dit” means a short beep while "dah"
570 means a long beep (three times as long). “Brap” means
571 a long dissonant tone.</p>
572 </div>
573 <table class="tableblock frame-all grid-all stretch">
574 <caption class="title">Table 1. AltOS Modes</caption>
575 <colgroup>
576 <col style="width: 16.6666%;">
577 <col style="width: 16.6666%;">
578 <col style="width: 33.3333%;">
579 <col style="width: 33.3335%;">
580 </colgroup>
581 <tbody>
582 <tr>
583 <td class="tableblock halign-left valign-top"><p class="tableblock">Mode Name</p></td>
584 <td class="tableblock halign-left valign-top"><p class="tableblock">Abbreviation</p></td>
585 <td class="tableblock halign-left valign-top"><p class="tableblock">Beeps</p></td>
586 <td class="tableblock halign-left valign-top"><p class="tableblock">Description</p></td>
587 </tr>
588 <tr>
589 <td class="tableblock halign-left valign-top"><p class="tableblock">Startup</p></td>
590 <td class="tableblock halign-left valign-top"><p class="tableblock">S</p></td>
591 <td class="tableblock halign-left valign-top"><p class="tableblock">battery voltage in decivolts</p></td>
592 <td class="tableblock halign-left valign-top"><p class="tableblock">Calibrating sensors, detecting orientation.</p></td>
593 </tr>
594 <tr>
595 <td class="tableblock halign-left valign-top"><p class="tableblock">Idle</p></td>
596 <td class="tableblock halign-left valign-top"><p class="tableblock">I</p></td>
597 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
598 <td class="tableblock halign-left valign-top"><p class="tableblock">Ready to accept commands over USB
599 or radio link.</p></td>
600 </tr>
601 <tr>
602 <td class="tableblock halign-left valign-top"><p class="tableblock">Pad</p></td>
603 <td class="tableblock halign-left valign-top"><p class="tableblock">P</p></td>
604 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dah dit</p></td>
605 <td class="tableblock halign-left valign-top"><p class="tableblock">Waiting for launch. Not listening for commands.</p></td>
606 </tr>
607 <tr>
608 <td class="tableblock halign-left valign-top"><p class="tableblock">Boost</p></td>
609 <td class="tableblock halign-left valign-top"><p class="tableblock">B</p></td>
610 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dit</p></td>
611 <td class="tableblock halign-left valign-top"><p class="tableblock">Accelerating upwards.</p></td>
612 </tr>
613 <tr>
614 <td class="tableblock halign-left valign-top"><p class="tableblock">Fast</p></td>
615 <td class="tableblock halign-left valign-top"><p class="tableblock">F</p></td>
616 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dah dit</p></td>
617 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, but moving faster than 200m/s.</p></td>
618 </tr>
619 <tr>
620 <td class="tableblock halign-left valign-top"><p class="tableblock">Coast</p></td>
621 <td class="tableblock halign-left valign-top"><p class="tableblock">C</p></td>
622 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dah dit</p></td>
623 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, moving slower than 200m/s</p></td>
624 </tr>
625 <tr>
626 <td class="tableblock halign-left valign-top"><p class="tableblock">Drogue</p></td>
627 <td class="tableblock halign-left valign-top"><p class="tableblock">D</p></td>
628 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit</p></td>
629 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending after apogee. Above main height.</p></td>
630 </tr>
631 <tr>
632 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
633 <td class="tableblock halign-left valign-top"><p class="tableblock">M</p></td>
634 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dah</p></td>
635 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending. Below main height.</p></td>
636 </tr>
637 <tr>
638 <td class="tableblock halign-left valign-top"><p class="tableblock">Landed</p></td>
639 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
640 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dit dit</p></td>
641 <td class="tableblock halign-left valign-top"><p class="tableblock">Stable altitude for at least ten seconds.</p></td>
642 </tr>
643 <tr>
644 <td class="tableblock halign-left valign-top"><p class="tableblock">Sensor error</p></td>
645 <td class="tableblock halign-left valign-top"><p class="tableblock">X</p></td>
646 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dah</p></td>
647 <td class="tableblock halign-left valign-top"><p class="tableblock">Error detected during sensor calibration.</p></td>
648 </tr>
649 </tbody>
650 </table>
651 <div class="paragraph">
652 <p>Here&#8217;s a summary of all of the Pad and Idle mode
653 indications. In Idle mode, you&#8217;ll hear one of these
654 just once after the two short dits indicating idle
655 mode. In Pad mode, after the dit dah dah dit
656 indicating Pad mode, you&#8217;ll hear these once every five
657 seconds.</p>
658 </div>
659 <table class="tableblock frame-all grid-all stretch">
660 <caption class="title">Table 2. Pad/Idle Indications</caption>
661 <colgroup>
662 <col style="width: 20%;">
663 <col style="width: 20%;">
664 <col style="width: 60%;">
665 </colgroup>
666 <thead>
667 <tr>
668 <th class="tableblock halign-left valign-top">Name</th>
669 <th class="tableblock halign-left valign-top">Beeps</th>
670 <th class="tableblock halign-left valign-top">Description</th>
671 </tr>
672 </thead>
673 <tbody>
674 <tr>
675 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
676 <td class="tableblock halign-left valign-top"><p class="tableblock">brap</p></td>
677 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
678 </tr>
679 <tr>
680 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
681 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
682 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
683 </tr>
684 <tr>
685 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
686 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
687 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
688 </tr>
689 <tr>
690 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
691 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
692 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
693 </tr>
694 <tr>
695 <td class="tableblock halign-left valign-top"><p class="tableblock">Storage Full</p></td>
696 <td class="tableblock halign-left valign-top"><p class="tableblock">warble</p></td>
697 <td class="tableblock halign-left valign-top"><p class="tableblock">On-board data logging storage is full. This will
698 not prevent the flight computer from safely
699 controlling the flight or transmitting telemetry
700 signals, but no record of the flight will be
701 stored in on-board flash.</p></td>
702 </tr>
703 <tr>
704 <td class="tableblock halign-left valign-top"><p class="tableblock">Additional Igniters</p></td>
705 <td class="tableblock halign-left valign-top"><p class="tableblock">four very short beeps</p></td>
706 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity indication for the additional pyro
707 channels on TeleMega, EasyMega and EasyTimer. One high tone for
708 no continuity, one low tone for continuity. On TeleMega and EasyMegay, these are
709 produced after the continuity indicators for the two
710 primary igniter channels.</p></td>
711 </tr>
712 </tbody>
713 </table>
714 <div class="paragraph">
715 <p>For devices with a radio transmitter, in addition to
716 the digital and APRS telemetry signals, you can also
717 receive audio tones with a standard amateur
718 70cm FM receiver. While on the pad, you will hear
719 igniter status once every five seconds.</p>
720 </div>
721 <table class="tableblock frame-all grid-all stretch">
722 <caption class="title">Table 3. Pad Radio Indications</caption>
723 <colgroup>
724 <col style="width: 20%;">
725 <col style="width: 20%;">
726 <col style="width: 60%;">
727 </colgroup>
728 <thead>
729 <tr>
730 <th class="tableblock halign-left valign-top">Name</th>
731 <th class="tableblock halign-left valign-top">Beeps</th>
732 <th class="tableblock halign-left valign-top">Description</th>
733 </tr>
734 </thead>
735 <tbody>
736 <tr>
737 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
738 <td class="tableblock halign-left valign-top"><p class="tableblock">½ second tone</p></td>
739 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
740 </tr>
741 <tr>
742 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
743 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
744 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
745 </tr>
746 <tr>
747 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
748 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
749 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
750 </tr>
751 <tr>
752 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
753 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
754 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
755 </tr>
756 </tbody>
757 </table>
758 <div class="paragraph">
759 <p>During ascent, the tones will be muted to allow the
760 telemetry data to consume the full radio bandwidth.</p>
761 </div>
762 <div class="paragraph">
763 <p>During descent and after landing, a ½ second tone will
764 be transmitted every five seconds. This can be used to
765 find the rocket using RDF techniques when the signal
766 is too weak to receive GPS information via telemetry
767 or APRS.</p>
768 </div>
769 </div>
770 <div class="sect2">
771 <h3 id="_turning_on_the_power">3.6. Turning On the Power</h3>
772 <div class="paragraph">
773 <p>Connect a battery and power switch and turn the switch
774 to "on". The flight computer will signal power on by
775 reporting the battery voltage and then perform an internal self
776 test and sensor calibration.</p>
777 </div>
778 <div class="paragraph">
779 <p>Once the self test and calibration are complete, there
780 are two modes that an Altus Metrum flight computer can
781 operate in:</p>
782 </div>
783 <div class="dlist">
784 <dl>
785 <dt class="hdlist1">Flight/Pad</dt>
786 <dd>
787 <p>The flight computer is waiting to detect
788 launch and then fly the rocket. In this mode, the USB
789 link is
790 disabled, and the radio goes into transmit-only mode.
791 The only way to get out of this
792 mode is to power the flight computer down. See below for how to get the flight
793 computer to come up in Flight/Pad mode at power on.</p>
794 </dd>
795 <dt class="hdlist1">Idle</dt>
796 <dd>
797 <p>The flight computer is ready to communicate over USB
798 and in packet mode over the radio.
799 You can configure
800 the flight computer, download data or display
801 the current state. See below for how to get the flight
802 computer to come up in Idle mode at power on.</p>
803 </dd>
804 </dl>
805 </div>
806 <div class="paragraph">
807 <p>For flight computers with accelerometers (TeleMetrum,
808 EasyMega, TeleMega and EasyTimer), the mode is selected by the
809 orientation of the board during the self test
810 interval. If the board is pointing upwards as if ready
811 to fly, it will enter Flight/Pad mode. Otherwise, it will
812 enter Idle mode.</p>
813 </div>
814 <div class="paragraph">
815 <p>For EasyMini, if the USB cable is connected to a
816 computer, it will enter Idle mode. Otherwise, it will
817 enter Flight/Pad mode.</p>
818 </div>
819 <div class="paragraph">
820 <p>For TeleMini v1.0, if a packet link is waiting to
821 connect when the device is powered on, it will enter
822 Idle mode, otherwise it will enter Flight/Pad mode.</p>
823 </div>
824 <div class="paragraph">
825 <p>You can see in <a href="#_understanding_beeps">Understanding Beeps</a>
826 how to tell which mode the flight computer is in.</p>
827 </div>
828 </div>
829 <div class="sect2">
830 <h3 id="_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</h3>
831 <div class="paragraph">
832 <p>You can use an active switch circuit, such as the
833 Featherweight Magnetic Switch, with any Altus Metrum
834 flight computer. These require three connections, one to
835 the battery, one to the positive power input on the flight
836 computer and one to ground. Find instructions on how to
837 hook these up for each flight computer below. Then follow
838 the instructions that come with your active switch to
839 connect it up.</p>
840 </div>
841 </div>
842 <div class="sect2">
843 <h3 id="_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</h3>
844 <div class="paragraph">
845 <p>As mentioned above in <a href="#_hooking_up_pyro_charges">Hooking Up Pyro Charges</a>, one
846 lead for each of the pyro charges is connected through
847 the power switch directly to the positive battery
848 terminal. The other lead is connected to the pyro
849 circuit, which connects it to the negative battery
850 terminal when the pyro circuit is fired. The pyro
851 circuit on all of the flight computers is designed to
852 handle up to 16V.</p>
853 </div>
854 <div class="paragraph">
855 <p>To use a separate pyro battery, connect the negative pyro
856 battery terminal to the flight computer ground terminal,
857 the the switched positive battery terminal to the igniter
858 and the other
859 igniter lead to the negative pyro terminal on the flight
860 computer. When the pyro channel fires, it will complete the
861 circuit between the negative pyro terminal and the ground
862 terminal, firing the igniter. Specific instructions on how
863 to hook this up for each flight computer will be found
864 in the section below for that flight computer.</p>
865 </div>
866 <div class="paragraph">
867 <p>Note that you must include a switch in the positive lead of
868 the pyro battery for safety, as the on-board power switch
869 circuit on our product only controls current flow from the
870 the primary or system battery!</p>
871 </div>
872 </div>
873 <div class="sect2">
874 <h3 id="_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</h3>
875 <div class="paragraph">
876 <p>EasyMini
877 and EasyTimer are
878 designed to use either a
879 lithium polymer battery or any other battery producing
880 between 4 and 12 volts, such as a rectangular 9V
881 battery.</p>
882 </div>
883 <div class="admonitionblock warning">
884 <table>
885 <tr>
886 <td class="icon">
887 <img src="./images/icons/warning.svg" alt="Warning">
888 </td>
889 <td class="content">
890 TeleMini,
891 TeleMega, EasyMega and TeleMetrum are only designed to
892 operate off a single-cell Lithium Polymer battery and
893 cannot be used with any other kind. Connecting a
894 different kind of battery to any of these will destroy
895 the board.
896 </td>
897 </tr>
898 </table>
899 </div>
900 </div>
901 <div class="sect2">
902 <h3 id="_using_packet_link_mode">3.10. Using Packet Link Mode</h3>
903 <div class="paragraph">
904 <p>All AltusMetrum flight computers that have a radio can
905 communicate with the ground station software for
906 configuration and other operations using the Packet
907 Link mode. This uses radio communication instead of a
908 USB cable. To set this up, the ground station software
909 must be configured to the correct data rate, frequency
910 and callsign.</p>
911 </div>
912 <div class="paragraph">
913 <p>You can monitor Packet Link mode from TeleBT or
914 TeleDongle by watching the LEDs. Each time the device
915 transmits, the red LED will flash. When the link is
916 busy, or when the link is not working, the device will
917 transmit 10 times per second, so the LED will flash
918 rapidly. When the link is working and there is no data
919 to send, the link will flash once per second, and the
920 LED will flash more slowly.</p>
921 </div>
922 </div>
923 </div>
924 </div>
925 <div class="sect1">
926 <h2 id="_telemetrum">4. TeleMetrum</h2>
927 <div class="sectionbody">
928 <div class="imageblock">
929 <div class="content">
930 <img src="telemetrum-v2.0-th.jpg" alt="telemetrum v2.0 th" width="400">
931 </div>
932 <div class="title">Figure 1. TeleMetrum v2 Board</div>
933 </div>
934 <div class="imageblock">
935 <div class="content">
936 <img src="telemetrum-v1.1-thside.jpg" alt="telemetrum v1.1 thside" width="400">
937 </div>
938 <div class="title">Figure 2. TeleMetrum v1 Board</div>
939 </div>
940 <div class="paragraph">
941 <p>TeleMetrum is a 1 inch by 2¾ inch circuit board.  It was designed to
942 fit inside coupler for 29mm air-frame tubing, but using it in a tube that
943 small in diameter may require some creativity in mounting and wiring
944 to succeed!  The presence of an accelerometer means TeleMetrum should
945 be aligned along the flight axis of the airframe, and by default the ¼
946 wave UHF wire antenna should be on the nose-cone end of the board.  The
947 antenna wire is about 7 inches long, and wiring for a power switch and
948 the e-matches for apogee and main ejection charges depart from the
949 fin can end of the board, meaning an ideal “simple” avionics
950 bay for TeleMetrum should have at least 10 inches of interior length.</p>
951 </div>
952 <div class="paragraph">
953 <p>There are two generations of the TeleMetrum design. The
954 major changes after v1 generation are:</p>
955 </div>
956 <div class="ulist">
957 <ul>
958 <li>
959 <p>uBlox GPS chip certified for altitude records</p>
960 </li>
961 <li>
962 <p>Higher power radio (40mW vs 10mW)</p>
963 </li>
964 <li>
965 <p>APRS support</p>
966 </li>
967 </ul>
968 </div>
969 <div class="paragraph">
970 <p>Otherwise, they&#8217;re the same size, with mounting holes and
971 screw terminals in the same position.</p>
972 </div>
973 <div class="sect2">
974 <h3 id="_telemetrum_screw_terminals">4.1. TeleMetrum Screw Terminals</h3>
975 <div class="paragraph">
976 <p>TeleMetrum has six screw terminals on the end of the board
977 opposite the telemetry antenna. Two are for the power
978 switch, and two each for the apogee and main igniter
979 circuits. Using the picture above and starting from the top,
980 the terminals are as follows:</p>
981 </div>
982 <table class="tableblock frame-all grid-all stretch">
983 <caption class="title">Table 4. TeleMetrum Screw Terminals</caption>
984 <colgroup>
985 <col style="width: 13.3333%;">
986 <col style="width: 20%;">
987 <col style="width: 66.6667%;">
988 </colgroup>
989 <thead>
990 <tr>
991 <th class="tableblock halign-left valign-top">Terminal #</th>
992 <th class="tableblock halign-left valign-top">Terminal Name</th>
993 <th class="tableblock halign-left valign-top">Description</th>
994 </tr>
995 </thead>
996 <tbody>
997 <tr>
998 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
999 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1000 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1001 </tr>
1002 <tr>
1003 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1004 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1005 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1006 </tr>
1007 <tr>
1008 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1009 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1010 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1011 </tr>
1012 <tr>
1013 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1014 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1015 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1016 </tr>
1017 <tr>
1018 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
1019 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1020 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1021 </tr>
1022 <tr>
1023 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
1024 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1025 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1026 </tr>
1027 </tbody>
1028 </table>
1029 </div>
1030 <div class="sect2">
1031 <h3 id="_using_a_separate_pyro_battery_with_telemetrum">4.2. Using a Separate Pyro Battery with TeleMetrum</h3>
1032 <div class="paragraph">
1033 <p>As described above, using an external pyro battery involves
1034 connecting the negative battery terminal to the flight
1035 computer ground, connecting the positive battery terminal to
1036 one of the igniter leads and connecting the other igniter
1037 lead to the per-channel pyro circuit connection.</p>
1038 </div>
1039 <div class="paragraph">
1040 <p>To connect the negative battery terminal to the TeleMetrum
1041 ground, insert a small piece of wire, 24 to 28 gauge
1042 stranded, into the GND hole just above the screw terminal
1043 strip and solder it in place.</p>
1044 </div>
1045 <div class="paragraph">
1046 <p>Connecting the switched positive battery terminal to the pyro
1047 charges must be done separate from TeleMetrum, by soldering
1048 them together or using some other connector. Note that you
1049 must include a switch in the positive lead from the pyro
1050 battery for safety!</p>
1051 </div>
1052 <div class="paragraph">
1053 <p>The other lead from each pyro charge is then inserted into
1054 the appropriate per-pyro channel screw terminal (terminal 4
1055 for the Main charge, terminal 6 for the Apogee charge).</p>
1056 </div>
1057 </div>
1058 <div class="sect2">
1059 <h3 id="_using_an_active_switch_with_telemetrum">4.3. Using an Active Switch with TeleMetrum</h3>
1060 <div class="paragraph">
1061 <p>As explained above, an external active switch requires three
1062 connections, one to the positive battery terminal, one to
1063 the flight computer positive input and one to ground.</p>
1064 </div>
1065 <div class="paragraph">
1066 <p>The positive battery terminal is available on screw terminal
1067 2, the positive flight computer input is on terminal 1. To
1068 hook a lead to ground, solder a piece of wire, 24 to 28
1069 gauge stranded, to the GND hole just above terminal 1.</p>
1070 </div>
1071 </div>
1072 </div>
1073 </div>
1074 <div class="sect1">
1075 <h2 id="_telemini">5. TeleMini</h2>
1076 <div class="sectionbody">
1077 <div class="imageblock">
1078 <div class="content">
1079 <img src="telemini-v3.0-top.jpg" alt="telemini v3.0 top" width="400">
1080 </div>
1081 <div class="title">Figure 3. TeleMini v3 Board</div>
1082 </div>
1083 <div class="imageblock">
1084 <div class="content">
1085 <img src="telemini-v3.0-bottom.jpg" alt="telemini v3.0 bottom" width="400">
1086 </div>
1087 </div>
1088 <div class="paragraph">
1089 <p>TeleMini v3 is 0.5 inches by 1.67 inches.  It was
1090 designed to fit inside an 18mm air-frame tube, but using it in
1091 a tube that small in diameter may require some creativity in
1092 mounting and wiring to succeed!  Since there is no
1093 accelerometer, TeleMini can be mounted in any convenient
1094 orientation.  The default ¼ wave UHF wire antenna attached to
1095 the center of one end of the board is about 7 inches long. Screw
1096 terminals for the power switch are located in the
1097 middle of the board. Screw terminals for the e-matches for
1098 apogee and main ejection charges depart from the other end of
1099 the board, meaning an ideal “simple” avionics bay for TeleMini
1100 should have at least 9 inches of interior length.</p>
1101 </div>
1102 <div class="sect2">
1103 <h3 id="_telemini_v3_screw_terminals">5.1. TeleMini v3 Screw Terminals</h3>
1104 <div class="paragraph">
1105 <p>TeleMini v3 has four screw terminals on the end of the
1106 board opposite the telemetry antenna. Two are for the apogee
1107 and two are for main igniter circuits. Another two
1108 screw terminals are located in the middle of the board
1109 for the power switch.  Using the
1110 picture above and starting from the top for the pyro terminals
1111 and from the left for the power switch terminals, the
1112 connections are as follows:</p>
1113 </div>
1114 <table class="tableblock frame-all grid-all stretch">
1115 <caption class="title">Table 5. TeleMini v3 Screw Terminals</caption>
1116 <colgroup>
1117 <col style="width: 13.3333%;">
1118 <col style="width: 20%;">
1119 <col style="width: 66.6667%;">
1120 </colgroup>
1121 <thead>
1122 <tr>
1123 <th class="tableblock halign-left valign-top">Terminal #</th>
1124 <th class="tableblock halign-left valign-top">Terminal Name</th>
1125 <th class="tableblock halign-left valign-top">Description</th>
1126 </tr>
1127 </thead>
1128 <tbody>
1129 <tr>
1130 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1131 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1132 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1133 </tr>
1134 <tr>
1135 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1136 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1137 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1138 </tr>
1139 <tr>
1140 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1141 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1142 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1143 </tr>
1144 <tr>
1145 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1146 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1147 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1148 </tr>
1149 <tr>
1150 <td class="tableblock halign-left valign-top"><p class="tableblock">Left</p></td>
1151 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1152 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1153 </tr>
1154 <tr>
1155 <td class="tableblock halign-left valign-top"><p class="tableblock">Right</p></td>
1156 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1157 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1158 </tr>
1159 </tbody>
1160 </table>
1161 </div>
1162 <div class="sect2">
1163 <h3 id="_using_a_separate_pyro_battery_with_telemini_v3">5.2. Using a Separate Pyro Battery with TeleMini v3</h3>
1164 <div class="paragraph">
1165 <p>As described above, using an external pyro battery involves
1166 connecting the negative battery terminal to the flight
1167 computer ground, connecting the switched positive battery
1168 terminal to one of the igniter leads and connecting the other
1169 igniter lead to the per-channel pyro circuit connection.
1170 Because there is no solid ground connection to use on
1171 TeleMini, this is not recommended.</p>
1172 </div>
1173 <div class="paragraph">
1174 <p>The only available ground connection on TeleMini v3 are
1175 the two mounting holes next to the telemetry
1176 antenna. Somehow connect a small piece of wire to one of
1177 those holes and hook it to the negative pyro battery terminal.</p>
1178 </div>
1179 <div class="paragraph">
1180 <p>Connecting the positive battery terminal to the pyro
1181 charges must be done separate from TeleMini v3, by soldering
1182 them together or using some other connector.  Note that you
1183 must include a switch in the pyro battery positive lead for
1184 safety!</p>
1185 </div>
1186 <div class="paragraph">
1187 <p>The other lead from each pyro charge is then inserted into
1188 the appropriate per-pyro channel screw terminal (terminal 3 for the
1189 Main charge, terminal 1 for the Apogee charge).</p>
1190 </div>
1191 </div>
1192 <div class="sect2">
1193 <h3 id="_using_an_active_switch_with_telemini_v3">5.3. Using an Active Switch with TeleMini v3</h3>
1194 <div class="paragraph">
1195 <p>As explained above, an external active switch requires three
1196 connections, one to the positive battery terminal, one to
1197 the flight computer positive input and one to ground. Again,
1198 because TeleMini doesn&#8217;t have any good ground connection,
1199 this is not recommended.</p>
1200 </div>
1201 <div class="paragraph">
1202 <p>The positive battery terminal is available on the Right
1203 power switch wire, the positive flight computer input is on
1204 the left power switch wire. Hook a lead to either of the
1205 mounting holes for a ground connection.</p>
1206 </div>
1207 </div>
1208 <div class="sect2">
1209 <h3 id="_using_packet_link_mode_with_telemini">5.4. Using Packet Link Mode with TeleMini</h3>
1210 <div class="paragraph">
1211 <p>After TeleMini powers up, it will check to see if some
1212 device is attempting to communicate with it using
1213 Packet Link Mode. If so, it will switch to idle mode
1214 and start communicating. To switch to flight mode,
1215 reboot the device either over the radio link or by
1216 powering it off and back on.</p>
1217 </div>
1218 <div class="paragraph">
1219 <p>If no ground station is attempting to communicate
1220 using Packet Link Mode, TeleMini will enter pad mode
1221 and prepare for flight.</p>
1222 </div>
1223 <div class="paragraph">
1224 <p>The sequence of operations to use Packet Link Mode
1225 with TeleMini is:</p>
1226 </div>
1227 <div class="olist arabic">
1228 <ol class="arabic">
1229 <li>
1230 <p>Configure the ground station data rate, frequency
1231 and callsign to match the TeleMini settings.</p>
1232 </li>
1233 <li>
1234 <p>Start Packet Link Mode in the ground station by
1235 selecting the desired operation (Safe Flight Data,
1236 Configure Altimeter, Fire Igniter or Monitor
1237 Idle). Select the TeleBT or TeleDongle device. The
1238 red LED should begin flashing rapidly.</p>
1239 </li>
1240 <li>
1241 <p>Turn on TeleMini. You should see the red LED flash
1242 very rapidly during the initial communication burst,
1243 but it should then slow down when the link is idle.</p>
1244 </li>
1245 </ol>
1246 </div>
1247 <div class="paragraph">
1248 <p>Once TeleMini is in Idle mode, it will stay in that
1249 mode until rebooted. That means you can stop one
1250 Packet Link operation, wait a while and start another
1251 Packet Link operation.</p>
1252 </div>
1253 </div>
1254 <div class="sect2">
1255 <h3 id="_forcing_telemini_radio_parameters_to_known_defaults">5.5. Forcing TeleMini radio parameters to known defaults</h3>
1256 <div class="paragraph">
1257 <p>If you don&#8217;t know what the TeleMini frequency and
1258 callsign settings are, you can temporarily force it
1259 back to the original default values (frequency
1260 434.550MHz, callsign N0CALL) by connecting a wire
1261 between hole 3 and hole 6 on the debug connector. Hole
1262 3 has the square pad around it, hole 6 is the one
1263 nearest the MS5607 baro sensor, which is a rectangular
1264 component with a metal cap that has two holes in it.</p>
1265 </div>
1266 <div class="paragraph">
1267 <p>Once TeleMini has been powered up with this wire
1268 connected, the wire may be removed. The radio
1269 parameters will stay set to these default values until
1270 changed by the user or when the device is rebooted.</p>
1271 </div>
1272 </div>
1273 <div class="sect2">
1274 <h3 id="_telemini_v1">5.6. TeleMini v1</h3>
1275 <div class="paragraph">
1276 <p>TeleMini v1 is the earlier version of this product. It
1277 has a lower-power radio, less storage, no beeper and
1278 soldered-in wires instead of screw terminals for the
1279 power switch.</p>
1280 </div>
1281 <div class="imageblock">
1282 <div class="content">
1283 <img src="telemini-v1-top.jpg" alt="telemini v1 top" width="400">
1284 </div>
1285 <div class="title">Figure 4. TeleMini v1 Board</div>
1286 </div>
1287 </div>
1288 </div>
1289 </div>
1290 <div class="sect1">
1291 <h2 id="_easymini">6. EasyMini</h2>
1292 <div class="sectionbody">
1293 <div class="imageblock">
1294 <div class="content">
1295 <img src="easymini-top.jpg" alt="easymini top" width="400">
1296 </div>
1297 <div class="title">Figure 5. EasyMini Board</div>
1298 </div>
1299 <div class="paragraph">
1300 <p>EasyMini is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1301 designed to fit in a 24mm coupler tube.</p>
1302 </div>
1303 <div class="paragraph">
1304 <p>You usually don&#8217;t need to configure EasyMini at all; it&#8217;s set
1305 up to do dual-deployment with an event at apogee to separate
1306 the airframe and deploy a drogue and another event at 250m
1307 (820ft) to deploy the main. Install EasyMini in your airframe,
1308 hook up a battery, igniters and a power switch and you&#8217;re
1309 ready to fly.</p>
1310 </div>
1311 <div class="sect2">
1312 <h3 id="_easymini_screw_terminals">6.1. EasyMini Screw Terminals</h3>
1313 <div class="paragraph">
1314 <p>EasyMini has two sets of four screw terminals near one end of the
1315 board. Using the picture
1316 above, the top four have connections for the main pyro
1317 circuit and an external battery and the bottom four have
1318 connections for the apogee pyro circuit and the power
1319 switch. Counting from the left, the connections are as follows:</p>
1320 </div>
1321 <table class="tableblock frame-all grid-all stretch">
1322 <caption class="title">Table 6. EasyMini Screw Terminals</caption>
1323 <colgroup>
1324 <col style="width: 13.3333%;">
1325 <col style="width: 20%;">
1326 <col style="width: 66.6667%;">
1327 </colgroup>
1328 <thead>
1329 <tr>
1330 <th class="tableblock halign-left valign-top">Terminal #</th>
1331 <th class="tableblock halign-left valign-top">Terminal Name</th>
1332 <th class="tableblock halign-left valign-top">Description</th>
1333 </tr>
1334 </thead>
1335 <tbody>
1336 <tr>
1337 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1338 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1339 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1340 </tr>
1341 <tr>
1342 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1343 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1344 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1345 </tr>
1346 <tr>
1347 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1348 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1349 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1350 </tr>
1351 <tr>
1352 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1353 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1354 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1355 </tr>
1356 <tr>
1357 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1358 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1359 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1360 </tr>
1361 <tr>
1362 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1363 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1364 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1365 </tr>
1366 <tr>
1367 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1368 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1369 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1370 </tr>
1371 <tr>
1372 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1373 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1374 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1375 </tr>
1376 </tbody>
1377 </table>
1378 </div>
1379 <div class="sect2">
1380 <h3 id="_connecting_a_battery_to_easymini">6.2. Connecting A Battery To EasyMini</h3>
1381 <div class="paragraph">
1382 <p>There are two possible battery connections on
1383 EasyMini. You can use either method; both feed
1384 through the power switch terminals.</p>
1385 </div>
1386 <div class="paragraph">
1387 <p>One battery connection is the standard Altus Metrum
1388 white JST plug. This mates with single-cell Lithium
1389 Polymer batteries sold by Altus Metrum.</p>
1390 </div>
1391 <div class="paragraph">
1392 <p>The other is a pair of screw terminals marked 'Battery
1393 +' and 'Battery -'. Connect a battery from 4 to 12
1394 volts to these terminals, being careful to match polarity.</p>
1395 </div>
1396 </div>
1397 <div class="sect2">
1398 <h3 id="_charging_lithium_batteries">6.3. Charging Lithium Batteries</h3>
1399 <div class="paragraph">
1400 <p>Because EasyMini allows for batteries other than the
1401 standard Altus Metrum Lithium Polymer cells, it cannot
1402 incorporate a battery charger circuit. Therefore, when
1403 using a Litium Polymer cell, you&#8217;ll need an external
1404 charger. These are available from Altus Metrum, or
1405 from Spark Fun.</p>
1406 </div>
1407 </div>
1408 <div class="sect2">
1409 <h3 id="_using_a_separate_pyro_battery_with_easymini">6.4. Using a Separate Pyro Battery with EasyMini</h3>
1410 <div class="paragraph">
1411 <p>As described above, using an external pyro battery involves
1412 connecting the negative battery terminal to the flight
1413 computer ground, connecting the positive battery terminal to
1414 one of the igniter leads and connecting the other igniter
1415 lead to the per-channel pyro circuit connection.</p>
1416 </div>
1417 <div class="paragraph">
1418 <p>To connect the negative pyro battery terminal to EasyMini
1419 ground, connect it to the negative external battery
1420 connection, top terminal 4.</p>
1421 </div>
1422 <div class="paragraph">
1423 <p>Connecting the switched positive battery terminal to the pyro
1424 charges must be done separate from EasyMini, by soldering
1425 them together or using some other connector.  Note that for
1426 safety, you must put a switch between the pyro battery and
1427 the rest of the circuit!</p>
1428 </div>
1429 <div class="paragraph">
1430 <p>The other lead from each pyro charge is then inserted into
1431 the appropriate per-pyro channel screw terminal (top
1432 terminal 1 for the Main charge, bottom terminal 1 for the
1433 Apogee charge).</p>
1434 </div>
1435 </div>
1436 <div class="sect2">
1437 <h3 id="_using_an_active_switch_with_easymini">6.5. Using an Active Switch with EasyMini</h3>
1438 <div class="paragraph">
1439 <p>As explained above, an external active switch requires three
1440 connections, one to the positive battery terminal, one to
1441 the flight computer positive input and one to ground. Use
1442 the negative external battery connection, top terminal 4 for
1443 ground.</p>
1444 </div>
1445 <div class="paragraph">
1446 <p>The positive battery terminal is available on bottom
1447 terminal 4, the positive flight computer input is on the
1448 bottom terminal 3.</p>
1449 </div>
1450 </div>
1451 </div>
1452 </div>
1453 <div class="sect1">
1454 <h2 id="_telemega">7. TeleMega</h2>
1455 <div class="sectionbody">
1456 <div class="imageblock">
1457 <div class="content">
1458 <img src="telemega-v1.0-top.jpg" alt="telemega v1.0 top" width="400">
1459 </div>
1460 <div class="title">Figure 6. TeleMega Board</div>
1461 </div>
1462 <div class="paragraph">
1463 <p>TeleMega is a 1¼ inch by 3¼ inch circuit board. It was
1464 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1465 TeleMega has an accelerometer and so it must be mounted so that
1466 the board is aligned with the flight axis. It can be mounted
1467 either antenna up or down.</p>
1468 </div>
1469 <div class="paragraph">
1470 <p>TeleMega v2.0 has a few minor changes from v1.0:</p>
1471 </div>
1472 <div class="ulist">
1473 <ul>
1474 <li>
1475 <p>Companion connector matches EasyMega functions</p>
1476 </li>
1477 <li>
1478 <p>Serial port connector replaced with servo connector with
1479 support for up to 4 PWM channels.</p>
1480 </li>
1481 <li>
1482 <p>Radio switched from cc1120 to cc1200.</p>
1483 </li>
1484 </ul>
1485 </div>
1486 <div class="paragraph">
1487 <p>None of these affect operation using the stock firmware, but
1488 they do mean that the device needs different firmware to
1489 operate correctly, so make sure you load the right firmware
1490 when reflashing the device.</p>
1491 </div>
1492 <div class="sect2">
1493 <h3 id="_telemega_screw_terminals">7.1. TeleMega Screw Terminals</h3>
1494 <div class="paragraph">
1495 <p>TeleMega has two sets of nine screw terminals on the end of
1496 the board opposite the telemetry antenna. They are as follows:</p>
1497 </div>
1498 <table class="tableblock frame-all grid-all stretch">
1499 <caption class="title">Table 7. TeleMega Screw Terminals</caption>
1500 <colgroup>
1501 <col style="width: 13.3333%;">
1502 <col style="width: 20%;">
1503 <col style="width: 66.6667%;">
1504 </colgroup>
1505 <thead>
1506 <tr>
1507 <th class="tableblock halign-left valign-top">Terminal #</th>
1508 <th class="tableblock halign-left valign-top">Terminal Name</th>
1509 <th class="tableblock halign-left valign-top">Description</th>
1510 </tr>
1511 </thead>
1512 <tbody>
1513 <tr>
1514 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1515 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1516 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1517 </tr>
1518 <tr>
1519 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1520 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1521 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1522 </tr>
1523 <tr>
1524 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1525 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1526 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1527 </tr>
1528 <tr>
1529 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1530 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1531 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1532 </tr>
1533 <tr>
1534 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1535 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1536 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1537 </tr>
1538 <tr>
1539 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1540 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1541 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1542 </tr>
1543 <tr>
1544 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1545 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1546 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1547 </tr>
1548 <tr>
1549 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1550 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1551 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1552 </tr>
1553 <tr>
1554 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1555 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1556 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1557 </tr>
1558 <tr>
1559 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1560 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1561 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1562 </tr>
1563 <tr>
1564 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1565 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1566 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1567 </tr>
1568 <tr>
1569 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1570 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1571 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1572 </tr>
1573 <tr>
1574 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1575 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1576 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1577 </tr>
1578 <tr>
1579 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1580 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1581 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1582 </tr>
1583 <tr>
1584 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1585 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1586 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1587 </tr>
1588 <tr>
1589 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1590 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1591 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1592 </tr>
1593 <tr>
1594 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1595 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1596 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1597 </tr>
1598 <tr>
1599 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1600 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1601 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1602 </tr>
1603 </tbody>
1604 </table>
1605 </div>
1606 <div class="sect2">
1607 <h3 id="_using_a_separate_pyro_battery_with_telemega">7.2. Using a Separate Pyro Battery with TeleMega</h3>
1608 <div class="paragraph">
1609 <p>TeleMega provides explicit support for an external pyro
1610 battery. All that is required is to remove the jumper
1611 between the lipo terminal (Bottom 3) and the pyro terminal
1612 (Bottom 2). Then hook the negative pyro battery terminal to
1613 ground (Bottom 1) and the switched positive pyro battery to
1614 the pyro battery input (Bottom 2). Note that you must include
1615 a switch between the pyro battery and the board for safety,
1616 as the on-board power switch circuit only supports the primary
1617 battery!  You can then use the existing pyro screw
1618 terminals to hook up all of the pyro charges.</p>
1619 </div>
1620 </div>
1621 <div class="sect2">
1622 <h3 id="_using_only_one_battery_with_telemega">7.3. Using Only One Battery With TeleMega</h3>
1623 <div class="paragraph">
1624 <p>Because TeleMega has built-in support for a separate pyro
1625 battery, if you want to fly with just one battery running
1626 both the computer and firing the charges, you need to
1627 connect the flight computer battery to the pyro
1628 circuit. TeleMega has two screw terminals for this—hook a
1629 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1630 (Bottom 2).</p>
1631 </div>
1632 </div>
1633 <div class="sect2">
1634 <h3 id="_using_an_active_switch_with_telemega">7.4. Using an Active Switch with TeleMega</h3>
1635 <div class="paragraph">
1636 <p>As explained above, an external active switch requires three
1637 connections, one to the positive battery terminal, one to
1638 the flight computer positive input and one to ground.</p>
1639 </div>
1640 <div class="paragraph">
1641 <p>The positive battery terminal is available on Top terminal
1642 1, the positive flight computer input is on Top terminal
1643 2. Ground is on Top terminal 3.</p>
1644 </div>
1645 </div>
1646 </div>
1647 </div>
1648 <div class="sect1">
1649 <h2 id="_easymega">8. EasyMega</h2>
1650 <div class="sectionbody">
1651 <div class="imageblock">
1652 <div class="content">
1653 <img src="easymega-v1.0-top.jpg" alt="easymega v1.0 top" width="400">
1654 </div>
1655 <div class="title">Figure 7. EasyMega Board</div>
1656 </div>
1657 <div class="paragraph">
1658 <p>EasyMega is a 1¼ inch by 2¼ inch circuit board. It was
1659 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1660 EasyMega has an accelerometer and so it must be mounted so that
1661 the board is aligned with the flight axis. It can be mounted
1662 either antenna up or down.</p>
1663 </div>
1664 <div class="sect2">
1665 <h3 id="_easymega_screw_terminals">8.1. EasyMega Screw Terminals</h3>
1666 <div class="paragraph">
1667 <p>EasyMega has two sets of nine screw terminals on the end of
1668 the board opposite the telemetry antenna. They are as follows:</p>
1669 </div>
1670 <table class="tableblock frame-all grid-all stretch">
1671 <caption class="title">Table 8. EasyMega Screw Terminals</caption>
1672 <colgroup>
1673 <col style="width: 13.3333%;">
1674 <col style="width: 20%;">
1675 <col style="width: 66.6667%;">
1676 </colgroup>
1677 <thead>
1678 <tr>
1679 <th class="tableblock halign-left valign-top">Terminal #</th>
1680 <th class="tableblock halign-left valign-top">Terminal Name</th>
1681 <th class="tableblock halign-left valign-top">Description</th>
1682 </tr>
1683 </thead>
1684 <tbody>
1685 <tr>
1686 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1687 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1688 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1689 </tr>
1690 <tr>
1691 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1692 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1693 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1694 </tr>
1695 <tr>
1696 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1697 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1698 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1699 </tr>
1700 <tr>
1701 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1702 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1703 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1704 </tr>
1705 <tr>
1706 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1707 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1708 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1709 </tr>
1710 <tr>
1711 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1712 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1713 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1714 </tr>
1715 <tr>
1716 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1717 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1718 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1719 </tr>
1720 <tr>
1721 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1722 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1723 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1724 </tr>
1725 <tr>
1726 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1727 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1728 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1729 </tr>
1730 <tr>
1731 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1732 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1733 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1734 </tr>
1735 <tr>
1736 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1737 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1738 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1739 </tr>
1740 <tr>
1741 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1742 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1743 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1744 </tr>
1745 <tr>
1746 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1747 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1748 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1749 </tr>
1750 <tr>
1751 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1752 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1753 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1754 </tr>
1755 <tr>
1756 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1757 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1758 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1759 </tr>
1760 <tr>
1761 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1762 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1763 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1764 </tr>
1765 <tr>
1766 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1767 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1768 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1769 </tr>
1770 <tr>
1771 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1772 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1773 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1774 </tr>
1775 </tbody>
1776 </table>
1777 </div>
1778 <div class="sect2">
1779 <h3 id="_using_a_separate_pyro_battery_with_easymega">8.2. Using a Separate Pyro Battery with EasyMega</h3>
1780 <div class="paragraph">
1781 <p>EasyMega provides explicit support for an external pyro
1782 battery. All that is required is to remove the jumper
1783 between the lipo terminal (Bottom 3) and the pyro terminal
1784 (Bottom 2). Then hook the negative pyro battery terminal to
1785 ground (Bottom 1) and the switched positive pyro battery to
1786 the pyro battery input (Bottom 2). Note that you must include
1787 a switch between the pyro battery and the board for safety,
1788 as the on-board power switch circuit only supports the primary
1789 battery!  You can then use the existing pyro screw
1790 terminals to hook up all of the pyro charges.</p>
1791 </div>
1792 </div>
1793 <div class="sect2">
1794 <h3 id="_using_only_one_battery_with_easymega">8.3. Using Only One Battery With EasyMega</h3>
1795 <div class="paragraph">
1796 <p>Because EasyMega has built-in support for a separate pyro
1797 battery, if you want to fly with just one battery running
1798 both the computer and firing the charges, you need to
1799 connect the flight computer battery to the pyro
1800 circuit. EasyMega has two screw terminals for this—hook a
1801 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1802 (Bottom 2).</p>
1803 </div>
1804 </div>
1805 <div class="sect2">
1806 <h3 id="_using_an_active_switch_with_easymega">8.4. Using an Active Switch with EasyMega</h3>
1807 <div class="paragraph">
1808 <p>As explained above, an external active switch requires three
1809 connections, one to the positive battery terminal, one to
1810 the flight computer positive input and one to ground.</p>
1811 </div>
1812 <div class="paragraph">
1813 <p>The positive battery terminal is available on Top terminal
1814 1, the positive flight computer input is on Top terminal
1815 2. Ground is on Top terminal 3.</p>
1816 </div>
1817 </div>
1818 </div>
1819 </div>
1820 <div class="sect1">
1821 <h2 id="_easytimer">9. EasyTimer</h2>
1822 <div class="sectionbody">
1823 <div class="imageblock">
1824 <div class="content">
1825 <img src="easytimer.jpg" alt="easytimer" width="400">
1826 </div>
1827 <div class="title">Figure 8. EasyTimer Board</div>
1828 </div>
1829 <div class="paragraph">
1830 <p>EasyTimer is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1831 designed to fit in a 24mm coupler tube.</p>
1832 </div>
1833 <div class="paragraph">
1834 <p>EasyTimer is designed to control events during ascent. It has
1835 an accelerometer and gyroscope that can measure acceleration
1836 and rotation and compute speed and tilt angle. EasyTimer has
1837 two pyro channels which can be configured to fire at various
1838 points during flight. Because EasyTimer has no barometric
1839 sensor, it cannot be used to fire recovery charges at apogee
1840 or during descent. EasyTimer is configured using the AltosUI
1841 application which is available for Linux, Mac OS X and Windows.</p>
1842 </div>
1843 <div class="sect2">
1844 <h3 id="_easytimer_screw_terminals">9.1. EasyTimer Screw Terminals</h3>
1845 <div class="paragraph">
1846 <p>EasyTimer has two sets of four screw terminals near
1847 one end of the board. Using the picture above, the top
1848 four have connections for pyro channel B and an
1849 external battery and the bottom four have connections
1850 for pyro circuit A and the power switch. Counting from
1851 the left, the connections are as follows:</p>
1852 </div>
1853 <table class="tableblock frame-all grid-all stretch">
1854 <caption class="title">Table 9. EasyTimer Screw Terminals</caption>
1855 <colgroup>
1856 <col style="width: 13.3333%;">
1857 <col style="width: 20%;">
1858 <col style="width: 66.6667%;">
1859 </colgroup>
1860 <thead>
1861 <tr>
1862 <th class="tableblock halign-left valign-top">Terminal #</th>
1863 <th class="tableblock halign-left valign-top">Terminal Name</th>
1864 <th class="tableblock halign-left valign-top">Description</th>
1865 </tr>
1866 </thead>
1867 <tbody>
1868 <tr>
1869 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1870 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1871 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B connection to pyro circuit</p></td>
1872 </tr>
1873 <tr>
1874 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1875 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1876 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B common connection to battery +</p></td>
1877 </tr>
1878 <tr>
1879 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1880 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1881 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1882 </tr>
1883 <tr>
1884 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1885 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1886 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1887 </tr>
1888 <tr>
1889 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1890 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1891 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A connection to pyro circuit</p></td>
1892 </tr>
1893 <tr>
1894 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1895 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1896 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A common connection to battery +</p></td>
1897 </tr>
1898 <tr>
1899 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1900 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1901 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1902 </tr>
1903 <tr>
1904 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1905 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1906 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1907 </tr>
1908 </tbody>
1909 </table>
1910 </div>
1911 <div class="sect2">
1912 <h3 id="_connecting_a_battery_to_easytimer">9.2. Connecting A Battery To EasyTimer</h3>
1913 <div class="paragraph">
1914 <p>There are two possible battery connections on
1915 EasyTimer. You can use either method; both feed
1916 through the power switch terminals.</p>
1917 </div>
1918 <div class="paragraph">
1919 <p>One battery connection is the standard Altus Metrum
1920 white JST plug. This mates with single-cell Lithium
1921 Polymer batteries sold by Altus Metrum.</p>
1922 </div>
1923 <div class="paragraph">
1924 <p>The other is a pair of screw terminals marked 'Battery
1925 +' and 'Battery -'. Connect a battery from 4 to 12
1926 volts to these terminals, being careful to match polarity.</p>
1927 </div>
1928 </div>
1929 <div class="sect2">
1930 <h3 id="_charging_lithium_batteries_2">9.3. Charging Lithium Batteries</h3>
1931 <div class="paragraph">
1932 <p>Because EasyTimer allows for batteries other than the
1933 standard Altus Metrum Lithium Polymer cells, it cannot
1934 incorporate a battery charger circuit. Therefore, when
1935 using a Litium Polymer cell, you&#8217;ll need an external
1936 charger. These are available from Altus Metrum, or
1937 from Spark Fun.</p>
1938 </div>
1939 </div>
1940 <div class="sect2">
1941 <h3 id="_using_a_separate_pyro_battery_with_easytimer">9.4. Using a Separate Pyro Battery with EasyTimer</h3>
1942 <div class="paragraph">
1943 <p>As described above, using an external pyro battery involves
1944 connecting the negative battery terminal to the flight
1945 computer ground, connecting the positive battery terminal to
1946 one of the igniter leads and connecting the other igniter
1947 lead to the per-channel pyro circuit connection.</p>
1948 </div>
1949 <div class="paragraph">
1950 <p>To connect the negative pyro battery terminal to EasyTimer
1951 ground, connect it to the negative external battery
1952 connection, top terminal 4.</p>
1953 </div>
1954 <div class="paragraph">
1955 <p>Connecting the switched positive battery terminal to the pyro
1956 charges must be done separate from EasyTimer, by soldering
1957 them together or using some other connector.  Note that for
1958 safety, you must put a switch between the pyro battery and
1959 the rest of the circuit!</p>
1960 </div>
1961 <div class="paragraph">
1962 <p>The other lead from each pyro charge is then inserted into
1963 the appropriate per-pyro channel screw terminal (top
1964 terminal 1 for pyro channel A charge, bottom terminal 1 for
1965 pyro channel B charge).</p>
1966 </div>
1967 </div>
1968 <div class="sect2">
1969 <h3 id="_using_an_active_switch_with_easytimer">9.5. Using an Active Switch with EasyTimer</h3>
1970 <div class="paragraph">
1971 <p>As explained above, an external active switch requires three
1972 connections, one to the positive battery terminal, one to
1973 the flight computer positive input and one to ground. Use
1974 the negative external battery connection, top terminal 4 for
1975 ground.</p>
1976 </div>
1977 <div class="paragraph">
1978 <p>The positive battery terminal is available on bottom
1979 terminal 4, the positive flight computer input is on the
1980 bottom terminal 3.</p>
1981 </div>
1982 </div>
1983 </div>
1984 </div>
1985 <div class="sect1">
1986 <h2 id="_installation">10. Installation</h2>
1987 <div class="sectionbody">
1988 <div class="paragraph">
1989 <p>A typical installation involves attaching
1990 only a suitable battery, a single pole switch for
1991 power on/off, and two pairs of wires connecting e-matches for the
1992 apogee and main ejection charges.  All Altus Metrum products are
1993 designed for use with single-cell batteries with 3.7 volts
1994 nominal.
1995 EasyMini may also be used with other
1996 batteries as long as they supply between 4 and 12 volts.</p>
1997 </div>
1998 <div class="paragraph">
1999 <p>The battery connectors are a standard 2-pin JST connector; you
2000 can purchase suitable batteries from the any vendor selling
2001 Altus Metrum products. These batteries are
2002 single-cell Lithium Polymer batteries that nominally provide 3.7
2003 volts.  Other vendors sell similar batteries for RC aircraft
2004 using mating connectors, however the polarity for those is
2005 generally reversed from the batteries used by Altus Metrum
2006 products. In particular, the Tenergy batteries supplied for use
2007 in Featherweight flight computers are not compatible with Altus
2008 Metrum flight computers or battery chargers.</p>
2009 </div>
2010 <div class="admonitionblock warning">
2011 <table>
2012 <tr>
2013 <td class="icon">
2014 <img src="./images/icons/warning.svg" alt="Warning">
2015 </td>
2016 <td class="content">
2017 Check polarity and voltage before connecting any battery not
2018 purchased from Altus Metrum.
2019 </td>
2020 </tr>
2021 </table>
2022 </div>
2023 <div class="admonitionblock warning">
2024 <table>
2025 <tr>
2026 <td class="icon">
2027 <img src="./images/icons/warning.svg" alt="Warning">
2028 </td>
2029 <td class="content">
2030 Spark Fun sells batteries that have a matching connector with
2031 the correct polarity. However, these batteries include an
2032 integrated current limiting circuit. That circuit will cause
2033 the battery to shut down when firing the igniter circuit. Do
2034 not use these batteries unless you remove the current limiting
2035 circuit.
2036 </td>
2037 </tr>
2038 </table>
2039 </div>
2040 <div class="paragraph">
2041 <p>By default, we use the unregulated output of the battery
2042 directly to fire ejection charges.  This works marvelously
2043 with standard low-current e-matches like the J-Tek from MJG
2044 Technologies, and with Quest Q2G2 igniters.  However, if you
2045 want or need to use a separate pyro battery, check out
2046 <a href="#_using_a_separate_pyro_battery">Using a Separate Pyro Battery</a> for instructions on how to wire
2047 that up. The altimeters are designed to work with an external
2048 pyro battery of no more than 15 volts.</p>
2049 </div>
2050 <div class="paragraph">
2051 <p>Ejection charges are wired directly to the screw terminal block
2052 at the aft end of the altimeter.  You&#8217;ll need a very small straight
2053 blade screwdriver for these screws, such as you might find in a
2054 jeweler&#8217;s screwdriver set.</p>
2055 </div>
2056 <div class="paragraph">
2057 <p>Except for TeleMini v1.0, the flight computers also use the
2058 screw terminal block for the power switch leads. On TeleMini v1.0,
2059 the power switch leads are soldered directly to the board and
2060 can be connected directly to a switch.</p>
2061 </div>
2062 <div class="paragraph">
2063 <p>For most air-frames, the integrated antennas are more than
2064 adequate.   However, if you are installing in a carbon-fiber or
2065 metal electronics bay which is opaque to RF signals, you may need to
2066 use off-board external antennas instead.  In this case, you can
2067 replace the stock UHF antenna wire with an edge-launched SMA connector,
2068 and, on TeleMetrum v1, you can unplug the integrated GPS
2069 antenna and select an appropriate off-board GPS antenna with
2070 cable terminating in a U.FL connector.</p>
2071 </div>
2072 </div>
2073 </div>
2074 <div class="sect1">
2075 <h2 id="_using_altus_metrum_products">11. Using Altus Metrum Products</h2>
2076 <div class="sectionbody">
2077 <div class="sect2">
2078 <h3 id="_being_legal">11.1. Being Legal</h3>
2079 <div class="paragraph">
2080 <p>In the US, you need an
2081 <a href="http://www.altusmetrum.org/Radio/">amateur radio license</a>
2082 or other authorization to legally operate the radio
2083 transmitters that are part of our products.</p>
2084 </div>
2085 </div>
2086 <div class="sect2">
2087 <h3 id="_in_the_rocket">11.2. In the Rocket</h3>
2088 <div class="paragraph">
2089 <p>In the rocket itself, you just need a flight computer
2090 and a single-cell, 3.7 volt nominal Li-Po rechargeable
2091 battery.
2092 An 850mAh battery weighs less than a 9V
2093 alkaline battery, and will run a TeleMetrum, TeleMega,
2094 EasyMega or EasyTimer for hours.
2095 A 110mAh battery weighs less
2096 than a triple A battery and is a good choice for use
2097 with
2098 TeleMini or
2099 EasyMini.</p>
2100 </div>
2101 <div class="paragraph">
2102 <p>By default, we ship TeleMini, TeleMetrum and TeleMega
2103 flight computers with a simple wire antenna.  If your
2104 electronics bay or the air-frame it resides within is
2105 made of carbon fiber, which is opaque to RF signals,
2106 you may prefer to install an SMA connector so that you
2107 can run a coaxial cable to an antenna mounted
2108 elsewhere in the rocket.  However, note that the GPS
2109 antenna is fixed on all current products, so you
2110 really want to install the flight computer in a bay
2111 made of RF-transparent materials if at all possible.</p>
2112 </div>
2113 </div>
2114 <div class="sect2">
2115 <h3 id="_on_the_ground">11.3. On the Ground</h3>
2116 <div class="paragraph">
2117 <p>To receive the data stream from the rocket, you need
2118 an antenna and short feed-line connected to one of our
2119 <a href="http://www.altusmetrum.org/TeleDongle/">TeleDongle</a>
2120 units.  If possible, use an SMA to BNC adapter instead
2121 of feedline between the antenna feedpoint and
2122 TeleDongle, as this will give you the best
2123 performance.  The TeleDongle in turn plugs directly
2124 into the USB port on a notebook computer.  Because
2125 TeleDongle looks like a simple serial port, your
2126 computer does not require special device
2127 drivers&#8230;&#8203; just plug it in.</p>
2128 </div>
2129 <div class="paragraph">
2130 <p>The GUI tool, AltosUI, is written in Java and runs
2131 across Linux, Mac OS and Windows. There&#8217;s also a suite
2132 of C tools for Linux which can perform most of the
2133 same tasks.</p>
2134 </div>
2135 <div class="paragraph">
2136 <p>Alternatively, a TeleBT attached with an SMA to BNC
2137 adapter at the feed point of a hand-held yagi used in
2138 conjunction with an Android device running AltosDroid
2139 makes an outstanding ground station.</p>
2140 </div>
2141 <div class="paragraph">
2142 <p>After the flight,
2143 you can use the radio link to
2144 extract the more detailed data logged in either
2145 TeleMetrum or TeleMini devices, or
2146 you can use a
2147 USB cable to plug into the flight computer board directly.
2148 A USB cable is also how you
2149 charge the Li-Po battery, so you&#8217;ll want one of those
2150 anyway. The same cable used by lots of digital
2151 cameras and other modern electronic stuff will work
2152 fine.</p>
2153 </div>
2154 <div class="paragraph">
2155 <p>If your rocket lands out of sight, you may enjoy
2156 having a hand-held GPS receiver, so that you can put
2157 in a way-point for the last reported rocket position
2158 before touch-down.  This makes looking for your rocket
2159 a lot like Geo-Caching&#8230;&#8203; just go to the way-point and
2160 look around starting from there.  AltosDroid on an
2161 Android device with GPS receiver works great for this,
2162 too!</p>
2163 </div>
2164 <div class="paragraph">
2165 <p>You may also enjoy having a ham radio “HT” that covers
2166 the 70cm band&#8230;&#8203; you can use that with your antenna to
2167 direction-find the rocket on the ground the same way
2168 you can use a Walston or Beeline tracker.  This can be
2169 handy if the rocket is hiding in sage brush or a tree,
2170 or if the last GPS position doesn&#8217;t get you close
2171 enough because the rocket dropped into a canyon, or
2172 the wind is blowing it across a dry lake bed, or
2173 something like that&#8230;&#8203;  Keith currently uses a Yaesu
2174 FT1D, Bdale has a Yaesu VX-7R, which is a nicer radio
2175 in most ways but doesn&#8217;t support APRS.</p>
2176 </div>
2177 <div class="paragraph">
2178 <p>So, to recap, on the ground the hardware you&#8217;ll need includes:</p>
2179 </div>
2180 <div class="olist arabic">
2181 <ol class="arabic">
2182 <li>
2183 <p>an antenna and feed-line or adapter</p>
2184 </li>
2185 <li>
2186 <p>a TeleDongle</p>
2187 </li>
2188 <li>
2189 <p>a notebook computer</p>
2190 </li>
2191 <li>
2192 <p>optionally, a hand-held GPS receiver</p>
2193 </li>
2194 <li>
2195 <p>optionally, an HT or receiver covering 435 MHz</p>
2196 </li>
2197 </ol>
2198 </div>
2199 <div class="paragraph">
2200 <p>The best hand-held commercial directional antennas we&#8217;ve found for radio
2201 direction finding rockets are from
2202 <a href="http://www.arrowantennas.com/">Arrow Antennas</a>.</p>
2203 </div>
2204 <div class="paragraph">
2205 <p>The 440-3 and 440-5 are both good choices for finding
2206 a TeleMetrum- or TeleMini- equipped rocket when used
2207 with a suitable 70cm HT.  TeleDongle and an SMA to BNC
2208 adapter fit perfectly between the driven element and
2209 reflector of Arrow antennas.</p>
2210 </div>
2211 </div>
2212 <div class="sect2">
2213 <h3 id="_data_analysis">11.4. Data Analysis</h3>
2214 <div class="paragraph">
2215 <p>Our software makes it easy to log the data from each
2216 flight, both the telemetry received during the flight
2217 itself, and the more complete data log recorded in the
2218 flash memory on the altimeter board.  Once this data
2219 is on your computer, our post-flight tools make it
2220 easy to quickly get to the numbers everyone wants,
2221 like apogee altitude, max acceleration, and max
2222 velocity.  You can also generate and view a standard
2223 set of plots showing the altitude, acceleration, and
2224 velocity of the rocket during flight.  And you can
2225 even export a flight log in a format usable with Google
2226 Maps and Google Earth for visualizing the flight path
2227 in two or three dimensions!</p>
2228 </div>
2229 <div class="paragraph">
2230 <p>Our ultimate goal is to emit a set of files for each
2231 flight that can be published as a web page per flight,
2232 or just viewed on your local disk with a web browser.</p>
2233 </div>
2234 </div>
2235 <div class="sect2">
2236 <h3 id="_future_plans">11.5. Future Plans</h3>
2237 <div class="paragraph">
2238 <p>We have designed and prototyped several “companion
2239 boards” that can attach to the companion connector on
2240 TeleMetrum, TeleMega and EasyMega flight computers to
2241 collect more data, provide more pyro channels, and so
2242 forth.  We do not yet know if or when any of these
2243 boards will be produced in enough quantity to sell.
2244 If you have specific interests for data collection or
2245 control of events in your rockets beyond the
2246 capabilities of our existing productions, please let
2247 us know!</p>
2248 </div>
2249 <div class="paragraph">
2250 <p>Because all of our work is open, both the hardware
2251 designs and the software, if you have some great idea
2252 for an addition to the current Altus Metrum family,
2253 feel free to dive in and help!  Or let us know what
2254 you&#8217;d like to see that we aren&#8217;t already working on,
2255 and maybe we&#8217;ll get excited about it too&#8230;&#8203;</p>
2256 </div>
2257 <div class="paragraph">
2258 <p>Watch our <a href="http://altusmetrum.org/">web site</a> for
2259 more news and information as our family of products
2260 evolves!</p>
2261 </div>
2262 </div>
2263 </div>
2264 </div>
2265 <div class="sect1">
2266 <h2 id="_altosui">12. AltosUI</h2>
2267 <div class="sectionbody">
2268 <div class="imageblock">
2269 <div class="content">
2270 <img src="altosui.png" alt="altosui" width="450">
2271 </div>
2272 <div class="title">Figure 9. AltosUI Main Window</div>
2273 </div>
2274 <div class="paragraph">
2275 <p>The AltosUI program provides a graphical user interface for
2276 interacting with the Altus Metrum product family. AltosUI can
2277 monitor telemetry data, configure devices and many other
2278 tasks. The primary interface window provides a selection of
2279 buttons, one for each major activity in the system.  This
2280 chapter is split into sections, each of which documents one of
2281 the tasks provided from the top-level toolbar.</p>
2282 </div>
2283 <div class="sect2">
2284 <h3 id="_monitor_flight">12.1. Monitor Flight</h3>
2285 <div class="paragraph">
2286 <p>Selecting this item brings up a dialog box listing all
2287 of the connected TeleDongle devices. When you choose
2288 one of these, AltosUI will create a window to display
2289 telemetry data as received by the selected TeleDongle
2290 device.</p>
2291 </div>
2292 <div class="imageblock">
2293 <div class="content">
2294 <img src="device-selection.png" alt="device selection" width="300">
2295 </div>
2296 <div class="title">Figure 10. Device Selection Dialog</div>
2297 </div>
2298 <div class="paragraph">
2299 <p>All telemetry data received are automatically recorded
2300 in suitable log files. The name of the files includes
2301 the current date and rocket serial and flight numbers.</p>
2302 </div>
2303 <div class="paragraph">
2304 <p>The radio frequency being monitored by the TeleDongle
2305 device is displayed at the top of the window. You can
2306 configure the frequency by clicking on the frequency
2307 box and selecting the desired frequency. AltosUI
2308 remembers the last frequency selected for each
2309 TeleDongle and selects that automatically the next
2310 time you use that device.</p>
2311 </div>
2312 <div class="paragraph">
2313 <p>Below the TeleDongle frequency selector, the window
2314 contains a few significant pieces of information about
2315 the altimeter providing the telemetry data stream:</p>
2316 </div>
2317 <div class="ulist">
2318 <ul>
2319 <li>
2320 <p>The configured call-sign</p>
2321 </li>
2322 <li>
2323 <p>The device serial number</p>
2324 </li>
2325 <li>
2326 <p>The flight number. Each altimeter remembers how
2327 many times it has flown.</p>
2328 </li>
2329 <li>
2330 <p>The rocket flight state. Each flight passes through
2331 several states including Pad, Boost, Fast, Coast,
2332 Drogue, Main and Landed.</p>
2333 </li>
2334 <li>
2335 <p>The Received Signal Strength Indicator value. This
2336 lets you know how strong a signal TeleDongle is
2337 receiving. At the default data rate, 38400 bps, in
2338 bench testing, the radio inside TeleDongle v0.2
2339 operates down to about -106dBm, while the v3 radio
2340 works down to about -111dBm.  Weaker signals, or an
2341 environment with radio noise may cause the data to
2342 not be received. The packet link uses error
2343 detection and correction techniques which prevent
2344 incorrect data from being reported.</p>
2345 </li>
2346 <li>
2347 <p>The age of the displayed data, in seconds since the
2348 last successfully received telemetry packet.  In
2349 normal operation this will stay in the low single
2350 digits.  If the number starts counting up, then you
2351 are no longer receiving data over the radio link
2352 from the flight computer.</p>
2353 </li>
2354 </ul>
2355 </div>
2356 <div class="paragraph">
2357 <p>Finally, the largest portion of the window contains a
2358 set of tabs, each of which contain some information
2359 about the rocket.  They&#8217;re arranged in 'flight order'
2360 so that as the flight progresses, the selected tab
2361 automatically switches to display data relevant to the
2362 current state of the flight. You can select other tabs
2363 at any time. The final 'table' tab displays all of the
2364 raw telemetry values in one place in a
2365 spreadsheet-like format.</p>
2366 </div>
2367 <div class="sect3">
2368 <h4 id="_launch_pad">12.1.1. Launch Pad</h4>
2369 <div class="imageblock">
2370 <div class="content">
2371 <img src="launch-pad.png" alt="launch pad" width="400">
2372 </div>
2373 <div class="title">Figure 11. Monitor Flight Launch Pad View</div>
2374 </div>
2375 <div class="paragraph">
2376 <p>The 'Launch Pad' tab shows information used to decide when the
2377 rocket is ready for flight. The first elements include red/green
2378 indicators, if any of these is red, you&#8217;ll want to evaluate
2379 whether the rocket is ready to launch:</p>
2380 </div>
2381 <div class="dlist">
2382 <dl>
2383 <dt class="hdlist1">Battery Voltage</dt>
2384 <dd>
2385 <p>This indicates whether the Li-Po battery powering the
2386 flight computer has sufficient charge to last for
2387 the duration of the flight. A value of more than
2388 3.8V is required for a 'GO' status.</p>
2389 </dd>
2390 <dt class="hdlist1">Apogee Igniter Voltage</dt>
2391 <dd>
2392 <p>This indicates whether the apogee
2393 igniter has continuity. If the igniter has a low
2394 resistance, then the voltage measured here will be close
2395 to the Li-Po battery voltage. A value greater than 3.2V is
2396 required for a 'GO' status.</p>
2397 </dd>
2398 <dt class="hdlist1">Main Igniter Voltage</dt>
2399 <dd>
2400 <p>This indicates whether the main
2401 igniter has continuity. If the igniter has a low
2402 resistance, then the voltage measured here will be close
2403 to the Li-Po battery voltage. A value greater than 3.2V is
2404 required for a 'GO' status.</p>
2405 </dd>
2406 <dt class="hdlist1">On-board Data Logging</dt>
2407 <dd>
2408 <p>This indicates whether there is space remaining
2409 on-board to store flight data for the upcoming
2410 flight. If you&#8217;ve downloaded data, but failed to erase
2411 flights, there may not be any space left. Most of our
2412 flight computers can store multiple flights, depending
2413 on the configured maximum flight log size. TeleMini
2414 v1.0 stores only a single flight, so it will need to
2415 be downloaded and erased after each flight to capture
2416 data. This only affects on-board flight logging; the
2417 altimeter will still transmit telemetry and fire
2418 ejection charges at the proper times even if the
2419 flight data storage is full.</p>
2420 </dd>
2421 <dt class="hdlist1">GPS Locked</dt>
2422 <dd>
2423 <p>For a TeleMetrum or TeleMega device, this indicates
2424 whether the GPS receiver is currently able to compute
2425 position information. GPS requires at least 4
2426 satellites to compute an accurate position.</p>
2427 </dd>
2428 <dt class="hdlist1">GPS Ready</dt>
2429 <dd>
2430 <p>For a TeleMetrum or TeleMega device, this indicates
2431 whether GPS has reported at least 10 consecutive
2432 positions without losing lock. This ensures that the
2433 GPS receiver has reliable reception from the
2434 satellites.</p>
2435 </dd>
2436 </dl>
2437 </div>
2438 <div class="paragraph">
2439 <p>The Launchpad tab also shows the computed launch pad
2440 position and altitude, averaging many reported
2441 positions to improve the accuracy of the fix.</p>
2442 </div>
2443 </div>
2444 <div class="sect3">
2445 <h4 id="_ascent">12.1.2. Ascent</h4>
2446 <div class="imageblock">
2447 <div class="content">
2448 <img src="ascent.png" alt="ascent" width="400">
2449 </div>
2450 <div class="title">Figure 12. Monitor Flight Ascent View</div>
2451 </div>
2452 <div class="paragraph">
2453 <p>This tab is shown during Boost, Fast and Coast
2454 phases. The information displayed here helps monitor the
2455 rocket as it heads towards apogee.</p>
2456 </div>
2457 <div class="paragraph">
2458 <p>The height, speed, acceleration and tilt are shown along
2459 with the maximum values for each of them. This allows you to
2460 quickly answer the most commonly asked questions you&#8217;ll hear
2461 during flight.</p>
2462 </div>
2463 <div class="paragraph">
2464 <p>The current latitude and longitude reported by the GPS are
2465 also shown. Note that under high acceleration, these values
2466 may not get updated as the GPS receiver loses position
2467 fix. Once the rocket starts coasting, the receiver should
2468 start reporting position again.</p>
2469 </div>
2470 <div class="paragraph">
2471 <p>Finally, the current igniter voltages are reported as in the
2472 Launch Pad tab. This can help diagnose deployment failures
2473 caused by wiring which comes loose under high acceleration.</p>
2474 </div>
2475 </div>
2476 <div class="sect3">
2477 <h4 id="_descent">12.1.3. Descent</h4>
2478 <div class="imageblock">
2479 <div class="content">
2480 <img src="descent.png" alt="descent" width="400">
2481 </div>
2482 <div class="title">Figure 13. Monitor Flight Descent View</div>
2483 </div>
2484 <div class="paragraph">
2485 <p>Once the rocket has reached apogee and (we hope)
2486 activated the apogee charge, attention switches to
2487 tracking the rocket on the way back to the ground, and
2488 for dual-deploy flights, waiting for the main charge
2489 to fire.</p>
2490 </div>
2491 <div class="paragraph">
2492 <p>To monitor whether the apogee charge operated
2493 correctly, the current descent rate is reported along
2494 with the current height. Good descent rates vary based
2495 on the choice of recovery components, but generally
2496 range from 15-30m/s on drogue and should be below
2497 10m/s when under the main parachute in a dual-deploy
2498 flight.</p>
2499 </div>
2500 <div class="paragraph">
2501 <p>With GPS-equipped flight computers, you can locate the
2502 rocket in the sky using the elevation and bearing
2503 information to figure out where to look. Elevation is
2504 in degrees above the horizon. Bearing is reported in
2505 degrees relative to true north. Range can help figure
2506 out how big the rocket will appear. Ground Distance
2507 shows how far it is to a point directly under the
2508 rocket and can help figure out where the rocket is
2509 likely to land. Note that all of these values are
2510 relative to the pad location. If the elevation is near
2511 90°, the rocket is over the pad, not over you.</p>
2512 </div>
2513 <div class="paragraph">
2514 <p>Finally, the igniter voltages are reported in this tab
2515 as well, both to monitor the main charge as well as to
2516 see what the status of the apogee charge is.  Note
2517 that some commercial e-matches are designed to retain
2518 continuity even after being fired, and will continue
2519 to show as green or return from red to green after
2520 firing.</p>
2521 </div>
2522 </div>
2523 <div class="sect3">
2524 <h4 id="_landed">12.1.4. Landed</h4>
2525 <div class="imageblock">
2526 <div class="content">
2527 <img src="landed.png" alt="landed" width="400">
2528 </div>
2529 <div class="title">Figure 14. Monitor Flight Landed View</div>
2530 </div>
2531 <div class="paragraph">
2532 <p>Once the rocket is on the ground, attention switches
2533 to recovery. While the radio signal is often lost once
2534 the rocket is on the ground, the last reported GPS
2535 position is generally within a short distance of the
2536 actual landing location.</p>
2537 </div>
2538 <div class="paragraph">
2539 <p>The last reported GPS position is reported both by
2540 latitude and longitude as well as a bearing and
2541 distance from the launch pad. The distance should give
2542 you a good idea of whether to walk or hitch a ride.
2543 Take the reported latitude and longitude and enter
2544 them into your hand-held GPS unit and have that
2545 compute a track to the landing location.</p>
2546 </div>
2547 <div class="paragraph">
2548 <p>Our flight computers will continue to transmit RDF
2549 tones after landing, allowing you to locate the rocket
2550 by following the radio signal if necessary. You may
2551 need to get away from the clutter of the flight line,
2552 or even get up on a hill (or your neighbor&#8217;s RV roof)
2553 to receive the RDF signal.</p>
2554 </div>
2555 <div class="paragraph">
2556 <p>The maximum height, speed and acceleration reported
2557 during the flight are displayed for your admiring
2558 observers.  The accuracy of these immediate values
2559 depends on the quality of your radio link and how many
2560 packets were received.  Recovering the on-board data
2561 after flight may yield more precise results.</p>
2562 </div>
2563 <div class="paragraph">
2564 <p>To get more detailed information about the flight, you
2565 can click on the 'Graph Flight' button which will
2566 bring up a graph window for the current flight.</p>
2567 </div>
2568 </div>
2569 <div class="sect3">
2570 <h4 id="_table">12.1.5. Table</h4>
2571 <div class="imageblock">
2572 <div class="content">
2573 <img src="table.png" alt="table" width="400">
2574 </div>
2575 <div class="title">Figure 15. Monitor Flight Table View</div>
2576 </div>
2577 <div class="paragraph">
2578 <p>The table view shows all of the data available from the
2579 flight computer. Probably the most useful data on
2580 this tab is the detailed GPS information, which includes
2581 horizontal dilution of precision information, and
2582 information about the signal being received from the satellites.</p>
2583 </div>
2584 </div>
2585 <div class="sect3">
2586 <h4 id="_site_map">12.1.6. Site Map</h4>
2587 <div class="imageblock">
2588 <div class="content">
2589 <img src="site-map.png" alt="site map" width="400">
2590 </div>
2591 <div class="title">Figure 16. Monitor Flight Site Map View</div>
2592 </div>
2593 <div class="paragraph">
2594 <p>When the TeleMetrum has a GPS fix, the Site Map tab
2595 will map the rocket&#8217;s position to make it easier for
2596 you to locate the rocket, both while it is in the air,
2597 and when it has landed. The rocket&#8217;s state is
2598 indicated by color: white for pad, red for boost, pink
2599 for fast, yellow for coast, light blue for drogue,
2600 dark blue for main, and black for landed.</p>
2601 </div>
2602 <div class="paragraph">
2603 <p>The map&#8217;s default scale is approximately 3m (10ft) per
2604 pixel. The map can be dragged using the left mouse
2605 button. The map will attempt to keep the rocket
2606 roughly centered while data is being received.</p>
2607 </div>
2608 <div class="paragraph">
2609 <p>You can adjust the style of map and the zoom level
2610 with buttons on the right side of the map window. You
2611 can draw a line on the map by moving the mouse over
2612 the map with a button other than the left one pressed,
2613 or by pressing the left button while also holding down
2614 the shift key. The length of the line in real-world
2615 units will be shown at the start of the line.</p>
2616 </div>
2617 <div class="paragraph">
2618 <p>Images are fetched automatically via the Google Maps
2619 Static API, and cached on disk for reuse. If map
2620 images cannot be downloaded, the rocket&#8217;s path will be
2621 traced on a dark gray background instead.</p>
2622 </div>
2623 <div class="paragraph">
2624 <p>You can pre-load images for your favorite launch sites
2625 before you leave home; check out <a href="#_load_maps">Load Maps</a>.</p>
2626 </div>
2627 </div>
2628 <div class="sect3">
2629 <h4 id="_igniter">12.1.7. Igniter</h4>
2630 <div class="imageblock">
2631 <div class="content">
2632 <img src="ignitor.png" alt="ignitor" width="400">
2633 </div>
2634 <div class="title">Figure 17. Monitor Flight Additional Igniter View</div>
2635 </div>
2636 <div class="paragraph">
2637 <p>TeleMega includes four additional programmable pyro
2638 channels. The Ignitor tab shows whether each of them has
2639 continuity. If an ignitor has a low resistance, then the
2640 voltage measured here will be close to the pyro battery
2641 voltage. A value greater than 3.2V is required for a 'GO'
2642 status.</p>
2643 </div>
2644 </div>
2645 </div>
2646 <div class="sect2">
2647 <h3 id="_save_flight_data">12.2. Save Flight Data</h3>
2648 <div class="paragraph">
2649 <p>The altimeter records flight data to its internal
2650 flash memory.
2651 Data logged on board is recorded at a much
2652 higher rate than the telemetry system can handle, and
2653 is not subject to radio drop-outs. As such, it
2654 provides a more complete and precise record of the
2655 flight.
2656 The 'Save Flight Data' button allows you to
2657 read the flash memory and write it to disk.</p>
2658 </div>
2659 <div class="paragraph">
2660 <p>Clicking on the 'Save Flight Data' button brings up a
2661 list of connected flight computers and TeleDongle
2662 devices. If you select a flight computer, the flight
2663 data will be downloaded from that device directly.
2664 If you select a TeleDongle device, flight data will be
2665 downloaded from a flight computer over radio link via
2666 the specified TeleDongle. See
2667 <a href="#_controlling_an_altimeter_over_the_radio_link">Controlling An Altimeter Over The Radio Link</a> for
2668 more information.</p>
2669 </div>
2670 <div class="paragraph">
2671 <p>After the device has been selected, a dialog showing
2672 the flight data saved in the device will be shown
2673 allowing you to select which flights to download and
2674 which to delete. With version 0.9 or newer firmware,
2675 you must erase flights in order for the space they
2676 consume to be reused by another flight. This prevents
2677 accidentally losing flight data if you neglect to
2678 download data before flying again. Note that if there
2679 is no more space available in the device, then no data
2680 will be recorded during the next flight.</p>
2681 </div>
2682 <div class="paragraph">
2683 <p>The file name for each flight log is computed
2684 automatically from the recorded flight date, altimeter
2685 serial number and flight number information.</p>
2686 </div>
2687 </div>
2688 <div class="sect2">
2689 <h3 id="_replay_flight">12.3. Replay Flight</h3>
2690 <div class="paragraph">
2691 <p>Select this button and you are prompted to select a flight
2692 record file, either a .telem file recording telemetry data or a
2693 .eeprom file containing flight data saved from the altimeter
2694 flash memory.</p>
2695 </div>
2696 <div class="paragraph">
2697 <p>Once a flight record is selected, the flight monitor interface
2698 is displayed and the flight is re-enacted in real
2699 time.
2700 Check
2701 <a href="#_monitor_flight">Monitor Flight</a> to learn how this window operates.</p>
2702 </div>
2703 </div>
2704 <div class="sect2">
2705 <h3 id="_graph_data">12.4. Graph Data</h3>
2706 <div class="paragraph">
2707 <p>Select this button and you are prompted to select a flight
2708 record file, either a .telem file recording telemetry data or a
2709 .eeprom file containing flight data saved from
2710 flash memory.</p>
2711 </div>
2712 <div class="paragraph">
2713 <p>Note that telemetry files will generally produce poor graphs
2714 due to the lower sampling rate and missed telemetry packets.
2715 Use saved flight data in .eeprom files for graphing where possible.</p>
2716 </div>
2717 <div class="paragraph">
2718 <p>Once a flight record is selected, a window with multiple tabs is
2719 opened.</p>
2720 </div>
2721 <div class="sect3">
2722 <h4 id="_flight_graph">12.4.1. Flight Graph</h4>
2723 <div class="imageblock">
2724 <div class="content">
2725 <img src="graph.png" alt="graph" width="400">
2726 </div>
2727 <div class="title">Figure 18. Flight Data Graph</div>
2728 </div>
2729 <div class="paragraph">
2730 <p>By default, the graph contains acceleration (blue),
2731 velocity (green) and altitude (red).</p>
2732 </div>
2733 <div class="paragraph">
2734 <p>The graph can be zoomed into a particular area by
2735 clicking and dragging down and to the right. Once
2736 zoomed, the graph can be reset by clicking and
2737 dragging up and to the left. Holding down control and
2738 clicking and dragging allows the graph to be panned.
2739 The right mouse button causes a pop-up menu to be
2740 displayed, giving you the option save or print the
2741 plot.</p>
2742 </div>
2743 </div>
2744 <div class="sect3">
2745 <h4 id="_configure_graph">12.4.2. Configure Graph</h4>
2746 <div class="imageblock">
2747 <div class="content">
2748 <img src="graph-configure.png" alt="graph configure" width="400">
2749 </div>
2750 <div class="title">Figure 19. Flight Graph Configuration</div>
2751 </div>
2752 <div class="paragraph">
2753 <p>This selects which graph elements to show, and, at the
2754 very bottom. It also lets you configure how
2755 the graph is drawn:</p>
2756 </div>
2757 <div class="ulist">
2758 <ul>
2759 <li>
2760 <p>Whether to use metric or imperial units</p>
2761 </li>
2762 <li>
2763 <p>Whether to show a marker at each data
2764 point. When displaying a small section of
2765 the graph, these can be useful to know what
2766 data values were recorded.</p>
2767 </li>
2768 <li>
2769 <p>How wide to draw the lines in the graph</p>
2770 </li>
2771 <li>
2772 <p>How to filter speed and acceleration data
2773 computed from barometric data. Flight
2774 computers with accelerometers never display
2775 computed acceleration data, and only use
2776 barometric data to compute speed during
2777 descent. Flight computers without
2778 accelerometers always compute both speed and
2779 acceleration from barometric data. A larger
2780 value smooths the data more.</p>
2781 </li>
2782 </ul>
2783 </div>
2784 </div>
2785 <div class="sect3">
2786 <h4 id="_flight_statistics">12.4.3. Flight Statistics</h4>
2787 <div class="imageblock">
2788 <div class="content">
2789 <img src="graph-stats.png" alt="graph stats" width="400">
2790 </div>
2791 <div class="title">Figure 20. Flight Statistics</div>
2792 </div>
2793 <div class="paragraph">
2794 <p>Shows overall data computed from the flight.</p>
2795 </div>
2796 </div>
2797 <div class="sect3">
2798 <h4 id="_map">12.4.4. Map</h4>
2799 <div class="imageblock">
2800 <div class="content">
2801 <img src="graph-map.png" alt="graph map" width="400">
2802 </div>
2803 <div class="title">Figure 21. Flight Map</div>
2804 </div>
2805 <div class="paragraph">
2806 <p>Shows a satellite image of the flight area
2807 overlaid with the path of the flight. The
2808 flight path will have different colored
2809 sections for each state of the flight (just
2810 like the Site Map in Monitor Flight mode):
2811 white for pad, red for boost, pink for fast,
2812 yellow for coast, light blue for drogue, dark
2813 blue for main, and black for landed.</p>
2814 </div>
2815 <div class="paragraph">
2816 <p>The red concentric circles mark the launch
2817 pad, the black concentric circles mark the
2818 landing location. Data for the point along the
2819 along the flight path nearest the cursor will
2820 be displayed at the bottom of the window. This
2821 data includes flight time (so you can
2822 correlate data in the graph window), latitude,
2823 longitude, height above ground and vertical
2824 speed. The selected point will be highlighted
2825 with concentric circles in the same color as
2826 the flight path at that point.</p>
2827 </div>
2828 </div>
2829 </div>
2830 <div class="sect2">
2831 <h3 id="_export_data">12.5. Export Data</h3>
2832 <div class="paragraph">
2833 <p>This tool takes the raw data files and makes them
2834 available for external analysis. When you select this
2835 button, you are prompted to select a flight data file,
2836 which can be either a .eeprom or .telem.  The .eeprom
2837 files contain higher resolution and more continuous
2838 data, while .telem files contain receiver signal
2839 strength information.  Next, a second dialog appears
2840 which is used to select where to write the resulting
2841 file.
2842 It has a selector to choose between CSV and KML
2843 file formats.</p>
2844 </div>
2845 <div class="sect3">
2846 <h4 id="_comma_separated_value_format">12.5.1. Comma Separated Value Format</h4>
2847 <div class="paragraph">
2848 <p>This is a text file containing the data in a form
2849 suitable for import into a spreadsheet or other
2850 external data analysis tool. The first few lines of
2851 the file contain the version and configuration
2852 information from the altimeter, then there is a single
2853 header line which labels all of the fields. All of
2854 these lines start with a '#' character which many
2855 tools can be configured to skip over.</p>
2856 </div>
2857 <div class="paragraph">
2858 <p>The remaining lines of the file contain the data, with
2859 each field separated by a comma and at least one
2860 space. All of the sensor values are converted to
2861 standard units, with the barometric data reported in
2862 both pressure, altitude and height above pad units.</p>
2863 </div>
2864 </div>
2865 <div class="sect3">
2866 <h4 id="_keyhole_markup_language_for_google_earth">12.5.2. Keyhole Markup Language (for Google Earth)</h4>
2867 <div class="paragraph">
2868 <p>This is the format used by Google Earth to provide an
2869 overlay within that application. With this, you can
2870 use Google Earth to see the whole flight path
2871 in 3D.</p>
2872 </div>
2873 </div>
2874 </div>
2875 <div class="sect2">
2876 <h3 id="_configure_altimeter">12.6. Configure Altimeter</h3>
2877 <div class="imageblock">
2878 <div class="content">
2879 <img src="configure-altimeter.png" alt="configure altimeter" width="350">
2880 </div>
2881 <div class="title">Figure 22. Altimeter Configuration</div>
2882 </div>
2883 <div class="paragraph">
2884 <p>Select this button and then select either an altimeter or
2885 TeleDongle Device from the list provided. Selecting a TeleDongle
2886 device will use the radio link to configure a remote
2887 altimeter.</p>
2888 </div>
2889 <div class="paragraph">
2890 <p>The first few lines of the dialog provide information about the
2891 connected device, including the product name,
2892 software version and hardware serial number. Below that are the
2893 individual configuration entries.</p>
2894 </div>
2895 <div class="paragraph">
2896 <p>At the bottom of the dialog, there are four buttons:</p>
2897 </div>
2898 <div class="dlist">
2899 <dl>
2900 <dt class="hdlist1">Save</dt>
2901 <dd>
2902 <p>This writes any changes to the configuration parameter
2903 block in flash memory. If you don&#8217;t press this button,
2904 any changes you make will be lost.</p>
2905 </dd>
2906 <dt class="hdlist1">Reset</dt>
2907 <dd>
2908 <p>This resets the dialog to the most recently saved
2909 values, erasing any changes you have made.</p>
2910 </dd>
2911 <dt class="hdlist1">Reboot</dt>
2912 <dd>
2913 <p>This reboots the device. Use this to switch from idle
2914 to pad mode by rebooting once the rocket is oriented
2915 for flight, or to confirm changes you think you saved
2916 are really saved.</p>
2917 </dd>
2918 <dt class="hdlist1">Close</dt>
2919 <dd>
2920 <p>This closes the dialog. Any unsaved changes will be
2921 lost.</p>
2922 </dd>
2923 </dl>
2924 </div>
2925 <div class="paragraph">
2926 <p>The rest of the dialog contains the parameters to be configured.</p>
2927 </div>
2928 <div class="sect3">
2929 <h4 id="_main_deploy_altitude">12.6.1. Main Deploy Altitude</h4>
2930 <div class="paragraph">
2931 <p>This sets the altitude (above the recorded pad
2932 altitude) at which the 'main' igniter will fire. The
2933 drop-down menu shows some common values, but you can
2934 edit the text directly and choose whatever you
2935 like. If the apogee charge fires below this altitude,
2936 then the main charge will fire two seconds after the
2937 apogee charge fires.</p>
2938 </div>
2939 </div>
2940 <div class="sect3">
2941 <h4 id="_apogee_delay">12.6.2. Apogee Delay</h4>
2942 <div class="paragraph">
2943 <p>When flying redundant electronics, it&#8217;s often
2944 important to ensure that multiple apogee charges don&#8217;t
2945 fire at precisely the same time, as that can over
2946 pressurize the apogee deployment bay and cause a
2947 structural failure of the air-frame. The Apogee Delay
2948 parameter tells the flight computer to fire the apogee
2949 charge a certain number of seconds after apogee has
2950 been detected.</p>
2951 </div>
2952 </div>
2953 <div class="sect3">
2954 <h4 id="_apogee_lockout">12.6.3. Apogee Lockout</h4>
2955 <div class="paragraph">
2956 <p>Apogee lockout is the number of seconds after launch
2957 where the flight computer will not fire the apogee
2958 charge, even if the rocket appears to be at
2959 apogee. This is often called 'Mach Delay', as it is
2960 intended to prevent a flight computer from
2961 unintentionally firing apogee charges due to the
2962 pressure spike that occurrs across a mach
2963 transition. Altus Metrum flight computers include a
2964 Kalman filter which is not fooled by this sharp
2965 pressure increase, and so this setting should be left
2966 at the default value of zero to disable it.</p>
2967 </div>
2968 <div class="admonitionblock warning">
2969 <table>
2970 <tr>
2971 <td class="icon">
2972 <img src="./images/icons/warning.svg" alt="Warning">
2973 </td>
2974 <td class="content">
2975 Firmware versions older than 1.8.6 have a
2976 bug which resets the time since launch to zero each
2977 time a motor starts burning. Update firmware to get
2978 the correct behavior.
2979 </td>
2980 </tr>
2981 </table>
2982 </div>
2983 </div>
2984 <div class="sect3">
2985 <h4 id="_frequency">12.6.4. Frequency</h4>
2986 <div class="paragraph">
2987 <p>This configures which of the frequencies to use for
2988 both telemetry and packet command mode. Note that if
2989 you set this value via packet command mode, the
2990 TeleDongle frequency will also be automatically
2991 reconfigured to match so that communication will
2992 continue afterwards.</p>
2993 </div>
2994 </div>
2995 <div class="sect3">
2996 <h4 id="_rf_calibration">12.6.5. RF Calibration</h4>
2997 <div class="paragraph">
2998 <p>The radios in every Altus Metrum device are calibrated
2999 at the factory to ensure that they transmit and
3000 receive on the specified frequency.  If you need to
3001 you can adjust the calibration by changing this value.
3002 Do not do this without understanding what the value
3003 means, read the appendix on calibration and/or the
3004 source code for more information.  To change a
3005 TeleDongle&#8217;s calibration, you must reprogram the unit
3006 completely.</p>
3007 </div>
3008 </div>
3009 <div class="sect3">
3010 <h4 id="_telemetryrdfaprs_enable">12.6.6. Telemetry/RDF/APRS Enable</h4>
3011 <div class="paragraph">
3012 <p>Enables the radio for transmission during
3013 flight. When disabled, the radio will not
3014 transmit anything during flight at all.</p>
3015 </div>
3016 </div>
3017 <div class="sect3">
3018 <h4 id="_limit_transmit_to_10mw">12.6.7. Limit transmit to 10mW</h4>
3019 <div class="paragraph">
3020 <p>Reduces transmit power to no more than 10mW. This is
3021 useful when operating under some UK radio regulations.</p>
3022 </div>
3023 </div>
3024 <div class="sect3">
3025 <h4 id="_telemetry_baud_rate">12.6.8. Telemetry baud rate</h4>
3026 <div class="paragraph">
3027 <p>This sets the modulation bit rate for data
3028 transmission for both telemetry and packet
3029 link mode. Lower bit rates will increase range
3030 while reducing the amount of data that can be
3031 sent and increasing battery consumption. All
3032 telemetry is done using a rate 1/2 constraint
3033 4 convolution code, so the actual data
3034 transmission rate is 1/2 of the modulation bit
3035 rate specified here.</p>
3036 </div>
3037 </div>
3038 <div class="sect3">
3039 <h4 id="_aprs_interval">12.6.9. APRS Interval</h4>
3040 <div class="paragraph">
3041 <p>How often to transmit GPS information via APRS
3042 (in seconds). When set to zero, APRS
3043 transmission is disabled.
3044 This option is
3045 available on TeleMetrum v2 or newer and TeleMega
3046 boards. TeleMetrum v1 boards cannot transmit
3047 APRS packets.
3048 Note that a single APRS packet
3049 takes nearly a full second to transmit, so
3050 enabling this option will prevent sending any
3051 other telemetry during that time.</p>
3052 </div>
3053 </div>
3054 <div class="sect3">
3055 <h4 id="_aprs_ssid">12.6.10. APRS SSID</h4>
3056 <div class="paragraph">
3057 <p>Which SSID to report in APRS packets. By
3058 default, this is set to the last digit of the
3059 serial number, but can be configured to any
3060 value from 0 to 9.</p>
3061 </div>
3062 </div>
3063 <div class="sect3">
3064 <h4 id="_aprs_format">12.6.11. APRS Format</h4>
3065 <div class="paragraph">
3066 <p>Whether to send APRS data in Compressed or
3067 Uncompressed format. Compressed format is
3068 smaller and more precise. Uncompressed
3069 format is older, but may work better with your
3070 device. The Kenwood TH-D72 only displays
3071 altitude information with Uncompressed
3072 format, while the Yaesu FT1D only displays
3073 altitude with Compressed format. Test before
3074 you fly to see which to use.</p>
3075 </div>
3076 </div>
3077 <div class="sect3">
3078 <h4 id="_aprs_offset">12.6.12. APRS Offset</h4>
3079 <div class="paragraph">
3080 <p>The delay from the top of the minute before sending
3081 the first APRS packet of the minute. Coordinating
3082 values for this parameter between multiple devices can
3083 allow a single receiver to reliably receive APRS
3084 packets from multiple devices. Note that this offset only
3085 takes effect while the GPS signal is locked so that the
3086 transmitting device knows the current time.</p>
3087 </div>
3088 </div>
3089 <div class="sect3">
3090 <h4 id="_callsign">12.6.13. Callsign</h4>
3091 <div class="paragraph">
3092 <p>This sets the call sign included in each
3093 telemetry packet. Set this as needed to
3094 conform to your local radio regulations.</p>
3095 </div>
3096 </div>
3097 <div class="sect3">
3098 <h4 id="_maximum_flight_log_size">12.6.14. Maximum Flight Log Size</h4>
3099 <div class="paragraph">
3100 <p>This sets the space (in kilobytes) allocated
3101 for each flight log. The available space will
3102 be divided into chunks of this size. A smaller
3103 value will allow more flights to be stored, a
3104 larger value will record data from longer
3105 flights.</p>
3106 </div>
3107 </div>
3108 <div class="sect3">
3109 <h4 id="_ignitor_firing_mode">12.6.15. Ignitor Firing Mode</h4>
3110 <div class="paragraph">
3111 <p>This configuration parameter allows the two standard ignitor
3112 channels (Apogee and Main) to be used in different
3113 configurations.</p>
3114 </div>
3115 <div class="dlist">
3116 <dl>
3117 <dt class="hdlist1">Dual Deploy</dt>
3118 <dd>
3119 <p>This is the usual mode of operation; the
3120 'apogee' channel is fired at apogee and the
3121 'main' channel at the height above ground
3122 specified by the 'Main Deploy Altitude' during
3123 descent.</p>
3124 </dd>
3125 <dt class="hdlist1">Redundant Apogee</dt>
3126 <dd>
3127 <p>This fires both channels at apogee, the
3128 'apogee' channel first followed after a two
3129 second delay by the 'main' channel.</p>
3130 </dd>
3131 <dt class="hdlist1">Redundant Main</dt>
3132 <dd>
3133 <p>This fires both channels at the height above
3134 ground specified by the Main Deploy Altitude
3135 setting during descent. The 'apogee' channel
3136 is fired first, followed after a two second
3137 delay by the 'main' channel.</p>
3138 </dd>
3139 <dt class="hdlist1">Separation &amp; Apogee</dt>
3140 <dd>
3141 <p>This fires the 'main' channel when the first motor
3142 burns out and fires the 'apogee' charge at apogee.</p>
3143 </dd>
3144 </dl>
3145 </div>
3146 </div>
3147 <div class="sect3">
3148 <h4 id="_pad_orientation">12.6.16. Pad Orientation</h4>
3149 <div class="paragraph">
3150 <p>Because they include accelerometers,
3151 TeleMetrum, TeleMega and EasyMega are
3152 sensitive to the orientation of the board. By
3153 default, they expect the antenna end to point
3154 forward. This parameter allows that default to
3155 be changed, permitting the board to be mounted
3156 with the antenna pointing aft instead.</p>
3157 </div>
3158 <div class="dlist">
3159 <dl>
3160 <dt class="hdlist1">Antenna Up</dt>
3161 <dd>
3162 <p>In this mode, the antenna (or beeper, for devices
3163 without an antenna) of the flight computer must point
3164 forward, in line with the expected flight path.</p>
3165 </dd>
3166 <dt class="hdlist1">Antenna Down</dt>
3167 <dd>
3168 <p>In this mode, the antenna (or beeper, for devices
3169 without an antenna) end of the flight computer must
3170 point aft, in line with the expected flight path.</p>
3171 </dd>
3172 </dl>
3173 </div>
3174 </div>
3175 <div class="sect3">
3176 <h4 id="_beeper_frequency">12.6.17. Beeper Frequency</h4>
3177 <div class="paragraph">
3178 <p>The beeper on all Altus Metrum flight
3179 computers works best at 4000Hz, however if you
3180 have more than one flight computer in a single
3181 airframe, having all of them sound at the same
3182 frequency can be confusing. This parameter
3183 lets you adjust the base beeper frequency
3184 value.</p>
3185 </div>
3186 </div>
3187 <div class="sect3">
3188 <h4 id="_logging_trigger_motion">12.6.18. Logging Trigger Motion</h4>
3189 <div class="paragraph">
3190 <p>This sets the amount of motion that TeleGPS
3191 needs to see before logging the new
3192 position. Motions smaller than this are
3193 skipped, which saves storage space.</p>
3194 </div>
3195 </div>
3196 <div class="sect3">
3197 <h4 id="_position_reporting_interval">12.6.19. Position Reporting Interval</h4>
3198 <div class="paragraph">
3199 <p>The interval between TeleGPS position reports,
3200 both over the air and in the log. Increase
3201 this to reduce the frequency of radio
3202 transmissions and the length of time available
3203 in the log.</p>
3204 </div>
3205 </div>
3206 <div class="sect3">
3207 <h4 id="_calibrate_accelerometer">12.6.20. Calibrate Accelerometer</h4>
3208 <div class="paragraph">
3209 <p>This opens a separate window to recalibrate the
3210 accelerometers. Follow the instructions, orienting the
3211 flight computer with the antenna end, or end opposite
3212 the screw terminals, in the case of EasyMega, first up
3213 and then down.</p>
3214 </div>
3215 <div class="paragraph">
3216 <p>When the calibration is complete, return to the
3217 Configure Altimeter window and save the new
3218 calibration values.</p>
3219 </div>
3220 </div>
3221 <div class="sect3">
3222 <h4 id="_configure_pyro_channels">12.6.21. Configure Pyro Channels</h4>
3223 <div class="imageblock">
3224 <div class="content">
3225 <img src="configure-pyro.png" alt="configure pyro" width="400">
3226 </div>
3227 <div class="title">Figure 23. Additional Pyro Channel Configuration</div>
3228 </div>
3229 <div class="paragraph">
3230 <p>This opens a separate window to configure the
3231 additional pyro channels available on TeleMega,
3232 EasyMega and EasyTimer.  One column is presented for
3233 each channel. Each row represents a single
3234 parameter, if enabled the parameter must meet
3235 the specified test for the pyro channel to be
3236 fired.</p>
3237 </div>
3238 <div class="paragraph">
3239 <p>Select conditions and set the related value;
3240 the pyro channel will be activated when <strong>all</strong>
3241 of the conditions are met. Each pyro channel
3242 has a separate set of configuration values, so
3243 you can use different values for the same
3244 condition with different channels.</p>
3245 </div>
3246 <div class="paragraph">
3247 <p>At the bottom of the window, the 'Pyro Firing
3248 Time' configuration sets the length of time
3249 (in seconds) which each of these pyro channels
3250 will fire for.</p>
3251 </div>
3252 <div class="paragraph">
3253 <p>Once you have selected the appropriate
3254 configuration for all of the necessary pyro
3255 channels, you can save the pyro configuration
3256 along with the rest of the flight computer
3257 configuration by pressing the 'Save' button in
3258 the main Configure Flight Computer window.</p>
3259 </div>
3260 <div class="dlist">
3261 <dl>
3262 <dt class="hdlist1">Vertical Acceleration</dt>
3263 <dd>
3264 <p>Select a value, and then choose whether
3265 acceleration away from the ground should be above or below that
3266 value. Acceleration is positive upwards, so accelerating towards the
3267 ground would produce negative numbers. Acceleration during descent is
3268 noisy and inaccurate, so be careful when using it during these phases
3269 of the flight.</p>
3270 </dd>
3271 <dt class="hdlist1">Ascent rate</dt>
3272 <dd>
3273 <p>Select a value, and then choose whether ascent rate
3274 should be above or below that value. Ascent rate is positive upwards,
3275 so moving towards the ground would produce negative numbers. Ascent
3276 rate during descent is a bit noisy and so be careful when using it
3277 during these phases of the flight.</p>
3278 </dd>
3279 <dt class="hdlist1">Height above pad</dt>
3280 <dd>
3281 <p>Select a value, and then choose whether the height
3282 above the launch pad should be above or below that value. Note that
3283 because EasyTimer has only a low-range accelerometer and no barometer,
3284 this value will not be very reliable on that device.</p>
3285 </dd>
3286 <dt class="hdlist1">Orientation</dt>
3287 <dd>
3288 <p>TeleMega, EasyMega and EasyTimer contain a 3-axis
3289 gyroscope and accelerometer which is used to compute the orientation
3290 of the rocket. A record of orientations over the last 0.64 seconds is
3291 kept and the largest value within this period is compared with the
3292 specified value. Note that the tilt angle is not the change in angle
3293 from the launch pad, but rather absolute relative to gravity—the
3294 3-axis accelerometer is used to compute the angle of the rocket on the
3295 launch pad and initialize the system.</p>
3296 </dd>
3297 </dl>
3298 </div>
3299 <div class="admonitionblock note">
3300 <table>
3301 <tr>
3302 <td class="icon">
3303 <img src="./images/icons/note.svg" alt="Note">
3304 </td>
3305 <td class="content">
3306 <div class="paragraph">
3307 <p>Because this value is computed by integrating
3308 rate gyros, it gets progressively less
3309 accurate as the flight goes on. It should have
3310 an accumulated error of less than 0.2°/second
3311 (after 10 seconds of flight, the error should
3312 be less than 2°).</p>
3313 </div>
3314 <div class="paragraph">
3315 <p>The usual use of the orientation configuration
3316 is to ensure that the rocket is traveling
3317 mostly upwards when deciding whether to ignite
3318 air starts or additional stages. For that,
3319 choose a reasonable maximum angle (like 20°)
3320 and set the motor igniter to require an angle
3321 of less than that value.</p>
3322 </div>
3323 </td>
3324 </tr>
3325 </table>
3326 </div>
3327 <div class="dlist">
3328 <dl>
3329 <dt class="hdlist1">Flight Time</dt>
3330 <dd>
3331 <p>Time since launch. Select a value and choose whether to
3332 activate the pyro channel before or after that amount of time.</p>
3333 </dd>
3334 </dl>
3335 </div>
3336 <div class="admonitionblock warning">
3337 <table>
3338 <tr>
3339 <td class="icon">
3340 <img src="./images/icons/warning.svg" alt="Warning">
3341 </td>
3342 <td class="content">
3343 Firmware versions older than 1.8.6 have a bug which resets the time
3344 since launch to zero each time a motor starts burning. Update firmware
3345 to get the correct behavior.
3346 </td>
3347 </tr>
3348 </table>
3349 </div>
3350 <div class="admonitionblock warning">
3351 <table>
3352 <tr>
3353 <td class="icon">
3354 <img src="./images/icons/warning.svg" alt="Warning">
3355 </td>
3356 <td class="content">
3357 Firmware versions older than 1.9.8 cannot use times longer
3358 than 327.67 seconds. Update firmware if you need a longer time.
3359 </td>
3360 </tr>
3361 </table>
3362 </div>
3363 <div class="dlist">
3364 <dl>
3365 <dt class="hdlist1">Ascending</dt>
3366 <dd>
3367 <p>A deprecated configuration value which was the same as
3368 setting Ascent rate &gt; 0. Existing configurations using this will be
3369 cleared and must be reconfigured by the user.</p>
3370 </dd>
3371 <dt class="hdlist1">Descending</dt>
3372 <dd>
3373 <p>A deprecated configuration value which was the same as
3374 setting Ascent rate &lt; 0. Existing configurations using this will be
3375 cleared and must be reconfigured by the user.</p>
3376 </dd>
3377 <dt class="hdlist1">After Motor</dt>
3378 <dd>
3379 <p>The flight software counts each time the rocket starts
3380 accelerating and then decelerating (presumably due to a motor or
3381 motors burning). Use this value for multi-staged or multi-airstart
3382 launches. As of version 1.8.6 firmware, this checks to make sure at
3383 least this many motors have burned. Before version 1.8.6, this checked
3384 to make sure that exactly this many motors had burned.</p>
3385 </dd>
3386 <dt class="hdlist1">Delay</dt>
3387 <dd>
3388 <p>Once the other parameters all become true, a timer is
3389 started for the specified amount of time. While the timer is running,
3390 the other parameters are checked repeatedly and if any of them become
3391 false, then the pyro channel is disabled and will not fire. If the
3392 timer expires and all of the other parameters have remained true for
3393 the entire time, then the pyro channel is fired.</p>
3394 </dd>
3395 </dl>
3396 </div>
3397 <div class="admonitionblock warning">
3398 <table>
3399 <tr>
3400 <td class="icon">
3401 <img src="./images/icons/warning.svg" alt="Warning">
3402 </td>
3403 <td class="content">
3404 Firmware versions older than 1.9.8 cannot use delays longer
3405 than 327.67 seconds. Update firmware if you need a longer delay.
3406 </td>
3407 </tr>
3408 </table>
3409 </div>
3410 <div class="dlist">
3411 <dl>
3412 <dt class="hdlist1">Flight State</dt>
3413 <dd>
3414 <p>The flight software tracks the flight
3415 through a sequence of states:</p>
3416 <div class="ulist">
3417 <ul>
3418 <li>
3419 <p>Boost. The motor has lit and the rocket is
3420 accelerating upwards. Ascent rate will be greater than zero.
3421 Vertical acceleration will be greater than zero.</p>
3422 </li>
3423 <li>
3424 <p>Fast. The motor has burned out and the
3425 rocket is decelerating, but it is going
3426 faster than 200m/s. Ascent rate will be greater than zero. Vertical
3427 acceleration will be less than zero.</p>
3428 </li>
3429 <li>
3430 <p>Coast. The rocket is still moving upwards
3431 and decelerating, but the Ascent rate is less
3432 than 200m/s. Ascent rate will greater than zero. Vertical
3433 acceleration will be less than zero.</p>
3434 </li>
3435 <li>
3436 <p>Drogue. The rocket has reached apogee and is heading back down, but
3437 is above the configured Main altitude. Ascent rate will be less
3438 than zero during this state. Vertical acceleration will be negative
3439 until the rocket reaches a terminal descent rate, at which point
3440 Vertical acceleration will be zero. Both Ascent rate and Vertical
3441 acceleration are very noisy in this state, so be careful when
3442 trying to use them to control pyro channels. This state selection
3443 is not available on EasyTimer.</p>
3444 </li>
3445 <li>
3446 <p>Main. The rocket is still descending, and
3447 is below the Main altitude. Ascent rate will be less than zero
3448 during this state. Vertical acceleration may be briefly less than
3449 zero as the rocket slows from drogue descent to main descent, but
3450 it will settle down to a zero value once the rocket has reached the
3451 terminal velocity under the main chute. Ascent rate and Vertical
3452 acceleration should be much less noisy once the main chute has
3453 deployed. This state selection is not available on EasyTimer.</p>
3454 </li>
3455 <li>
3456 <p>Landed. The rocket is no longer moving.</p>
3457 </li>
3458 </ul>
3459 </div>
3460 </dd>
3461 </dl>
3462 </div>
3463 <div class="paragraph">
3464 <p>You can select a state to limit when the pyro channel may activate;
3465 note that the check is based on when the rocket transitions <strong>into</strong> the
3466 state, and so checking for “greater than Boost” means that the rocket
3467 is currently in boost or some later state.</p>
3468 </div>
3469 <div class="paragraph">
3470 <p>When a motor burns out, the rocket enters either Fast or Coast state
3471 (depending on how fast it is moving). If the computer detects upwards
3472 acceleration again, it will move back to Boost state.</p>
3473 </div>
3474 </div>
3475 </div>
3476 <div class="sect2">
3477 <h3 id="_configure_altosui">12.7. Configure AltosUI</h3>
3478 <div class="imageblock">
3479 <div class="content">
3480 <img src="configure-altosui.png" alt="configure altosui" width="230">
3481 </div>
3482 <div class="title">Figure 24. Configure AltosUI Dialog</div>
3483 </div>
3484 <div class="paragraph">
3485 <p>This button presents a dialog so that you can
3486 configure the AltosUI global settings.</p>
3487 </div>
3488 <div class="sect3">
3489 <h4 id="_voice_settings">12.7.1. Voice Settings</h4>
3490 <div class="paragraph">
3491 <p>AltosUI provides voice announcements during
3492 flight so that you can keep your eyes on the
3493 sky and still get information about the
3494 current flight status. However, sometimes you
3495 don&#8217;t want to hear them.</p>
3496 </div>
3497 <div class="dlist">
3498 <dl>
3499 <dt class="hdlist1">Enable</dt>
3500 <dd>
3501 <p>Turns all voice announcements on and off</p>
3502 </dd>
3503 <dt class="hdlist1">Test Voice</dt>
3504 <dd>
3505 <p>Plays a short message allowing you to verify
3506 that the audio system is working and the volume settings
3507 are reasonable</p>
3508 </dd>
3509 </dl>
3510 </div>
3511 </div>
3512 <div class="sect3">
3513 <h4 id="_log_directory">12.7.2. Log Directory</h4>
3514 <div class="paragraph">
3515 <p>AltosUI logs all telemetry data and saves all
3516 flash data to this directory. This
3517 directory is also used as the staring point
3518 when selecting data files for display or
3519 export.</p>
3520 </div>
3521 <div class="paragraph">
3522 <p>Click on the directory name to bring up a
3523 directory choosing dialog, select a new
3524 directory and click 'Select Directory' to
3525 change where AltosUI reads and writes data
3526 files.</p>
3527 </div>
3528 </div>
3529 <div class="sect3">
3530 <h4 id="_callsign_2">12.7.3. Callsign</h4>
3531 <div class="paragraph">
3532 <p>This value is transmitted in each command
3533 packet sent from TeleDongle and received from
3534 an altimeter.  It is not used in telemetry
3535 mode, as the callsign configured in the
3536 altimeter board is included in all telemetry
3537 packets.  Configure this with the AltosUI
3538 operators call sign as needed to comply with
3539 your local radio regulations.</p>
3540 </div>
3541 <div class="paragraph">
3542 <p>Note that to successfully command a flight
3543 computer over the radio (to configure the
3544 altimeter, monitor idle, or fire pyro
3545 charges), the callsign configured here must
3546 exactly match the callsign configured in the
3547 flight computer.  This matching is case
3548 sensitive.</p>
3549 </div>
3550 </div>
3551 <div class="sect3">
3552 <h4 id="_imperial_units">12.7.4. Imperial Units</h4>
3553 <div class="paragraph">
3554 <p>This switches between metric units (meters)
3555 and imperial units (feet and miles). This
3556 affects the display of values use during
3557 flight monitoring, configuration, data
3558 graphing and all of the voice
3559 announcements. It does not change the units
3560 used when exporting to CSV files, those are
3561 always produced in metric units.</p>
3562 </div>
3563 </div>
3564 <div class="sect3">
3565 <h4 id="_serial_debug">12.7.5. Serial Debug</h4>
3566 <div class="paragraph">
3567 <p>This causes all communication with a connected
3568 device to be dumped to the console from which
3569 AltosUI was started. If you&#8217;ve started it from
3570 an icon or menu entry, the output will simply
3571 be discarded. This mode can be useful to debug
3572 various serial communication issues.</p>
3573 </div>
3574 </div>
3575 <div class="sect3">
3576 <h4 id="_font_size">12.7.6. Font size</h4>
3577 <div class="paragraph">
3578 <p>Selects the set of fonts used in the flight
3579 monitor window. Choose between the small,
3580 medium and large sets.</p>
3581 </div>
3582 </div>
3583 <div class="sect3">
3584 <h4 id="_look_feel">12.7.7. Look &amp; feel</h4>
3585 <div class="paragraph">
3586 <p>Switches between the available Java user
3587 interface appearances. The default selection
3588 is supposed to match the native window system
3589 appearance for the target platform.</p>
3590 </div>
3591 </div>
3592 <div class="sect3">
3593 <h4 id="_menu_position">12.7.8. Menu position</h4>
3594 <div class="paragraph">
3595 <p>Selects the initial position for the main
3596 AltosUI window that includes all of the
3597 command buttons.</p>
3598 </div>
3599 </div>
3600 <div class="sect3">
3601 <h4 id="_map_cache_size">12.7.9. Map Cache Size</h4>
3602 <div class="paragraph">
3603 <p>Sets the number of map 'tiles' kept in memory
3604 while the application is running. More tiles
3605 consume more memory, but will make panning
3606 around the map faster.</p>
3607 </div>
3608 </div>
3609 <div class="sect3">
3610 <h4 id="_manage_frequencies">12.7.10. Manage Frequencies</h4>
3611 <div class="paragraph">
3612 <p>This brings up a dialog where you can
3613 configure the set of frequencies shown in the
3614 various frequency menus. You can add as many
3615 as you like, or even reconfigure the default
3616 set. Changing this list does not affect the
3617 frequency settings of any devices, it only
3618 changes the set of frequencies shown in the
3619 menus.</p>
3620 </div>
3621 </div>
3622 </div>
3623 <div class="sect2">
3624 <h3 id="_configure_groundstation">12.8. Configure Groundstation</h3>
3625 <div class="imageblock">
3626 <div class="content">
3627 <img src="configure-groundstation.png" alt="configure groundstation" width="300">
3628 </div>
3629 <div class="title">Figure 25. Configure Groundstation Dialog</div>
3630 </div>
3631 <div class="paragraph">
3632 <p>Select this button and then select a TeleDongle or
3633 TeleBT Device from the list provided.</p>
3634 </div>
3635 <div class="paragraph">
3636 <p>The first few lines of the dialog provide information
3637 about the connected device, including the product
3638 name, software version and hardware serial
3639 number. Below that are the individual configuration
3640 entries.</p>
3641 </div>
3642 <div class="paragraph">
3643 <p>Note that TeleDongle and TeleBT don&#8217;t save any
3644 configuration data, the settings here are recorded on
3645 the local machine in the Java preferences
3646 database. Moving the device to another machine, or
3647 using a different user account on the same machine
3648 will cause settings made here to have no effect.</p>
3649 </div>
3650 <div class="paragraph">
3651 <p>At the bottom of the dialog, there are three
3652 buttons:</p>
3653 </div>
3654 <div class="dlist">
3655 <dl>
3656 <dt class="hdlist1">Save</dt>
3657 <dd>
3658 <p>This writes any changes to the local Java
3659 preferences file. If you don&#8217;t press this
3660 button, any changes you make will be lost.</p>
3661 </dd>
3662 <dt class="hdlist1">Reset</dt>
3663 <dd>
3664 <p>This resets the dialog to the most recently
3665 saved values, erasing any changes you have
3666 made.</p>
3667 </dd>
3668 <dt class="hdlist1">Close</dt>
3669 <dd>
3670 <p>This closes the dialog. Any unsaved changes
3671 will be lost.</p>
3672 </dd>
3673 </dl>
3674 </div>
3675 <div class="paragraph">
3676 <p>The rest of the dialog contains the parameters
3677 to be configured.</p>
3678 </div>
3679 <div class="sect3">
3680 <h4 id="_frequency_2">12.8.1. Frequency</h4>
3681 <div class="paragraph">
3682 <p>This configures the frequency to use for both
3683 telemetry and packet command mode. Set this
3684 before starting any operation involving packet
3685 command mode so that it will use the right
3686 frequency. Telemetry monitoring mode also
3687 provides a menu to change the frequency, and
3688 that menu also sets the same Java preference
3689 value used here.</p>
3690 </div>
3691 </div>
3692 <div class="sect3">
3693 <h4 id="_rf_calibration_2">12.8.2. RF Calibration</h4>
3694 <div class="paragraph">
3695 <p>The radios in every Altus Metrum device are
3696 calibrated at the factory to ensure that they
3697 transmit and receive on the specified
3698 frequency.  To change a TeleDongle or TeleBT&#8217;s
3699 calibration, you must reprogram the unit
3700 completely, so this entry simply shows the
3701 current value and doesn&#8217;t allow any changes.</p>
3702 </div>
3703 </div>
3704 <div class="sect3">
3705 <h4 id="_telemetry_rate">12.8.3. Telemetry Rate</h4>
3706 <div class="paragraph">
3707 <p>This lets you match the telemetry and packet
3708 link rate from the transmitter. If they don&#8217;t
3709 match, the device won&#8217;t receive any data.</p>
3710 </div>
3711 </div>
3712 </div>
3713 <div class="sect2">
3714 <h3 id="_flash_image">12.9. Flash Image</h3>
3715 <div class="paragraph">
3716 <p>This reprograms Altus Metrum devices with new
3717 firmware.
3718 TeleMetrum v1.x, TeleDongle v0.2, TeleMini v1.0
3719 and TeleBT v1.0 are all reprogrammed by using another
3720 similar unit as a programming dongle (pair
3721 programming).
3722 TeleMega, EasyMega, TeleMetrum v2 or newer,
3723 EasyMini, EasyTimer, TeleBT v3 or newer and TeleDongle v3
3724 or newer are all
3725 programmed directly
3726 over USB (self programming). Please read
3727 the directions for flashing devices in
3728 <a href="#_updating_device_firmware">Updating Device Firmware</a>.</p>
3729 </div>
3730 </div>
3731 <div class="sect2">
3732 <h3 id="_fire_igniter">12.10. Fire Igniter</h3>
3733 <div class="imageblock">
3734 <div class="content">
3735 <img src="fire-igniter.png" alt="fire igniter" width="120">
3736 </div>
3737 <div class="title">Figure 26. Fire Igniter Window</div>
3738 </div>
3739 <div class="paragraph">
3740 <p>This activates the igniter circuits in the flight
3741 computer to help test recovery systems
3742 deployment.
3743 Because this command can operate over the
3744 Packet Command Link, you can prepare the rocket as for
3745 flight and then test the recovery system without
3746 needing to snake wires inside the air-frame.</p>
3747 </div>
3748 <div class="paragraph">
3749 <p>Selecting the 'Fire Igniter' button brings up the
3750 usual device selection dialog. Pick the desired
3751 device. This brings up another window which shows the
3752 current continuity test status for all of the pyro
3753 channels.</p>
3754 </div>
3755 <div class="paragraph">
3756 <p>Next, select the desired igniter to fire. This will
3757 enable the 'Arm' button.</p>
3758 </div>
3759 <div class="paragraph">
3760 <p>Select the 'Arm' button. This enables the 'Fire'
3761 button. The word 'Arm' is replaced by a countdown
3762 timer indicating that you have 10 seconds to press the
3763 'Fire' button or the system will deactivate, at which
3764 point you start over again at selecting the desired
3765 igniter.</p>
3766 </div>
3767 </div>
3768 <div class="sect2">
3769 <h3 id="_scan_channels">12.11. Scan Channels</h3>
3770 <div class="imageblock">
3771 <div class="content">
3772 <img src="scan-channels.png" alt="scan channels" width="300">
3773 </div>
3774 <div class="title">Figure 27. Scan Channels Window</div>
3775 </div>
3776 <div class="paragraph">
3777 <p>This listens for telemetry packets on all of the
3778 configured frequencies, displaying information about
3779 each device it receives a packet from. You can select
3780 which of the baud rates and telemetry formats should
3781 be tried; by default, it only listens at 38400 baud
3782 with the standard telemetry format used in v1.0 and
3783 later firmware.</p>
3784 </div>
3785 </div>
3786 <div class="sect2">
3787 <h3 id="_load_maps">12.12. Load Maps</h3>
3788 <div class="imageblock">
3789 <div class="content">
3790 <img src="load-maps.png" alt="load maps" width="500">
3791 </div>
3792 <div class="title">Figure 28. Load Maps Window</div>
3793 </div>
3794 <div class="paragraph">
3795 <p>Before heading out to a new launch site, you can use
3796 this to load satellite images in case you don&#8217;t have
3797 internet connectivity at the site.  Try not to wait
3798 until the last minute, though, particularly if you&#8217;re
3799 heading to a major launch.  If too many people are
3800 all trying to download map data at once, Google may
3801 limit access until the next day.</p>
3802 </div>
3803 <div class="paragraph">
3804 <p>There&#8217;s a drop-down menu of launch sites we know
3805 about; if your favorites aren&#8217;t there, please let us
3806 know the lat/lon and name of the site. The contents of
3807 this list are actually downloaded from our server at
3808 run-time, so as new sites are sent in, they&#8217;ll get
3809 automatically added to this list.  If the launch site
3810 isn&#8217;t in the list, you can manually enter the lat/lon
3811 values</p>
3812 </div>
3813 <div class="paragraph">
3814 <p>There are four different kinds of maps you can view;
3815 you can select which to download by selecting as many
3816 as you like from the available types:</p>
3817 </div>
3818 <div class="dlist">
3819 <dl>
3820 <dt class="hdlist1">Hybrid</dt>
3821 <dd>
3822 <p>A combination of satellite imagery and road data. This
3823 is the default view.</p>
3824 </dd>
3825 <dt class="hdlist1">Satellite</dt>
3826 <dd>
3827 <p>Just the satellite imagery without any annotation.</p>
3828 </dd>
3829 <dt class="hdlist1">Roadmap</dt>
3830 <dd>
3831 <p>Roads, political boundaries and a few geographic
3832 features.</p>
3833 </dd>
3834 <dt class="hdlist1">Terrain</dt>
3835 <dd>
3836 <p>Contour intervals and shading that show hills and
3837 valleys.</p>
3838 </dd>
3839 </dl>
3840 </div>
3841 <div class="paragraph">
3842 <p>You can specify the range of zoom levels to download;
3843 smaller numbers show more area with less
3844 resolution. The default level, 0, shows about
3845 3m/pixel. One zoom level change doubles or halves that
3846 number. Larger zoom levels show more detail, smaller
3847 zoom levels less.</p>
3848 </div>
3849 <div class="paragraph">
3850 <p>The Map Radius value sets how large an area around the
3851 center point to download. Select a value large enough
3852 to cover any plausible flight from that site. Be aware
3853 that loading a large area with a high maximum zoom
3854 level can attempt to download a lot of data. Loading
3855 hybrid maps with a 10km radius at a minimum zoom of -2
3856 and a maximum zoom of 2 consumes about 120MB of
3857 space. Terrain and road maps consume about 1/10 as
3858 much space as satellite or hybrid maps.</p>
3859 </div>
3860 <div class="paragraph">
3861 <p>Clicking the 'Load Map' button will fetch images from
3862 Google Maps; note that Google limits how many images
3863 you can fetch at once, so if you load more than one
3864 launch site, you may get some gray areas in the map
3865 which indicate that Google is tired of sending data to
3866 you. Try again later.</p>
3867 </div>
3868 </div>
3869 <div class="sect2">
3870 <h3 id="_monitor_idle">12.13. Monitor Idle</h3>
3871 <div class="imageblock">
3872 <div class="content">
3873 <img src="monitor-idle.png" alt="monitor idle" width="500">
3874 </div>
3875 <div class="title">Figure 29. Monitor Idle Window</div>
3876 </div>
3877 <div class="paragraph">
3878 <p>This brings up a dialog similar to the Monitor Flight
3879 UI, except it works with the altimeter in “idle” mode
3880 by sending query commands to discover the current
3881 state rather than listening for telemetry
3882 packets. Because this uses command mode, it needs to
3883 have the TeleDongle and flight computer callsigns
3884 match exactly. If you can receive telemetry, but
3885 cannot manage to run Monitor Idle, then it&#8217;s very
3886 likely that your callsigns are different in some way.</p>
3887 </div>
3888 <div class="paragraph">
3889 <p>You can change the frequency and callsign used to
3890 communicate with the flight computer; they must both
3891 match the configuration in the flight computer
3892 exactly.</p>
3893 </div>
3894 </div>
3895 </div>
3896 </div>
3897 <div class="sect1">
3898 <h2 id="_altosdroid">13. AltosDroid</h2>
3899 <div class="sectionbody">
3900 <div class="paragraph">
3901 <p>AltosDroid provides the same flight monitoring capabilities as
3902 AltosUI, but runs on Android devices. AltosDroid is designed
3903 to connect to a TeleBT receiver over Bluetooth™ and (on
3904 Android devices supporting USB On-the-go) TeleDongle and
3905 TeleBT devices over USB. AltosDroid monitors telemetry data,
3906 logging it to internal storage in the Android device, and
3907 presents that data in a UI similar to the 'Monitor Flight'
3908 window in AltosUI.</p>
3909 </div>
3910 <div class="paragraph">
3911 <p>This manual will explain how to configure AltosDroid, connect
3912 to TeleBT or TeleDongle, operate the flight monitoring
3913 interface and describe what the displayed data means.</p>
3914 </div>
3915 <div class="sect2">
3916 <h3 id="_installing_altosdroid">13.1. Installing AltosDroid</h3>
3917 <div class="paragraph">
3918 <p>AltosDroid is available from the Google Play store. To
3919 install it on your Android device, open the Google
3920 Play Store application and search for
3921 “altosdroid”. Make sure you don&#8217;t have a space between
3922 “altos” and “droid” or you probably won&#8217;t find what
3923 you want. That should bring you to the right page from
3924 which you can download and install the application.</p>
3925 </div>
3926 </div>
3927 <div class="sect2">
3928 <h3 id="_charging_telebt_battery">13.2. Charging TeleBT Battery</h3>
3929 <div class="paragraph">
3930 <p>Before using TeleBT with AltosDroid, make sure the
3931 internal TeleBT battery is charged.  To do this,
3932 attach a micro USB cable from a computer or other USB
3933 power source to TeleBT.  A dual LED on the circuit
3934 board should illuminate, showing red while the battery
3935 is charging, green when charging is completed, and
3936 both red and green on at the same time if there is a
3937 battery fault.</p>
3938 </div>
3939 </div>
3940 <div class="sect2">
3941 <h3 id="_connecting_to_telebt_over_bluetooth">13.3. Connecting to TeleBT over Bluetooth™</h3>
3942 <div class="paragraph">
3943 <p>Note that when turning TeleBT on, you may see a brief LED
3944 flash, but there will be no "activity" indicated until you
3945 pair with the device from AltosDroid.</p>
3946 </div>
3947 <div class="paragraph">
3948 <p>Press the Android 'Menu' button or soft-key to see the
3949 configuration options available. Select the 'Connect a
3950 device' option and then the 'Scan for devices' entry
3951 at the bottom to look for your TeleBT device. Select
3952 your device, and when it asks for the code, enter
3953 '1234'.</p>
3954 </div>
3955 <div class="paragraph">
3956 <p>Subsequent connections will not require you to enter
3957 that code, and your 'paired' device will appear in the
3958 list without scanning.</p>
3959 </div>
3960 </div>
3961 <div class="sect2">
3962 <h3 id="_connecting_to_teledongle_or_telebt_over_usb">13.4. Connecting to TeleDongle or TeleBT over USB</h3>
3963 <div class="paragraph">
3964 <p>Get a special USB On-the-go adapter cable. These
3965 cables have a USB micro-B male connector on one end
3966 and a standard A female connector on the other
3967 end. Plug in your TeleDongle or TeleBT device to the
3968 adapter cable and the adapter cable into your phone
3969 and AltosDroid should automatically start up. If it
3970 doesn&#8217;t, the most likely reason is that your Android
3971 device doesn&#8217;t support USB On-the-go.</p>
3972 </div>
3973 </div>
3974 <div class="sect2">
3975 <h3 id="_altosdroid_menu">13.5. AltosDroid Menu</h3>
3976 <div class="paragraph">
3977 <p>The main AltosDroid menu has a selection of operation
3978 and configuration options.</p>
3979 </div>
3980 <div class="dlist">
3981 <dl>
3982 <dt class="hdlist1">Connect a device</dt>
3983 <dd>
3984 <p>Offers a menu of available TeleBT devices, and an
3985 option to scan for additional devices.</p>
3986 </dd>
3987 <dt class="hdlist1">Disconnect device</dt>
3988 <dd>
3989 <p>Disconnects the current TeleBT or TeleDongle
3990 device. You can reconnect TeleBT over bluetooth by
3991 using Connect a Device. You can reconnect a USB device
3992 by unplugging it and then plugging it back in.</p>
3993 </dd>
3994 <dt class="hdlist1">Select radio frequency</dt>
3995 <dd>
3996 <p>This selects which frequency to listen on by bringing
3997 up a menu of pre-set radio frequencies. Pick the one
3998 which matches your altimeter.</p>
3999 </dd>
4000 <dt class="hdlist1">Select Tracker</dt>
4001 <dd>
4002 <p>Switches the information displays to show data for a
4003 different transmitting device. The map will always
4004 show all of the devices in view. Trackers are shown
4005 and selected by serial number, so make sure you note
4006 the serial number of devices in each airframe.</p>
4007 </dd>
4008 <dt class="hdlist1">Delete Track</dt>
4009 <dd>
4010 <p>Deletes all information about a transmitting device.</p>
4011 </dd>
4012 <dt class="hdlist1">Setup</dt>
4013 <dd>
4014 <p>Offers additional configuration operations. See
4015 <a href="#_setup">Setup</a>.</p>
4016 </dd>
4017 <dt class="hdlist1">Idle Mode</dt>
4018 <dd>
4019 <p>Communicate with an altimeter in Idle mode. See <a href="#_idle_mode">Idle Mode</a></p>
4020 </dd>
4021 <dt class="hdlist1">Quit</dt>
4022 <dd>
4023 <p>Shuts down AltosDroid.</p>
4024 </dd>
4025 </dl>
4026 </div>
4027 </div>
4028 <div class="sect2">
4029 <h3 id="_setup">13.6. Setup</h3>
4030 <div class="dlist">
4031 <dl>
4032 <dt class="hdlist1">Telemetry Rate</dt>
4033 <dd>
4034 <p>Altus Metrum transmitters can be configured to operate
4035 at lower data rates to improve transmission range. If
4036 you have configured your device to do this, this menu
4037 item allows you to change the receiver to match.</p>
4038 </dd>
4039 <dt class="hdlist1">Units</dt>
4040 <dd>
4041 <p>Selects which units used to report values.</p>
4042 </dd>
4043 <dt class="hdlist1">Map Type</dt>
4044 <dd>
4045 <p>Displays a menu of map types and lets you select
4046 one. Hybrid maps include satellite images with a
4047 roadmap overlaid. Satellite maps dispense with the
4048 roadmap overlay. Roadmap shows just the roads. Terrain
4049 includes roads along with shadows indicating changes
4050 in elevation, and other geographical features.</p>
4051 </dd>
4052 <dt class="hdlist1">Map Source</dt>
4053 <dd>
4054 <p>Select between online and offline maps. Online maps
4055 will show a 'move to current position' icon in the
4056 upper right corner, while offline maps will have
4057 copyright information all over the map. Otherwise,
4058 they&#8217;re pretty similar.</p>
4059 </dd>
4060 <dt class="hdlist1">Preload Maps</dt>
4061 <dd>
4062 <p>Brings up a dialog allowing you to download offline
4063 map tiles so that you can have maps available even if
4064 you have no network connectivity at the launch site.</p>
4065 </dd>
4066 <dt class="hdlist1">Manage Frequencies</dt>
4067 <dd>
4068 <p>This presents a dialog containing the current list of
4069 frequencies that will be show in the 'Select radio
4070 frequency' menu. You can change the label for existing
4071 frequencies, delete or add new frequencies.</p>
4072 </dd>
4073 </dl>
4074 </div>
4075 </div>
4076 <div class="sect2">
4077 <h3 id="_idle_mode">13.7. Idle Mode</h3>
4078 <div class="dlist">
4079 <dl>
4080 <dt class="hdlist1">Callsign</dt>
4081 <dd>
4082 <p>Lets you configure the callsign used by AltosDroid to
4083 communicate with the flight computer. The callsign on
4084 the two devices must match or the communication will
4085 fail. This provides a modest amount of protection
4086 against accidentally controlling another persons
4087 flight computer.</p>
4088 </dd>
4089 <dt class="hdlist1">Monitor</dt>
4090 <dd>
4091 <p>This provides similar information to monitoring the
4092 telemetry stream from a flight computer in flight
4093 mode. The title of the application will change to
4094 include (idle) so you can tell this mode is active.</p>
4095 </dd>
4096 <dt class="hdlist1">Reboot</dt>
4097 <dd>
4098 <p>Remotely reboots the flight computer. This is useful
4099 when the flight computers turned on while the airframe
4100 is horizontal and you want to restart the flight
4101 computers in pad mode after raising the airframe to
4102 vertical.</p>
4103 </dd>
4104 <dt class="hdlist1">Fire Igniters</dt>
4105 <dd>
4106 <p>Remotely control igniters for ground testing recovery
4107 systems.</p>
4108 </dd>
4109 </dl>
4110 </div>
4111 </div>
4112 <div class="sect2">
4113 <h3 id="_altosdroid_flight_monitoring">13.8. AltosDroid Flight Monitoring</h3>
4114 <div class="paragraph">
4115 <p>AltosDroid is designed to mimic the AltosUI flight
4116 monitoring display, providing separate tabs for each
4117 stage of your rocket flight along with a tab
4118 containing a map of the local area with icons marking
4119 the current location of the altimeter and the Android
4120 device.</p>
4121 </div>
4122 </div>
4123 <div class="sect2">
4124 <h3 id="_pad">13.9. Pad</h3>
4125 <div class="paragraph">
4126 <p>The 'Pad' tab shows information used to decide when
4127 the rocket is ready for flight. The first elements
4128 include red/green indicators, if any of these is red,
4129 you&#8217;ll want to evaluate whether the rocket is ready to
4130 launch.</p>
4131 </div>
4132 <div class="paragraph">
4133 <p>When the pad tab is selected, the voice responses will
4134 include status changes to the igniters and GPS
4135 reception, letting you know if the rocket is still
4136 ready for launch.</p>
4137 </div>
4138 <div class="dlist">
4139 <dl>
4140 <dt class="hdlist1">Battery</dt>
4141 <dd>
4142 <p>This indicates whether the Li-Po battery powering the
4143 transmitter has sufficient charge to last for the
4144 duration of the flight. A value of more than 3.8V is
4145 required for a 'GO' status.</p>
4146 </dd>
4147 <dt class="hdlist1">Receiver Battery</dt>
4148 <dd>
4149 <p>This indicates whether the Li-Po battery powering the
4150 TeleBT has sufficient charge to last for the duration
4151 of the flight. A value of more than 3.8V is required
4152 for a 'GO' status.</p>
4153 </dd>
4154 <dt class="hdlist1">Data Logging</dt>
4155 <dd>
4156 <p>This indicates whether there is space remaining
4157 on-board to store flight data for the upcoming
4158 flight. If you&#8217;ve downloaded data, but failed to erase
4159 flights, there may not be any space left. TeleMetrum
4160 and TeleMega can store multiple flights, depending on
4161 the configured maximum flight log size. TeleGPS logs
4162 data continuously. TeleMini v1.0 stores only a single
4163 flight, so it will need to be downloaded and erased
4164 after each flight to capture data. This only affects
4165 on-board flight logging; the altimeter will still
4166 transmit telemetry and fire ejection charges at the
4167 proper times.</p>
4168 </dd>
4169 <dt class="hdlist1">GPS Locked</dt>
4170 <dd>
4171 <p>For a TeleMetrum or TeleMega device, this indicates
4172 whether the GPS receiver is currently able to compute
4173 position information. GPS requires at least 4
4174 satellites to compute an accurate position.</p>
4175 </dd>
4176 <dt class="hdlist1">GPS Ready</dt>
4177 <dd>
4178 <p>For a TeleMetrum or TeleMega device, this indicates
4179 whether GPS has reported at least 10 consecutive
4180 positions without losing lock. This ensures that the
4181 GPS receiver has reliable reception from the
4182 satellites.</p>
4183 </dd>
4184 <dt class="hdlist1">Apogee Igniter</dt>
4185 <dd>
4186 <p>This indicates whether the apogee igniter has
4187 continuity. If the igniter has a low resistance, then
4188 the voltage measured here will be close to the Li-Po
4189 battery voltage. A value greater than 3.2V is required
4190 for a 'GO' status.</p>
4191 </dd>
4192 <dt class="hdlist1">Main Igniter</dt>
4193 <dd>
4194 <p>This indicates whether the main igniter has
4195 continuity. If the igniter has a low resistance, then
4196 the voltage measured here will be close to the Li-Po
4197 battery voltage. A value greater than 3.2V is required
4198 for a 'GO' status.</p>
4199 </dd>
4200 <dt class="hdlist1">Igniter A-D</dt>
4201 <dd>
4202 <p>This indicates whether the indicated additional pyro
4203 channel igniter has continuity. If the igniter has a
4204 low resistance, then the voltage measured here will be
4205 close to the Li-Po battery voltage. A value greater
4206 than 3.2V is required for a 'GO' status.</p>
4207 </dd>
4208 </dl>
4209 </div>
4210 <div class="paragraph">
4211 <p>The Pad tab also shows the location of the Android
4212 device.</p>
4213 </div>
4214 </div>
4215 <div class="sect2">
4216 <h3 id="_flight">13.10. Flight</h3>
4217 <div class="paragraph">
4218 <p>The 'Flight' tab shows information used to evaluate
4219 and spot a rocket while in flight. It displays speed
4220 and height data to monitor the health of the rocket,
4221 along with elevation, range and bearing to help locate
4222 the rocket in the sky.</p>
4223 </div>
4224 <div class="paragraph">
4225 <p>While the Flight tab is displayed, the voice
4226 announcements will include current speed, height,
4227 elevation and bearing information.</p>
4228 </div>
4229 <div class="dlist">
4230 <dl>
4231 <dt class="hdlist1">Speed</dt>
4232 <dd>
4233 <p>Shows current vertical speed. During descent, the
4234 speed values are averaged over a fairly long time to
4235 try and make them steadier.</p>
4236 </dd>
4237 <dt class="hdlist1">Height</dt>
4238 <dd>
4239 <p>Shows the current height above the launch pad.</p>
4240 </dd>
4241 <dt class="hdlist1">Max Speed</dt>
4242 <dd>
4243 <p>Shows the maximum vertical speed seen during the
4244 flight.</p>
4245 </dd>
4246 <dt class="hdlist1">Max Height</dt>
4247 <dd>
4248 <p>Shows the maximum height above launch pad.</p>
4249 </dd>
4250 <dt class="hdlist1">Elevation</dt>
4251 <dd>
4252 <p>This is the angle above the horizon from the android
4253 devices current position.</p>
4254 </dd>
4255 <dt class="hdlist1">Range</dt>
4256 <dd>
4257 <p>The total distance from the android device to the
4258 rocket, including both ground distance and difference
4259 in altitude. Use this to gauge how large the rocket is
4260 likely to appear in the sky.</p>
4261 </dd>
4262 <dt class="hdlist1">Bearing</dt>
4263 <dd>
4264 <p>This is the azimuth from true north for the rocket
4265 from the android device. Use this in combination with
4266 the Elevation value to help locate the rocket in the
4267 sky, or at least to help point the antenna in the
4268 general direction. This is provided in both degrees
4269 and a compass point (like West South West). You&#8217;ll
4270 want to know which direction is true north before
4271 launching your rocket.</p>
4272 </dd>
4273 <dt class="hdlist1">Ground Distance</dt>
4274 <dd>
4275 <p>This shows the distance across the ground to the
4276 lat/lon where the rocket is located. Use this to
4277 estimate what is currently under the rocket.</p>
4278 </dd>
4279 <dt class="hdlist1">Latitude/Longitude</dt>
4280 <dd>
4281 <p>Displays the last known location of the rocket.</p>
4282 </dd>
4283 <dt class="hdlist1">Apogee Igniter</dt>
4284 <dd>
4285 <p>This indicates whether the apogee igniter has
4286 continuity. If the igniter has a low resistance, then
4287 the voltage measured here will be close to the Li-Po
4288 battery voltage. A value greater than 3.2V is required
4289 for a 'GO' status.</p>
4290 </dd>
4291 <dt class="hdlist1">Main Igniter</dt>
4292 <dd>
4293 <p>This indicates whether the main igniter has
4294 continuity. If the igniter has a low resistance, then
4295 the voltage measured here will be close to the Li-Po
4296 battery voltage. A value greater than 3.2V is required
4297 for a 'GO' status.</p>
4298 </dd>
4299 </dl>
4300 </div>
4301 </div>
4302 <div class="sect2">
4303 <h3 id="_recover">13.11. Recover</h3>
4304 <div class="paragraph">
4305 <p>The 'Recover' tab shows information used while
4306 recovering the rocket on the ground after flight.</p>
4307 </div>
4308 <div class="paragraph">
4309 <p>While the Recover tab is displayed, the voice
4310 announcements will include distance along with either
4311 bearing or direction, depending on whether you are
4312 moving.</p>
4313 </div>
4314 <div class="dlist">
4315 <dl>
4316 <dt class="hdlist1">Bearing</dt>
4317 <dd>
4318 <p>This is the azimuth from true north for the rocket
4319 from the android device. Use this in combination with
4320 the Elevation value to help locate the rocket in the
4321 sky, or at least to help point the antenna in the
4322 general direction. This is provided in both degrees
4323 and a compass point (like West South West). You&#8217;ll
4324 want to know which direction is true north before
4325 launching your rocket.</p>
4326 </dd>
4327 <dt class="hdlist1">Direction</dt>
4328 <dd>
4329 <p>When you are in motion, this provides the angle from
4330 your current direction of motion towards the rocket.</p>
4331 </dd>
4332 <dt class="hdlist1">Distance</dt>
4333 <dd>
4334 <p>Distance over the ground to the rocket.</p>
4335 </dd>
4336 <dt class="hdlist1">Tar Lat/Tar Lon</dt>
4337 <dd>
4338 <p>Displays the last known location of the rocket.</p>
4339 </dd>
4340 <dt class="hdlist1">My Lat/My Lon</dt>
4341 <dd>
4342 <p>Displays the location of the Android device.</p>
4343 </dd>
4344 <dt class="hdlist1">Max Height</dt>
4345 <dd>
4346 <p>Shows the maximum height above launch pad seen during
4347 the flight.</p>
4348 </dd>
4349 <dt class="hdlist1">Max Speed</dt>
4350 <dd>
4351 <p>Shows the maximum vertical speed seen during the
4352 flight.</p>
4353 </dd>
4354 <dt class="hdlist1">Max Accel</dt>
4355 <dd>
4356 <p>Shows the maximum vertical acceleration seen during
4357 the flight.</p>
4358 </dd>
4359 </dl>
4360 </div>
4361 </div>
4362 <div class="sect2">
4363 <h3 id="_map_2">13.12. Map</h3>
4364 <div class="paragraph">
4365 <p>The 'Map' tab shows a map of the area around the
4366 rocket being tracked along with information needed to
4367 recover it.</p>
4368 </div>
4369 <div class="paragraph">
4370 <p>On the map itself, icons showing the location of the
4371 android device along with the last known location of
4372 each tracker. A blue line is drawn from the android
4373 device location to the currently selected tracker.</p>
4374 </div>
4375 <div class="paragraph">
4376 <p>Below the map, the distance and either bearing or
4377 direction along with the lat/lon of the target and the
4378 android device are shown</p>
4379 </div>
4380 <div class="paragraph">
4381 <p>The Map tab provides the same voice announcements as
4382 the Recover tab.</p>
4383 </div>
4384 </div>
4385 <div class="sect2">
4386 <h3 id="_downloading_flight_logs">13.13. Downloading Flight Logs</h3>
4387 <div class="paragraph">
4388 <p>AltosDroid always saves every bit of telemetry data it
4389 receives. To download that to a computer for use with
4390 AltosUI, remove the SD card from your Android device,
4391 or connect your device to your computer&#8217;s USB port and
4392 browse the files on that device. You will find
4393 '.telem' files in the TeleMetrum directory that will
4394 work with AltosUI directly.</p>
4395 </div>
4396 </div>
4397 </div>
4398 </div>
4399 <div class="sect1">
4400 <h2 id="_system_operation">Appendix A: System Operation</h2>
4401 <div class="sectionbody">
4402 <div class="sect2">
4403 <h3 id="_firmware_modes">A.1. Firmware Modes</h3>
4404 <div class="paragraph">
4405 <p>The AltOS firmware build for the altimeters has two
4406 fundamental modes, “idle” and “flight”.  Which of these modes
4407 the firmware operates in is determined at start up
4408 time.
4409 For
4410 TeleMetrum, TeleMega, EasyMega and EasyTimer, which have accelerometers, the mode is
4411 controlled by the orientation of the
4412 rocket (well, actually the board, of course&#8230;&#8203;) at the time
4413 power is switched on.  If the rocket is “nose up”, then
4414 the flight computer assumes it&#8217;s on a rail or rod being prepared for
4415 launch, so the firmware chooses flight mode.  However, if the
4416 rocket is more or less horizontal, the firmware instead enters
4417 idle mode.
4418 Since
4419 EasyMini doesn&#8217;t
4420 have an
4421 accelerometer we can use to determine orientation, “idle” mode
4422 is selected if the board is connected via USB to a computer,
4423 otherwise the board enters “flight” mode.
4424 TeleMini
4425 selects “idle” mode if it receives a command packet
4426 within the
4427 first five seconds of operation.</p>
4428 </div>
4429 <div class="paragraph">
4430 <p>At power on, the altimeter will beep out the battery voltage
4431 to the nearest tenth of a volt.  Each digit is represented by
4432 a sequence of short “dit” beeps, with a pause between
4433 digits. A zero digit is represented with one long “dah”
4434 beep. Then there will be a short pause while the altimeter
4435 completes initialization and self test, and decides which mode
4436 to enter next.</p>
4437 </div>
4438 <div class="paragraph">
4439 <p>In flight or “pad” mode, the altimeter engages the flight
4440 state machine, goes into transmit-only mode to send telemetry,
4441 and waits for launch to be detected.  Flight mode is indicated
4442 by an “di-dah-dah-dit” (“P” for pad) on the beeper or lights,
4443 followed by beeps or flashes indicating the state of the
4444 pyrotechnic igniter continuity.  One beep/flash indicates
4445 apogee continuity, two beeps/flashes indicate main continuity,
4446 three beeps/flashes indicate both apogee and main continuity,
4447 and one longer “brap” sound which is made by rapidly
4448 alternating between two tones indicates no continuity.  For a
4449 dual deploy flight, make sure you&#8217;re getting three beeps or
4450 flashes before launching!  For apogee-only or motor eject
4451 flights, do what makes sense.</p>
4452 </div>
4453 <div class="paragraph">
4454 <p>If idle mode is entered, you will hear an audible “di-dit” or
4455 see two short flashes (“I” for idle), and the flight state
4456 machine is disengaged, thus no ejection charges will fire.
4457 The altimeters also listen for the radio link when in idle
4458 mode for requests sent via TeleDongle.  Commands can be issued
4459 in idle mode over either USB or the radio link
4460 equivalently.
4461 TeleMini only has the radio link.
4462 Idle mode is useful for configuring the altimeter, for
4463 extracting data from the on-board storage chip after
4464 flight, and for ground testing pyro charges.</p>
4465 </div>
4466 <div class="paragraph">
4467 <p>In “Idle” and “Pad” modes, once the mode indication
4468 beeps/flashes and continuity indication has been sent, if
4469 there is no space available to log the flight in on-board
4470 memory, the flight computer will emit a warbling tone (much
4471 slower than the “no continuity tone”)</p>
4472 </div>
4473 <div class="paragraph">
4474 <p>See <a href="#_understanding_beeps">Understanding Beeps</a> for a summary of all of
4475 the audio signals used.</p>
4476 </div>
4477 <div class="paragraph">
4478 <p>Once landed, the flight computer will signal that by emitting
4479 the “Landed” sound described above, after which it will beep
4480 out the apogee height (in meters). Each digit is represented
4481 by a sequence of short “dit” beeps, with a pause between
4482 digits. A zero digit is represented with one long “dah”
4483 beep. The flight computer will continue to report landed mode
4484 and beep out the maximum height until turned off.</p>
4485 </div>
4486 <div class="paragraph">
4487 <p>One “neat trick” of particular value when TeleMetrum, TeleMega
4488 or EasyMega are used with
4489 very large air-frames, is that you can power the board up while the
4490 rocket is horizontal, such that it comes up in idle mode.  Then you can
4491 raise the air-frame to launch position, and issue a 'reset' command
4492 via TeleDongle over the radio link to cause the altimeter to reboot and
4493 come up in flight mode.  This is much safer than standing on the top
4494 step of a rickety step-ladder or hanging off the side of a launch
4495 tower with a screw-driver trying to turn on your avionics before
4496 installing igniters!</p>
4497 </div>
4498 <div class="paragraph">
4499 <p>TeleMini is configured solely via the radio link. Of course, that
4500 means you need to know the TeleMini radio configuration values
4501 or you won&#8217;t be able to communicate with it. For situations
4502 when you don&#8217;t have the radio configuration values,
4503 TeleMini v1.0
4504 offers an 'emergency recovery' mode. In this mode,
4505 TeleMini v1.0 is
4506 configured as follows:</p>
4507 </div>
4508 <div class="ulist">
4509 <ul>
4510 <li>
4511 <p>Sets the radio frequency to 434.550MHz</p>
4512 </li>
4513 <li>
4514 <p>Sets the radio calibration back to the factory value.</p>
4515 </li>
4516 <li>
4517 <p>Sets the callsign to N0CALL</p>
4518 </li>
4519 <li>
4520 <p>Does not go to 'pad' mode after five seconds.</p>
4521 </li>
4522 </ul>
4523 </div>
4524 <div class="paragraph">
4525 <p>To get into 'emergency recovery' mode, first find the row of
4526 four small holes opposite the switch wiring. Using a short
4527 piece of small gauge wire, connect the outer two holes
4528 together, then power TeleMini up. Once the red LED is lit,
4529 disconnect the wire and the board should signal that it&#8217;s in
4530 'idle' mode after the initial five second startup
4531 period.</p>
4532 </div>
4533 </div>
4534 <div class="sect2">
4535 <h3 id="_gps">A.2. GPS</h3>
4536 <div class="paragraph">
4537 <p>TeleMetrum and TeleMega include a complete GPS receiver.  A
4538 complete explanation of how GPS works is beyond the scope of
4539 this manual, but the bottom line is that the GPS receiver
4540 needs to lock onto at least four satellites to obtain a solid
4541 3 dimensional position fix and know what time it is.</p>
4542 </div>
4543 <div class="paragraph">
4544 <p>The flight computers provide backup power to the GPS chip any time a
4545 battery is connected.  This allows the receiver to “warm start” on
4546 the launch rail much faster than if every power-on were a GPS
4547 “cold start”.  In typical operations, powering up
4548 on the flight line in idle mode while performing final air-frame
4549 preparation will be sufficient to allow the GPS receiver to cold
4550 start and acquire lock.  Then the board can be powered down during
4551 RSO review and installation on a launch rod or rail.  When the board
4552 is turned back on, the GPS system should lock very quickly, typically
4553 long before igniter installation and return to the flight line are
4554 complete.</p>
4555 </div>
4556 </div>
4557 <div class="sect2">
4558 <h3 id="_controlling_an_altimeter_over_the_radio_link">A.3. Controlling An Altimeter Over The Radio Link</h3>
4559 <div class="paragraph">
4560 <p>One of the unique features of the Altus Metrum system is the
4561 ability to create a two way command link between TeleDongle
4562 and an altimeter using the digital radio transceivers
4563 built into each device. This allows you to interact with the
4564 altimeter from afar, as if it were directly connected to the
4565 computer.</p>
4566 </div>
4567 <div class="paragraph">
4568 <p>Any operation which can be performed with a flight computer can
4569 either be done with the device directly connected to the
4570 computer via the USB cable, or through the radio
4571 link. TeleMini doesn&#8217;t provide a USB connector and so it is
4572 always communicated with over radio.  Select the appropriate
4573 TeleDongle device when the list of devices is presented and
4574 AltosUI will interact with an altimeter over the radio link.</p>
4575 </div>
4576 <div class="paragraph">
4577 <p>One oddity in the current interface is how AltosUI selects the
4578 frequency for radio communications. Instead of providing
4579 an interface to specifically configure the frequency, it uses
4580 whatever frequency was most recently selected for the target
4581 TeleDongle device in Monitor Flight mode. If you haven&#8217;t ever
4582 used that mode with the TeleDongle in question, select the
4583 Monitor Flight button from the top level UI, and pick the
4584 appropriate TeleDongle device.  Once the flight monitoring
4585 window is open, select the desired frequency and then close it
4586 down again. All radio communications will now use that frequency.</p>
4587 </div>
4588 <div class="ulist">
4589 <ul>
4590 <li>
4591 <p>Save Flight Data—Recover flight data from the
4592 rocket without opening it up.</p>
4593 </li>
4594 <li>
4595 <p>Configure altimeter apogee delays, main deploy
4596 heights and additional pyro event conditions to
4597 respond to changing launch conditions. You can also
4598 'reboot' the altimeter. Use this to remotely enable
4599 the flight computer by turning TeleMetrum or
4600 TeleMega on in “idle” mode, then once the air-frame
4601 is oriented for launch, you can reboot the
4602 altimeter and have it restart in pad mode without
4603 having to climb the scary ladder.</p>
4604 </li>
4605 <li>
4606 <p>Fire Igniters—Test your deployment charges without snaking
4607 wires out through holes in the air-frame. Simply assemble the
4608 rocket as if for flight with the apogee and main charges
4609 loaded, then remotely command the altimeter to fire the
4610 igniters.</p>
4611 </li>
4612 </ul>
4613 </div>
4614 <div class="paragraph">
4615 <p>Operation over the radio link for configuring an
4616 altimeter, ground testing igniters, and so forth uses
4617 the same RF frequencies as flight telemetry.  To
4618 configure the desired TeleDongle frequency, select the
4619 monitor flight tab, then use the frequency selector
4620 and close the window before performing other desired
4621 radio operations.</p>
4622 </div>
4623 <div class="paragraph">
4624 <p>The flight computers only enable radio commanding in
4625 'idle' mode.  TeleMetrum and TeleMega use the
4626 accelerometer to detect which orientation they start
4627 up in, so make sure you have the flight computer lying
4628 horizontally when you turn it on. Otherwise, it will
4629 start in 'pad' mode ready for flight, and will not be
4630 listening for command packets from TeleDongle.</p>
4631 </div>
4632 <div class="paragraph">
4633 <p>TeleMini listens for a command packet for five seconds
4634 after first being turned on, if it doesn&#8217;t hear
4635 anything, it enters 'pad' mode, ready for flight and
4636 will no longer listen for command packets. The easiest
4637 way to connect to TeleMini is to initiate the command
4638 and select the TeleDongle device. At this point, the
4639 TeleDongle will be attempting to communicate with the
4640 TeleMini. Now turn TeleMini on, and it should
4641 immediately start communicating with the TeleDongle
4642 and the desired operation can be performed.</p>
4643 </div>
4644 <div class="paragraph">
4645 <p>You can monitor the operation of the radio link by watching the
4646 lights on the devices. The red LED will flash each time a packet
4647 is transmitted, while the green LED will light up on TeleDongle when
4648 it is waiting to receive a packet from the altimeter.</p>
4649 </div>
4650 </div>
4651 <div class="sect2">
4652 <h3 id="_ground_testing">A.4. Ground Testing</h3>
4653 <div class="paragraph">
4654 <p>An important aspect of preparing a rocket using electronic deployment
4655 for flight is ground testing the recovery system.
4656 Thanks
4657 to the bi-directional radio link central to the Altus Metrum system,
4658 this can be accomplished in a TeleMega, TeleMetrum or TeleMini equipped rocket
4659 with less work than you may be accustomed to with other systems.  It
4660 can even be fun!</p>
4661 </div>
4662 <div class="paragraph">
4663 <p>Just prep the rocket for flight, then power up the altimeter
4664 in “idle”
4665 mode (placing air-frame horizontal for TeleMetrum or TeleMega, or
4666 selecting the Configure Altimeter tab for TeleMini).
4667 This will cause
4668 the firmware to go into “idle” mode, in which the normal flight
4669 state machine is disabled and charges will not fire without
4670 manual command.
4671 You can now command the altimeter to fire the apogee
4672 or main charges from a safe distance using your
4673 computer and the Fire Igniter tab to complete ejection testing.</p>
4674 </div>
4675 </div>
4676 <div class="sect2">
4677 <h3 id="_radio_link">A.5. Radio Link</h3>
4678 <div class="paragraph">
4679 <p>TeleMetrum, TeleMini and TeleMega all incorporate an
4680 RF transceiver, but it&#8217;s not a full duplex system;
4681 each end can only be transmitting or receiving at any
4682 given moment. So we had to decide how to manage the
4683 link.</p>
4684 </div>
4685 <div class="paragraph">
4686 <p>By design, the altimeter firmware listens for the
4687 radio link when it&#8217;s in “idle mode”, which allows us
4688 to use the radio link to configure the rocket, do
4689 things like ejection tests, and extract data after a
4690 flight without having to crack open the air-frame.
4691 However, when the board is in “flight mode”, the
4692 altimeter only transmits and doesn&#8217;t listen at all.
4693 That&#8217;s because we want to put ultimate priority on
4694 event detection and getting telemetry out of the
4695 rocket through the radio in case the rocket crashes
4696 and we aren&#8217;t able to extract data later.</p>
4697 </div>
4698 <div class="paragraph">
4699 <p>We don&#8217;t generally use a 'normal packet radio' mode
4700 like APRS because they&#8217;re just too inefficient.  The
4701 GFSK modulation we use is FSK with the base-band
4702 pulses passed through a Gaussian filter before they go
4703 into the modulator to limit the transmitted bandwidth.
4704 When combined with forward error correction and
4705 interleaving, this allows us to have a very robust
4706 19.2 kilobit data link with only 10-40 milliwatts of
4707 transmit power, a whip antenna in the rocket, and a
4708 hand-held Yagi on the ground.  We&#8217;ve had flights to
4709 above 21k feet AGL with great reception, and
4710 calculations suggest we should be good to well over
4711 40k feet AGL with a 5-element yagi on the ground with
4712 our 10mW units and over 100k feet AGL with the 40mW
4713 devices.  We hope to fly boards to higher altitudes
4714 over time, and would of course appreciate customer
4715 feedback on performance in higher altitude flights!</p>
4716 </div>
4717 </div>
4718 <div class="sect2">
4719 <h3 id="_aprs">A.6. APRS</h3>
4720 <div class="paragraph">
4721 <p>TeleMetrum v2 and newer and TeleMega can send APRS if desired, and the
4722 interval between APRS packets can be configured. As
4723 each APRS packet takes a full second to transmit, we
4724 recommend an interval of at least 5 seconds to avoid
4725 consuming too much battery power or radio channel
4726 bandwidth. You can configure the time within each
4727 minute that APRS transmits by changing the APRS offset
4728 value. When the GPS signal is locked and knows the
4729 current time, the APRS offset selects the time with
4730 each minute for the first APRS transmission;
4731 subsequent transmissions occur each APRS interval
4732 seconds thereafter.  You can configure the APRS
4733 interval and APRS offset using AltosUI; that
4734 process is described in <a href="#_configure_altimeter">Configure Altimeter</a>.</p>
4735 </div>
4736 <div class="paragraph">
4737 <p>AltOS supports both compressed and uncompressed APRS
4738 position report data formats. The compressed format
4739 provides for higher position precision and shorter
4740 packets than the uncompressed APRS format. We&#8217;ve found
4741 some older APRS receivers that do not handle the
4742 compressed format. The Kenwood TH-72A requires the use
4743 of uncompressed format to display altitude information
4744 correctly. The Yaesu FT1D requires the use of
4745 compressed format to display altitude information.</p>
4746 </div>
4747 <div class="paragraph">
4748 <p>APRS packets include an SSID (Secondary Station Identifier)
4749 field that allows one operator to have multiple
4750 transmitters. AltOS allows you to set this to a single digit
4751 from 0 to 9, allowing you to fly multiple transmitters at the
4752 same time while keeping the identify of each one separate in
4753 the receiver. By default, the SSID is set to the last digit of
4754 the device serial number.</p>
4755 </div>
4756 <div class="paragraph">
4757 <p>The APRS packet format includes a comment field that
4758 can have arbitrary text in it. AltOS uses this to send
4759 status information as shown in the following table.</p>
4760 </div>
4761 <table class="tableblock frame-all grid-all stretch">
4762 <caption class="title">Table 10. Altus Metrum APRS Comments</caption>
4763 <colgroup>
4764 <col style="width: 20%;">
4765 <col style="width: 20%;">
4766 <col style="width: 60%;">
4767 </colgroup>
4768 <thead>
4769 <tr>
4770 <th class="tableblock halign-left valign-top">Field</th>
4771 <th class="tableblock halign-left valign-top">Example</th>
4772 <th class="tableblock halign-left valign-top">Description</th>
4773 </tr>
4774 </thead>
4775 <tbody>
4776 <tr>
4777 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
4778 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
4779 <td class="tableblock halign-left valign-top"><p class="tableblock">GPS Status U for unlocked, L for locked</p></td>
4780 </tr>
4781 <tr>
4782 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
4783 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4784 <td class="tableblock halign-left valign-top"><p class="tableblock">Number of Satellites in View</p></td>
4785 </tr>
4786 <tr>
4787 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
4788 <td class="tableblock halign-left valign-top"><p class="tableblock">B4.0</p></td>
4789 <td class="tableblock halign-left valign-top"><p class="tableblock">Altimeter Battery Voltage</p></td>
4790 </tr>
4791 <tr>
4792 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4793 <td class="tableblock halign-left valign-top"><p class="tableblock">A3.7</p></td>
4794 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee Igniter Voltage</p></td>
4795 </tr>
4796 <tr>
4797 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
4798 <td class="tableblock halign-left valign-top"><p class="tableblock">M3.7</p></td>
4799 <td class="tableblock halign-left valign-top"><p class="tableblock">Main Igniter Voltage</p></td>
4800 </tr>
4801 <tr>
4802 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4803 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4804 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4805 </tr>
4806 <tr>
4807 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4808 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4809 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4810 </tr>
4811 </tbody>
4812 </table>
4813 <div class="paragraph">
4814 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4815 satellites in view, a primary battery at 4.0V, and
4816 apogee and main igniters both at 3.7V from device 1286.</p>
4817 </div>
4818 <div class="literalblock">
4819 <div class="content">
4820 <pre>L6 B4.0 A3.7 M3.7 1286</pre>
4821 </div>
4822 </div>
4823 <div class="paragraph">
4824 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4825 satellites in view and a primary battery at 4.0V from device 1876.</p>
4826 </div>
4827 <div class="literalblock">
4828 <div class="content">
4829 <pre>L6 B4.0 1876</pre>
4830 </div>
4831 </div>
4832 <div class="paragraph">
4833 <p>Make sure your primary battery is above 3.8V
4834 any connected igniters are above 3.5V
4835 and GPS is locked with at least 5 or 6 satellites in
4836 view before flying. If GPS is switching between L and
4837 U regularly, then it doesn&#8217;t have a good lock and you
4838 should wait until it becomes stable.</p>
4839 </div>
4840 <div class="paragraph">
4841 <p>If the GPS receiver loses lock, the APRS data
4842 transmitted will contain the last position for which
4843 GPS lock was available. You can tell that this has
4844 happened by noticing that the GPS status character
4845 switches from 'L' to 'U'. Before GPS has locked, APRS
4846 will transmit zero for latitude, longitude and
4847 altitude.</p>
4848 </div>
4849 </div>
4850 <div class="sect2">
4851 <h3 id="_configurable_parameters">A.7. Configurable Parameters</h3>
4852 <div class="paragraph">
4853 <p>Configuring an Altus Metrum altimeter for flight is
4854 very simple.  Even on our baro-only TeleMini and
4855 EasyMini boards, the use of a Kalman filter means
4856 there is no need to set a “mach delay”.  All of the
4857 configurable parameters can be set using AltosUI. Read
4858 <a href="#_configure_altimeter">Configure Altimeter</a> for more information.</p>
4859 </div>
4860 </div>
4861 </div>
4862 </div>
4863 <div class="sect1">
4864 <h2 id="_example_pyro_channel_configurations">Appendix B: Example Pyro Channel Configurations</h2>
4865 <div class="sectionbody">
4866 <div class="paragraph">
4867 <p>Programming configurable pyro channels on Altus Metrum products that
4868 include them isn&#8217;t difficult, but in an attempt to aid understanding
4869 of the configuration interface and help "keep simple things simple",
4870 we offer the following examples of the simplest configurations for
4871 common situations, along with some hints on avoiding unexpected
4872 results.</p>
4873 </div>
4874 <div class="paragraph">
4875 <p>The rich set of conditions provided can be used to configure almost
4876 any pyro event you can imagine, for a wide variety of objectives.
4877 But don&#8217;t be fooled!  Typical events need only one or a few simple
4878 conditions to be configured for success.  A key thing to remember is
4879 that <strong>all</strong> configured conditions must be true to allow a pyro channel
4880 to fire.  Trying to include too many conditions often results in
4881 conflicting rules that never allow a channel to fire.  The most
4882 important advice we can offer is, therefore, to try and find the
4883 simplest set of conditions that will do what you need for a given
4884 project.</p>
4885 </div>
4886 <div class="sect2">
4887 <h3 id="_two_stage_flights">B.1. Two-Stage Flights</h3>
4888 <div class="paragraph">
4889 <p>Successful completion of a two-stage flight often involves
4890 programming of two events.  The first is firing a separation
4891 charge, the second is igniting the sustainer&#8217;s (primary)
4892 motor.</p>
4893 </div>
4894 <div class="paragraph">
4895 <p>Separation charges are best fired as soon as possible after
4896 the previous stage has completed providing acceleration, to
4897 minimize drag of the sustainer&#8217;s coast phase before ignition.
4898 Recovery, whether the remainder of the flight is nominal or
4899 not, usually works best when the states are separated.  So,
4900 the "best" way to configure a pyro channel for a separation
4901 charge is to just set "after motor number".  For a 2-stage
4902 project, set this to "1".  This will cause the pyro channel
4903 to fire as soon as the firmware&#8217;s flight state machine
4904 determines the first motor has burned out.</p>
4905 </div>
4906 <div class="paragraph">
4907 <p>Safe ignition of a sustainer (primary) motor requires that
4908 it happen after the previous stage burns out, while the
4909 airframe remains mostly vertical, and typically after the
4910 sustainer has coasted away from the booster a bit.  A good
4911 starting point is thus "after motor number" set the same as
4912 the separation charge, which is "1" for a 2-stage rocket.
4913 Then "angle from vertical less than" set to some
4914 reasonably vertical amount, perhaps 20 degrees.  Then "delay
4915 after other conditions" set for the desired duration of coast.
4916 Use simulations to figure out what a reasonable value here is,
4917 but for typical high power rocketry sport flights that aren&#8217;t
4918 trying to set records, something like 2 seconds is usually a
4919 good place to start.</p>
4920 </div>
4921 </div>
4922 <div class="sect2">
4923 <h3 id="_triggered_clusters_and_air_starts">B.2. Triggered Clusters and Air Starts</h3>
4924 <div class="paragraph">
4925 <p>When an airframe has a cluster of motors, one of which is
4926 "primary" and centered, surrounding by a ring of "secondary"
4927 motors, you may want to use the launch control system to                        fire the primary motor and use onboard electronics to light
4928 the rest of the cluster as soon as launch is detected.  This
4929 is particularly true if the primary motor is significantly
4930 different in geometry and may take longer to come up to
4931 pressure than the secondary motors.  In this case, a simple
4932 configuration to light secondary motors is is "time since
4933 boost greater than" enabled and set to "0".  There&#8217;s
4934 really no point in setting an angle limit since no time has
4935 transpired for the airframe to change orientation.</p>
4936 </div>
4937 <div class="paragraph">
4938 <p>Air starts can use the same simple configuration, but with
4939 the time set to a non-zero value.  However, if air starts
4940 are going to light after the airframe leaves the launch rail
4941 or tower, add an "angle from vertical less than"
4942 condition just you would for a 2-stage sustainer to stay safe.</p>
4943 </div>
4944 </div>
4945 <div class="sect2">
4946 <h3 id="_redundant_apogee">B.3. Redundant Apogee</h3>
4947 <div class="paragraph">
4948 <p>When flying a board like TeleMega or EasyMega, it&#8217;s easy to
4949 configure a programmable channel to fire a redundant apogee
4950 charge.  This is of course not <strong>fully</strong> redundant, since it&#8217;s
4951 always possible that the board itself or its battery could
4952 the the failure source, but far more often, pyro events fail
4953 due to broken wires, bad connectors, or bad e-matches&#8230;&#8203; so
4954 firing two charges from one board can add useful redundancy.</p>
4955 </div>
4956 <div class="paragraph">
4957 <p>The simplest configuration for redundant apogee is "flight
4958 state after" set to "drogue", and then "delay after other
4959 conditions" set to a second or two.</p>
4960 </div>
4961 </div>
4962 <div class="sect2">
4963 <h3 id="_redundant_main">B.4. Redundant Main</h3>
4964 <div class="paragraph">
4965 <p>Similarly to apogee, configuring a redundant main charge can
4966 provide useful redundancy.  What we want is to configure an
4967 altitude for deployment lower than the primary main deploy
4968 altitude, and then ensure we only trigger on that condition
4969 while descending.</p>
4970 </div>
4971 <div class="paragraph">
4972 <p>The simplest configuration for redundant main is "flight
4973 state after" set to "drogue", which will ensure we&#8217;re in to
4974 the descent phase, then "height less than" set to a number
4975 lower than you&#8217;ve chosen for the primary main channel
4976 deployment height.</p>
4977 </div>
4978 </div>
4979 <div class="sect2">
4980 <h3 id="_apogee_above_baro_sensor_limit">B.5. Apogee Above Baro Sensor Limit</h3>
4981 <div class="paragraph">
4982 <p>A question we&#8217;ve seen increasingly often is "How does the
4983 Telemega/Easymega detect apogee for flights above 100,000
4984 feet?"  Flights above that height are a bit outside
4985 our original design envelope, but can be made to work&#8230;&#8203;
4986 This is <strong>not</strong> a simple flight, and the configuration for it
4987 is also not simple, but we think including this information
4988 is important for anyone contemplating such a project with our
4989 electronics!</p>
4990 </div>
4991 <div class="paragraph">
4992 <p>Our flight computers use a Kalman sensor-fusing filter to
4993 estimate the flight state, which consists of three values:</p>
4994 </div>
4995 <div class="olist arabic">
4996 <ol class="arabic">
4997 <li>
4998 <p>Height above ground</p>
4999 </li>
5000 <li>
5001 <p>Vertical speed</p>
5002 </li>
5003 <li>
5004 <p>Vertical acceleration</p>
5005 </li>
5006 </ol>
5007 </div>
5008 <div class="paragraph">
5009 <p>Apogee is assumed to be where vertical speed crosses zero.</p>
5010 </div>
5011 <div class="paragraph">
5012 <p>Below 30km altitude (about 100k'), we use both the barometer
5013 and the accelerometer to update the flight state, along with
5014 a basic Newtonian model of motion. That works well, pegging
5015 apogee within a few sensor samples essentially every time.</p>
5016 </div>
5017 <div class="paragraph">
5018 <p>Above 30km, the barometric sensor doesn&#8217;t provide useful data,
5019 so we can&#8217;t use it to update the flight state. Instead, the
5020 Kalman filter falls back to a single sensor mode, using only
5021 the accelerometer.</p>
5022 </div>
5023 <div class="paragraph">
5024 <p>At all altitudes, we de-sense the barometric data when we
5025 estimate the speed is near or above mach as the sensor is
5026 often subjected to significant transients, which would
5027 otherwise push the flight state estimates too fast and could
5028 trigger a false apogee event.</p>
5029 </div>
5030 <div class="paragraph">
5031 <p>That means the filter is no longer getting the benefit of two
5032 sensors, and relies on just the accelerometer. The trouble
5033 with accelerometers is they&#8217;re measuring the derivative of
5034 speed, so you have to integrate their values to compute speed.
5035 Any offset error in acceleration measurement gets constantly
5036 added to that speed.</p>
5037 </div>
5038 <div class="paragraph">
5039 <p>In addition, we assume the axial acceleration is actually
5040 vertical acceleration; our tilt measurements have enough
5041 integration error during coast that we can&#8217;t usefully use
5042 that to get vertical acceleration. Because we don&#8217;t live in
5043 an inertial frame, that means we&#8217;re mis-computing the total
5044 acceleration acting on the airframe as we have to add gravity
5045 into the mix, and simply adding that to the axial acceleration
5046 value doesn&#8217;t generate the right value.</p>
5047 </div>
5048 <div class="paragraph">
5049 <p>The effect of this is to under-estimate apogee when you base
5050 the computation purely on acceleration as the rocket flies a
5051 parabolic path.</p>
5052 </div>
5053 <div class="paragraph">
5054 <p>For flights <strong>near</strong> 100k', all of this works pretty well -
5055 you&#8217;ve got the flight state estimates adjusted using the
5056 barometric sensor up to 30km, then you&#8217;re flying on inertial
5057 data to apogee.</p>
5058 </div>
5059 <div class="paragraph">
5060 <p>For flights well above 100k', it&#8217;s not great; you&#8217;re usually
5061 going fast enough through 100k' that the baro sensor is still
5062 de-sensed through the end of its useful range, so the flight
5063 state estimates are not as close. After that, as you&#8217;re flying
5064 purely on accelerometer data, there&#8217;s no way to re-correct the
5065 state, so the apogee estimates can be off by quite a bit.</p>
5066 </div>
5067 <div class="paragraph">
5068 <p>In the worst cases we have seen, the baro sensor data was
5069 wildly incorrect above mach due to poor static port design,
5070 leaving the state estimate of speed across the 30km boundary
5071 way off and causing the apogee detection to happen far from
5072 the correct time.</p>
5073 </div>
5074 <div class="paragraph">
5075 <p>The good news is that correctly determining apogee is not
5076 really all that important at high altitudes; there&#8217;s so little
5077 density that a drogue will have almost no drag anyways.  Data
5078 from customer flights shows a very parabolic path down to
5079 about 50-60k feet, even with a recovery system deployed.</p>
5080 </div>
5081 <div class="paragraph">
5082 <p>So, what we recommend is to set up two apogee plans:</p>
5083 </div>
5084 <div class="olist arabic">
5085 <ol class="arabic">
5086 <li>
5087 <p>Use the built-in apogee detection, but add a
5088 significant delay (as much as 30 seconds). This
5089 will probably fire near enough to apogee to not
5090 have a significant impact on the maximum height
5091 achieved.</p>
5092 </li>
5093 <li>
5094 <p>Add a back-up apogee which fires after apogee
5095 <strong>when the height is below about 20-25km</strong>. This
5096 way, if the flight isn&#8217;t nominal, and the sustainer
5097 ends up reaching apogee in dense air, you aren&#8217;t
5098 hoping the chutes come out before it gets going
5099 too fast. And, you get a second pyro channel firing
5100 at that altitude even if it reached a higher
5101 altitude before.</p>
5102 </li>
5103 </ol>
5104 </div>
5105 <div class="paragraph">
5106 <p>You can wire these two pyro channels to the same pyro device;
5107 you just need to make sure they&#8217;re wired + to + and - to -
5108 (the manual shows which screw terminals are which).</p>
5109 </div>
5110 <div class="paragraph">
5111 <p>The bottom line is that flights to altitudes modestly above
5112 the range of the baro sensor with Altus Metrum products can
5113 be accomplished safely, but flying "way high" (like 300k')
5114 demands a deployment mechanism which doesn&#8217;t solely rely on
5115 altimeters (like ours) which are designed for modest altitude
5116 rocketry.  Flights to those altitudes also probably need
5117 active stabilization to make sure they follow the prescribed
5118 trajectory and stay inside their waiver.</p>
5119 </div>
5120 </div>
5121 </div>
5122 </div>
5123 <div class="sect1">
5124 <h2 id="_handling_precautions">Appendix C: Handling Precautions</h2>
5125 <div class="sectionbody">
5126 <div class="paragraph">
5127 <p>All Altus Metrum products are sophisticated electronic devices.
5128 When handled gently and properly installed in an air-frame, they
5129 will deliver impressive results.  However, as with all electronic
5130 devices, there are some precautions you must take.</p>
5131 </div>
5132 <div class="admonitionblock warning">
5133 <table>
5134 <tr>
5135 <td class="icon">
5136 <img src="./images/icons/warning.svg" alt="Warning">
5137 </td>
5138 <td class="content">
5139 The Lithium Polymer rechargeable batteries have an
5140 extraordinary power density.  This is great because we can fly with
5141 much less battery mass than if we used alkaline batteries or previous
5142 generation rechargeable batteries&#8230;&#8203; but if they are punctured
5143 or their leads are allowed to short, they can and will release their
5144 energy very rapidly!
5145 Thus we recommend that you take some care when handling our batteries
5146 and consider giving them some extra protection in your air-frame.  We
5147 often wrap them in suitable scraps of closed-cell packing foam before
5148 strapping them down, for example.
5149 </td>
5150 </tr>
5151 </table>
5152 </div>
5153 <div class="paragraph">
5154 <p>The barometric sensors used on all of our flight computers are
5155 sensitive to sunlight.  In normal mounting situations, the baro sensor
5156 and all of the other surface mount components
5157 are “down” towards whatever the underlying mounting surface is, so
5158 this is not normally a problem.  Please consider this when designing an
5159 installation in an air-frame with a see-through plastic payload bay.  It
5160 is particularly important to
5161 consider this with TeleMini v1.0, both because the baro sensor is on the
5162 “top” of the board, and because many model rockets with payload bays
5163 use clear plastic for the payload bay!  Replacing these with an opaque
5164 cardboard tube, painting them, or wrapping them with a layer of masking
5165 tape are all reasonable approaches to keep the sensor out of direct
5166 sunlight.</p>
5167 </div>
5168 <div class="paragraph">
5169 <p>The barometric sensor sampling port must be able to “breathe”,
5170 both by not being covered by foam or tape or other materials that might
5171 directly block the hole on the top of the sensor, and also by having a
5172 suitable static vent to outside air.</p>
5173 </div>
5174 <div class="paragraph">
5175 <p>As with all other rocketry electronics, Altus Metrum altimeters must
5176 be protected from exposure to corrosive motor exhaust and ejection
5177 charge gasses.</p>
5178 </div>
5179 </div>
5180 </div>
5181 <div class="sect1">
5182 <h2 id="_updating_device_firmware">Appendix D: Updating Device Firmware</h2>
5183 <div class="sectionbody">
5184 <div class="paragraph">
5185 <p>TeleMega, TeleMetrum v2 and newer, EasyMega, EasyMini and TeleDongle v3
5186 are all
5187 programmed directly over their USB connectors (self
5188 programming).
5189 TeleMetrum v1, TeleMini v1.0 and TeleDongle v0.2 are
5190 all programmed by using another device as a programmer (pair
5191 programming). It&#8217;s important to recognize which kind of devices
5192 you have before trying to reprogram them.</p>
5193 </div>
5194 <div class="paragraph">
5195 <p>TeleMini v3 can be updated directly over USB, but has no USB connector
5196 on the board.  Instead, the USB signals are present on a row of 6
5197 holes adjacent to the copyright assertion in the silk screen.  Thus,
5198 updating firmware on TeleMini v3 requires making up a special cable,
5199 after which you can treat it just like TeleMetrum or TeleMega.  Many
5200 USB cables seem to follow the color code of red is +5V, black is GND,
5201 green is USB +, and white is USB -.  On TeleMini v3, pin 3 which has
5202 a square copper pad is ground, pin 1 is USB -, and pin 2 is USB +.</p>
5203 </div>
5204 <div class="paragraph">
5205 <p>You may wish to begin by ensuring you have current firmware
5206 images.  These are distributed as part of the AltOS software
5207 bundle that also includes the AltosUI ground station program.
5208 Newer ground station versions typically work fine with older
5209 firmware versions, so you don&#8217;t need to update your devices
5210 just to try out new software features.  You can always
5211 download the most recent version from
5212 <a href="http://www.altusmetrum.org/AltOS/" class="bare">http://www.altusmetrum.org/AltOS/</a></p>
5213 </div>
5214 <div class="sect2">
5215 <h3 id="_updating_telemega_telemetrum_v2_or_newer_telemini_v3_easymega_easymini_teledongle_v3_or_telebt_v3_firmware">D.1. Updating TeleMega, TeleMetrum v2 or newer, TeleMini v3, EasyMega, EasyMini, TeleDongle v3 or TeleBT v3 Firmware</h3>
5216 <div class="paragraph">
5217 <p>Self-programmable devices are reprogrammed by
5218 connecting them to your computer over USB.</p>
5219 </div>
5220 <div class="olist arabic">
5221 <ol class="arabic">
5222 <li>
5223 <p>Attach a battery if necessary and power switch to
5224 the target device. Power up the device.</p>
5225 </li>
5226 <li>
5227 <p>Using a Micro USB cable, connect the target device to your
5228 computer&#8217;s USB socket.  If the target is a TeleMini v3,
5229 make up and attach a special USB cable.</p>
5230 </li>
5231 <li>
5232 <p>Run AltosUI, and select 'Flash Image' from the File menu.</p>
5233 </li>
5234 <li>
5235 <p>Select the target device in the Device Selection dialog.</p>
5236 </li>
5237 <li>
5238 <p>Select the image you want to flash to the device,
5239 which should have a name in the form
5240 &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx,
5241 such as EasyMini-v1.0-1.6.0.ihx.</p>
5242 </li>
5243 <li>
5244 <p>Make sure the configuration parameters are
5245 reasonable looking. If the serial number and/or RF
5246 configuration values aren&#8217;t right, you&#8217;ll need to
5247 change them.</p>
5248 </li>
5249 <li>
5250 <p>Hit the 'OK' button and the software should proceed
5251 to flash the device with new firmware, showing a
5252 progress bar.</p>
5253 </li>
5254 <li>
5255 <p>Verify that the device is working by using the
5256 'Configure Altimeter' or 'Configure Groundstation'
5257 item to check over the configuration.</p>
5258 </li>
5259 </ol>
5260 </div>
5261 <div class="sect3">
5262 <h4 id="_recovering_from_self_flashing_failure">D.1.1. Recovering From Self-Flashing Failure</h4>
5263 <div class="paragraph">
5264 <p>If the firmware loading fails, it can leave the device
5265 unable to boot. Not to worry, you can force the device to
5266 start the boot loader instead, which will let you try to
5267 flash the device again.</p>
5268 </div>
5269 <div class="paragraph">
5270 <p>On each device, connecting two pins from one of the exposed
5271 connectors will force the boot loader to start, even if the
5272 regular operating system has been corrupted in some way.</p>
5273 </div>
5274 <div class="dlist">
5275 <dl>
5276 <dt class="hdlist1">TeleMega</dt>
5277 <dd>
5278 <p>Connect pin 6 and pin 1 of the companion
5279 connector. Pin 1 can be identified by the square pad
5280 around it, and then the pins count sequentially across
5281 the board. Be very careful to <strong>not</strong> short pin 8 to
5282 anything as that is connected directly to the
5283 battery. Pin 7 carries 3.3V and the board will crash
5284 if that is connected to pin 1, but shouldn&#8217;t damage
5285 the board.</p>
5286 </dd>
5287 <dt class="hdlist1">EasyMega</dt>
5288 <dd>
5289 <p>Connect pin 6 and pin 1 of the companion
5290 connector. Pin 1 can be identified by the square pad
5291 around it, and then the pins count sequentially across
5292 the board. Be very careful to <strong>not</strong> short pin 8 to
5293 anything as that is connected directly to the
5294 battery. Pin 7 carries 3.3V and the board will crash
5295 if that is connected to pin 1, but shouldn&#8217;t damage
5296 the board.</p>
5297 </dd>
5298 <dt class="hdlist1">EasyTimer</dt>
5299 <dd>
5300 <p>Connect pin 5 and pin 1 of the debug connector, which
5301 is the six holes next to the beeper. Pin 1 can be
5302 identified by the square pad around it, and then the
5303 pins count sequentially across the board, making Pin 5
5304 the one on the other end of the row.</p>
5305 </dd>
5306 <dt class="hdlist1">TeleMetrum v2 and newer</dt>
5307 <dd>
5308 <p>Connect pin 6 and pin 1 of the companion
5309 connector. Pin 1 can be identified by the square pad
5310 around it, and then the pins count sequentially across
5311 the board. Be very careful to <strong>not</strong> short pin 8 to
5312 anything as that is connected directly to the
5313 battery. Pin 7 carries 3.3V and the board will crash
5314 if that is connected to pin 1, but shouldn&#8217;t damage
5315 the board.</p>
5316 </dd>
5317 <dt class="hdlist1">EasyMini</dt>
5318 <dd>
5319 <p>Connect pin 6 and pin 1 of the debug connector, which
5320 is the six holes next to the beeper. Pin 1 can be
5321 identified by the square pad around it, and then the
5322 pins count sequentially across the board, making Pin 6
5323 the one on the other end of the row.</p>
5324 </dd>
5325 <dt class="hdlist1">TeleGPS v1</dt>
5326 <dd>
5327 <p>Connect pin 32 on the CPU to ground.  Pin 32 is the
5328 right-most pin on the bottom edge of the CPU when the
5329 board is oriented with the USB and battery connectors
5330 to the right.</p>
5331 </dd>
5332 <dt class="hdlist1">TeleGPS v2</dt>
5333 <dd>
5334 <p>Connect together pins 1 and 5 of the Debug connector.
5335 Pin 1 is the pin with the square pad around the hole.</p>
5336 </dd>
5337 <dt class="hdlist1">TeleDongle v3</dt>
5338 <dd>
5339 <p>Connect pin 32 on the CPU to ground. Pin 32 is closest
5340 to the USB wires on the row of pins towards the center
5341 of the board. Ground is available on the capacitor
5342 next to it, on the end towards the USB wires.</p>
5343 </dd>
5344 <dt class="hdlist1">TeleBT v3</dt>
5345 <dd>
5346 <p>Connect pin 4 on the CPU to 3.3V, which can be done by
5347 connecting pin 1 to pin 4.  Pin 1 is the left pin on
5348 the lower edge of the chip when the unit is oriented
5349 such that the SMA is at the top.</p>
5350 </dd>
5351 <dt class="hdlist1">TeleBT v4</dt>
5352 <dd>
5353 <p>Connect pin 30 on the CPU to ground. Pin 30 is the 6th
5354 pin from the right on the top when the unit is oriented
5355 such that the SMA is at the top.</p>
5356 </dd>
5357 </dl>
5358 </div>
5359 <div class="paragraph">
5360 <p>Once you&#8217;ve located the right pins:</p>
5361 </div>
5362 <div class="olist arabic">
5363 <ol class="arabic">
5364 <li>
5365 <p>Turn the altimeter power off.</p>
5366 </li>
5367 <li>
5368 <p>Connect a battery.</p>
5369 </li>
5370 <li>
5371 <p>Connect the indicated terminals together with a
5372 short piece of wire. Take care not to accidentally
5373 connect anything else.</p>
5374 </li>
5375 <li>
5376 <p>Connect USB</p>
5377 </li>
5378 <li>
5379 <p>Turn the board power on.</p>
5380 </li>
5381 </ol>
5382 </div>
5383 <div class="paragraph">
5384 <p>The board should now be visible over USB as
5385 'AltosFlash' and be ready to receive firmware.  Once
5386 the board has been powered up, you can remove the
5387 piece of wire.</p>
5388 </div>
5389 </div>
5390 </div>
5391 <div class="sect2">
5392 <h3 id="_pair_programming">D.2. Pair Programming</h3>
5393 <div class="paragraph">
5394 <p>The big concept to understand is that you have to use
5395 a TeleMetrum v1.0, TeleBT v1.0 or TeleDongle v0.2 as a
5396 programmer to update a pair programmed device. Due to
5397 limited memory resources in the cc1111, we don&#8217;t
5398 support programming directly over USB for these
5399 devices.</p>
5400 </div>
5401 <div class="paragraph">
5402 <p>If you need to update the firmware on a TeleDongle
5403 v0.2, we recommend updating the altimeter first,
5404 before updating TeleDongle.  However, note that
5405 TeleDongle rarely need to be updated.  Any firmware
5406 version 1.0.1 or later will work, version 1.2.1 may
5407 have improved receiver performance slightly.</p>
5408 </div>
5409 <div class="sect3">
5410 <h4 id="_updating_telemetrum_v1_x_firmware">D.2.1. Updating TeleMetrum v1.x Firmware</h4>
5411 <div class="olist arabic">
5412 <ol class="arabic">
5413 <li>
5414 <p>Find the 'programming cable' that you got as
5415 part of the starter kit, that has a red
5416 8-pin MicroMaTch connector on one end and a
5417 red 4-pin MicroMaTch connector on the other
5418 end.</p>
5419 </li>
5420 <li>
5421 <p>Take the 2 screws out of the TeleDongle v0.2
5422 or TeleBT v1.0 case to get access to the
5423 circuit board.</p>
5424 </li>
5425 <li>
5426 <p>Plug the 8-pin end of the programming cable
5427 to the matching connector on the TeleDongle
5428 v0.2 or TeleBT v1.0, and the 4-pin end to
5429 the matching connector on the TeleMetrum.
5430 Note that each MicroMaTch connector has an
5431 alignment pin that goes through a hole in
5432 the PC board when you have the cable
5433 oriented correctly.</p>
5434 </li>
5435 <li>
5436 <p>Attach a battery to the TeleMetrum board.</p>
5437 </li>
5438 <li>
5439 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5440 your computer&#8217;s USB port, and power up the
5441 TeleMetrum.</p>
5442 </li>
5443 <li>
5444 <p>Run AltosUI, and select 'Flash Image' from
5445 the File menu.</p>
5446 </li>
5447 <li>
5448 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5449 device from the list, identifying it as the
5450 programming device.</p>
5451 </li>
5452 <li>
5453 <p>Select the image you want put on the
5454 TeleMetrum, which should have a name in the
5455 form telemetrum-v1.2-1.0.0.ihx.  It should
5456 be visible in the default directory, if not
5457 you may have to poke around your system to
5458 find it.</p>
5459 </li>
5460 <li>
5461 <p>Make sure the configuration parameters are
5462 reasonable looking. If the serial number
5463 and/or RF configuration values aren&#8217;t right,
5464 you&#8217;ll need to change them.</p>
5465 </li>
5466 <li>
5467 <p>Hit the 'OK' button and the software should
5468 proceed to flash the TeleMetrum with new
5469 firmware, showing a progress bar.</p>
5470 </li>
5471 <li>
5472 <p>Confirm that the TeleMetrum board seems to
5473 have updated OK, which you can do by
5474 plugging in to it over USB and using a
5475 terminal program to connect to the board and
5476 issue the 'v' command to check the version,
5477 etc.</p>
5478 </li>
5479 </ol>
5480 </div>
5481 <div class="paragraph">
5482 <p>If something goes wrong, give it another try.</p>
5483 </div>
5484 </div>
5485 <div class="sect3">
5486 <h4 id="_updating_telemini_v1_0_firmware">D.2.2. Updating TeleMini v1.0 Firmware</h4>
5487 <div class="paragraph">
5488 <p>You&#8217;ll need a special 'programming cable' to
5489 reprogram the TeleMini v1.0.  You can make your own
5490 using an 8-pin MicroMaTch connector on one end
5491 and a set of four pins on the other.</p>
5492 </div>
5493 <div class="olist arabic">
5494 <ol class="arabic">
5495 <li>
5496 <p>Take the 2 screws out of the TeleDongle v0.2
5497 or TeleBT v1.0 case to get access to the
5498 circuit board.</p>
5499 </li>
5500 <li>
5501 <p>Plug the 8-pin end of the programming cable
5502 to the matching connector on the TeleDongle
5503 v0.2 or TeleBT v1.0, and the 4-pins into the
5504 holes in the TeleMini v1.0 circuit board.  Note
5505 that the MicroMaTch connector has an
5506 alignment pin that goes through a hole in
5507 the PC board when you have the cable
5508 oriented correctly, and that pin 1 on the
5509 TeleMini v1.0 board is marked with a square pad
5510 while the other pins have round pads.</p>
5511 </li>
5512 <li>
5513 <p>Attach a battery to the TeleMini v1.0 board.</p>
5514 </li>
5515 <li>
5516 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5517 your computer&#8217;s USB port, and power up the
5518 TeleMini v1.0</p>
5519 </li>
5520 <li>
5521 <p>Run AltosUI, and select 'Flash Image' from
5522 the File menu.</p>
5523 </li>
5524 <li>
5525 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5526 device from the list, identifying it as the
5527 programming device.</p>
5528 </li>
5529 <li>
5530 <p>Select the image you want put on the
5531 TeleMini v1.0, which should have a name in the
5532 form telemini-v1.0-1.0.0.ihx.  It should be
5533 visible in the default directory, if not you
5534 may have to poke around your system to find
5535 it.</p>
5536 </li>
5537 <li>
5538 <p>Make sure the configuration parameters are
5539 reasonable looking. If the serial number
5540 and/or RF configuration values aren&#8217;t right,
5541 you&#8217;ll need to change them.</p>
5542 </li>
5543 <li>
5544 <p>Hit the 'OK' button and the software should
5545 proceed to flash the TeleMini v1.0 with new
5546 firmware, showing a progress bar.</p>
5547 </li>
5548 <li>
5549 <p>Confirm that the TeleMini v1.0 board seems to
5550 have updated OK, which you can do by
5551 configuring it over the radio link through
5552 the TeleDongle, or letting it come up in
5553 “flight” mode and listening for telemetry.</p>
5554 </li>
5555 </ol>
5556 </div>
5557 <div class="paragraph">
5558 <p>If something goes wrong, give it another try.</p>
5559 </div>
5560 </div>
5561 <div class="sect3">
5562 <h4 id="_updating_teledongle_v0_2_firmware">D.2.3. Updating TeleDongle v0.2 Firmware</h4>
5563 <div class="paragraph">
5564 <p>Updating TeleDongle v0.2 firmware is just like
5565 updating TeleMetrum v1.x or TeleMini v1.0 firmware, but you
5566 use either a TeleMetrum v1.x, TeleDongle v0.2 or
5567 TeleBT v1.0 as the programmer.</p>
5568 </div>
5569 <div class="olist arabic">
5570 <ol class="arabic">
5571 <li>
5572 <p>Find the 'programming cable' that you got as part of
5573 the starter kit, that has a red 8-pin MicroMaTch
5574 connector on one end and a red 4-pin MicroMaTch
5575 connector on the other end.</p>
5576 </li>
5577 <li>
5578 <p>Find the USB cable that you got as part of the
5579 starter kit, and plug the “mini” end in to the
5580 mating connector on TeleMetrum v1.x, TeleDongle v0.2
5581 or TeleBT v1.0.</p>
5582 </li>
5583 <li>
5584 <p>Take the 2 screws out of the TeleDongle v0.2 or
5585 TeleBT v1.0 case to get access to the circuit board.</p>
5586 </li>
5587 <li>
5588 <p>Plug the 8-pin end of the programming cable to the
5589 matching connector on the programmer, and the 4-pin
5590 end to the matching connector on the TeleDongle
5591 v0.2.  Note that each MicroMaTch connector has an
5592 alignment pin that goes through a hole in the PC
5593 board when you have the cable oriented correctly.</p>
5594 </li>
5595 <li>
5596 <p>Attach a battery to the TeleMetrum v1.x board if
5597 you&#8217;re using one.</p>
5598 </li>
5599 <li>
5600 <p>Plug both the programmer and the TeleDongle into
5601 your computer&#8217;s USB ports, and power up the
5602 programmer.</p>
5603 </li>
5604 <li>
5605 <p>Run AltosUI, and select 'Flash Image' from the File
5606 menu.</p>
5607 </li>
5608 <li>
5609 <p>Pick the programmer device from the list,
5610 identifying it as the programming device.</p>
5611 </li>
5612 <li>
5613 <p>Select the image you want put on the TeleDongle
5614 v0.2, which should have a name in the form
5615 teledongle-v0.2-1.0.0.ihx.  It should be visible in
5616 the default directory, if not you may have to poke
5617 around your system to find it.</p>
5618 </li>
5619 <li>
5620 <p>Make sure the configuration parameters are
5621 reasonable looking. If the serial number and/or RF
5622 configuration values aren&#8217;t right, you&#8217;ll need to
5623 change them.  The TeleDongle v0.2 serial number is
5624 on the “bottom” of the circuit board, and can
5625 usually be read through the translucent blue plastic
5626 case without needing to remove the board from the
5627 case.</p>
5628 </li>
5629 <li>
5630 <p>Hit the 'OK' button and the software should proceed
5631 to flash the TeleDongle v0.2 with new firmware,
5632 showing a progress bar.</p>
5633 </li>
5634 <li>
5635 <p>Confirm that the TeleDongle v0.2 board seems to have
5636 updated OK, which you can do by plugging in to it
5637 over USB and using a terminal program to connect to
5638 the board and issue the 'v' command to check the
5639 version, etc.  Once you&#8217;re happy, remove the
5640 programming cable and put the cover back on the
5641 TeleDongle v0.2.</p>
5642 </li>
5643 </ol>
5644 </div>
5645 <div class="paragraph">
5646 <p>If something goes wrong, give it another try.</p>
5647 </div>
5648 <div class="paragraph">
5649 <p>Be careful removing the programming cable from the
5650 locking 8-pin connector on TeleMetrum.  You&#8217;ll need a
5651 fingernail or perhaps a thin screwdriver or knife
5652 blade to gently pry the locking ears out slightly to
5653 extract the connector.  We used a locking connector on
5654 TeleMetrum to help ensure that the cabling to
5655 companion boards used in a rocket don&#8217;t ever come
5656 loose accidentally in flight.</p>
5657 </div>
5658 </div>
5659 </div>
5660 </div>
5661 </div>
5662 <div class="sect1">
5663 <h2 id="_frequency_calibration">Appendix E: Frequency Calibration</h2>
5664 <div class="sectionbody">
5665 <div class="paragraph">
5666 <p>All products that have radio interfaces require calibration of the radio
5667 frequency.  Normally, this calibration is done once during the production
5668 process and the resulting cal value is saved into non-volatile memory.  The
5669 procedure decribed here should only be used outside of the factory if you
5670 are really convinced the radio calibration is bad, and you have access to
5671 the required tools to do the calibration.</p>
5672 </div>
5673 <div class="paragraph">
5674 <p>Because this procedure is only rarely needed in the field, we have not
5675 written any fancy user interface for doing it .. some interaction with
5676 and careful typing in a command-like style interface are required!</p>
5677 </div>
5678 <div class="sect2">
5679 <h3 id="_background_information">E.1. Background Information</h3>
5680 <div class="paragraph">
5681 <p>The radio system on each board uses a quartz crystal to control
5682 a frequency synthesizer that can be programmed to a range of operating
5683 frequencies.  While these crystals are very stable, they have an accuracy
5684 specification that means once the base frequency they set is multiplied up
5685 to the typical operating range of our products, any variation also gets
5686 multiplied.  The objective of the calibration process is, indirectly, to
5687 measure the actual operating frequency of the crystal and adjust the way
5688 the frequency synthesizer is programmed to account for this variation.</p>
5689 </div>
5690 <div class="paragraph">
5691 <p>The frequency may shift a few tens of Hz over the full operating temperature
5692 range, and it may also shift a bit over time as the crystal ages.  But once
5693 properly calibrated, none of those changes are likely to ever cause any
5694 operational problem, as the shift in operating frequency due to these factors
5695 is tiny compared to the bandwidth of our transmitted signal.</p>
5696 </div>
5697 </div>
5698 <div class="sect2">
5699 <h3 id="_required_equipment">E.2. Required Equipment</h3>
5700 <div class="paragraph">
5701 <p>The calibration process requires the ability to precisely measure the actual
5702 frequency of a steady CW carrier on or about the intended operating frequency
5703 in the vicinity of 435 MHz.</p>
5704 </div>
5705 <div class="paragraph">
5706 <p>In production, we use an HP 5385A that is locked to a 10 MHz reference that
5707 is in turn locked to GPS, which provides a highly accurate calibration.  Any
5708 reasonably accurate frequency counter is likely to be sufficient.</p>
5709 </div>
5710 <div class="paragraph">
5711 <p>You also need a computer with terminal program and USB cable to attach to
5712 the board in question, along with a battery and power switch suitable for
5713 powering the board up.</p>
5714 </div>
5715 </div>
5716 <div class="sect2">
5717 <h3 id="_rf_calibration_procedure">E.3. RF Calibration Procedure</h3>
5718 <div class="paragraph">
5719 <p>Using the terminal program, connect to the board over USB.  You will find
5720 that you are now interacting with a command interpreter on the board.  Using
5721 '?' will show the available commands.  Of interest for this process are the
5722 'C' command which turns on a steady transmitted carrier on the currently
5723 selected operating frequency, and the 'c' subcommands that allow interaction
5724 with the saved configuration.</p>
5725 </div>
5726 <div class="paragraph">
5727 <p>Use the 'c s' command to discover and note the current radio calibration
5728 value, and the operating frequency the board is configured for in kHz.</p>
5729 </div>
5730 <div class="paragraph">
5731 <p>Set up your frequency counter with a suitable antenna near the board&#8217;s
5732 antenna and use the 'C' command to turn on a steady carrier.  Let the
5733 frequency stabilize, and note what it is to as many digits as are steady
5734 on your counter&#8217;s display.</p>
5735 </div>
5736 <div class="paragraph">
5737 <p>To calculate the new calibration value, the equation is:</p>
5738 </div>
5739 <div class="olist arabic">
5740 <ol class="arabic">
5741 <li>
5742 <p>(intended_frequency / measured_frequency) * current_cal_value</p>
5743 </li>
5744 </ol>
5745 </div>
5746 <div class="paragraph">
5747 <p>Set the new calibration value using 'c f &lt;value&gt;', then use 'c w' to save
5748 that cal value into non-volatile memory.  You can use the 'C' command again
5749 to confirm the operating frequency is now within a few 10&#8217;s of Hz of the
5750 intended operating frequency.</p>
5751 </div>
5752 </div>
5753 </div>
5754 </div>
5755 <div class="sect1">
5756 <h2 id="_flight_data_recording">Appendix F: Flight Data Recording</h2>
5757 <div class="sectionbody">
5758 <div class="paragraph">
5759 <p>Each flight computer logs data at 100 samples per second
5760 during ascent and 10 samples per second during
5761 descent, except for TeleMini v1.0, which records ascent at 10 samples
5762 per second and descent at 1 sample per second.
5763 Data are logged to
5764 an on-board flash memory part, which can be partitioned into
5765 several equal-sized blocks, one for each flight.</p>
5766 </div>
5767 <table class="tableblock frame-all grid-all stretch">
5768 <caption class="title">Table 11. Data Storage on Altus Metrum altimeters</caption>
5769 <colgroup>
5770 <col style="width: 25%;">
5771 <col style="width: 25%;">
5772 <col style="width: 25%;">
5773 <col style="width: 25%;">
5774 </colgroup>
5775 <thead>
5776 <tr>
5777 <th class="tableblock halign-left valign-top">Device</th>
5778 <th class="tableblock halign-left valign-top">Bytes per Sample</th>
5779 <th class="tableblock halign-left valign-top">Total Storage</th>
5780 <th class="tableblock halign-left valign-top">Minutes at Full Rate</th>
5781 </tr>
5782 </thead>
5783 <tbody>
5784 <tr>
5785 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5786 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5787 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5788 <td class="tableblock halign-left valign-top"><p class="tableblock">20</p></td>
5789 </tr>
5790 <tr>
5791 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1 v1.2</p></td>
5792 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5793 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5794 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5795 </tr>
5796 <tr>
5797 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5798 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5799 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5800 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5801 </tr>
5802 <tr>
5803 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5804 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5805 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5806 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5807 </tr>
5808 <tr>
5809 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5810 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
5811 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5812 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
5813 </tr>
5814 <tr>
5815 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5816 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5817 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5818 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
5819 </tr>
5820 <tr>
5821 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
5822 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5823 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5824 <td class="tableblock halign-left valign-top"><p class="tableblock">10</p></td>
5825 </tr>
5826 <tr>
5827 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
5828 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5829 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5830 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5831 </tr>
5832 <tr>
5833 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
5834 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5835 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5836 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5837 </tr>
5838 </tbody>
5839 </table>
5840 <div class="paragraph">
5841 <p>The on-board flash is partitioned into separate flight logs,
5842 each of a fixed maximum size. Increase the maximum size of
5843 each log and you reduce the number of flights that can be
5844 stored. Decrease the size and you can store more flights.</p>
5845 </div>
5846 <div class="paragraph">
5847 <p>Configuration data is also stored in the flash memory on
5848 TeleMetrum v1.x,
5849 TeleMini v3.0 and
5850 EasyMini.
5851 This consumes 64kB
5852 of flash space.  This configuration space is not available
5853 for storing flight log data.</p>
5854 </div>
5855 <div class="paragraph">
5856 <p>TeleMetrum v2 or newer, TeleMega and EasyMega
5857 store configuration data in a bit of eeprom available within
5858 the processor chip, leaving that space available in flash for
5859 more flight data.</p>
5860 </div>
5861 <div class="paragraph">
5862 <p>To compute the amount of space needed for a single flight, you
5863 can multiply the expected ascent time (in seconds) by 100
5864 times bytes-per-sample, multiply the expected descent time (in
5865 seconds) by 10 times the bytes per sample and add the two
5866 together. That will slightly under-estimate the storage (in
5867 bytes) needed for the flight.
5868 For instance, a TeleMetrum v2 or newer flight spending
5869 20 seconds in ascent and 150 seconds in descent will take
5870 about (20 * 1600) + (150 * 160) = 56000 bytes of storage. You
5871 could store dozens of these flights in the on-board flash.</p>
5872 </div>
5873 <div class="paragraph">
5874 <p>The default size allows for several flights on each flight
5875 computer, except for TeleMini v1.0, which
5876 only holds data for a single flight.
5877 You can adjust the size.</p>
5878 </div>
5879 <div class="paragraph">
5880 <p>Altus Metrum flight computers will not overwrite existing
5881 flight data, so be sure to download flight data and erase it
5882 from the flight computer before it fills up. The flight
5883 computer will still successfully control the flight even if it
5884 cannot log data, so the only thing you will lose is the data.</p>
5885 </div>
5886 </div>
5887 </div>
5888 <div class="sect1">
5889 <h2 id="_altus_metrum_hardware_specifications">Appendix G: Altus Metrum Hardware Specifications</h2>
5890 <div class="sectionbody">
5891 <div class="paragraph">
5892 <p>Here&#8217;s the full set of Altus Metrum products, both in
5893 production and retired.</p>
5894 </div>
5895 <table class="tableblock frame-all grid-all stretch">
5896 <caption class="title">Table 12. Altus Metrum Flight Computer Electronics</caption>
5897 <colgroup>
5898 <col style="width: 12.5%;">
5899 <col style="width: 12.5%;">
5900 <col style="width: 12.5%;">
5901 <col style="width: 12.5%;">
5902 <col style="width: 12.5%;">
5903 <col style="width: 12.5%;">
5904 <col style="width: 12.5%;">
5905 <col style="width: 12.5%;">
5906 </colgroup>
5907 <thead>
5908 <tr>
5909 <th class="tableblock halign-left valign-top">Device</th>
5910 <th class="tableblock halign-left valign-top">Barometer</th>
5911 <th class="tableblock halign-left valign-top">Z-axis accel</th>
5912 <th class="tableblock halign-left valign-top">GPS</th>
5913 <th class="tableblock halign-left valign-top">3D sensors</th>
5914 <th class="tableblock halign-left valign-top">Storage</th>
5915 <th class="tableblock halign-left valign-top">RF Output</th>
5916 <th class="tableblock halign-left valign-top">Battery</th>
5917 </tr>
5918 </thead>
5919 <tbody>
5920 <tr>
5921 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5922 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5923 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5924 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5925 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5926 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5927 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5928 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5929 </tr>
5930 <tr>
5931 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1</p></td>
5932 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5933 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5934 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5935 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5936 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5937 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5938 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5939 </tr>
5940 <tr>
5941 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.2</p></td>
5942 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5943 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL78 70g</p></td>
5944 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5945 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5946 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5947 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5948 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5949 </tr>
5950 <tr>
5951 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5952 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5953 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
5954 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
5955 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5956 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5957 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5958 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5959 </tr>
5960 <tr>
5961 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5962 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5963 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5964 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
5965 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5966 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5967 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5968 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5969 </tr>
5970 <tr>
5971 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5972 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5973 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5974 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5975 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5976 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5977 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5978 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5979 </tr>
5980 <tr>
5981 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5982 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5983 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5984 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5985 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5986 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5987 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5988 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5989 </tr>
5990 <tr>
5991 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini v1.0-v3.0</p></td>
5992 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5993 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5994 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5995 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5996 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5997 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5998 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
5999 </tr>
6000 <tr>
6001 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v1.0</p></td>
6002 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6003 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6004 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6005 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6006 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6007 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6008 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6009 </tr>
6010 <tr>
6011 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v2.0</p></td>
6012 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6013 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6014 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6015 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6016 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6017 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6018 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6019 </tr>
6020 <tr>
6021 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v3.0</p></td>
6022 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6023 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6024 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6025 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6026 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6027 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6028 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6029 </tr>
6030 <tr>
6031 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v4.0</p></td>
6032 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6033 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6034 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6035 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6036 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6037 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6038 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6039 </tr>
6040 <tr>
6041 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v5.0</p></td>
6042 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6043 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6044 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6045 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 MMC5983</p></td>
6046 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6047 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6048 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6049 </tr>
6050 <tr>
6051 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v1.0</p></td>
6052 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6053 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6054 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6055 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6056 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6057 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6058 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6059 </tr>
6060 <tr>
6061 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v2.0</p></td>
6062 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6063 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6064 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6065 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6066 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6067 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6068 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6069 </tr>
6070 <tr>
6071 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer v1.0</p></td>
6072 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6073 <td class="tableblock halign-left valign-top"><p class="tableblock">16g</p></td>
6074 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6075 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6076 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6077 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6078 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6079 </tr>
6080 <tr>
6081 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor v3.0</p></td>
6082 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6083 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6084 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6085 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6086 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6087 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6088 <td class="tableblock halign-left valign-top"><p class="tableblock">6.5-15V</p></td>
6089 </tr>
6090 </tbody>
6091 </table>
6092 <div style="page-break-after: always;"></div>
6093 <table class="tableblock frame-all grid-all stretch">
6094 <caption class="title">Table 13. Altus Metrum Flight Computer Mechanical Components</caption>
6095 <colgroup>
6096 <col style="width: 16.6666%;">
6097 <col style="width: 16.6666%;">
6098 <col style="width: 16.6666%;">
6099 <col style="width: 16.6666%;">
6100 <col style="width: 16.6666%;">
6101 <col style="width: 16.667%;">
6102 </colgroup>
6103 <thead>
6104 <tr>
6105 <th class="tableblock halign-left valign-top">Device</th>
6106 <th class="tableblock halign-left valign-top">Connectors</th>
6107 <th class="tableblock halign-left valign-top">Screw Terminals</th>
6108 <th class="tableblock halign-left valign-top">Width</th>
6109 <th class="tableblock halign-left valign-top">Length</th>
6110 <th class="tableblock halign-left valign-top">Tube Size</th>
6111 </tr>
6112 </thead>
6113 <tbody>
6114 <tr>
6115 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum</p></td>
6116 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6117 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Switch</p></td>
6118 <td class="tableblock halign-left valign-top"><p class="tableblock">1 inch (2.54cm)</p></td>
6119 <td class="tableblock halign-left valign-top"><p class="tableblock">2 ¾ inch (6.99cm)</p></td>
6120 <td class="tableblock halign-left valign-top"><p class="tableblock">29mm coupler</p></td>
6121 </tr>
6122 <tr>
6123 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
6124 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Battery</p></td>
6125 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro</p></td>
6126 <td class="tableblock halign-left valign-top"><p class="tableblock">½ inch (1.27cm)</p></td>
6127 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6128 <td class="tableblock halign-left valign-top"><p class="tableblock">18mm coupler</p></td>
6129 </tr>
6130 <tr>
6131 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v2.0</p></td>
6132 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug USB Battery</p></td>
6133 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery Switch</p></td>
6134 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6135 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6136 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6137 </tr>
6138 <tr>
6139 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
6140 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6141 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery</p></td>
6142 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6143 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6144 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6145 </tr>
6146 <tr>
6147 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
6148 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6149 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6150 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6151 <td class="tableblock halign-left valign-top"><p class="tableblock">3¼ inch (8.26cm)</p></td>
6152 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6153 </tr>
6154 <tr>
6155 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
6156 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug Companion USB Battery</p></td>
6157 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6158 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6159 <td class="tableblock halign-left valign-top"><p class="tableblock">2¼ inch (5.62cm)</p></td>
6160 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6161 </tr>
6162 <tr>
6163 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer</p></td>
6164 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6165 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro A Pyro B Battery</p></td>
6166 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6167 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6168 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6169 </tr>
6170 <tr>
6171 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor</p></td>
6172 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB</p></td>
6173 <td class="tableblock halign-left valign-top"><p class="tableblock">+5V Pres GND Switch Battery</p></td>
6174 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6175 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6176 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6177 </tr>
6178 </tbody>
6179 </table>
6180 </div>
6181 </div>
6182 <div class="sect1">
6183 <h2 id="_release_notes">Appendix H: Release Notes</h2>
6184 <div class="sectionbody">
6185 <div class="sect2">
6186 <h3 id="_release_notes_for_version_1_9_12">H.1. Release Notes for Version 1.9.12</h3>
6187 <div class="paragraph">
6188 <p>Version 1.9.12</p>
6189 </div>
6190 <div class="sect3">
6191 <h4 id="_altos">H.1.1. AltOS</h4>
6192 <div class="ulist">
6193 <ul>
6194 <li>
6195 <p>Add EasyMini v3.0 and EasyMotor v3.0 support</p>
6196 </li>
6197 <li>
6198 <p>Fix TeleMetrum v2.0 configuration. Saving config would
6199 crash the board.</p>
6200 </li>
6201 </ul>
6202 </div>
6203 </div>
6204 <div class="sect3">
6205 <h4 id="_altosui_2">H.1.2. AltosUI</h4>
6206 <div class="ulist">
6207 <ul>
6208 <li>
6209 <p>Add EasyMotor log parsing and graphing.</p>
6210 </li>
6211 </ul>
6212 </div>
6213 <div style="page-break-after: always;"></div>
6214 </div>
6215 </div>
6216 <div class="sect2">
6217 <h3 id="_release_notes_for_version_1_9_11">H.2. Release Notes for Version 1.9.11</h3>
6218 <div class="paragraph">
6219 <p>Version 1.9.11</p>
6220 </div>
6221 <div class="sect3">
6222 <h4 id="_altos_2">H.2.1. AltOS</h4>
6223 <div class="ulist">
6224 <ul>
6225 <li>
6226 <p>Make Apogee Delay work again.</p>
6227 </li>
6228 <li>
6229 <p>Allow TX power to be limited to 10mW for compliance with
6230 some uses under UK regulations.</p>
6231 </li>
6232 <li>
6233 <p>Fix numerous minor issues with 16- vs 32- bit time values.</p>
6234 </li>
6235 </ul>
6236 </div>
6237 </div>
6238 <div class="sect3">
6239 <h4 id="_altosui_3">H.2.2. AltosUI</h4>
6240 <div class="ulist">
6241 <ul>
6242 <li>
6243 <p>Support M1-based Macs, follow AdoptOpenJDK to Adoptium</p>
6244 </li>
6245 </ul>
6246 </div>
6247 </div>
6248 <div class="sect3">
6249 <h4 id="_altosdroid_2">H.2.3. AltosDroid</h4>
6250 <div class="ulist">
6251 <ul>
6252 <li>
6253 <p>Handle Bluetooth permissions reliably.</p>
6254 </li>
6255 <li>
6256 <p>Fix some screen rotation bugs.</p>
6257 </li>
6258 </ul>
6259 </div>
6260 <div style="page-break-after: always;"></div>
6261 </div>
6262 </div>
6263 <div class="sect2">
6264 <h3 id="_release_notes_for_version_1_9_10">H.3. Release Notes for Version 1.9.10</h3>
6265 <div class="paragraph">
6266 <p>Version 1.9.10</p>
6267 </div>
6268 <div class="paragraph">
6269 <p>This release contains a couple of bug fixes for ground station software.</p>
6270 </div>
6271 <div class="sect3">
6272 <h4 id="_altosui_4">H.3.1. AltosUI</h4>
6273 <div class="ulist">
6274 <ul>
6275 <li>
6276 <p>Rework the windows DLL build to make AltosUI run on more
6277 instances of Windows 10.</p>
6278 </li>
6279 </ul>
6280 </div>
6281 </div>
6282 <div class="sect3">
6283 <h4 id="_altosdroid_3">H.3.2. AltosDroid</h4>
6284 <div class="ulist">
6285 <ul>
6286 <li>
6287 <p>Adapt to Android security changes which prevent AltosDroid
6288 from storing flights in
6289 /storage/emulated/0/AltusMetrum. Now, flights are stored in
6290 /storage/emulated/0/media/org.altusmetrum.AltosDroid/AltusMetrum
6291 instead.  Also, AltosDroid will display an error message if
6292 flight data cannot be logged.</p>
6293 </li>
6294 </ul>
6295 </div>
6296 <div style="page-break-after: always;"></div>
6297 </div>
6298 </div>
6299 <div class="sect2">
6300 <h3 id="_release_notes_for_version_1_9_9">H.4. Release Notes for Version 1.9.9</h3>
6301 <div class="paragraph">
6302 <p>Version 1.9.9</p>
6303 </div>
6304 <div class="paragraph">
6305 <p>This release contains a critical bug fix for a problem
6306 introduced in version 1.9.8 for TeleMega and EasyMega
6307 boards. This problem occurs when using the stored
6308 configuration from 1.9.7 or earlier.</p>
6309 </div>
6310 <div class="paragraph">
6311 <p>If you are running 1.9.8 or are upgrading from 1.9.8 on any
6312 version of TeleMega or EasyMega, you must reconfigure all pyro
6313 channels, recalibrate accelerometers, reset the APRS interval,
6314 adjust the beep tone and reset the pyro time.</p>
6315 </div>
6316 <div class="sect3">
6317 <h4 id="_altos_3">H.4.1. AltOS</h4>
6318 <div class="ulist">
6319 <ul>
6320 <li>
6321 <p>Fix EasyMega and TeleMega upgrade process from 1.9.7 or
6322 earlier.  1.9.8 introduced larger delay values, which
6323 required modifying the configuration in-place, and the 1.9.8
6324 version had a flaw which broke the pyro channel config and
6325 all of the config values beyond that in memory, including
6326 APRS interval, IMU accel calibation, beep tone and pyro
6327 time.</p>
6328 </li>
6329 <li>
6330 <p>Fix TeleMega v5.0 mag sensor driver. This driver was quite
6331 broken due to developing it in the presence of the magnetic
6332 beeper on the board. Because of that beeper, the values this
6333 sensor records are not accurate. Fortunately, they are not
6334 used for controlling the flight.</p>
6335 </li>
6336 </ul>
6337 </div>
6338 </div>
6339 <div class="sect3">
6340 <h4 id="_altosui_5">H.4.2. AltosUI</h4>
6341 <div class="ulist">
6342 <ul>
6343 <li>
6344 <p>Parse TeleMega v5.0 log files. A missing check in the code
6345 meant that the TeleMega v5.0 log files would cause an error
6346 when attempting to load them. Logs saved with AltosUI
6347 1.9.8 were not affected, only the presentation of the data
6348 was broken.</p>
6349 </li>
6350 </ul>
6351 </div>
6352 <div style="page-break-after: always;"></div>
6353 </div>
6354 </div>
6355 <div class="sect2">
6356 <h3 id="_release_notes_for_version_1_9_8">H.5. Release Notes for Version 1.9.8</h3>
6357 <div class="paragraph">
6358 <p>Version 1.9.8</p>
6359 </div>
6360 <div class="sect3">
6361 <h4 id="_altos_4">H.5.1. AltOS</h4>
6362 <div class="ulist">
6363 <ul>
6364 <li>
6365 <p>Add support for TeleMega v5.0</p>
6366 </li>
6367 <li>
6368 <p>Extend extra pyro channel times to support delay &gt; 327 seconds</p>
6369 </li>
6370 </ul>
6371 </div>
6372 </div>
6373 <div class="sect3">
6374 <h4 id="_altosui_6">H.5.2. AltosUI</h4>
6375 <div class="ulist">
6376 <ul>
6377 <li>
6378 <p>Support ARM devices in Linux binary release</p>
6379 </li>
6380 <li>
6381 <p>Add support for TeleMega v5.0</p>
6382 </li>
6383 </ul>
6384 </div>
6385 </div>
6386 <div class="sect3">
6387 <h4 id="_altosdroid_4">H.5.3. AltosDroid</h4>
6388 <div class="ulist">
6389 <ul>
6390 <li>
6391 <p>Show tilt angle in pad and flight tabs</p>
6392 </li>
6393 <li>
6394 <p>Show altitude as well as height (useful for TeleGPS)</p>
6395 </li>
6396 <li>
6397 <p>Support devices without GPS receivers</p>
6398 </li>
6399 </ul>
6400 </div>
6401 </div>
6402 <div class="sect3">
6403 <h4 id="_micropeak_gui">H.5.4. MicroPeak GUI</h4>
6404 <div class="ulist">
6405 <ul>
6406 <li>
6407 <p>Show error dialog if device open fails</p>
6408 </li>
6409 </ul>
6410 </div>
6411 <div style="page-break-after: always;"></div>
6412 </div>
6413 </div>
6414 <div class="sect2">
6415 <h3 id="_release_notes_for_version_1_9_7">H.6. Release Notes for Version 1.9.7</h3>
6416 <div class="paragraph">
6417 <p>Version 1.9.7</p>
6418 </div>
6419 <div class="sect3">
6420 <h4 id="_altos_5">H.6.1. AltOS</h4>
6421 <div class="ulist">
6422 <ul>
6423 <li>
6424 <p>Fix TeleGPS logging so that new data are appended to an existing log correctly</p>
6425 </li>
6426 </ul>
6427 </div>
6428 </div>
6429 <div class="sect3">
6430 <h4 id="_altosui_7">H.6.2. AltosUI</h4>
6431 <div class="ulist">
6432 <ul>
6433 <li>
6434 <p>Support Mac OS X 11 (Big Sur)</p>
6435 </li>
6436 <li>
6437 <p>Support Monitor Idle on Easy Timer</p>
6438 </li>
6439 <li>
6440 <p>Fix TeleMega v4.0 and TeleMetrum v3.0 configuration in Antenna Down mode</p>
6441 </li>
6442 <li>
6443 <p>Show launch sites in Load Maps view</p>
6444 </li>
6445 <li>
6446 <p>Add IMU header names to CSV files</p>
6447 </li>
6448 <li>
6449 <p>Clean up TeleGPS log corruption due to firmware bugs during firmware update</p>
6450 </li>
6451 </ul>
6452 </div>
6453 </div>
6454 <div class="sect3">
6455 <h4 id="_altosdroid_5">H.6.3. AltosDroid</h4>
6456 <div class="ulist">
6457 <ul>
6458 <li>
6459 <p>Support older devices back to Android version 5.1</p>
6460 </li>
6461 <li>
6462 <p>Fix a number of issues that could result in app crashes</p>
6463 </li>
6464 </ul>
6465 </div>
6466 <div style="page-break-after: always;"></div>
6467 </div>
6468 </div>
6469 <div class="sect2">
6470 <h3 id="_release_notes_for_version_1_9_6">H.7. Release Notes for Version 1.9.6</h3>
6471 <div class="paragraph">
6472 <p>Version 1.9.6</p>
6473 </div>
6474 <div class="sect3">
6475 <h4 id="_altos_6">H.7.1. AltOS</h4>
6476 <div class="ulist">
6477 <ul>
6478 <li>
6479 <p>Fix EasyTimer bug where it might mis-detect boost (either
6480 detect it early or not at all) due to small errors in
6481 accelerometer calibration leading to large accumulated error
6482 in speed.</p>
6483 </li>
6484 <li>
6485 <p>Adjust self-test of new 9-axis IMU (BMX-160) so that it
6486 doesn&#8217;t think the part has a failure when tested sitting
6487 horizontally.</p>
6488 </li>
6489 </ul>
6490 </div>
6491 <div style="page-break-after: always;"></div>
6492 </div>
6493 </div>
6494 <div class="sect2">
6495 <h3 id="_release_notes_for_version_1_9_5">H.8. Release Notes for Version 1.9.5</h3>
6496 <div class="paragraph">
6497 <p>Version 1.9.5</p>
6498 </div>
6499 <div class="sect3">
6500 <h4 id="_altos_7">H.8.1. AltOS</h4>
6501 <div class="ulist">
6502 <ul>
6503 <li>
6504 <p>Add Booster mode for all dual-deploy altimeters. Select
6505 "Separation &amp; Apogee" mode in AltosUI to fire the 'main'
6506 channel at first motor burnout and the 'apogee' channel at
6507 apogee.</p>
6508 </li>
6509 <li>
6510 <p>Improve reliability of stm32l firmware under heavy
6511 load. This was found using Monitor Idle on TeleMega with all
6512 flash slots full of data which would occasionally lock up.</p>
6513 </li>
6514 <li>
6515 <p>Fix orientation label in AltosUI for devices with
6516 radios. This makes the orientation say 'Antenna up' and
6517 'Antenna Down' for TeleMetrum and TeleMega again.</p>
6518 </li>
6519 <li>
6520 <p>Fix log data for pyro channels which were inhibited (often
6521 because of a tilt limit). They used to report 'fired' as
6522 soon as they were inhibited, which was misleading. Now they
6523 never report as having been fired.</p>
6524 </li>
6525 <li>
6526 <p>Allow Igniter Test to fire each igniter more than once.</p>
6527 </li>
6528 </ul>
6529 </div>
6530 </div>
6531 <div class="sect3">
6532 <h4 id="_altosui_8">H.8.2. AltosUI</h4>
6533 <div class="ulist">
6534 <ul>
6535 <li>
6536 <p>Improve performance of Monitor Idle mode by sending less data for each
6537 update.</p>
6538 </li>
6539 <li>
6540 <p>Improve Mac OS X install scripts so that they work on
6541 Catalina. This involves sending the user to get Java from
6542 the AdoptOpenJDK project which provides a version that works
6543 with Java applications.</p>
6544 </li>
6545 <li>
6546 <p>Make larger dialogs scrollable for use on smaller screens.</p>
6547 </li>
6548 <li>
6549 <p>Fix troubles re-flashing EasyMega boards running older
6550 firmware.</p>
6551 </li>
6552 <li>
6553 <p>Add TeleMetrum v3.0 firmware to the Windows
6554 AltosUI packages.</p>
6555 </li>
6556 </ul>
6557 </div>
6558 <div style="page-break-after: always;"></div>
6559 </div>
6560 </div>
6561 <div class="sect2">
6562 <h3 id="_release_notes_for_version_1_9_4">H.9. Release Notes for Version 1.9.4</h3>
6563 <div class="paragraph">
6564 <p>Version 1.9.4</p>
6565 </div>
6566 <div class="sect3">
6567 <h4 id="_altos_8">H.9.1. AltOS</h4>
6568 <div class="ulist">
6569 <ul>
6570 <li>
6571 <p>Fixed firmware for TeleDongle v3.0 and TeleBT v4.0. Version 1.9.3 bricked those
6572 devices requiring them to be opened up to get them working again.</p>
6573 </li>
6574 <li>
6575 <p>Fixed firmware for EasyMini v1.0. Changes in the storage
6576 code caused it to use significantly more RAM which made the
6577 interrupt stack smash into other data structures and cause
6578 the device to panic at startup time.</p>
6579 </li>
6580 </ul>
6581 </div>
6582 </div>
6583 <div class="sect3">
6584 <h4 id="_altosui_9">H.9.2. AltosUI</h4>
6585 <div class="ulist">
6586 <ul>
6587 <li>
6588 <p>Add TeleMetrum v3.0 firmware to the Linux and Mac OSX
6589 AltosUI packages.</p>
6590 </li>
6591 </ul>
6592 </div>
6593 <div style="page-break-after: always;"></div>
6594 </div>
6595 </div>
6596 <div class="sect2">
6597 <h3 id="_release_notes_for_version_1_9_3">H.10. Release Notes for Version 1.9.3</h3>
6598 <div class="paragraph">
6599 <p>Version 1.9.3</p>
6600 </div>
6601 <div class="sect3">
6602 <h4 id="_altos_9">H.10.1. AltOS</h4>
6603 <div class="ulist">
6604 <ul>
6605 <li>
6606 <p>Add APRS offset. Allows multiple APRS transmitters to coordinate when
6607 transmission occurs to allow them to share a frequency.</p>
6608 </li>
6609 <li>
6610 <p>Fix max log size. Flight computer storage is erased in 64kB chunks. Adjust max
6611 log size to be a multiple of this size.</p>
6612 </li>
6613 <li>
6614 <p>Check flight erasing more carefully. Handle interrupting erasing in the
6615 middle.</p>
6616 </li>
6617 <li>
6618 <p>Add EasyTimer support.</p>
6619 </li>
6620 </ul>
6621 </div>
6622 </div>
6623 <div class="sect3">
6624 <h4 id="_altosui_telegps_micropeak">H.10.2. AltosUI, TeleGPS, MicroPeak</h4>
6625 <div class="ulist">
6626 <ul>
6627 <li>
6628 <p>Add configuration support for APRS offset.</p>
6629 </li>
6630 <li>
6631 <p>Adjust flight log sizes to be a multiple of the flight
6632 computer erase block size.</p>
6633 </li>
6634 <li>
6635 <p>Report barometric pad altitude in Pad tab for TeleMini.</p>
6636 </li>
6637 </ul>
6638 </div>
6639 <div style="page-break-after: always;"></div>
6640 </div>
6641 </div>
6642 <div class="sect2">
6643 <h3 id="_release_notes_for_version_1_9_2">H.11. Release Notes for Version 1.9.2</h3>
6644 <div class="paragraph">
6645 <p>Version 1.9.2</p>
6646 </div>
6647 <div class="sect3">
6648 <h4 id="_altos_10">H.11.1. AltOS</h4>
6649 <div class="ulist">
6650 <ul>
6651 <li>
6652 <p>Add support for TeleMega v4.0</p>
6653 </li>
6654 <li>
6655 <p>Fix time wrapping issue with TeleLCO and TeleFire</p>
6656 </li>
6657 </ul>
6658 </div>
6659 </div>
6660 <div class="sect3">
6661 <h4 id="_altosui_telegps_micropeak_2">H.11.2. AltosUI, TeleGPS, MicroPeak</h4>
6662 <div class="ulist">
6663 <ul>
6664 <li>
6665 <p>Add column in AltosUI for IMU data from TeleMega and EasyMega</p>
6666 </li>
6667 </ul>
6668 </div>
6669 </div>
6670 <div class="sect3">
6671 <h4 id="_altosdroid_6">H.11.3. AltosDroid</h4>
6672 <div class="ulist">
6673 <ul>
6674 <li>
6675 <p>Allow sorting of trackers by call, serial, frequency or age</p>
6676 </li>
6677 <li>
6678 <p>Offer selection of font sizes</p>
6679 </li>
6680 <li>
6681 <p>Various bug fixes for older Android versions</p>
6682 </li>
6683 </ul>
6684 </div>
6685 <div style="page-break-after: always;"></div>
6686 </div>
6687 </div>
6688 <div class="sect2">
6689 <h3 id="_release_notes_for_version_1_9_1">H.12. Release Notes for Version 1.9.1</h3>
6690 <div class="paragraph">
6691 <p>Version 1.9.1</p>
6692 </div>
6693 <div class="sect3">
6694 <h4 id="_altos_11">H.12.1. AltOS</h4>
6695 <div class="ulist">
6696 <ul>
6697 <li>
6698 <p>Add support for TeleMetrum v3.0</p>
6699 </li>
6700 <li>
6701 <p>Fix accel cal value when changing EasyMega v2.0 pad orientation</p>
6702 </li>
6703 <li>
6704 <p>Correct EasyMega v2.0 magnetometer data axes</p>
6705 </li>
6706 <li>
6707 <p>Fix EasyMega v2.0 idle monitor display of IMU data</p>
6708 </li>
6709 <li>
6710 <p>Report all sensor failures at power-up time.</p>
6711 </li>
6712 </ul>
6713 </div>
6714 </div>
6715 <div class="sect3">
6716 <h4 id="_altosui_telegps_micropeak_3">H.12.2. AltosUI, TeleGPS, MicroPeak</h4>
6717 <div class="ulist">
6718 <ul>
6719 <li>
6720 <p>Display error message when attempting to graph unknown format file.</p>
6721 </li>
6722 <li>
6723 <p>Make it possible to disable APRS once enabled.</p>
6724 </li>
6725 <li>
6726 <p>Display some data for point near cursor in map tab.</p>
6727 </li>
6728 <li>
6729 <p>Support upgrading devices from pre-1.8 firmware</p>
6730 </li>
6731 <li>
6732 <p>Wait for Windows to prepare new devices during firmware
6733 upgrade. This should avoid the “COMxx: open failed” message.</p>
6734 </li>
6735 </ul>
6736 </div>
6737 <div style="page-break-after: always;"></div>
6738 </div>
6739 </div>
6740 <div class="sect2">
6741 <h3 id="_release_notes_for_version_1_9">H.13. Release Notes for Version 1.9</h3>
6742 <div class="paragraph">
6743 <p>Version 1.9</p>
6744 </div>
6745 <div class="sect3">
6746 <h4 id="_altos_12">H.13.1. AltOS</h4>
6747 <div class="ulist">
6748 <ul>
6749 <li>
6750 <p>Add support for EasyMega v2.0</p>
6751 </li>
6752 <li>
6753 <p>Replace C library for ARM devices</p>
6754 </li>
6755 <li>
6756 <p>Remove support for 8051-based devices and SDCC compiler</p>
6757 </li>
6758 </ul>
6759 </div>
6760 </div>
6761 <div class="sect3">
6762 <h4 id="_altosui_telegps_micropeak_4">H.13.2. AltosUI, TeleGPS, MicroPeak</h4>
6763 <div class="ulist">
6764 <ul>
6765 <li>
6766 <p>Select ROM images based on product name when reflashing</p>
6767 </li>
6768 <li>
6769 <p>Fix TeleGPS v2 battery voltage display</p>
6770 </li>
6771 </ul>
6772 </div>
6773 <div style="page-break-after: always;"></div>
6774 </div>
6775 </div>
6776 <div class="sect2">
6777 <h3 id="_release_notes_for_version_1_8_7">H.14. Release Notes for Version 1.8.7</h3>
6778 <div class="paragraph">
6779 <p>Version 1.8.7</p>
6780 </div>
6781 <div class="sect3">
6782 <h4 id="_altos_13">H.14.1. AltOS</h4>
6783 <div class="ulist">
6784 <ul>
6785 <li>
6786 <p>Include TeleMega v3.0 firmware</p>
6787 </li>
6788 </ul>
6789 </div>
6790 </div>
6791 <div class="sect3">
6792 <h4 id="_altosui_telegps_micropeak_5">H.14.2. AltosUI, TeleGPS, MicroPeak</h4>
6793 <div class="ulist">
6794 <ul>
6795 <li>
6796 <p>Poll for new devices while Device dialog is displayed</p>
6797 </li>
6798 <li>
6799 <p>Wait for device to re-appear when flashing new firmware</p>
6800 </li>
6801 <li>
6802 <p>Fetch correct TeleBT v4.0 RF calibration values from web
6803 site when reflashing.</p>
6804 </li>
6805 <li>
6806 <p>Change gyro headings in .csv files from x/y/z to
6807 roll/pitch/yaw</p>
6808 </li>
6809 <li>
6810 <p>Add documentation about Packet Link mode</p>
6811 </li>
6812 <li>
6813 <p>Add documentation about forcing TeleMini RF parameters to
6814 known values.</p>
6815 </li>
6816 <li>
6817 <p>Create a proxy server for Google Maps to re-enable map
6818 images</p>
6819 </li>
6820 <li>
6821 <p>Fix Java version info in all distributed jar files so that
6822 applications will run with standard Mac OS X Java.</p>
6823 </li>
6824 <li>
6825 <p>Replace JavaApplicationStub for Mac OS X so that
6826 applications will run with Oracle Java.</p>
6827 </li>
6828 </ul>
6829 </div>
6830 <div style="page-break-after: always;"></div>
6831 </div>
6832 </div>
6833 <div class="sect2">
6834 <h3 id="_release_notes_for_version_1_8_6">H.15. Release Notes for Version 1.8.6</h3>
6835 <div class="paragraph">
6836 <p>Version 1.8.6</p>
6837 </div>
6838 <div class="sect3">
6839 <h4 id="_altos_14">H.15.1. AltOS</h4>
6840 <div class="ulist">
6841 <ul>
6842 <li>
6843 <p>Use maximum of 64 previous tilt values in pyro tilt tests</p>
6844 </li>
6845 <li>
6846 <p>Eliminate 100m height requirement for coast detection</p>
6847 </li>
6848 <li>
6849 <p>Change After Motor pyro check to be &gt;= instead of ==</p>
6850 </li>
6851 <li>
6852 <p>Change Time since Boost to be Time since launch.</p>
6853 </li>
6854 </ul>
6855 </div>
6856 </div>
6857 <div class="sect3">
6858 <h4 id="_altosui_telegps">H.15.2. AltosUI, TeleGPS</h4>
6859 <div class="ulist">
6860 <ul>
6861 <li>
6862 <p>Clarify pyro test phrasing</p>
6863 </li>
6864 <li>
6865 <p>Remove ascending/descending from pyro config UI</p>
6866 </li>
6867 <li>
6868 <p>Fix accel calibration in Antenna Down mode</p>
6869 </li>
6870 <li>
6871 <p>Add mag sensor reporting for TeleMega v3 idle monitoring.</p>
6872 </li>
6873 <li>
6874 <p>Fix radio parameter saving at 2400 bps telmetry rate.</p>
6875 </li>
6876 </ul>
6877 </div>
6878 </div>
6879 <div class="sect3">
6880 <h4 id="_micropeak">H.15.3. MicroPeak</h4>
6881 <div class="ulist">
6882 <ul>
6883 <li>
6884 <p>Report altimeter-recorded maximum height value</p>
6885 </li>
6886 </ul>
6887 </div>
6888 <div style="page-break-after: always;"></div>
6889 </div>
6890 </div>
6891 <div class="sect2">
6892 <h3 id="_release_notes_for_version_1_8_5">H.16. Release Notes for Version 1.8.5</h3>
6893 <div class="paragraph">
6894 <p>Version 1.8.5 includes fixes to the ground software support
6895 for TeleBT v4, along with a few other minor updates.</p>
6896 </div>
6897 <div class="sect3">
6898 <h4 id="_altos_15">H.16.1. AltOS</h4>
6899 <div class="ulist">
6900 <ul>
6901 <li>
6902 <p>Fix startup beeps that indicate sensor failures.</p>
6903 </li>
6904 </ul>
6905 </div>
6906 </div>
6907 <div class="sect3">
6908 <h4 id="_altosui_telegps_2">H.16.2. AltosUI, TeleGPS</h4>
6909 <div class="ulist">
6910 <ul>
6911 <li>
6912 <p>When updating device firmware, make sure selected firmware
6913 matches target device.</p>
6914 </li>
6915 <li>
6916 <p>Correct Bluetooth device matching when looking for TeleBT
6917 devices.</p>
6918 </li>
6919 </ul>
6920 </div>
6921 <div style="page-break-after: always;"></div>
6922 </div>
6923 </div>
6924 <div class="sect2">
6925 <h3 id="_release_notes_for_version_1_8_4">H.17. Release Notes for Version 1.8.4</h3>
6926 <div class="paragraph">
6927 <p>Version 1.8.4 includes support for EasyMini version 2.0</p>
6928 </div>
6929 <div class="sect3">
6930 <h4 id="_altos_16">H.17.1. AltOS</h4>
6931 <div class="ulist">
6932 <ul>
6933 <li>
6934 <p>Support for EasyMini version 2.0 hardware.</p>
6935 </li>
6936 </ul>
6937 </div>
6938 <div style="page-break-after: always;"></div>
6939 </div>
6940 </div>
6941 <div class="sect2">
6942 <h3 id="_release_notes_for_version_1_8_3">H.18. Release Notes for Version 1.8.3</h3>
6943 <div class="paragraph">
6944 <p>Version 1.8.3 includes support for TeleMega version 3.0 along
6945 with two important flight computer fixes. This version also
6946 changes KML export data to make Tripoli Record reporting
6947 better and some updates to graph presentation and data
6948 downloading.</p>
6949 </div>
6950 <div class="sect3">
6951 <h4 id="_altos_17">H.18.1. AltOS</h4>
6952 <div class="sect4">
6953 <h5 id="_altos_new_features">AltOS New Features</h5>
6954 <div class="ulist">
6955 <ul>
6956 <li>
6957 <p>Support for TeleMega version 3.0 hardware.</p>
6958 </li>
6959 </ul>
6960 </div>
6961 </div>
6962 <div class="sect4">
6963 <h5 id="_altos_bug_fixes">AltOS Bug Fixes</h5>
6964 <div class="ulist">
6965 <ul>
6966 <li>
6967 <p>Ground testing EasyMega and TeleMega additional pyro
6968 channels could result in a sticky 'fired' status which would
6969 prevent these channels from firing on future flights.</p>
6970 </li>
6971 <li>
6972 <p>Corrupted flight log records could prevent future flights
6973 from capturing log data.</p>
6974 </li>
6975 <li>
6976 <p>Fixed saving of pyro configuration that ended with
6977 'Descending'.</p>
6978 </li>
6979 </ul>
6980 </div>
6981 </div>
6982 </div>
6983 <div class="sect3">
6984 <h4 id="_altosui_and_telegps_applications">H.18.2. AltosUI and TeleGPS Applications</h4>
6985 <div class="sect4">
6986 <h5 id="_altosui_new_features">AltosUI New Features</h5>
6987 <div class="ulist">
6988 <ul>
6989 <li>
6990 <p>Support for TeleMega version 3.0.</p>
6991 </li>
6992 <li>
6993 <p>Graph lines have improved appearance to make them easier to
6994 distinguish. Markers may be placed at data points to show
6995 captured recorded data values.</p>
6996 </li>
6997 <li>
6998 <p>Graphing offers the ability to adjust the smoothing of
6999 computed speed and acceleration data.</p>
7000 </li>
7001 <li>
7002 <p>The download dialog now offers to graph new flights, checks
7003 for existing files to avoid overwriting data and reports if
7004 there are checksum errors in the downloaded data.</p>
7005 </li>
7006 </ul>
7007 </div>
7008 </div>
7009 <div class="sect4">
7010 <h5 id="_altosuitelegps_bug_fixes">AltosUI/TeleGPS Bug Fixes</h5>
7011 <div class="ulist">
7012 <ul>
7013 <li>
7014 <p>Restore TeleGPS tracking behavior.</p>
7015 </li>
7016 <li>
7017 <p>Display flight computer call sign and serial number in
7018 Monitor Idle mode instead of ground station values.</p>
7019 </li>
7020 </ul>
7021 </div>
7022 </div>
7023 <div class="sect4">
7024 <h5 id="_altosui_and_telegps_changes">AltosUI and TeleGPS Changes</h5>
7025 <div class="ulist">
7026 <ul>
7027 <li>
7028 <p>KML export now reports both barometric and GPS altitude data
7029 to make it more useful for Tripoli record reporting.</p>
7030 </li>
7031 <li>
7032 <p>CSV export now includes TeleMega/EasyMega pyro voltages and
7033 tilt angle.</p>
7034 </li>
7035 </ul>
7036 </div>
7037 <div style="page-break-after: always;"></div>
7038 </div>
7039 </div>
7040 </div>
7041 <div class="sect2">
7042 <h3 id="_release_notes_for_version_1_8_2">H.19. Release Notes for Version 1.8.2</h3>
7043 <div class="paragraph">
7044 <p>Version 1.8.2 includes support for TeleGPS version 2.0 along
7045 with accelerometer recalibration support in AltosUI.</p>
7046 </div>
7047 <div class="paragraph">
7048 <p>1.8.2 also contains a couple of minor fixes for AltosUI when
7049 analyzing saved data files.</p>
7050 </div>
7051 <div class="sect3">
7052 <h4 id="_altos_18">H.19.1. AltOS</h4>
7053 <div class="paragraph">
7054 <p>AltOS New Features</p>
7055 </div>
7056 <div class="ulist">
7057 <ul>
7058 <li>
7059 <p>Support for TeleGPS version 2.0 hardware.</p>
7060 </li>
7061 </ul>
7062 </div>
7063 </div>
7064 <div class="sect3">
7065 <h4 id="_altosui_and_telegps_applications_2">H.19.2. AltosUI and TeleGPS Applications</h4>
7066 <div class="paragraph">
7067 <p>AltosUI and TeleGPS New Features</p>
7068 </div>
7069 <div class="ulist">
7070 <ul>
7071 <li>
7072 <p>Support for TeleGPS version 2.0.</p>
7073 </li>
7074 <li>
7075 <p>Accelerometer re-calibration user interface.</p>
7076 </li>
7077 </ul>
7078 </div>
7079 <div class="paragraph">
7080 <p>AltosUI and TeleGPS Bug Fixes</p>
7081 </div>
7082 <div class="ulist">
7083 <ul>
7084 <li>
7085 <p>Prevent some crashes when reading older saved flight data
7086 for graphing or KML export.</p>
7087 </li>
7088 </ul>
7089 </div>
7090 <div style="page-break-after: always;"></div>
7091 </div>
7092 </div>
7093 <div class="sect2">
7094 <h3 id="_release_notes_for_version_1_8_1">H.20. Release Notes for Version 1.8.1</h3>
7095 <div class="paragraph">
7096 <p>Version 1.8.1 includes an important bug fix for Apogee Lockout
7097 operation in all flight computers. Anyone using this option
7098 must update firmware.</p>
7099 </div>
7100 <div class="paragraph">
7101 <p>This release also contains a change in how flight computers
7102 with accelerometers deal with speeds around and above Mach
7103 1. In previous versions, the flight computer would completely
7104 disregard the barometric sensor above 330m/s (around Mach
7105 1). Now, the data from the barometric sensor is reduced in
7106 effect without ever going away entirely. This prevents early
7107 drogue deployment for flights which spend considerable time
7108 above Mach 1.</p>
7109 </div>
7110 <div class="paragraph">
7111 <p>1.8.1 also contains a couple of minor fixes for AltosUI when
7112 analyzing saved data files.</p>
7113 </div>
7114 <div class="sect3">
7115 <h4 id="_altos_19">H.20.1. AltOS</h4>
7116 <div class="paragraph">
7117 <p>AltOS Bug Fixes</p>
7118 </div>
7119 <div class="ulist">
7120 <ul>
7121 <li>
7122 <p>Handle time value wrapping in Apogee Lockout
7123 correctly. Without this, apogee lockout would sometimes
7124 prevent any drogue charge from firing.</p>
7125 </li>
7126 <li>
7127 <p>Change Kalman filter on flight computers with accelerometer
7128 to continue using the barometric sensor even at high speeds
7129 to avoid unintentional drogue deployment during
7130 deceleration.</p>
7131 </li>
7132 </ul>
7133 </div>
7134 </div>
7135 <div class="sect3">
7136 <h4 id="_altosui_and_telegps_applications_3">H.20.2. AltosUI and TeleGPS Applications</h4>
7137 <div class="paragraph">
7138 <p>AltosUI New Features</p>
7139 </div>
7140 <div class="ulist">
7141 <ul>
7142 <li>
7143 <p>Add new 'Huge' font size to make text even bigger on high
7144 resolution monitors.</p>
7145 </li>
7146 </ul>
7147 </div>
7148 <div class="paragraph">
7149 <p>AltosUI Bug Fixes</p>
7150 </div>
7151 <div class="ulist">
7152 <ul>
7153 <li>
7154 <p>Prevent some crashes when reading older saved flight data
7155 for graphing or KML export.</p>
7156 </li>
7157 <li>
7158 <p>Load frequency preference at startup. The loading code was
7159 broken, so you&#8217;d see only the default frequencies.</p>
7160 </li>
7161 </ul>
7162 </div>
7163 <div style="page-break-after: always;"></div>
7164 </div>
7165 </div>
7166 <div class="sect2">
7167 <h3 id="_release_notes_for_version_1_8">H.21. Release Notes for Version 1.8</h3>
7168 <div class="paragraph">
7169 <p>Version 1.8 includes support for our new TeleBT v4.0 ground
7170 station, updates for data analysis in our ground station
7171 software and bug fixes in in the flight software for all our
7172 boards and ground station interfaces.</p>
7173 </div>
7174 <div class="sect3">
7175 <h4 id="_altos_20">H.21.1. AltOS</h4>
7176 <div class="paragraph">
7177 <p>AltOS New Features</p>
7178 </div>
7179 <div class="ulist">
7180 <ul>
7181 <li>
7182 <p>Add support for TeleBT v4.0 boards.</p>
7183 </li>
7184 </ul>
7185 </div>
7186 </div>
7187 <div class="sect3">
7188 <h4 id="_altosui_and_telegps_applications_4">H.21.2. AltosUI and TeleGPS Applications</h4>
7189 <div class="paragraph">
7190 <p>AltosUI New Features</p>
7191 </div>
7192 <div class="ulist">
7193 <ul>
7194 <li>
7195 <p>Add support for TeleBT v4.0 hardware</p>
7196 </li>
7197 <li>
7198 <p>Rewrite graphing and export functions. This code now handles
7199 each data series separately so that graphs are drawn
7200 correctly. Smoothing now uses a filter that looks both
7201 forward and backwards in time to make computed speed and
7202 acceleration data more accurate.</p>
7203 </li>
7204 </ul>
7205 </div>
7206 <div class="paragraph">
7207 <p>AltosUI Bug Fixes</p>
7208 </div>
7209 <div class="ulist">
7210 <ul>
7211 <li>
7212 <p>Correct axis labeling of magnetic sensor in TeleMega and
7213 EasyMega. The Y and Z axes were flipped.</p>
7214 </li>
7215 </ul>
7216 </div>
7217 <div style="page-break-after: always;"></div>
7218 </div>
7219 </div>
7220 <div class="sect2">
7221 <h3 id="_release_notes_for_version_1_7">H.22. Release Notes for Version 1.7</h3>
7222 <div class="paragraph">
7223 <p>Version 1.7 includes support for our new TeleMini v3.0
7224 flight computer and bug fixes in in the flight software for all our boards
7225 and ground station interfaces.</p>
7226 </div>
7227 <div class="sect3">
7228 <h4 id="_altos_21">H.22.1. AltOS</h4>
7229 <div class="paragraph">
7230 <p>AltOS New Features</p>
7231 </div>
7232 <div class="ulist">
7233 <ul>
7234 <li>
7235 <p>Add support for TeleMini v3.0 boards.</p>
7236 </li>
7237 </ul>
7238 </div>
7239 <div class="paragraph">
7240 <p>AltOS Fixes</p>
7241 </div>
7242 <div class="ulist">
7243 <ul>
7244 <li>
7245 <p>Fix interrupt priorities on STM32L processors. Run timer
7246 interrupt at lowest priority so that device interrupts get
7247 serviced first.</p>
7248 </li>
7249 </ul>
7250 </div>
7251 </div>
7252 <div class="sect3">
7253 <h4 id="_altosui_and_telegps_applications_5">H.22.2. AltosUI and TeleGPS Applications</h4>
7254 <div class="paragraph">
7255 <p>AltosUI New Features</p>
7256 </div>
7257 <div class="ulist">
7258 <ul>
7259 <li>
7260 <p>Add support for TeleMini v3.0 hardware</p>
7261 </li>
7262 </ul>
7263 </div>
7264 <div style="page-break-after: always;"></div>
7265 </div>
7266 </div>
7267 <div class="sect2">
7268 <h3 id="_release_notes_for_version_1_6_8">H.23. Release Notes for Version 1.6.8</h3>
7269 <div class="paragraph">
7270 <p>Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where
7271 the device could stop logging data and transmitting
7272 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7273 v2.0 users should update their flight firmware.</p>
7274 </div>
7275 <div class="sect3">
7276 <h4 id="_altos_22">H.23.1. AltOS</h4>
7277 <div class="paragraph">
7278 <p>AltOS fixes:</p>
7279 </div>
7280 <div class="ulist">
7281 <ul>
7282 <li>
7283 <p>Fix STM32L DMA driver to work around STM32L SoC DMA priority
7284 issue t lock-up in the logging or radio code, either of
7285 which could stop data logging and telemetry.</p>
7286 </li>
7287 <li>
7288 <p>Avoid having TeleBT battery status values smash telemetry
7289 packet data by holding a lock during both operations.</p>
7290 </li>
7291 <li>
7292 <p>Don&#8217;t start reporting 'flight 0' when the log fills in
7293 flight.</p>
7294 </li>
7295 </ul>
7296 </div>
7297 <div class="paragraph">
7298 <p>AltOS changes:</p>
7299 </div>
7300 <div class="ulist">
7301 <ul>
7302 <li>
7303 <p>Flash LEDS on all products briefly during power up so that
7304 they can be tested during production.</p>
7305 </li>
7306 </ul>
7307 </div>
7308 </div>
7309 <div class="sect3">
7310 <h4 id="_altosui_telegps_and_altosdroid_applications">H.23.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7311 <div class="paragraph">
7312 <p>AltosUI fixes:</p>
7313 </div>
7314 <div class="ulist">
7315 <ul>
7316 <li>
7317 <p>Re-enable go/no-go entries after they&#8217;ve been disabled due
7318 to lack of data. If telemetry information is delayed when
7319 the Ui starts up, sometimes important fields would get
7320 disabled to never re-appear.</p>
7321 </li>
7322 <li>
7323 <p>Deal with ground station failure better during Configure
7324 Ground Station operation by cleaning up pending operations.</p>
7325 </li>
7326 </ul>
7327 </div>
7328 <div style="page-break-after: always;"></div>
7329 </div>
7330 </div>
7331 <div class="sect2">
7332 <h3 id="_release_notes_for_version_1_6_5">H.24. Release Notes for Version 1.6.5</h3>
7333 <div class="paragraph">
7334 <p>Version 1.6.5 fixes a TeleMega and TeleMetrum v2.0 bug where
7335 the device would often stop logging data and transmitting
7336 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7337 v2.0 users should update their flight firmware.</p>
7338 </div>
7339 <div class="sect3">
7340 <h4 id="_altos_23">H.24.1. AltOS</h4>
7341 <div class="paragraph">
7342 <p>AltOS fixes:</p>
7343 </div>
7344 <div class="ulist">
7345 <ul>
7346 <li>
7347 <p>Fix STM32L SPI driver to prevent lock-up in the logging or
7348 radio code, either of which could stop data logging and
7349 telemetry. Found and characterized by Chuck Haskin, who also
7350 tested the new firmware before release.</p>
7351 </li>
7352 </ul>
7353 </div>
7354 </div>
7355 <div class="sect3">
7356 <h4 id="_altosui_telegps_and_altosdroid_applications_2">H.24.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7357 <div class="paragraph">
7358 <p>AltosUI fixes:</p>
7359 </div>
7360 <div class="ulist">
7361 <ul>
7362 <li>
7363 <p>Deliver firmward for TeleMega v2.0 and TeleBT v3.0 with
7364 Windows package.</p>
7365 </li>
7366 </ul>
7367 </div>
7368 <div style="page-break-after: always;"></div>
7369 </div>
7370 </div>
7371 <div class="sect2">
7372 <h3 id="_release_notes_for_version_1_6_4">H.25. Release Notes for Version 1.6.4</h3>
7373 <div class="paragraph">
7374 <p>Version 1.6.4 fixes a bluetooth communication problem with
7375 TeleBT v1.0 devices, along with some altosui and altosdroid
7376 minor nits. It also now ships firmware for some newer devices.</p>
7377 </div>
7378 <div class="sect3">
7379 <h4 id="_altos_24">H.25.1. AltOS</h4>
7380 <div class="paragraph">
7381 <p>AltOS fixes:</p>
7382 </div>
7383 <div class="ulist">
7384 <ul>
7385 <li>
7386 <p>Fix hardware flow control on TeleBT v1.0. Hardware RTS/CTS
7387 doesn&#8217;t seem to work, switch from using the hardware to
7388 driving these pins with software.</p>
7389 </li>
7390 <li>
7391 <p>Fix ARM USB drivers to deal with OS restarts. Needed to
7392 reset all USB-related state when the USB bus is reset. These
7393 fixes affect all STM32L, STM32F0 and LPC11U14 based devices.</p>
7394 </li>
7395 </ul>
7396 </div>
7397 </div>
7398 <div class="sect3">
7399 <h4 id="_altosui_telegps_and_altosdroid_applications_3">H.25.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7400 <div class="paragraph">
7401 <p>AltosUI, TeleGPS and AltosDroid New Features:</p>
7402 </div>
7403 <div class="ulist">
7404 <ul>
7405 <li>
7406 <p>Automatically switch from meters or feet to kilometers or
7407 miles for distance units.</p>
7408 </li>
7409 <li>
7410 <p>Add Monitor Idle mode to TeleGPS application.</p>
7411 </li>
7412 </ul>
7413 </div>
7414 <div class="paragraph">
7415 <p>AltosUI, TeleGPS and AltosDroid Fixes:</p>
7416 </div>
7417 <div class="ulist">
7418 <ul>
7419 <li>
7420 <p>Abort map preloading when the preload map dialog is closed.</p>
7421 </li>
7422 <li>
7423 <p>In AltosDroid, Don&#8217;t reconnect to last device if the user
7424 had disconnected it the last time the application was
7425 active.</p>
7426 </li>
7427 </ul>
7428 </div>
7429 </div>
7430 <div class="sect3">
7431 <h4 id="_documentation">H.25.3. Documentation</h4>
7432 <div class="ulist">
7433 <ul>
7434 <li>
7435 <p>Mention TeleMega v2.0 in hardware specs table.</p>
7436 </li>
7437 <li>
7438 <p>Document TeleGPS RF output in telegps manual.</p>
7439 </li>
7440 </ul>
7441 </div>
7442 <div style="page-break-after: always;"></div>
7443 </div>
7444 </div>
7445 <div class="sect2">
7446 <h3 id="_release_notes_for_version_1_6_3">H.26. Release Notes for Version 1.6.3</h3>
7447 <div class="paragraph">
7448 <p>Version 1.6.3 adds idle mode to AltosDroid and has bug fixes
7449 for our host software on desktops, laptops an android devices
7450 along with BlueTooth support for Windows.</p>
7451 </div>
7452 <div class="sect3">
7453 <h4 id="_altos_25">H.26.1. AltOS</h4>
7454 <div class="paragraph">
7455 <p>AltOS fixes:</p>
7456 </div>
7457 <div class="ulist">
7458 <ul>
7459 <li>
7460 <p>Fix hardware flow control on TeleBT v3.0. RTS/CTS is
7461 wired backwards on this board, switch from using the
7462 hardware to driving these pins with software.</p>
7463 </li>
7464 </ul>
7465 </div>
7466 </div>
7467 <div class="sect3">
7468 <h4 id="_altosui_and_telegps_applications_6">H.26.2. AltosUI and TeleGPS Applications</h4>
7469 <div class="paragraph">
7470 <p>AltosUI and TeleGPS New Features:</p>
7471 </div>
7472 <div class="ulist">
7473 <ul>
7474 <li>
7475 <p>Add BlueTooth support for Windows operating system. This
7476 supports connections to TeleBT over BlueTooth rather than
7477 just USB.</p>
7478 </li>
7479 </ul>
7480 </div>
7481 <div class="paragraph">
7482 <p>AltosUI and TeleGPS Fixes:</p>
7483 </div>
7484 <div class="ulist">
7485 <ul>
7486 <li>
7487 <p>Change Java detection and install on Windows. Detection is
7488 now done by looking for the 'javaw.exe' program, and
7489 installation by opening a browser on the java.com web site.</p>
7490 </li>
7491 <li>
7492 <p>Delay polling while the Fire Igniters is visible to allow
7493 for TeleMega to report back complete status over the radio.</p>
7494 </li>
7495 <li>
7496 <p>Disallow changing RF calibration numbers in the
7497 configuration UI. There&#8217;s no good reason to change this from
7498 the field, and recovering is really hard if you haven&#8217;t
7499 written down the right number.</p>
7500 </li>
7501 <li>
7502 <p>Fix USB device discovery on Mac OS X El Capitan. This makes
7503 the connected Altus Metrum USB devices appear again.</p>
7504 </li>
7505 <li>
7506 <p>Fix acceleration data presented in MonitorIdle mode for
7507 TeleMetrum v2.0 flight computers.</p>
7508 </li>
7509 </ul>
7510 </div>
7511 </div>
7512 <div class="sect3">
7513 <h4 id="_altosdroid_7">H.26.3. AltosDroid</h4>
7514 <div class="paragraph">
7515 <p>AltosDroid new features:</p>
7516 </div>
7517 <div class="ulist">
7518 <ul>
7519 <li>
7520 <p>Monitor Idle mode. Check state of flight computer while in
7521 idle mode over the radio link</p>
7522 </li>
7523 <li>
7524 <p>Fire Igniters. Remotely fire ignires for recovery system
7525 ground tests.</p>
7526 </li>
7527 <li>
7528 <p>Remote reboot. Cause the flight computer to reboot over the
7529 radio link. This provides a method for switching the flight
7530 computer from idle to flight mode without needing to reach
7531 the power switch.</p>
7532 </li>
7533 <li>
7534 <p>Configurable frequency menu. Change the set of available
7535 frequencies and provide more descriptive names.</p>
7536 </li>
7537 </ul>
7538 </div>
7539 <div class="paragraph">
7540 <p>AltosDroid bug fixes:</p>
7541 </div>
7542 <div class="ulist">
7543 <ul>
7544 <li>
7545 <p>Don&#8217;t set target location if GPS hasn&#8217;t locked yet.</p>
7546 </li>
7547 <li>
7548 <p>Fix saving target states so they can be reloaded when the
7549 application restarts. When the application is shut down and
7550 restarted, all previous target state information will be
7551 restored (including GPS position if available).</p>
7552 </li>
7553 <li>
7554 <p>Fix crash on some Android devices for offline maps when
7555 changing the map scale or location.</p>
7556 </li>
7557 <li>
7558 <p>Don&#8217;t require USB OTG support. This kept the latest
7559 AltosDroid from being offered on devices without USB device
7560 support, although it can work without that just fine using
7561 BlueTooth.</p>
7562 </li>
7563 <li>
7564 <p>Don&#8217;t require bluetooth to be enabled. This allows the
7565 application to operate with USB devices or just show old
7566 data without turning on the bluetooth radio.</p>
7567 </li>
7568 <li>
7569 <p>Recover old tracker positions when restarting
7570 application. This finally allows you to safely stop and
7571 restart the application without losing the last known
7572 location of any tracker.</p>
7573 </li>
7574 </ul>
7575 </div>
7576 </div>
7577 <div class="sect3">
7578 <h4 id="_documentation_2">H.26.4. Documentation</h4>
7579 <div class="ulist">
7580 <ul>
7581 <li>
7582 <p>Document TeleMega and EasyMega additional pyro channel
7583 continuity audio alert pattern.</p>
7584 </li>
7585 </ul>
7586 </div>
7587 <div style="page-break-after: always;"></div>
7588 </div>
7589 </div>
7590 <div class="sect2">
7591 <h3 id="_release_notes_for_version_1_6_2">H.27. Release Notes for Version 1.6.2</h3>
7592 <div class="paragraph">
7593 <p>Version 1.6.2 includes support for our updated TeleMega v2.0
7594 product and bug fixes in in the flight software for all our boards
7595 and ground station interfaces.</p>
7596 </div>
7597 <div class="sect3">
7598 <h4 id="_altos_26">H.27.1. AltOS</h4>
7599 <div class="paragraph">
7600 <p>AltOS New Features:</p>
7601 </div>
7602 <div class="ulist">
7603 <ul>
7604 <li>
7605 <p>Add support for TeleMega v2.0 boards.</p>
7606 </li>
7607 <li>
7608 <p>Add PWM servo driver. There&#8217;s no higher level code using
7609 this yet, but the driver allows testing of the TeleMega v2.0
7610 servo output connector.</p>
7611 </li>
7612 </ul>
7613 </div>
7614 <div class="paragraph">
7615 <p>AltOS Fixes:</p>
7616 </div>
7617 <div class="ulist">
7618 <ul>
7619 <li>
7620 <p>Slow down telemetry packets to allow receiver to keep
7621 up.</p>
7622 </li>
7623 </ul>
7624 </div>
7625 </div>
7626 <div class="sect3">
7627 <h4 id="_altosui_and_telegps_applications_7">H.27.2. AltosUI and TeleGPS Applications</h4>
7628 <div class="paragraph">
7629 <p>AltosUI and TeleGPS Fixes:</p>
7630 </div>
7631 <div class="ulist">
7632 <ul>
7633 <li>
7634 <p>Fix post-flight orientation computation when processing
7635 TeleMega and EasyMega eeprom data files.</p>
7636 </li>
7637 <li>
7638 <p>Capture complete eeprom data even when there are invalid
7639 entries in the data. This keeps reading eeprom contents and
7640 writing the associated .eeprom file when an error is detected.</p>
7641 </li>
7642 </ul>
7643 </div>
7644 </div>
7645 <div class="sect3">
7646 <h4 id="_documentation_3">H.27.3. Documentation</h4>
7647 <div class="paragraph">
7648 <p>We spent a bunch of time trying to improve our documentation</p>
7649 </div>
7650 <div class="ulist">
7651 <ul>
7652 <li>
7653 <p>HTML versions now have a table of contents on the left side.</p>
7654 </li>
7655 <li>
7656 <p>EasyMini now has its own shorter manual.</p>
7657 </li>
7658 <li>
7659 <p>Provide links between sections in each document.</p>
7660 </li>
7661 <li>
7662 <p>Lots of minor rewriting and restructuring to avoid
7663 duplication of information</p>
7664 </li>
7665 </ul>
7666 </div>
7667 <div style="page-break-after: always;"></div>
7668 </div>
7669 </div>
7670 <div class="sect2">
7671 <h3 id="_release_notes_for_version_1_6_1">H.28. Release Notes for Version 1.6.1</h3>
7672 <div class="paragraph">
7673 <p>Version 1.6.1 includes support for our updated TeleBT v3.0
7674 product and bug fixes in in the flight software for all our boards
7675 and ground station interfaces.</p>
7676 </div>
7677 <div class="sect3">
7678 <h4 id="_altos_27">H.28.1. AltOS</h4>
7679 <div class="paragraph">
7680 <p>AltOS New Features:</p>
7681 </div>
7682 <div class="ulist">
7683 <ul>
7684 <li>
7685 <p>Add support for TeleBT v3.0 boards.</p>
7686 </li>
7687 <li>
7688 <p>Add support for uncompressed APRS data, providing support
7689 for older APRS receivers. Uncompressed APRS data is less
7690 precise, takes more bandwidth and doesn&#8217;t have integrated
7691 altitude data.</p>
7692 </li>
7693 </ul>
7694 </div>
7695 <div class="paragraph">
7696 <p>AltOS Fixes:</p>
7697 </div>
7698 <div class="ulist">
7699 <ul>
7700 <li>
7701 <p>Make TeleDongle and TeleBT more tolerant of data rate
7702 variations from transmitting devices.</p>
7703 </li>
7704 </ul>
7705 </div>
7706 </div>
7707 <div class="sect3">
7708 <h4 id="_altosui_and_telegps_applications_8">H.28.2. AltosUI and TeleGPS Applications</h4>
7709 <div class="paragraph">
7710 <p>AltosUI and TeleGPS New Features:</p>
7711 </div>
7712 <div class="ulist">
7713 <ul>
7714 <li>
7715 <p>Add map to Monitor Idle display. It&#8217;s nice to be able to
7716 verify that maps are working, instead of needing to use
7717 Monitor Flight.</p>
7718 </li>
7719 </ul>
7720 </div>
7721 <div class="paragraph">
7722 <p>AltosUI and TeleGPS Fixes:</p>
7723 </div>
7724 <div class="ulist">
7725 <ul>
7726 <li>
7727 <p>Fix frequency configuration to round values instead of
7728 truncate them, avoiding a common 1kHz error in the setting.</p>
7729 </li>
7730 <li>
7731 <p>Turn the Windows stub into a more useful program that can
7732 launch the application with parameters so that file manager
7733 icons work more reliably.</p>
7734 </li>
7735 <li>
7736 <p>Force KML export to use a C locale so that numbers are
7737 formatted with '.' instead of ',' for a decimal separator in
7738 non-US locales.</p>
7739 </li>
7740 <li>
7741 <p>Preload map tiles based on distance rather than number of
7742 tiles; this means you get the same resolution covering the
7743 entire area, rather than having high resolution near the
7744 center and low resolution further away.</p>
7745 </li>
7746 <li>
7747 <p>Allow configuration of frequency and callsign in Monitor
7748 Idle mode.</p>
7749 </li>
7750 <li>
7751 <p>Fix layout weirdness when resizing windows on
7752 Windows. Windows shouldn&#8217;t have giant blank spaces around
7753 the useful content anymore.</p>
7754 </li>
7755 <li>
7756 <p>Fix layout weirdness when resizing windows on
7757 Windows. Windows shouldn&#8217;t have giant blank spaces around
7758 the useful content anymore.</p>
7759 </li>
7760 <li>
7761 <p>Use a longer filter for descent speed values. This should
7762 provide something more useful on the display, although it
7763 will take longer to respond to changes now.</p>
7764 </li>
7765 <li>
7766 <p>Make Replay Flight run in realtime again. It had been set to
7767 run at 10x speed by mistake.</p>
7768 </li>
7769 </ul>
7770 </div>
7771 </div>
7772 <div class="sect3">
7773 <h4 id="_altosdroid_8">H.28.3. AltosDroid</h4>
7774 <div class="paragraph">
7775 <p>AltosDroid New Features:</p>
7776 </div>
7777 <div class="ulist">
7778 <ul>
7779 <li>
7780 <p>Add offline map support using mapping code from AltosUI.</p>
7781 </li>
7782 <li>
7783 <p>Support TeleDongle (and TeleBT via USB) on devices
7784 supporting USB On-The-Go.</p>
7785 </li>
7786 <li>
7787 <p>Display additional TeleMega pyro channel status in Pad tab.</p>
7788 </li>
7789 <li>
7790 <p>Switch between metric and imperial units.</p>
7791 </li>
7792 <li>
7793 <p>Monitor TeleBT battery voltage.</p>
7794 </li>
7795 <li>
7796 <p>Track multiple devices at the same time, selecting between
7797 them with a menu or using the map.</p>
7798 </li>
7799 <li>
7800 <p>Add hybrid, satellite and terrain map types.</p>
7801 </li>
7802 </ul>
7803 </div>
7804 <div class="paragraph">
7805 <p>AltosDroid Fixes:</p>
7806 </div>
7807 <div class="ulist">
7808 <ul>
7809 <li>
7810 <p>Use standard Android display conventions so that a menu
7811 button is available in the application title bar.</p>
7812 </li>
7813 <li>
7814 <p>Adjust layout to work on large and small screens; shrinking
7815 the go/no-go lights in smaller environments to try and make
7816 everything visible.</p>
7817 </li>
7818 <li>
7819 <p>Make voice announcements depend on current tab.</p>
7820 </li>
7821 <li>
7822 <p>Compute adjustment to current travel direction while in
7823 motion towards rocket.</p>
7824 </li>
7825 </ul>
7826 </div>
7827 <div style="page-break-after: always;"></div>
7828 </div>
7829 </div>
7830 <div class="sect2">
7831 <h3 id="_release_notes_for_version_1_6">H.29. Release Notes for Version 1.6</h3>
7832 <div class="paragraph">
7833 <p>Version 1.6 includes support for our updated TeleDongle v3.0
7834 product and bug fixes in in the flight software for all our boards
7835 and ground station interfaces.</p>
7836 </div>
7837 <div class="sect3">
7838 <h4 id="_altos_28">H.29.1. AltOS</h4>
7839 <div class="paragraph">
7840 <p>AltOS New Features</p>
7841 </div>
7842 <div class="ulist">
7843 <ul>
7844 <li>
7845 <p>Add support for TeleDongle v3.0 boards.</p>
7846 </li>
7847 </ul>
7848 </div>
7849 <div class="paragraph">
7850 <p>AltOS Fixes</p>
7851 </div>
7852 <div class="ulist">
7853 <ul>
7854 <li>
7855 <p>Don&#8217;t beep out the continuity twice by accident in idle mode.
7856 If the battery voltage report takes longer than the initialiation
7857 sequence, the igniter continuity would get reported twice.</p>
7858 </li>
7859 <li>
7860 <p>Record all 32 bits of gyro calibration data in TeleMega and
7861 EasyMega log files. This fixes computation of the gyro rates
7862 in AltosUI.</p>
7863 </li>
7864 <li>
7865 <p>Change TeleDongle LED usage. Green LED flashes when valid
7866 packet is received. Red LED flashes when invalid packet is
7867 received.</p>
7868 </li>
7869 <li>
7870 <p>Replace LPC11U14 SPI driver with non-interrupt version. The
7871 interrupt code would occasionally wedge on long transfers
7872 if interrupts were blocked for too long. This affects all
7873 released TeleGPS products; if you have a TeleGPS device,
7874 you&#8217;ll want to reflash the firmware.</p>
7875 </li>
7876 </ul>
7877 </div>
7878 </div>
7879 <div class="sect3">
7880 <h4 id="_altosui_and_telegps_applications_9">H.29.2. AltosUI and TeleGPS Applications</h4>
7881 <div class="paragraph">
7882 <p>AltosUI and TeleGPS New Features</p>
7883 </div>
7884 <div class="ulist">
7885 <ul>
7886 <li>
7887 <p>Compute tilt angle from TeleMega and EasyMega log
7888 files. This duplicates the quaternion-based angle tracking
7889 code from the flight firmware inside the ground station
7890 software so that post-flight analysis can include evaluation
7891 of the tilt angle.</p>
7892 </li>
7893 <li>
7894 <p>Shows the tool button window when starting with a data file
7895 specified. This means that opening a data file from the file
7896 manager will now bring up the main window to let you operate
7897 the whole application.</p>
7898 </li>
7899 </ul>
7900 </div>
7901 <div class="paragraph">
7902 <p>AltosUI Fixes</p>
7903 </div>
7904 <div class="ulist">
7905 <ul>
7906 <li>
7907 <p>Show the 'Connecting' dialog when using Monitor Idle. Lets
7908 you cancel the Monitor Idle startup when connecting over the
7909 radio link.</p>
7910 </li>
7911 <li>
7912 <p>Make 'Monitor Idle' work for TeleGPS devices when connected
7913 over USB. It&#8217;s nice for testing without needing to broadcast
7914 over the radio.</p>
7915 </li>
7916 <li>
7917 <p>Use different Windows API to discover USB devices. This
7918 works better on my Windows 7 box, and will be used if the
7919 older API fails to provide the necessary information.</p>
7920 </li>
7921 <li>
7922 <p>Look in more places in the registry to try and identify the
7923 installed Java version on Windows. If you install the
7924 default 32-bit version of Windows on a 64-bit OS, the Java
7925 registry information is hiding \SOFTWARE\Wow6432Node for
7926 some reason.</p>
7927 </li>
7928 <li>
7929 <p>Fix file association on Windows by searching for the
7930 javaw.exe program instead of assuming it is in
7931 %SYSTEMROOT%. This makes double-clicking on Altus Metrum
7932 data files in the file manager work correctly.</p>
7933 </li>
7934 <li>
7935 <p>When replaying a file, put 'done' in the Age field when we
7936 reach the end of the file, instead of continuing to count forever.</p>
7937 </li>
7938 <li>
7939 <p>In the Scan Channels code, wait for five seconds if we see
7940 any packet. This is needed because AltOS now sends the
7941 callsign, serial number and flight number only once every
7942 five seconds these days.</p>
7943 </li>
7944 <li>
7945 <p>In the Scan Channels code, reset pending flight state
7946 information each time we change channels. This avoids having
7947 flight computers appear on multiple frequencies by accident.</p>
7948 </li>
7949 </ul>
7950 </div>
7951 <div style="page-break-after: always;"></div>
7952 </div>
7953 </div>
7954 <div class="sect2">
7955 <h3 id="_release_notes_for_version_1_5">H.30. Release Notes for Version 1.5</h3>
7956 <div class="paragraph">
7957 <p>Version 1.5 is a major release. It includes support for our new
7958 EasyMega product, new features and bug fixes in in the flight
7959 software for all our boards and the AltosUI ground station</p>
7960 </div>
7961 <div class="sect3">
7962 <h4 id="_altos_29">H.30.1. AltOS</h4>
7963 <div class="paragraph">
7964 <p>AltOS New Features</p>
7965 </div>
7966 <div class="ulist">
7967 <ul>
7968 <li>
7969 <p>Add support for EasyMega boards.</p>
7970 </li>
7971 <li>
7972 <p>Make the APRS SSID be configurable. This lets you track
7973 different rockets on the same receiver without getting
7974 things mixed up.</p>
7975 </li>
7976 <li>
7977 <p>Report extra pyro channel continuity state on EasyMega and
7978 TeleMega via the beeper. This lets you easily verify flight
7979 readiness on these boards after powering up the electronics
7980 on the rail.</p>
7981 </li>
7982 <li>
7983 <p>Add lower telemetry data rates (2400 and 9600 bps) to
7984 increase telemetry radio range. This reduces the amount of
7985 data received as well as increasing battery consumption in
7986 the transmitter.</p>
7987 </li>
7988 <li>
7989 <p>Change TeleGPS to have only a single log, and append new
7990 data to it rather than using seperate per-flight logs. This
7991 avoids accidentally filling up log storage by turning
7992 TeleGPS on/off several times.</p>
7993 </li>
7994 </ul>
7995 </div>
7996 <div class="paragraph">
7997 <p>AltOS Fixes</p>
7998 </div>
7999 <div class="ulist">
8000 <ul>
8001 <li>
8002 <p>Increase the maximum range for altitude values from +/-32767m
8003 to +/-2147483647m, allowing the flight computers to function
8004 correctly above the 32km level.</p>
8005 </li>
8006 <li>
8007 <p>Continuously test pyro firing conditions during delay stage,
8008 inhibiting the pyro channel if the test fails. This prevents
8009 firing pyro charges where the conditions were good before
8010 the delay, but become bad before the delay expires.</p>
8011 </li>
8012 <li>
8013 <p>Allow negative numbers in pyro configuration values. This
8014 lets you specify things like descending speed or
8015 deceleration.</p>
8016 </li>
8017 </ul>
8018 </div>
8019 </div>
8020 <div class="sect3">
8021 <h4 id="_altosui_and_telegps_applications_10">H.30.2. AltosUI and TeleGPS Applications</h4>
8022 <div class="paragraph">
8023 <p>AltosUI and TeleGPS New Features</p>
8024 </div>
8025 <div class="ulist">
8026 <ul>
8027 <li>
8028 <p>Support telemetry baud rate selection. Adds menus to
8029 the flight monitoring and configuration for baud rate
8030 selection.</p>
8031 </li>
8032 <li>
8033 <p>Support APRS SSID configuration.</p>
8034 </li>
8035 <li>
8036 <p>Integrate with file managers. This provides icons for all of
8037 our file types and associates our application with the files
8038 so that using a file manager to open a AltOS data file
8039 results in launching our application.</p>
8040 </li>
8041 </ul>
8042 </div>
8043 <div class="paragraph">
8044 <p>AltosUI Fixes</p>
8045 </div>
8046 <div class="ulist">
8047 <ul>
8048 <li>
8049 <p>Make the 'Graph' button on the landed tab work again.</p>
8050 </li>
8051 <li>
8052 <p>Make tests for Java on Windows a bit smarter, and also
8053 provide the user with the option to skip installing Java for
8054 cases where we just can&#8217;t figure out what version is installed.</p>
8055 </li>
8056 </ul>
8057 </div>
8058 <div style="page-break-after: always;"></div>
8059 </div>
8060 </div>
8061 <div class="sect2">
8062 <h3 id="_release_notes_for_version_1_4_2">H.31. Release Notes for Version 1.4.2</h3>
8063 <div class="paragraph">
8064 <p>Version 1.4.2 is a minor release. It fixes Java-related install issues on
8065 Windows</p>
8066 </div>
8067 <div class="sect3">
8068 <h4 id="_altosui_and_telegps_applications_11">H.31.1. AltosUI and TeleGPS Applications</h4>
8069 <div class="paragraph">
8070 <p>Windows Install Fixes</p>
8071 </div>
8072 <div class="ulist">
8073 <ul>
8074 <li>
8075 <p>Checks for Java installation data in more registry locations.</p>
8076 </li>
8077 <li>
8078 <p>Allows user to bypass Java installation in case the
8079 detection fails.</p>
8080 </li>
8081 </ul>
8082 </div>
8083 <div style="page-break-after: always;"></div>
8084 </div>
8085 </div>
8086 <div class="sect2">
8087 <h3 id="_release_notes_for_version_1_4_1">H.32. Release Notes for Version 1.4.1</h3>
8088 <div class="paragraph">
8089 <p>Version 1.4.1 is a minor release. It fixes install issues on
8090 Windows and provides the missing TeleMetrum V2.0 firmware. There
8091 aren&#8217;t any changes to the firmware or host applications at
8092 all. All Windows users will want to upgrade to get the signed
8093 driver, but Mac and Linux users who do not need the TeleMetrum
8094 V2.0 firmware image will not need to upgrade.</p>
8095 </div>
8096 <div class="sect3">
8097 <h4 id="_altosui_and_telegps_applications_12">H.32.1. AltosUI and TeleGPS Applications:</h4>
8098 <div class="paragraph">
8099 <p>Windows Install Fixes</p>
8100 </div>
8101 <div class="ulist">
8102 <ul>
8103 <li>
8104 <p>Provide signed Windows driver files. This should avoid any need to
8105 disable driver signature checking on Windows 7 or 8.</p>
8106 </li>
8107 <li>
8108 <p>Fix Java version detection and download. Previously, the
8109 installer would only look for Java 6 or 7 and insist on
8110 downloading its own Java bits if there was something else
8111 installed. Furthermore, the 64-bit Java link provided didn&#8217;t
8112 work for anyone other than Keith, making it impossible to
8113 install AltOS on any machine with Java SE 8 installed.</p>
8114 </li>
8115 </ul>
8116 </div>
8117 <div class="paragraph">
8118 <p>Other Fixes</p>
8119 </div>
8120 <div class="ulist">
8121 <ul>
8122 <li>
8123 <p>Include 1.4 firmware for TeleMetrum V2.0. None of the
8124 installers shipped this file. Now it&#8217;s included in the AltOS
8125 packages for Linux, Mac and Windows.</p>
8126 </li>
8127 <li>
8128 <p>Include Google Application Key for map downloading. The 1.4
8129 release didn&#8217;t have this key in the released version of the
8130 software, making map downloading fail for most people.</p>
8131 </li>
8132 </ul>
8133 </div>
8134 <div style="page-break-after: always;"></div>
8135 </div>
8136 </div>
8137 <div class="sect2">
8138 <h3 id="_release_notes_for_version_1_4">H.33. Release Notes for Version 1.4</h3>
8139 <div class="paragraph">
8140 <p>Version 1.4 is a major release. It includes support for our new
8141 TeleGPS product, new features and bug fixes in in the flight
8142 software for all our boards and the AltosUI ground station</p>
8143 </div>
8144 <div class="sect3">
8145 <h4 id="_altos_30">H.33.1. AltOS</h4>
8146 <div class="paragraph">
8147 <p>AltOS new features:</p>
8148 </div>
8149 <div class="ulist">
8150 <ul>
8151 <li>
8152 <p>Add support for TeleGPS boards.</p>
8153 </li>
8154 <li>
8155 <p>Make the beeper tone configurable, making it
8156 possible to distinguish between two Altus Metrum
8157 products in the same ebay.</p>
8158 </li>
8159 <li>
8160 <p>Make the firing time for extra pyro channels
8161 configurable, allowing longer (or shorter) than the
8162 default 50ms.  Only relevant for TeleMega at this
8163 time.</p>
8164 </li>
8165 </ul>
8166 </div>
8167 <div class="paragraph">
8168 <p>AltOS fixes:</p>
8169 </div>
8170 <div class="ulist">
8171 <ul>
8172 <li>
8173 <p>Replace the 'dit dit dit' tones at startup with the
8174 current battery voltage, measured in tenths of a
8175 volt. This lets you check the battery voltage
8176 without needing telemetry, which is especially
8177 useful on EasyMini.</p>
8178 </li>
8179 <li>
8180 <p>Change state beeping to "Farnsworth spacing", which
8181 means they&#8217;re quite a bit faster than before, and so
8182 they take less time to send.</p>
8183 </li>
8184 <li>
8185 <p>Fix bug preventing the selection of the 'Flight
8186 State After' mode in pyro configuration.</p>
8187 </li>
8188 <li>
8189 <p>Fix bug where erasing flights would reset the flight
8190 number to 2 on TeleMega and TeleMetrum v2.</p>
8191 </li>
8192 <li>
8193 <p>Fix u-Blox GPS driver to mark course and speed data
8194 as being present.</p>
8195 </li>
8196 </ul>
8197 </div>
8198 </div>
8199 <div class="sect3">
8200 <h4 id="_altosui_application">H.33.2. AltosUI Application</h4>
8201 <div class="paragraph">
8202 <p>AltosUI new features:</p>
8203 </div>
8204 <div class="ulist">
8205 <ul>
8206 <li>
8207 <p>Add zooming and new content types (terrain and road
8208 maps) to map view. Change map storage format from
8209 PNG to Jpeg, which saves a huge amount of disk
8210 space. You will need to re-download all of your
8211 pre-loaded map images.</p>
8212 </li>
8213 <li>
8214 <p>Add a distance measuring device to the maps
8215 view. Select this by using any button other than the
8216 left one, or by pressing shift or control on the
8217 keyboard while using the left button.</p>
8218 </li>
8219 <li>
8220 <p>Add new 'Ignitor' tab to the flight monitor display
8221 for TeleMega&#8217;s extra ignitors.</p>
8222 </li>
8223 <li>
8224 <p>Add additional ignitor firing marks and voltages to
8225 the graph so you can see when the ignitors fired,
8226 along with the ignitor voltages.</p>
8227 </li>
8228 <li>
8229 <p>Add GPS course, ground speed and climb rate as
8230 optional graph elements.</p>
8231 </li>
8232 </ul>
8233 </div>
8234 <div class="paragraph">
8235 <p>AltosUI fixes:</p>
8236 </div>
8237 <div class="ulist">
8238 <ul>
8239 <li>
8240 <p>When flashing new firmware, re-try opening the
8241 device as sometimes it takes a while for the
8242 underlying operating system to recognize that the
8243 device has rebooted in preparation for the flashing
8244 operation.</p>
8245 </li>
8246 <li>
8247 <p>Hide Tilt Angle in ascent tab for devices that don&#8217;t
8248 have a gyro.</p>
8249 </li>
8250 <li>
8251 <p>Increase the width of data lines in the graphs to
8252 make them easier to read.</p>
8253 </li>
8254 <li>
8255 <p>Filter out speed and acceleration spikes caused by
8256 ejection charge firing when computing the maximum
8257 values. This provides a more accurate reading of
8258 those maximums.</p>
8259 </li>
8260 <li>
8261 <p>Fix EasyMini voltage displays. Early EasyMini
8262 prototypes used a 3.0V regulator, and AltosUI still
8263 used that value as the basis of the
8264 computation. Production EasyMini boards have always
8265 shipped with a 3.3V regulator. Also, purple EasyMini
8266 boards sensed the battery voltage past the blocking
8267 diode, resulting in a drop of about 150mV from the
8268 true battery voltage. Compensate for that when
8269 displaying the value.</p>
8270 </li>
8271 <li>
8272 <p>Display error message when trying to configure
8273 maximum flight log size while the flight computer
8274 still has flight data stored.</p>
8275 </li>
8276 <li>
8277 <p>Handle TeleMetrum and TeleMini eeprom files
8278 generated with pre-1.0 firmware. Those ancient
8279 versions didn&#8217;t report the log format, so just use
8280 the product name instead.</p>
8281 </li>
8282 </ul>
8283 </div>
8284 </div>
8285 <div class="sect3">
8286 <h4 id="_telegps_application">H.33.3. TeleGPS Application</h4>
8287 <div class="ulist">
8288 <ul>
8289 <li>
8290 <p>New application designed for use with TeleGPS boards.</p>
8291 </li>
8292 <li>
8293 <p>Shares code with AltosUI, mostly just trimmed down
8294 to focus on TeleGPS-related functions.</p>
8295 </li>
8296 </ul>
8297 </div>
8298 </div>
8299 <div class="sect3">
8300 <h4 id="_documentation_4">H.33.4. Documentation</h4>
8301 <div class="paragraph">
8302 <p>Documentation changes:</p>
8303 </div>
8304 <div class="ulist">
8305 <ul>
8306 <li>
8307 <p>Re-create the drill template images; they should
8308 print correctly from Firefox at least. Ship these as
8309 individual PDF files so they&#8217;re easy to print.</p>
8310 </li>
8311 <li>
8312 <p>Add a description of the 'Apogee Lockout' setting,
8313 which prevents the apogee charge from firing for a
8314 configurable amount of time after boost.</p>
8315 </li>
8316 </ul>
8317 </div>
8318 <div style="page-break-after: always;"></div>
8319 </div>
8320 </div>
8321 <div class="sect2">
8322 <h3 id="_release_notes_for_version_1_3_2">H.34. Release Notes for Version 1.3.2</h3>
8323 <div class="paragraph">
8324 <p>Version 1.3.2 is a minor release. It includes small bug fixes for
8325 the TeleMega flight software and AltosUI ground station</p>
8326 </div>
8327 <div class="sect3">
8328 <h4 id="_altos_31">H.34.1. AltOS</h4>
8329 <div class="paragraph">
8330 <p>AltOS fixes:</p>
8331 </div>
8332 <div class="ulist">
8333 <ul>
8334 <li>
8335 <p>On TeleMega, limit number of logged GPS status
8336 information to 12 satellites. That&#8217;s all there is
8337 room for in the log structure.</p>
8338 </li>
8339 <li>
8340 <p>Improve APRS behavior. Remembers last known GPS
8341 position and keeps sending that if we lose GPS
8342 lock. Marks locked/unlocked by sending L/U in the
8343 APRS comment field along with the number of sats in
8344 view and voltages.</p>
8345 </li>
8346 </ul>
8347 </div>
8348 </div>
8349 <div class="sect3">
8350 <h4 id="_altosui_application_2">H.34.2. AltosUI Application</h4>
8351 <div class="paragraph">
8352 <p>AltosUI fixes:</p>
8353 </div>
8354 <div class="ulist">
8355 <ul>
8356 <li>
8357 <p>If the TeleMega flight firmware reports that it has
8358 logged information about more than 12 satellites,
8359 don&#8217;t believe it as the log only holds 12 satellite
8360 records.</p>
8361 </li>
8362 <li>
8363 <p>Track the maximum height as computed from GPS
8364 altitude data and report that in the flight summary
8365 data.</p>
8366 </li>
8367 <li>
8368 <p>Use letters (A, B, C, D) for alternate pyro channel
8369 names instead of numbers (0, 1, 2, 3) in the Fire
8370 Igniter dialog.</p>
8371 </li>
8372 </ul>
8373 </div>
8374 <div style="page-break-after: always;"></div>
8375 </div>
8376 </div>
8377 <div class="sect2">
8378 <h3 id="_release_notes_for_version_1_3_1">H.35. Release Notes for Version 1.3.1</h3>
8379 <div class="paragraph">
8380 <p>Version 1.3.1 is a minor release. It improves support for
8381 TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8382 </div>
8383 <div class="sect3">
8384 <h4 id="_altos_32">H.35.1. AltOS</h4>
8385 <div class="paragraph">
8386 <p>AltOS new features:</p>
8387 </div>
8388 <div class="ulist">
8389 <ul>
8390 <li>
8391 <p>Improved APRS mode. Now uses compressed position
8392 format for smaller data size, improved precision and
8393 to include altitude data as well as latitude and
8394 longitude. Also added battery and pyro voltage
8395 reports in the APRS comment field so you can confirm
8396 that the unit is ready for launch.</p>
8397 </li>
8398 </ul>
8399 </div>
8400 <div class="paragraph">
8401 <p>AltOS fixes:</p>
8402 </div>
8403 <div class="ulist">
8404 <ul>
8405 <li>
8406 <p>Improve sensor boot code. If sensors fail to
8407 self-test, the device will still boot up and check
8408 for pad/idle modes. If in idle mode, the device will
8409 warn the user with a distinct beep, if in Pad mode,
8410 the unit will operate as best it can. Also, the
8411 Z-axis accelerometer now uses the factory
8412 calibration values instead of re-calibrating on the
8413 pad each time. This avoids accidental boost detect
8414 when moving the device around while in Pad mode.</p>
8415 </li>
8416 <li>
8417 <p>Fix antenna-down mode accelerometer
8418 configuration. Antenna down mode wasn&#8217;t working
8419 because the accelerometer calibration values were
8420 getting re-computed incorrectly in inverted mode.</p>
8421 </li>
8422 </ul>
8423 </div>
8424 </div>
8425 <div class="sect3">
8426 <h4 id="_altosui_application_3">H.35.2. AltosUI Application</h4>
8427 <div class="paragraph">
8428 <p>AltosUI new features:</p>
8429 </div>
8430 <div class="ulist">
8431 <ul>
8432 <li>
8433 <p>Display additional TeleMega sensor values in real
8434 units. Make all of these values available for
8435 plotting. Display TeleMega orientation value in the
8436 Ascent and Table tabs.</p>
8437 </li>
8438 <li>
8439 <p>Support additional TeleMega pyro channels in the
8440 Fire Igniter dialog. This lets you do remote testing
8441 of all of the channels, rather than just Apogee and
8442 Main.</p>
8443 </li>
8444 </ul>
8445 </div>
8446 <div class="paragraph">
8447 <p>AltosUI fixes:</p>
8448 </div>
8449 <div class="ulist">
8450 <ul>
8451 <li>
8452 <p>Limit data rate when downloading satellite images
8453 from Google to make sure we stay within their limits
8454 so that all of the map tiles download successfully.</p>
8455 </li>
8456 </ul>
8457 </div>
8458 <div style="page-break-after: always;"></div>
8459 </div>
8460 </div>
8461 <div class="sect2">
8462 <h3 id="_release_notes_for_version_1_3">H.36. Release Notes for Version 1.3</h3>
8463 <div class="paragraph">
8464 <p>Version 1.3 is a major release. It adds support for TeleMega,
8465 TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8466 </div>
8467 <div class="sect3">
8468 <h4 id="_altos_33">H.36.1. AltOS</h4>
8469 <div class="paragraph">
8470 <p>AltOS new features:</p>
8471 </div>
8472 <div class="ulist">
8473 <ul>
8474 <li>
8475 <p>Add STM32L processor support. This includes
8476 enhancements to the scheduler to support products
8477 with many threads.</p>
8478 </li>
8479 <li>
8480 <p>Add NXP LPC11U14 processor support.</p>
8481 </li>
8482 <li>
8483 <p>Support additional pyro channels. These are
8484 configurable through the UI to handle air starts,
8485 staging, additional recovery events and external
8486 devices such as cameras.</p>
8487 </li>
8488 <li>
8489 <p>Add 3-axis gyro support for orientation
8490 tracking. This integrates the gyros to compute the
8491 angle from vertical during flight, allowing the
8492 additional pyro events to be controlled by this
8493 value.</p>
8494 </li>
8495 <li>
8496 <p>Many more device drivers, including u-Blox Max 7Q
8497 GPS, Freescale MMA6555 digital single-axis
8498 accelerometer, Invensense MPU6000 3-axis
8499 accelerometer + 3 axis gyro, Honeywell HMC5883
8500 3-axis magnetic sensor and the TI CC1120 and CC115L
8501 digital FM transceivers</p>
8502 </li>
8503 </ul>
8504 </div>
8505 </div>
8506 <div class="sect3">
8507 <h4 id="_altosui_application_4">H.36.2. AltosUI Application</h4>
8508 <div class="paragraph">
8509 <p>AltosUI new features:</p>
8510 </div>
8511 <div class="ulist">
8512 <ul>
8513 <li>
8514 <p>Support TeleMega, TeleMetrum v2.0, TeleMini v2.0 and
8515 EasyMini telemetry and log formats.</p>
8516 </li>
8517 </ul>
8518 </div>
8519 <div class="paragraph">
8520 <p>AltosUI fixes:</p>
8521 </div>
8522 <div class="ulist">
8523 <ul>
8524 <li>
8525 <p>Use preferred units for main deployment height
8526 configuration, instead of always doing configuration in
8527 meters.
8528 == MicroPeak Application</p>
8529 </li>
8530 <li>
8531 <p>Add 'Download' button to menu bar.</p>
8532 </li>
8533 <li>
8534 <p>Save the last log directory and offer that as the
8535 default for new downloads</p>
8536 </li>
8537 </ul>
8538 </div>
8539 <div style="page-break-after: always;"></div>
8540 </div>
8541 </div>
8542 <div class="sect2">
8543 <h3 id="_release_notes_for_version_1_2_1">H.37. Release Notes for Version 1.2.1</h3>
8544 <div class="paragraph">
8545 <p>Version 1.2.1 is a minor release. It adds support for TeleBT and
8546 the AltosDroid application, provides several new features in
8547 AltosUI and fixes some bugs in the AltOS firmware.</p>
8548 </div>
8549 <div class="sect3">
8550 <h4 id="_altos_34">H.37.1. AltOS</h4>
8551 <div class="paragraph">
8552 <p>AltOS new features:</p>
8553 </div>
8554 <div class="ulist">
8555 <ul>
8556 <li>
8557 <p>Add support for TeleBT</p>
8558 </li>
8559 </ul>
8560 </div>
8561 <div class="paragraph">
8562 <p>AltOS fixes:</p>
8563 </div>
8564 <div class="ulist">
8565 <ul>
8566 <li>
8567 <p>In TeleMini recovery mode (when booted with the
8568 outer two debug pins connected together), the radio
8569 parameters are also set back to defaults
8570 (434.550MHz, N0CALL, factory radio cal).</p>
8571 </li>
8572 <li>
8573 <p>Correct Kalman filter model error covariance
8574 matrix. The values used previously assumed
8575 continuous measurements instead of discrete
8576 measurements.</p>
8577 </li>
8578 <li>
8579 <p>Fix some bugs in the USB driver for TeleMetrum and
8580 TeleDongle that affected Windows users.</p>
8581 </li>
8582 <li>
8583 <p>Adjusted the automatic gain control parameters that
8584 affect receive performance for TeleDongle. Field
8585 tests indicate that this may improve receive
8586 performance somewhat.</p>
8587 </li>
8588 </ul>
8589 </div>
8590 </div>
8591 <div class="sect3">
8592 <h4 id="_altosui_application_5">H.37.2. AltosUI Application</h4>
8593 <div class="paragraph">
8594 <p>AltosUI application new features:</p>
8595 </div>
8596 <div class="ulist">
8597 <ul>
8598 <li>
8599 <p>Make the initial position of the AltosUI top level
8600 window configurable. Along with this change, the
8601 other windows will pop up at 'sensible' places now,
8602 instead of on top of one another.</p>
8603 </li>
8604 <li>
8605 <p>Add GPS data and a map to the graph window. This
8606 lets you see a complete summary of the flight
8607 without needing to 'replay' the whole thing.</p>
8608 </li>
8609 </ul>
8610 </div>
8611 <div class="paragraph">
8612 <p>AltosUI application fixes:</p>
8613 </div>
8614 <div class="ulist">
8615 <ul>
8616 <li>
8617 <p>Handle missing GPS lock in 'Descent'
8618 tab. Previously, if the GPS position of the pad was
8619 unknown, an exception would be raised, breaking the
8620 Descent tab contents.</p>
8621 </li>
8622 <li>
8623 <p>Improve the graph, adding tool-tips to show values
8624 near the cursor and making the displayed set of
8625 values configurable, adding all of the flight data
8626 as options while leaving the default settings alone
8627 so that the graph starts by showing height, speed
8628 and acceleration.</p>
8629 </li>
8630 <li>
8631 <p>Add callsign to Monitor idle window and connecting
8632 dialogs. This makes it clear which callsign is being
8633 used so that the operator will be aware that it must
8634 match the flight computer value or no communication
8635 will work.</p>
8636 </li>
8637 <li>
8638 <p>When downloading flight data, display the block
8639 number so that the user has some sense of
8640 progress. Unfortunately, we don&#8217;t know how many
8641 blocks will need to be downloaded, but at least it
8642 isn&#8217;t just sitting there doing nothing for a long
8643 time.</p>
8644 </li>
8645 </ul>
8646 </div>
8647 </div>
8648 <div class="sect3">
8649 <h4 id="_altosdroid_9">H.37.3. AltosDroid</h4>
8650 <div class="ulist">
8651 <ul>
8652 <li>
8653 <p>First version of this application</p>
8654 </li>
8655 </ul>
8656 </div>
8657 <div style="page-break-after: always;"></div>
8658 </div>
8659 </div>
8660 <div class="sect2">
8661 <h3 id="_release_notes_for_version_1_2">H.38. Release Notes for Version 1.2</h3>
8662 <div class="paragraph">
8663 <p>Version 1.2 is a major release. It adds support for MicroPeak
8664 and the MicroPeak USB adapter.</p>
8665 </div>
8666 <div class="sect3">
8667 <h4 id="_altos_35">H.38.1. AltOS</h4>
8668 <div class="paragraph">
8669 <p>AltOS New Features:</p>
8670 </div>
8671 <div class="ulist">
8672 <ul>
8673 <li>
8674 <p>Add MicroPeak support. This includes support for the
8675 ATtiny85 processor and adaptations to the core code
8676 to allow for devices too small to run the
8677 multi-tasking scheduler.</p>
8678 </li>
8679 </ul>
8680 </div>
8681 </div>
8682 <div class="sect3">
8683 <h4 id="_altosui_and_micropeak_application">H.38.2. AltosUI and MicroPeak Application</h4>
8684 <div class="paragraph">
8685 <p>New Features:</p>
8686 </div>
8687 <div class="ulist">
8688 <ul>
8689 <li>
8690 <p>Added MicroPeak application</p>
8691 </li>
8692 </ul>
8693 </div>
8694 <div class="paragraph">
8695 <p>AltosUI and MicroPeak fixes:</p>
8696 </div>
8697 <div class="ulist">
8698 <ul>
8699 <li>
8700 <p>Distribute Mac OS X packages in disk image ('.dmg')
8701 format to greatly simplify installation.</p>
8702 </li>
8703 <li>
8704 <p>Provide version numbers for the shared Java
8705 libraries to ensure that upgrades work properly, and
8706 to allow for multiple Altus Metrum software packages
8707 to be installed in the same directory at the same
8708 time.</p>
8709 </li>
8710 </ul>
8711 </div>
8712 <div style="page-break-after: always;"></div>
8713 </div>
8714 </div>
8715 <div class="sect2">
8716 <h3 id="_release_notes_for_version_1_1">H.39. Release Notes for Version 1.1</h3>
8717 <div class="paragraph">
8718 <p>Version 1.1.1 is a bug-fix release. It fixes a couple of bugs
8719 in AltosUI and one firmware bug that affects TeleMetrum
8720 version 1.0 boards. Thanks to Bob Brown for help diagnosing
8721 the Google Earth file export issue, and for suggesting the
8722 addition of the Ground Distance value in the Descent tab.</p>
8723 </div>
8724 <div class="sect3">
8725 <h4 id="_altos_36">H.39.1. AltOS</h4>
8726 <div class="paragraph">
8727 <p>AltOS fixes:</p>
8728 </div>
8729 <div class="ulist">
8730 <ul>
8731 <li>
8732 <p>TeleMetrum v1.0 boards use the AT45DB081D flash
8733 memory part to store flight data, which is different
8734 from later TeleMetrum boards. The AltOS v1.1 driver
8735 for this chip couldn&#8217;t erase memory, leaving it
8736 impossible to delete flight data or update
8737 configuration values. This bug doesn&#8217;t affect newer
8738 TeleMetrum boards, and it doesn&#8217;t affect the safety
8739 of rockets flying version 1.1 firmware.</p>
8740 </li>
8741 </ul>
8742 </div>
8743 </div>
8744 <div class="sect3">
8745 <h4 id="_altosui_10">H.39.2. AltosUI</h4>
8746 <div class="paragraph">
8747 <p>AltosUI new features:</p>
8748 </div>
8749 <div class="ulist">
8750 <ul>
8751 <li>
8752 <p>The “Descent” tab displays the range to the rocket,
8753 which is a combination of the over-the-ground
8754 distance to the rockets current latitude/longitude
8755 and the height of the rocket. As such, it&#8217;s useful
8756 for knowing how far away the rocket is, but
8757 difficult to use when estimating where the rocket
8758 might eventually land. A new “Ground Distance” field
8759 has been added which displays the distance to a spot
8760 right underneath the rocket.</p>
8761 </li>
8762 </ul>
8763 </div>
8764 <div class="paragraph">
8765 <p>AltosUI fixes:</p>
8766 </div>
8767 <div class="ulist">
8768 <ul>
8769 <li>
8770 <p>Creating a Google Earth file (KML) from on-board
8771 flight data (EEPROM) would generate an empty
8772 file. The code responsible for reading the EEPROM
8773 file wasn&#8217;t ever setting the GPS valid bits, and so
8774 the KML export code thought there was no GPS data in
8775 the file.</p>
8776 </li>
8777 <li>
8778 <p>The “Landed” tab was displaying all values in metric
8779 units, even when AltosUI was configured to display
8780 imperial units. Somehow I just missed this tab when
8781 doing the units stuff.</p>
8782 </li>
8783 <li>
8784 <p>Sensor data wasn&#8217;t being displayed for TeleMini
8785 flight computers in Monitor Idle mode, including
8786 things like battery voltage. The code that picked
8787 which kinds of data to fetch from the flight
8788 computer was missing a check for TeleMini when
8789 deciding whether to fetch the analog sensor data.</p>
8790 </li>
8791 </ul>
8792 </div>
8793 <div style="page-break-after: always;"></div>
8794 </div>
8795 </div>
8796 <div class="sect2">
8797 <h3 id="_release_notes_for_version_1_1_2">H.40. Release Notes for Version 1.1</h3>
8798 <div class="paragraph">
8799 <p>Version 1.1 is a minor release. It provides a few new features
8800 in AltosUI and the AltOS firmware and fixes bugs.</p>
8801 </div>
8802 <div class="sect3">
8803 <h4 id="_altos_37">H.40.1. AltOS</h4>
8804 <div class="paragraph">
8805 <p>AltOS Firmware New Features:</p>
8806 </div>
8807 <div class="ulist">
8808 <ul>
8809 <li>
8810 <p>Add apogee-lockout value. Overrides the apogee
8811 detection logic to prevent incorrect apogee charge
8812 firing.</p>
8813 </li>
8814 <li>
8815 <p>Force the radio frequency to 434.550MHz when the
8816 debug clock pin is connected to ground at boot
8817 time. This provides a way to talk to a TeleMini
8818 which is configured to some unknown frequency.</p>
8819 </li>
8820 <li>
8821 <p>Provide RSSI values for Monitor Idle mode. This
8822 makes it easy to check radio range without needing
8823 to go to flight mode.</p>
8824 </li>
8825 </ul>
8826 </div>
8827 <div class="paragraph">
8828 <p>AltOS Fixes:</p>
8829 </div>
8830 <div class="ulist">
8831 <ul>
8832 <li>
8833 <p>Fix a bug where the data reported in telemetry
8834 packets was from 320ms ago.</p>
8835 </li>
8836 <li>
8837 <p>Fix a bug which caused the old received telemetry
8838 packets to be retransmitted over the USB link when
8839 the radio was turned off and back on.</p>
8840 </li>
8841 </ul>
8842 </div>
8843 </div>
8844 <div class="sect3">
8845 <h4 id="_altosui_11">H.40.2. AltosUI</h4>
8846 <div class="paragraph">
8847 <p>AltosUI New Features:</p>
8848 </div>
8849 <div class="ulist">
8850 <ul>
8851 <li>
8852 <p>Make the look-n-feel configurable, providing a choice from
8853 the available options.</p>
8854 </li>
8855 <li>
8856 <p>Add an 'Age' element to mark how long since a
8857 telemetry packet has been received. Useful to
8858 quickly gauge whether communications with the rocket
8859 are still active.</p>
8860 </li>
8861 <li>
8862 <p>Add 'Configure Ground Station' dialog to set the
8863 radio frequency used by a particular TeleDongle
8864 without having to go through the flight monitor UI.</p>
8865 </li>
8866 <li>
8867 <p>Add configuration for the new apogee-lockout
8868 value. A menu provides a list of reasonable values,
8869 or the value can be set by hand.</p>
8870 </li>
8871 <li>
8872 <p>Add Imperial units mode to present data in feet
8873 instead of meters.</p>
8874 </li>
8875 </ul>
8876 </div>
8877 <div class="paragraph">
8878 <p>AltosUI Fixes:</p>
8879 </div>
8880 <div class="ulist">
8881 <ul>
8882 <li>
8883 <p>Fix a bug that caused GPS ready to happen too
8884 quickly. The software was using every telemetry
8885 packet to signal new GPS data, which caused GPS
8886 ready to be signalled after 10 packets instead of 10
8887 GPS updates.</p>
8888 </li>
8889 <li>
8890 <p>Fix Google Earth data export to work with recent
8891 versions. The google earth file loading code got a
8892 lot pickier, requiring some minor white space
8893 changes in the export code.</p>
8894 </li>
8895 <li>
8896 <p>Changed how flight data are downloaded. Now there&#8217;s
8897 an initial dialog asking which flights to download,
8898 and after that finishes, a second dialog comes up
8899 asking which flights to delete.</p>
8900 </li>
8901 <li>
8902 <p>Re-compute time spent in each state for the flight
8903 graph; this figures out the actual boost and landing
8904 times instead of using the conservative values
8905 provide by the flight electronics. This improves the
8906 accuracy of the boost acceleration and main descent
8907 rate computations.</p>
8908 </li>
8909 <li>
8910 <p>Make AltosUI run on Mac OS Lion. The default Java
8911 heap space was dramatically reduced for this release
8912 causing much of the UI to fail randomly. This most
8913 often affected the satellite mapping download and
8914 displays.</p>
8915 </li>
8916 <li>
8917 <p>Change how data are displayed in the 'table' tab of
8918 the flight monitoring window. This eliminates
8919 entries duplicated from the header and adds both
8920 current altitude and pad altitude, which are useful
8921 in 'Monitor Idle' mode.</p>
8922 </li>
8923 </ul>
8924 </div>
8925 <div style="page-break-after: always;"></div>
8926 </div>
8927 </div>
8928 <div class="sect2">
8929 <h3 id="_release_notes_for_version_1_0_1">H.41. Release Notes for Version 1.0.1</h3>
8930 <div class="paragraph">
8931 <p>Version 1.0.1 is a major release, adding support for the
8932 TeleMini device and lots of new AltosUI features</p>
8933 </div>
8934 <div class="sect3">
8935 <h4 id="_altos_38">H.41.1. AltOS</h4>
8936 <div class="paragraph">
8937 <p>AltOS New Features</p>
8938 </div>
8939 <div class="ulist">
8940 <ul>
8941 <li>
8942 <p>Add TeleMini v1.0 support.</p>
8943 </li>
8944 <li>
8945 <p>Support operation of TeleMetrum with the antenna pointing
8946 aft. Previous firmware versions required the antenna to be
8947 pointing upwards, now there is a configuration option
8948 allowing the antenna to point aft, to aid installation in
8949 some airframes.</p>
8950 </li>
8951 <li>
8952 <p>Ability to disable telemetry. For airframes where an antenna
8953 just isn&#8217;t possible, or where radio transmissions might
8954 cause trouble with other electronics, there&#8217;s a
8955 configuration option to disable all telemetry. Note that the
8956 board will still enable the radio link in idle mode.</p>
8957 </li>
8958 <li>
8959 <p>Arbitrary frequency selection. The radios in Altus Metrum
8960 devices can be programmed to a wide range of frequencies, so
8961 instead of limiting devices to 10 pre-selected 'channels',
8962 the new firmware allows the user to choose any frequency in
8963 the 70cm band. Note that the RF matching circuit on the
8964 boards is tuned for around 435MHz, so frequencies far from
8965 that may reduce the available range.</p>
8966 </li>
8967 </ul>
8968 </div>
8969 <div class="paragraph">
8970 <p>AltOS Fixes</p>
8971 </div>
8972 <div class="ulist">
8973 <ul>
8974 <li>
8975 <p>Change telemetry to be encoded in multiple 32-byte
8976 packets. This enables support for TeleMini and other devices
8977 without requiring further updates to the TeleDongle
8978 firmware.</p>
8979 </li>
8980 <li>
8981 <p>Kalman-filter based flight-tracking. The model based sensor
8982 fusion approach of a Kalman filter means that AltOS now
8983 computes apogee much more accurately than before, generally
8984 within a fraction of a second. In addition, this approach
8985 allows the baro-only TeleMini device to correctly identify
8986 Mach transitions, avoiding the error-prone selection of a
8987 Mach delay.</p>
8988 </li>
8989 </ul>
8990 </div>
8991 </div>
8992 <div class="sect3">
8993 <h4 id="_altosui_application_6">H.41.2. AltosUI Application</h4>
8994 <div class="paragraph">
8995 <p>AltosUI New Features</p>
8996 </div>
8997 <div class="ulist">
8998 <ul>
8999 <li>
9000 <p>Add main/apogee voltage graphs to the data
9001 plot. This provides a visual indication if the
9002 igniters fail before being fired.</p>
9003 </li>
9004 <li>
9005 <p>Scan for altimeter devices by watching the defined
9006 telemetry frequencies. This avoids the problem of
9007 remembering what frequency a device was configured
9008 to use, which is especially important with TeleMini
9009 which does not include a USB connection.</p>
9010 </li>
9011 <li>
9012 <p>Monitor altimeter state in "Idle" mode. This
9013 provides much of the information presented in the
9014 "Pad" dialog from the Monitor Flight command,
9015 monitoring the igniters, battery and GPS status
9016 withing requiring the flight computer to be armed
9017 and ready for flight.</p>
9018 </li>
9019 <li>
9020 <p>Pre-load map images from home. For those launch
9021 sites which don&#8217;t provide free Wi-Fi, this allows
9022 you to download the necessary satellite images
9023 given the location of the launch site. A list of
9024 known launch sites is maintained at altusmetrum.org
9025 which AltosUI downloads to populate a menu; if
9026 you&#8217;ve got a launch site not on that list, please
9027 send the name of it, latitude and longitude along
9028 with a link to the web site of the controlling club
9029 to the altusmetrum mailing list.</p>
9030 </li>
9031 <li>
9032 <p>Flight statistics are now displayed in the Graph
9033 data window. These include max height/speed/accel,
9034 average descent rates and a few other bits of
9035 information. The Graph Data window can now be
9036 reached from the 'Landed' tab in the Monitor Flight
9037 window so you can immediately see the results of a
9038 flight.</p>
9039 </li>
9040 </ul>
9041 </div>
9042 <div class="paragraph">
9043 <p>AltosUI Changes</p>
9044 </div>
9045 <div class="ulist">
9046 <ul>
9047 <li>
9048 <p>Wait for altimeter when using packet mode. Instead
9049 of quicly timing out when trying to initialize a
9050 packet mode configuration connection, AltosUI now
9051 waits indefinitely for the remote device to appear,
9052 providing a cancel button should the user get
9053 bored. This is necessary as the TeleMini can only be
9054 placed in "Idle" mode if AltosUI is polling it.</p>
9055 </li>
9056 </ul>
9057 </div>
9058 <div style="page-break-after: always;"></div>
9059 </div>
9060 </div>
9061 <div class="sect2">
9062 <h3 id="_release_notes_for_version_0_9_2">H.42. Release Notes for Version 0.9.2</h3>
9063 <div class="paragraph">
9064 <p>Version 0.9.2 is an AltosUI bug-fix release, with no firmware
9065 changes.</p>
9066 </div>
9067 <div class="sect3">
9068 <h4 id="_altosui_12">H.42.1. AltosUI</h4>
9069 <div class="paragraph">
9070 <p>AltosUI fixes:</p>
9071 </div>
9072 <div class="ulist">
9073 <ul>
9074 <li>
9075 <p>Fix plotting problems due to missing file in the Mac
9076 OS install image.</p>
9077 </li>
9078 <li>
9079 <p>Always read whole eeprom blocks, mark empty records
9080 invalid, display parsing errors to user.</p>
9081 </li>
9082 <li>
9083 <p>Add software version to Configure AltosUI dialog</p>
9084 </li>
9085 </ul>
9086 </div>
9087 <div style="page-break-after: always;"></div>
9088 </div>
9089 </div>
9090 <div class="sect2">
9091 <h3 id="_release_notes_for_version_0_9">H.43. Release Notes for Version 0.9</h3>
9092 <div class="paragraph">
9093 <p>Version 0.9 adds a few new firmware features and accompanying
9094 AltosUI changes, along with new hardware support.</p>
9095 </div>
9096 <div class="sect3">
9097 <h4 id="_altos_39">H.43.1. AltOS</h4>
9098 <div class="ulist">
9099 <ul>
9100 <li>
9101 <p>Support for TeleMetrum v1.1 hardware. Sources for the flash
9102 memory part used in v1.0 dried up, so v1.1 uses a different
9103 part which required a new driver and support for explicit
9104 flight log erasing.</p>
9105 </li>
9106 <li>
9107 <p>Multiple flight log support. This stores more than one
9108 flight log in the on-board flash memory. It also requires
9109 the user to explicitly erase flights so that you won&#8217;t lose
9110 flight logs just because you fly the same board twice in one
9111 day.</p>
9112 </li>
9113 <li>
9114 <p>Telemetry support for devices with serial number &gt;= 256.
9115 Previous versions used a telemetry packet format that
9116 provided only 8 bits for the device serial number. This
9117 change requires that both ends of the telemetry link be
9118 running the 0.9 firmware or they will not communicate.</p>
9119 </li>
9120 </ul>
9121 </div>
9122 </div>
9123 <div class="sect3">
9124 <h4 id="_altosui_application_7">H.43.2. AltosUI Application</h4>
9125 <div class="ulist">
9126 <ul>
9127 <li>
9128 <p>Support for telemetry format changes.</p>
9129 </li>
9130 <li>
9131 <p>Support for multiple flight logs.</p>
9132 </li>
9133 </ul>
9134 </div>
9135 <div style="page-break-after: always;"></div>
9136 </div>
9137 </div>
9138 <div class="sect2">
9139 <h3 id="_release_notes_for_version_0_8">H.44. Release Notes for Version 0.8</h3>
9140 <div class="paragraph">
9141 <p>Version 0.8 offers a major upgrade in the AltosUI
9142 interface.</p>
9143 </div>
9144 <div class="sect3">
9145 <h4 id="_altosui_application_8">H.44.1. AltosUI Application:</h4>
9146 <div class="ulist">
9147 <ul>
9148 <li>
9149 <p>Post-flight graphing tool. This lets you explore the
9150 behaviour of your rocket after flight with a scroll-able and
9151 zoom-able chart showing the altitude, speed and acceleration
9152 of the airframe along with events recorded by the flight
9153 computer. You can export graphs to PNG files, or print them
9154 directly.</p>
9155 </li>
9156 <li>
9157 <p>Real-time moving map which overlays the in-progress flight
9158 on satellite imagery fetched from Google Maps. This lets you
9159 see in pictures where your rocket has landed, allowing you
9160 to plan recovery activities more accurately.</p>
9161 </li>
9162 <li>
9163 <p>Wireless recovery system testing. Prep your rocket for
9164 flight and test fire the deployment charges to make sure
9165 things work as expected. All without threading wires through
9166 holes in your airframe.</p>
9167 </li>
9168 <li>
9169 <p>Optimized flight status displays. Each flight state now has
9170 it&#8217;s own custom 'tab' in the flight monitoring window so you
9171 can focus on the most important details. Pre-flight, the
9172 system shows a set of red/green status indicators for
9173 battery voltage, apogee/main igniter continutity and GPS
9174 reception. Wait until they&#8217;re all green and your rocket is
9175 ready for flight. There are also tabs for ascent, descent
9176 and landing along with the original tabular view of the
9177 data.</p>
9178 </li>
9179 <li>
9180 <p>Monitor multiple flights simultaneously. If you have more
9181 than one TeleDongle, you can monitor a flight with each one
9182 on the same computer.</p>
9183 </li>
9184 <li>
9185 <p>Automatic flight monitoring at startup. Plug TeleDongle into
9186 the machine before starting AltosUI and it will
9187 automatically connect to it and prepare to monitor a flight.</p>
9188 </li>
9189 <li>
9190 <p>Exports Google Earth flight tracks. Using the Keyhole Markup
9191 Language (.kml) file format, this provides a 3D view of your
9192 rocket flight through the Google Earth program.</p>
9193 </li>
9194 </ul>
9195 </div>
9196 <div style="page-break-after: always;"></div>
9197 </div>
9198 </div>
9199 <div class="sect2">
9200 <h3 id="_release_notes_for_version_0_7_1">H.45. Release Notes for Version 0.7.1</h3>
9201 <div class="paragraph">
9202 <p>Version 0.7.1 is the first release containing our new
9203 cross-platform Java-based user interface.</p>
9204 </div>
9205 <div class="sect3">
9206 <h4 id="_altosui_application_9">H.45.1. AltosUI Application</h4>
9207 <div class="ulist">
9208 <ul>
9209 <li>
9210 <p>Receive and log telemetry from a connected TeleDongle
9211 device. All data received is saved to log files named with
9212 the current date and the connected rocket serial and flight
9213 numbers. There is no mode in which telemetry data will not
9214 be saved.</p>
9215 </li>
9216 <li>
9217 <p>Download logged data from TeleMetrum devices, either through
9218 a direct USB connection or over the air through a TeleDongle
9219 device.</p>
9220 </li>
9221 <li>
9222 <p>Configure a TeleMetrum device, setting the radio channel,
9223 callsign, apogee delay and main deploy height. This can be
9224 done through either a USB connection or over a radio link
9225 via a TeleDongle device.</p>
9226 </li>
9227 <li>
9228 <p>Replay a flight in real-time. This takes a saved telemetry
9229 log or eeprom download and replays it through the user
9230 interface so you can relive your favorite rocket flights.</p>
9231 </li>
9232 <li>
9233 <p>Reprogram Altus Metrum devices. Using an Altus Metrum device
9234 connected via USB, another Altus Metrum device can be
9235 reprogrammed using the supplied programming cable between
9236 the two devices.</p>
9237 </li>
9238 <li>
9239 <p>Export Flight data to a comma-separated-values file. This
9240 takes either telemetry or on-board flight data and generates
9241 data suitable for use in external applications. All data is
9242 exported using standard units so that no device-specific
9243 knowledge is needed to handle the data.</p>
9244 </li>
9245 <li>
9246 <p>Speak to you during the flight. Instead of spending the
9247 flight hunched over your laptop looking at the screen, enjoy
9248 the view while the computer tells you what’s going on up
9249 there. During ascent, you hear the current flight state and
9250 altitude information. During descent, you get azimuth,
9251 elevation and range information to try and help you find
9252 your rocket in the air. Once on the ground, the direction
9253 and distance are reported.</p>
9254 </li>
9255 </ul>
9256 </div>
9257 </div>
9258 </div>
9259 </div>
9260 </div>
9261 </div>
9262 <div id="footer">
9263 <div id="footer-text">
9264 Version v1.9.12<br>
9265 Last updated 2022-10-28 23:33:06 -0600
9266 </div>
9267 </div>
9268 </body>
9269 </html>