0ecf4c69a9579d2bd2cfa3e16d3c9c7a503bf6a9
[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.18">
8 <meta name="author" content="Keith Packard, Bdale Garbee, Bob Finch, Anthony Towns">
9 <meta name="copyright" content="Bdale Garbee and Keith Packard 2023">
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.14,</span>
24 <span id="revdate">02 Feb 2023</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_14">H.1. Release Notes for Version 1.9.14</a></li>
188 <li><a href="#_release_notes_for_version_1_9_13">H.2. Release Notes for Version 1.9.13</a></li>
189 <li><a href="#_release_notes_for_version_1_9_12">H.3. Release Notes for Version 1.9.12</a></li>
190 <li><a href="#_release_notes_for_version_1_9_11">H.4. Release Notes for Version 1.9.11</a></li>
191 <li><a href="#_release_notes_for_version_1_9_10">H.5. Release Notes for Version 1.9.10</a></li>
192 <li><a href="#_release_notes_for_version_1_9_9">H.6. Release Notes for Version 1.9.9</a></li>
193 <li><a href="#_release_notes_for_version_1_9_8">H.7. Release Notes for Version 1.9.8</a></li>
194 <li><a href="#_release_notes_for_version_1_9_7">H.8. Release Notes for Version 1.9.7</a></li>
195 <li><a href="#_release_notes_for_version_1_9_6">H.9. Release Notes for Version 1.9.6</a></li>
196 <li><a href="#_release_notes_for_version_1_9_5">H.10. Release Notes for Version 1.9.5</a></li>
197 <li><a href="#_release_notes_for_version_1_9_4">H.11. Release Notes for Version 1.9.4</a></li>
198 <li><a href="#_release_notes_for_version_1_9_3">H.12. Release Notes for Version 1.9.3</a></li>
199 <li><a href="#_release_notes_for_version_1_9_2">H.13. Release Notes for Version 1.9.2</a></li>
200 <li><a href="#_release_notes_for_version_1_9_1">H.14. Release Notes for Version 1.9.1</a></li>
201 <li><a href="#_release_notes_for_version_1_9">H.15. Release Notes for Version 1.9</a></li>
202 <li><a href="#_release_notes_for_version_1_8_7">H.16. Release Notes for Version 1.8.7</a></li>
203 <li><a href="#_release_notes_for_version_1_8_6">H.17. Release Notes for Version 1.8.6</a></li>
204 <li><a href="#_release_notes_for_version_1_8_5">H.18. Release Notes for Version 1.8.5</a></li>
205 <li><a href="#_release_notes_for_version_1_8_4">H.19. Release Notes for Version 1.8.4</a></li>
206 <li><a href="#_release_notes_for_version_1_8_3">H.20. Release Notes for Version 1.8.3</a></li>
207 <li><a href="#_release_notes_for_version_1_8_2">H.21. Release Notes for Version 1.8.2</a></li>
208 <li><a href="#_release_notes_for_version_1_8_1">H.22. Release Notes for Version 1.8.1</a></li>
209 <li><a href="#_release_notes_for_version_1_8">H.23. Release Notes for Version 1.8</a></li>
210 <li><a href="#_release_notes_for_version_1_7">H.24. Release Notes for Version 1.7</a></li>
211 <li><a href="#_release_notes_for_version_1_6_8">H.25. Release Notes for Version 1.6.8</a></li>
212 <li><a href="#_release_notes_for_version_1_6_5">H.26. Release Notes for Version 1.6.5</a></li>
213 <li><a href="#_release_notes_for_version_1_6_4">H.27. Release Notes for Version 1.6.4</a></li>
214 <li><a href="#_release_notes_for_version_1_6_3">H.28. Release Notes for Version 1.6.3</a></li>
215 <li><a href="#_release_notes_for_version_1_6_2">H.29. Release Notes for Version 1.6.2</a></li>
216 <li><a href="#_release_notes_for_version_1_6_1">H.30. Release Notes for Version 1.6.1</a></li>
217 <li><a href="#_release_notes_for_version_1_6">H.31. Release Notes for Version 1.6</a></li>
218 <li><a href="#_release_notes_for_version_1_5">H.32. Release Notes for Version 1.5</a></li>
219 <li><a href="#_release_notes_for_version_1_4_2">H.33. Release Notes for Version 1.4.2</a></li>
220 <li><a href="#_release_notes_for_version_1_4_1">H.34. Release Notes for Version 1.4.1</a></li>
221 <li><a href="#_release_notes_for_version_1_4">H.35. Release Notes for Version 1.4</a></li>
222 <li><a href="#_release_notes_for_version_1_3_2">H.36. Release Notes for Version 1.3.2</a></li>
223 <li><a href="#_release_notes_for_version_1_3_1">H.37. Release Notes for Version 1.3.1</a></li>
224 <li><a href="#_release_notes_for_version_1_3">H.38. Release Notes for Version 1.3</a></li>
225 <li><a href="#_release_notes_for_version_1_2_1">H.39. Release Notes for Version 1.2.1</a></li>
226 <li><a href="#_release_notes_for_version_1_2">H.40. Release Notes for Version 1.2</a></li>
227 <li><a href="#_release_notes_for_version_1_1">H.41. Release Notes for Version 1.1</a></li>
228 <li><a href="#_release_notes_for_version_1_1_2">H.42. Release Notes for Version 1.1</a></li>
229 <li><a href="#_release_notes_for_version_1_0_1">H.43. Release Notes for Version 1.0.1</a></li>
230 <li><a href="#_release_notes_for_version_0_9_2">H.44. Release Notes for Version 0.9.2</a></li>
231 <li><a href="#_release_notes_for_version_0_9">H.45. Release Notes for Version 0.9</a></li>
232 <li><a href="#_release_notes_for_version_0_8">H.46. Release Notes for Version 0.8</a></li>
233 <li><a href="#_release_notes_for_version_0_7_1">H.47. Release Notes for Version 0.7.1</a></li>
234 </ul>
235 </li>
236 </ul>
237 </div>
238 </div>
239 <div id="content">
240 <div id="preamble">
241 <div class="sectionbody">
242 <div id="logo" class="imageblock">
243 <div class="content">
244 <a class="image" href="https://altusmetrum.org"><img src="altusmetrum-oneline.svg" alt="Altus Metrum"></a>
245 </div>
246 </div>
247 </div>
248 </div>
249 <div class="sect1">
250 <h2 id="_license">License</h2>
251 <div class="sectionbody">
252 <div class="paragraph">
253 <p>Copyright © 2023 Bdale Garbee and Keith Packard</p>
254 </div>
255 <div class="paragraph">
256 <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>
257 </div>
258 </div>
259 </div>
260 <div class="sect1">
261 <h2 id="_acknowledgments">Acknowledgments</h2>
262 <div class="sectionbody">
263 <div class="paragraph">
264 <p>Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing “The
265 Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
266 Kit” which formed the basis of the original Getting Started chapter
267 in this manual.  Bob was one of our first customers for a production
268 TeleMetrum, and his continued enthusiasm and contributions
269 are immensely gratifying and highly appreciated!</p>
270 </div>
271 <div class="paragraph">
272 <p>And thanks to Anthony (AJ) Towns for major contributions including
273 the AltosUI graphing and site map code and associated documentation.
274 Free software means that our customers and friends can become our
275 collaborators, and we certainly appreciate this level of
276 contribution!</p>
277 </div>
278 <div class="paragraph">
279 <p>Have fun using these products, and we hope to meet all of you
280 out on the rocket flight line somewhere.</p>
281 </div>
282 <div class="verseblock">
283 <pre class="content">Bdale Garbee, KB0G
284 NAR #87103, TRA #12201</pre>
285 </div>
286 <div class="verseblock">
287 <pre class="content">Keith Packard, K7WQ
288 NAR #88757, TRA #12200</pre>
289 </div>
290 </div>
291 </div>
292 <div class="sect1">
293 <h2 id="_introduction_and_overview">1. Introduction and Overview</h2>
294 <div class="sectionbody">
295 <div class="paragraph">
296 <p>Welcome to the Altus Metrum community!  Our circuits and software reflect
297 our passion for both hobby rocketry and Free Software.  We hope their
298 capabilities and performance will delight you in every way, but by
299 releasing all of our hardware and software designs under open licenses,
300 we also hope to empower you to take as active a role in our collective
301 future as you wish!</p>
302 </div>
303 <div class="paragraph">
304 <p>Our goal is to include in this document all of the information required
305 to successfully configure and use Altus Metrum products.  But
306 documentation is a lot like software in that it can contain "bugs",
307 and can probably always be improved!  If you have questions that
308 aren&#8217;t answered in this manual, or just need a little help figuring
309 things out, we strongly suggest joining the Altus Metrum user email
310 list, which you can do by visiting
311 <a href="https://lists.gag.com/mailman/listinfo/altusmetrum" class="bare">https://lists.gag.com/mailman/listinfo/altusmetrum</a>.  There&#8217;s a lot
312 of useful information in the mailing list archives!</p>
313 </div>
314 <div class="paragraph">
315 <p>The first device created for our community was TeleMetrum, a dual
316 deploy altimeter with fully integrated GPS and radio telemetry
317 as standard features, and a “companion interface” that will
318 support optional capabilities in the future. The later versions
319 of TeleMetrum, v2 and newer, have all of the same features but with
320 improved sensors and radio to offer increased performance.</p>
321 </div>
322 <div class="paragraph">
323 <p>Our second device was TeleMini, a dual deploy altimeter with
324 radio telemetry and radio direction finding. The first version
325 of this device was only 13mm by 38mm (½ inch by 1½ inches) and
326 could fit easily in an 18mm air-frame. The latest version, v3.0,
327 includes a beeper, higher power radio, extended on-board
328 flight logging and an improved barometric sensor.</p>
329 </div>
330 <div class="paragraph">
331 <p>TeleMega is our most sophisticated device, including six pyro
332 channels (four of which are fully programmable), integrated GPS,
333 integrated gyroscopes for staging/air-start inhibit and high
334 performance telemetry.</p>
335 </div>
336 <div class="paragraph">
337 <p>EasyMini is a dual-deploy altimeter with logging and built-in
338 USB data download.</p>
339 </div>
340 <div class="paragraph">
341 <p>EasyMega is essentially a TeleMega board with the GPS receiver
342 and telemetry transmitter removed. It offers the same 6 pyro
343 channels and integrated gyroscopes for staging/air-start inhibit.</p>
344 </div>
345 <div class="paragraph">
346 <p>TeleDongle v0.2 was our first ground station, providing a USB to RF
347 interfaces for communicating with the altimeters. Combined with
348 your choice of antenna and notebook computer, TeleDongle and our
349 associated user interface software form a complete ground
350 station capable of logging and displaying in-flight telemetry,
351 aiding rocket recovery, then processing and archiving flight
352 data for analysis and review. The latest version, TeleDongle
353 v3, has all new electronics with a higher performance radio
354 for improved range.</p>
355 </div>
356 <div class="paragraph">
357 <p>For a slightly more portable ground station experience that also
358 provides direct rocket recovery support, TeleBT offers flight
359 monitoring and data logging using a  Bluetooth™ connection between
360 the receiver and an Android device that has the AltosDroid
361 application installed from the Google Play store.</p>
362 </div>
363 <div class="paragraph">
364 <p>More products will be added to the Altus Metrum family over time, and
365 we currently envision that this will be a single, comprehensive manual
366 for the entire product family.</p>
367 </div>
368 </div>
369 </div>
370 <div class="sect1">
371 <h2 id="_getting_started">2. Getting Started</h2>
372 <div class="sectionbody">
373 <div class="paragraph">
374 <p>The first thing to do after you open the box is to hook up a
375 battery and charge it if necessary.</p>
376 </div>
377 <div class="sect2">
378 <h3 id="_batteries">2.1. Batteries</h3>
379 <div class="paragraph">
380 <p>For TeleMetrum, TeleMega and EasyMega, the battery can be charged by plugging it into the
381 corresponding socket of the device and then using the USB
382 cable to plug the flight computer into your computer&#8217;s USB socket. The
383 on-board circuitry will charge the battery whenever it is plugged
384 in, because the on-off switch does NOT control the
385 charging circuitry.
386 The Lithium Polymer
387 EasyTimer,
388 TeleMini and
389 EasyMini battery can be charged by disconnecting it
390 from the board and plugging it into a standalone
391 battery charger such as <a href="http://altusmetrum.org/LipoCharger">LipoCharger</a>, and
392 connecting that via a USB cable to a laptop or other
393 USB power source.</p>
394 </div>
395 <div class="paragraph">
396 <p>You can also choose to use another battery with
397 EasyTimer and
398 EasyMini, anything supplying between 4 and 12 volts should
399 work fine (like a standard 9V battery), but if you are planning
400 to fire pyro charges, ground testing is required to verify that
401 the battery supplies enough current to fire your chosen e-matches.</p>
402 </div>
403 <div class="admonitionblock note">
404 <table>
405 <tr>
406 <td class="icon">
407 <img src="./images/icons/note.svg" alt="Note">
408 </td>
409 <td class="content">
410 <div class="paragraph">
411 <p>On TeleMetrum v1 boards, when the GPS chip is initially
412 searching for satellites, TeleMetrum will consume more current
413 than it pulls from the USB port, so the battery must be
414 attached in order to get satellite lock.  Once GPS is locked,
415 the current consumption goes back down enough to enable charging
416 while running. So it&#8217;s a good idea to fully charge the battery
417 as your first item of business so there is no issue getting and
418 maintaining satellite lock.  The yellow charge indicator led
419 will go out when the battery is nearly full and the charger goes
420 to trickle charge. It can take several hours to fully recharge a
421 deeply discharged battery.</p>
422 </div>
423 <div class="paragraph">
424 <p>TeleMetrum v2 or newer, TeleMega and EasyMega use a
425 higher power battery charger, allowing them to charge
426 the battery while running the board at maximum
427 power. When the battery is charging, or when the board
428 is consuming a lot of power, the red LED will be
429 lit. When the battery is fully charged, the green LED
430 will be lit. When the battery is damaged or missing,
431 both LEDs will be lit, which appears yellow.</p>
432 </div>
433 </td>
434 </tr>
435 </table>
436 </div>
437 </div>
438 <div class="sect2">
439 <h3 id="_ground_station_hardware">2.2. Ground Station Hardware</h3>
440 <div class="paragraph">
441 <p>There are two ground stations available, the TeleDongle USB to
442 RF interface and the TeleBT Bluetooth/USB to RF interface.  If
443 you plug either of these in to your Mac or Linux computer it should
444 “just work”, showing up as a serial port device.  Windows systems need
445 driver information that is part of the AltOS download to know that the
446 existing USB modem driver will work.  We therefore recommend installing
447 our software before plugging in TeleDongle if you are using a Windows
448 computer.  If you are using an older version of Linux and are having
449 problems, try moving to a fresher kernel (2.6.33 or
450 newer).</p>
451 </div>
452 </div>
453 <div class="sect2">
454 <h3 id="_linuxmacwindows_ground_station_software">2.3. Linux/Mac/Windows Ground Station Software</h3>
455 <div class="paragraph">
456 <p>Next you should obtain and install the AltOS software.
457 The AltOS distribution includes the AltosUI ground
458 station program, current firmware images for all of
459 the hardware, and a number of standalone utilities
460 that are rarely needed.  Pre-built binary packages are
461 available for Linux, Microsoft Windows, Mac OSX. Full
462 source code and build instructions are also
463 available. The latest version may always be downloaded
464 from <a href="http://altusmetrum.org/AltOS" class="bare">http://altusmetrum.org/AltOS</a></p>
465 </div>
466 </div>
467 <div class="sect2">
468 <h3 id="_android_ground_station_software">2.4. Android Ground Station Software</h3>
469 <div class="paragraph">
470 <p>TeleBT can also connect to an Android device over
471 BlueTooth or USB. The
472 <a href="https://play.google.com/store/apps/details?id=org.altusmetrum.AltosDroid">AltosDroid
473 Android application</a> is available from the
474 <a href="https://play.google.com">Google Play system</a>.</p>
475 </div>
476 <div class="paragraph">
477 <p>You don&#8217;t need a data plan to use AltosDroid, but
478 without network access, you&#8217;ll want to download
479 offline map data before wandering away from the
480 network.</p>
481 </div>
482 </div>
483 </div>
484 </div>
485 <div class="sect1">
486 <h2 id="_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</h2>
487 <div class="sectionbody">
488 <div class="paragraph">
489 <p>Here are general instructions for hooking up an Altus Metrum
490 flight computer. Instructions specific to each model will be
491 found in the section devoted to that model below.</p>
492 </div>
493 <div class="sect2">
494 <h3 id="_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</h3>
495 <div class="paragraph">
496 <p>To prevent electrical interference from affecting the
497 operation of the flight computer, it&#8217;s important to always
498 twist pairs of wires connected to the board. Twist the switch
499 leads, the pyro leads and the battery leads. This reduces
500 interference through a mechanism called common mode rejection.</p>
501 </div>
502 </div>
503 <div class="sect2">
504 <h3 id="_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</h3>
505 <div class="paragraph">
506 <p>All Altus Metrum flight computers have a two pin JST PH
507 series connector to connect up a single-cell Lithium Polymer
508 cell (3.7V nominal). You can purchase matching batteries
509 from the Altus Metrum store, or other vendors, or you can
510 make your own. Pin 1 of the connector is positive, pin 2 is
511 negative. Spark Fun sells a cable with the connector
512 attached, which they call a
513 <a href="https://www.sparkfun.com/products/9914">JST Jumper 2 Wire Assembly</a></p>
514 </div>
515 <div class="admonitionblock warning">
516 <table>
517 <tr>
518 <td class="icon">
519 <img src="./images/icons/warning.svg" alt="Warning">
520 </td>
521 <td class="content">
522 Many RC vendors also sell lithium polymer batteries with
523 this same connector. All that we have found use the opposite
524 polarity, and if you use them that way, you will damage or
525 destroy the flight computer.
526 </td>
527 </tr>
528 </table>
529 </div>
530 </div>
531 <div class="sect2">
532 <h3 id="_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</h3>
533 <div class="paragraph">
534 <p>Altus Metrum flight computers always have two screws for
535 each pyro charge. This means you shouldn&#8217;t need to put two
536 wires into a screw terminal or connect leads from pyro
537 charges together externally.</p>
538 </div>
539 <div class="paragraph">
540 <p>On the flight computer, one lead from each charge is hooked
541 to the positive battery terminal through the power switch.
542 The other lead is connected through the pyro circuit, which
543 is connected to the negative battery terminal when the pyro
544 circuit is fired.</p>
545 </div>
546 </div>
547 <div class="sect2">
548 <h3 id="_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</h3>
549 <div class="paragraph">
550 <p>Altus Metrum flight computers need an external power switch
551 to turn them on. This disconnects both the computer and the
552 pyro charges from the battery, preventing the charges from
553 firing when in the Off position. The switch is in-line with
554 the positive battery terminal.</p>
555 </div>
556 </div>
557 <div class="sect2">
558 <h3 id="_understanding_beeps">3.5. Understanding Beeps</h3>
559 <div class="paragraph">
560 <p>Altus Metrum flight computers include a beeper to
561 provide information about the state of the system.
562 TeleMini doesn&#8217;t have room for a beeper, so instead it
563 uses an LED, which works the same, except for every
564 beep is replaced with the flash of the LED.</p>
565 </div>
566 <div class="paragraph">
567 <p>Here&#8217;s a short summary of all of the modes and the
568 beeping
569 (or flashing, in the case of TeleMini v1)
570 that accompanies each mode. In the description of the
571 beeping pattern, “dit” means a short beep while "dah"
572 means a long beep (three times as long). “Brap” means
573 a long dissonant tone.</p>
574 </div>
575 <table class="tableblock frame-all grid-all stretch">
576 <caption class="title">Table 1. AltOS Modes</caption>
577 <colgroup>
578 <col style="width: 16.6666%;">
579 <col style="width: 16.6666%;">
580 <col style="width: 33.3333%;">
581 <col style="width: 33.3335%;">
582 </colgroup>
583 <tbody>
584 <tr>
585 <td class="tableblock halign-left valign-top"><p class="tableblock">Mode Name</p></td>
586 <td class="tableblock halign-left valign-top"><p class="tableblock">Abbreviation</p></td>
587 <td class="tableblock halign-left valign-top"><p class="tableblock">Beeps</p></td>
588 <td class="tableblock halign-left valign-top"><p class="tableblock">Description</p></td>
589 </tr>
590 <tr>
591 <td class="tableblock halign-left valign-top"><p class="tableblock">Startup</p></td>
592 <td class="tableblock halign-left valign-top"><p class="tableblock">S</p></td>
593 <td class="tableblock halign-left valign-top"><p class="tableblock">battery voltage in decivolts</p></td>
594 <td class="tableblock halign-left valign-top"><p class="tableblock">Calibrating sensors, detecting orientation.</p></td>
595 </tr>
596 <tr>
597 <td class="tableblock halign-left valign-top"><p class="tableblock">Idle</p></td>
598 <td class="tableblock halign-left valign-top"><p class="tableblock">I</p></td>
599 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
600 <td class="tableblock halign-left valign-top"><p class="tableblock">Ready to accept commands over USB
601 or radio link.</p></td>
602 </tr>
603 <tr>
604 <td class="tableblock halign-left valign-top"><p class="tableblock">Pad</p></td>
605 <td class="tableblock halign-left valign-top"><p class="tableblock">P</p></td>
606 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dah dit</p></td>
607 <td class="tableblock halign-left valign-top"><p class="tableblock">Waiting for launch. Not listening for commands.</p></td>
608 </tr>
609 <tr>
610 <td class="tableblock halign-left valign-top"><p class="tableblock">Boost</p></td>
611 <td class="tableblock halign-left valign-top"><p class="tableblock">B</p></td>
612 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dit</p></td>
613 <td class="tableblock halign-left valign-top"><p class="tableblock">Accelerating upwards.</p></td>
614 </tr>
615 <tr>
616 <td class="tableblock halign-left valign-top"><p class="tableblock">Fast</p></td>
617 <td class="tableblock halign-left valign-top"><p class="tableblock">F</p></td>
618 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dah dit</p></td>
619 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, but moving faster than 200m/s.</p></td>
620 </tr>
621 <tr>
622 <td class="tableblock halign-left valign-top"><p class="tableblock">Coast</p></td>
623 <td class="tableblock halign-left valign-top"><p class="tableblock">C</p></td>
624 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dah dit</p></td>
625 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, moving slower than 200m/s</p></td>
626 </tr>
627 <tr>
628 <td class="tableblock halign-left valign-top"><p class="tableblock">Drogue</p></td>
629 <td class="tableblock halign-left valign-top"><p class="tableblock">D</p></td>
630 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit</p></td>
631 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending after apogee. Above main height.</p></td>
632 </tr>
633 <tr>
634 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
635 <td class="tableblock halign-left valign-top"><p class="tableblock">M</p></td>
636 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dah</p></td>
637 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending. Below main height.</p></td>
638 </tr>
639 <tr>
640 <td class="tableblock halign-left valign-top"><p class="tableblock">Landed</p></td>
641 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
642 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dit dit</p></td>
643 <td class="tableblock halign-left valign-top"><p class="tableblock">Stable altitude for at least ten seconds.</p></td>
644 </tr>
645 <tr>
646 <td class="tableblock halign-left valign-top"><p class="tableblock">Sensor error</p></td>
647 <td class="tableblock halign-left valign-top"><p class="tableblock">X</p></td>
648 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dah</p></td>
649 <td class="tableblock halign-left valign-top"><p class="tableblock">Error detected during sensor calibration.</p></td>
650 </tr>
651 </tbody>
652 </table>
653 <div class="paragraph">
654 <p>Here&#8217;s a summary of all of the Pad and Idle mode
655 indications. In Idle mode, you&#8217;ll hear one of these
656 just once after the two short dits indicating idle
657 mode. In Pad mode, after the dit dah dah dit
658 indicating Pad mode, you&#8217;ll hear these once every five
659 seconds.</p>
660 </div>
661 <table class="tableblock frame-all grid-all stretch">
662 <caption class="title">Table 2. Pad/Idle Indications</caption>
663 <colgroup>
664 <col style="width: 20%;">
665 <col style="width: 20%;">
666 <col style="width: 60%;">
667 </colgroup>
668 <thead>
669 <tr>
670 <th class="tableblock halign-left valign-top">Name</th>
671 <th class="tableblock halign-left valign-top">Beeps</th>
672 <th class="tableblock halign-left valign-top">Description</th>
673 </tr>
674 </thead>
675 <tbody>
676 <tr>
677 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
678 <td class="tableblock halign-left valign-top"><p class="tableblock">brap</p></td>
679 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
680 </tr>
681 <tr>
682 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
683 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
684 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
685 </tr>
686 <tr>
687 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
688 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
689 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
690 </tr>
691 <tr>
692 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
693 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
694 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
695 </tr>
696 <tr>
697 <td class="tableblock halign-left valign-top"><p class="tableblock">Storage Full</p></td>
698 <td class="tableblock halign-left valign-top"><p class="tableblock">warble</p></td>
699 <td class="tableblock halign-left valign-top"><p class="tableblock">On-board data logging storage is full. This will
700 not prevent the flight computer from safely
701 controlling the flight or transmitting telemetry
702 signals, but no record of the flight will be
703 stored in on-board flash.</p></td>
704 </tr>
705 <tr>
706 <td class="tableblock halign-left valign-top"><p class="tableblock">Additional Igniters</p></td>
707 <td class="tableblock halign-left valign-top"><p class="tableblock">four very short beeps</p></td>
708 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity indication for the additional pyro
709 channels on TeleMega, EasyMega and EasyTimer. One high tone for
710 no continuity, one low tone for continuity. On TeleMega and EasyMegay, these are
711 produced after the continuity indicators for the two
712 primary igniter channels.</p></td>
713 </tr>
714 </tbody>
715 </table>
716 <div class="paragraph">
717 <p>For devices with a radio transmitter, in addition to
718 the digital and APRS telemetry signals, you can also
719 receive audio tones with a standard amateur
720 70cm FM receiver. While on the pad, you will hear
721 igniter status once every five seconds.</p>
722 </div>
723 <table class="tableblock frame-all grid-all stretch">
724 <caption class="title">Table 3. Pad Radio Indications</caption>
725 <colgroup>
726 <col style="width: 20%;">
727 <col style="width: 20%;">
728 <col style="width: 60%;">
729 </colgroup>
730 <thead>
731 <tr>
732 <th class="tableblock halign-left valign-top">Name</th>
733 <th class="tableblock halign-left valign-top">Beeps</th>
734 <th class="tableblock halign-left valign-top">Description</th>
735 </tr>
736 </thead>
737 <tbody>
738 <tr>
739 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
740 <td class="tableblock halign-left valign-top"><p class="tableblock">½ second tone</p></td>
741 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
742 </tr>
743 <tr>
744 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
745 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
746 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
747 </tr>
748 <tr>
749 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
750 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
751 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
752 </tr>
753 <tr>
754 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
755 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
756 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
757 </tr>
758 </tbody>
759 </table>
760 <div class="paragraph">
761 <p>During ascent, the tones will be muted to allow the
762 telemetry data to consume the full radio bandwidth.</p>
763 </div>
764 <div class="paragraph">
765 <p>During descent and after landing, a ½ second tone will
766 be transmitted every five seconds. This can be used to
767 find the rocket using RDF techniques when the signal
768 is too weak to receive GPS information via telemetry
769 or APRS.</p>
770 </div>
771 </div>
772 <div class="sect2">
773 <h3 id="_turning_on_the_power">3.6. Turning On the Power</h3>
774 <div class="paragraph">
775 <p>Connect a battery and power switch and turn the switch
776 to "on". The flight computer will signal power on by
777 reporting the battery voltage and then perform an internal self
778 test and sensor calibration.</p>
779 </div>
780 <div class="paragraph">
781 <p>Once the self test and calibration are complete, there
782 are two modes that an Altus Metrum flight computer can
783 operate in:</p>
784 </div>
785 <div class="dlist">
786 <dl>
787 <dt class="hdlist1">Flight/Pad</dt>
788 <dd>
789 <p>The flight computer is waiting to detect
790 launch and then fly the rocket. In this mode, the USB
791 link is
792 disabled, and the radio goes into transmit-only mode.
793 The only way to get out of this
794 mode is to power the flight computer down. See below for how to get the flight
795 computer to come up in Flight/Pad mode at power on.</p>
796 </dd>
797 <dt class="hdlist1">Idle</dt>
798 <dd>
799 <p>The flight computer is ready to communicate over USB
800 and in packet mode over the radio.
801 You can configure
802 the flight computer, download data or display
803 the current state. See below for how to get the flight
804 computer to come up in Idle mode at power on.</p>
805 </dd>
806 </dl>
807 </div>
808 <div class="paragraph">
809 <p>For flight computers with accelerometers (TeleMetrum,
810 EasyMega, TeleMega and EasyTimer), the mode is selected by the
811 orientation of the board during the self test
812 interval. If the board is pointing upwards as if ready
813 to fly, it will enter Flight/Pad mode. Otherwise, it will
814 enter Idle mode.</p>
815 </div>
816 <div class="paragraph">
817 <p>For EasyMini, if the USB cable is connected to a
818 computer, it will enter Idle mode. Otherwise, it will
819 enter Flight/Pad mode.</p>
820 </div>
821 <div class="paragraph">
822 <p>For TeleMini v1.0, if a packet link is waiting to
823 connect when the device is powered on, it will enter
824 Idle mode, otherwise it will enter Flight/Pad mode.</p>
825 </div>
826 <div class="paragraph">
827 <p>You can see in <a href="#_understanding_beeps">Understanding Beeps</a>
828 how to tell which mode the flight computer is in.</p>
829 </div>
830 </div>
831 <div class="sect2">
832 <h3 id="_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</h3>
833 <div class="paragraph">
834 <p>You can use an active switch circuit, such as the
835 Featherweight Magnetic Switch, with any Altus Metrum
836 flight computer. These require three connections, one to
837 the battery, one to the positive power input on the flight
838 computer and one to ground. Find instructions on how to
839 hook these up for each flight computer below. Then follow
840 the instructions that come with your active switch to
841 connect it up.</p>
842 </div>
843 </div>
844 <div class="sect2">
845 <h3 id="_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</h3>
846 <div class="paragraph">
847 <p>As mentioned above in <a href="#_hooking_up_pyro_charges">Hooking Up Pyro Charges</a>, one
848 lead for each of the pyro charges is connected through
849 the power switch directly to the positive battery
850 terminal. The other lead is connected to the pyro
851 circuit, which connects it to the negative battery
852 terminal when the pyro circuit is fired. The pyro
853 circuit on all of the flight computers is designed to
854 handle up to 16V.</p>
855 </div>
856 <div class="paragraph">
857 <p>To use a separate pyro battery, connect the negative pyro
858 battery terminal to the flight computer ground terminal,
859 the the switched positive battery terminal to the igniter
860 and the other
861 igniter lead to the negative pyro terminal on the flight
862 computer. When the pyro channel fires, it will complete the
863 circuit between the negative pyro terminal and the ground
864 terminal, firing the igniter. Specific instructions on how
865 to hook this up for each flight computer will be found
866 in the section below for that flight computer.</p>
867 </div>
868 <div class="paragraph">
869 <p>Note that you must include a switch in the positive lead of
870 the pyro battery for safety, as the on-board power switch
871 circuit on our product only controls current flow from the
872 the primary or system battery!</p>
873 </div>
874 </div>
875 <div class="sect2">
876 <h3 id="_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</h3>
877 <div class="paragraph">
878 <p>EasyMini
879 and EasyTimer are
880 designed to use either a
881 lithium polymer battery or any other battery producing
882 between 4 and 12 volts, such as a rectangular 9V
883 battery.</p>
884 </div>
885 <div class="admonitionblock warning">
886 <table>
887 <tr>
888 <td class="icon">
889 <img src="./images/icons/warning.svg" alt="Warning">
890 </td>
891 <td class="content">
892 TeleMini,
893 TeleMega, EasyMega and TeleMetrum are only designed to
894 operate off a single-cell Lithium Polymer battery and
895 cannot be used with any other kind. Connecting a
896 different kind of battery to any of these will destroy
897 the board.
898 </td>
899 </tr>
900 </table>
901 </div>
902 </div>
903 <div class="sect2">
904 <h3 id="_using_packet_link_mode">3.10. Using Packet Link Mode</h3>
905 <div class="paragraph">
906 <p>All AltusMetrum flight computers that have a radio can
907 communicate with the ground station software for
908 configuration and other operations using the Packet
909 Link mode. This uses radio communication instead of a
910 USB cable. To set this up, the ground station software
911 must be configured to the correct data rate, frequency
912 and callsign.</p>
913 </div>
914 <div class="paragraph">
915 <p>You can monitor Packet Link mode from TeleBT or
916 TeleDongle by watching the LEDs. Each time the device
917 transmits, the red LED will flash. When the link is
918 busy, or when the link is not working, the device will
919 transmit 10 times per second, so the LED will flash
920 rapidly. When the link is working and there is no data
921 to send, the link will flash once per second, and the
922 LED will flash more slowly.</p>
923 </div>
924 </div>
925 </div>
926 </div>
927 <div class="sect1">
928 <h2 id="_telemetrum">4. TeleMetrum</h2>
929 <div class="sectionbody">
930 <div class="imageblock">
931 <div class="content">
932 <img src="telemetrum-v2.0-th.jpg" alt="telemetrum v2.0 th" width="400">
933 </div>
934 <div class="title">Figure 1. TeleMetrum v2 Board</div>
935 </div>
936 <div class="imageblock">
937 <div class="content">
938 <img src="telemetrum-v1.1-thside.jpg" alt="telemetrum v1.1 thside" width="400">
939 </div>
940 <div class="title">Figure 2. TeleMetrum v1 Board</div>
941 </div>
942 <div class="paragraph">
943 <p>TeleMetrum is a 1 inch by 2¾ inch circuit board.  It was designed to
944 fit inside coupler for 29mm air-frame tubing, but using it in a tube that
945 small in diameter may require some creativity in mounting and wiring
946 to succeed!  The presence of an accelerometer means TeleMetrum should
947 be aligned along the flight axis of the airframe, and by default the ¼
948 wave UHF wire antenna should be on the nose-cone end of the board.  The
949 antenna wire is about 7 inches long, and wiring for a power switch and
950 the e-matches for apogee and main ejection charges depart from the
951 fin can end of the board, meaning an ideal “simple” avionics
952 bay for TeleMetrum should have at least 10 inches of interior length.</p>
953 </div>
954 <div class="paragraph">
955 <p>There are two generations of the TeleMetrum design. The
956 major changes after v1 generation are:</p>
957 </div>
958 <div class="ulist">
959 <ul>
960 <li>
961 <p>uBlox GPS chip certified for altitude records</p>
962 </li>
963 <li>
964 <p>Higher power radio (40mW vs 10mW)</p>
965 </li>
966 <li>
967 <p>APRS support</p>
968 </li>
969 </ul>
970 </div>
971 <div class="paragraph">
972 <p>Otherwise, they&#8217;re the same size, with mounting holes and
973 screw terminals in the same position.</p>
974 </div>
975 <div class="sect2">
976 <h3 id="_telemetrum_screw_terminals">4.1. TeleMetrum Screw Terminals</h3>
977 <div class="paragraph">
978 <p>TeleMetrum has six screw terminals on the end of the board
979 opposite the telemetry antenna. Two are for the power
980 switch, and two each for the apogee and main igniter
981 circuits. Using the picture above and starting from the top,
982 the terminals are as follows:</p>
983 </div>
984 <table class="tableblock frame-all grid-all stretch">
985 <caption class="title">Table 4. TeleMetrum Screw Terminals</caption>
986 <colgroup>
987 <col style="width: 13.3333%;">
988 <col style="width: 20%;">
989 <col style="width: 66.6667%;">
990 </colgroup>
991 <thead>
992 <tr>
993 <th class="tableblock halign-left valign-top">Terminal #</th>
994 <th class="tableblock halign-left valign-top">Terminal Name</th>
995 <th class="tableblock halign-left valign-top">Description</th>
996 </tr>
997 </thead>
998 <tbody>
999 <tr>
1000 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1001 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1002 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1003 </tr>
1004 <tr>
1005 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1006 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1007 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1008 </tr>
1009 <tr>
1010 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1011 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1012 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1013 </tr>
1014 <tr>
1015 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1016 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1017 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1018 </tr>
1019 <tr>
1020 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
1021 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1022 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1023 </tr>
1024 <tr>
1025 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
1026 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1027 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1028 </tr>
1029 </tbody>
1030 </table>
1031 </div>
1032 <div class="sect2">
1033 <h3 id="_using_a_separate_pyro_battery_with_telemetrum">4.2. Using a Separate Pyro Battery with TeleMetrum</h3>
1034 <div class="paragraph">
1035 <p>As described above, using an external pyro battery involves
1036 connecting the negative battery terminal to the flight
1037 computer ground, connecting the positive battery terminal to
1038 one of the igniter leads and connecting the other igniter
1039 lead to the per-channel pyro circuit connection.</p>
1040 </div>
1041 <div class="paragraph">
1042 <p>To connect the negative battery terminal to the TeleMetrum
1043 ground, insert a small piece of wire, 24 to 28 gauge
1044 stranded, into the GND hole just above the screw terminal
1045 strip and solder it in place.</p>
1046 </div>
1047 <div class="paragraph">
1048 <p>Connecting the switched positive battery terminal to the pyro
1049 charges must be done separate from TeleMetrum, by soldering
1050 them together or using some other connector. Note that you
1051 must include a switch in the positive lead from the pyro
1052 battery for safety!</p>
1053 </div>
1054 <div class="paragraph">
1055 <p>The other lead from each pyro charge is then inserted into
1056 the appropriate per-pyro channel screw terminal (terminal 4
1057 for the Main charge, terminal 6 for the Apogee charge).</p>
1058 </div>
1059 </div>
1060 <div class="sect2">
1061 <h3 id="_using_an_active_switch_with_telemetrum">4.3. Using an Active Switch with TeleMetrum</h3>
1062 <div class="paragraph">
1063 <p>As explained above, an external active switch requires three
1064 connections, one to the positive battery terminal, one to
1065 the flight computer positive input and one to ground.</p>
1066 </div>
1067 <div class="paragraph">
1068 <p>The positive battery terminal is available on screw terminal
1069 2, the positive flight computer input is on terminal 1. To
1070 hook a lead to ground, solder a piece of wire, 24 to 28
1071 gauge stranded, to the GND hole just above terminal 1.</p>
1072 </div>
1073 </div>
1074 </div>
1075 </div>
1076 <div class="sect1">
1077 <h2 id="_telemini">5. TeleMini</h2>
1078 <div class="sectionbody">
1079 <div class="imageblock">
1080 <div class="content">
1081 <img src="telemini-v3.0-top.jpg" alt="telemini v3.0 top" width="400">
1082 </div>
1083 <div class="title">Figure 3. TeleMini v3 Board</div>
1084 </div>
1085 <div class="imageblock">
1086 <div class="content">
1087 <img src="telemini-v3.0-bottom.jpg" alt="telemini v3.0 bottom" width="400">
1088 </div>
1089 </div>
1090 <div class="paragraph">
1091 <p>TeleMini v3 is 0.5 inches by 1.67 inches.  It was
1092 designed to fit inside an 18mm air-frame tube, but using it in
1093 a tube that small in diameter may require some creativity in
1094 mounting and wiring to succeed!  Since there is no
1095 accelerometer, TeleMini can be mounted in any convenient
1096 orientation.  The default ¼ wave UHF wire antenna attached to
1097 the center of one end of the board is about 7 inches long. Screw
1098 terminals for the power switch are located in the
1099 middle of the board. Screw terminals for the e-matches for
1100 apogee and main ejection charges depart from the other end of
1101 the board, meaning an ideal “simple” avionics bay for TeleMini
1102 should have at least 9 inches of interior length.</p>
1103 </div>
1104 <div class="sect2">
1105 <h3 id="_telemini_v3_screw_terminals">5.1. TeleMini v3 Screw Terminals</h3>
1106 <div class="paragraph">
1107 <p>TeleMini v3 has four screw terminals on the end of the
1108 board opposite the telemetry antenna. Two are for the apogee
1109 and two are for main igniter circuits. Another two
1110 screw terminals are located in the middle of the board
1111 for the power switch.  Using the
1112 picture above and starting from the top for the pyro terminals
1113 and from the left for the power switch terminals, the
1114 connections are as follows:</p>
1115 </div>
1116 <table class="tableblock frame-all grid-all stretch">
1117 <caption class="title">Table 5. TeleMini v3 Screw Terminals</caption>
1118 <colgroup>
1119 <col style="width: 13.3333%;">
1120 <col style="width: 20%;">
1121 <col style="width: 66.6667%;">
1122 </colgroup>
1123 <thead>
1124 <tr>
1125 <th class="tableblock halign-left valign-top">Terminal #</th>
1126 <th class="tableblock halign-left valign-top">Terminal Name</th>
1127 <th class="tableblock halign-left valign-top">Description</th>
1128 </tr>
1129 </thead>
1130 <tbody>
1131 <tr>
1132 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1133 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1134 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1135 </tr>
1136 <tr>
1137 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1138 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1139 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1140 </tr>
1141 <tr>
1142 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1143 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1144 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1145 </tr>
1146 <tr>
1147 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1148 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1149 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1150 </tr>
1151 <tr>
1152 <td class="tableblock halign-left valign-top"><p class="tableblock">Left</p></td>
1153 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1154 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1155 </tr>
1156 <tr>
1157 <td class="tableblock halign-left valign-top"><p class="tableblock">Right</p></td>
1158 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1159 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1160 </tr>
1161 </tbody>
1162 </table>
1163 </div>
1164 <div class="sect2">
1165 <h3 id="_using_a_separate_pyro_battery_with_telemini_v3">5.2. Using a Separate Pyro Battery with TeleMini v3</h3>
1166 <div class="paragraph">
1167 <p>As described above, using an external pyro battery involves
1168 connecting the negative battery terminal to the flight
1169 computer ground, connecting the switched positive battery
1170 terminal to one of the igniter leads and connecting the other
1171 igniter lead to the per-channel pyro circuit connection.
1172 Because there is no solid ground connection to use on
1173 TeleMini, this is not recommended.</p>
1174 </div>
1175 <div class="paragraph">
1176 <p>The only available ground connection on TeleMini v3 are
1177 the two mounting holes next to the telemetry
1178 antenna. Somehow connect a small piece of wire to one of
1179 those holes and hook it to the negative pyro battery terminal.</p>
1180 </div>
1181 <div class="paragraph">
1182 <p>Connecting the positive battery terminal to the pyro
1183 charges must be done separate from TeleMini v3, by soldering
1184 them together or using some other connector.  Note that you
1185 must include a switch in the pyro battery positive lead for
1186 safety!</p>
1187 </div>
1188 <div class="paragraph">
1189 <p>The other lead from each pyro charge is then inserted into
1190 the appropriate per-pyro channel screw terminal (terminal 3 for the
1191 Main charge, terminal 1 for the Apogee charge).</p>
1192 </div>
1193 </div>
1194 <div class="sect2">
1195 <h3 id="_using_an_active_switch_with_telemini_v3">5.3. Using an Active Switch with TeleMini v3</h3>
1196 <div class="paragraph">
1197 <p>As explained above, an external active switch requires three
1198 connections, one to the positive battery terminal, one to
1199 the flight computer positive input and one to ground. Again,
1200 because TeleMini doesn&#8217;t have any good ground connection,
1201 this is not recommended.</p>
1202 </div>
1203 <div class="paragraph">
1204 <p>The positive battery terminal is available on the Right
1205 power switch wire, the positive flight computer input is on
1206 the left power switch wire. Hook a lead to either of the
1207 mounting holes for a ground connection.</p>
1208 </div>
1209 </div>
1210 <div class="sect2">
1211 <h3 id="_using_packet_link_mode_with_telemini">5.4. Using Packet Link Mode with TeleMini</h3>
1212 <div class="paragraph">
1213 <p>After TeleMini powers up, it will check to see if some
1214 device is attempting to communicate with it using
1215 Packet Link Mode. If so, it will switch to idle mode
1216 and start communicating. To switch to flight mode,
1217 reboot the device either over the radio link or by
1218 powering it off and back on.</p>
1219 </div>
1220 <div class="paragraph">
1221 <p>If no ground station is attempting to communicate
1222 using Packet Link Mode, TeleMini will enter pad mode
1223 and prepare for flight.</p>
1224 </div>
1225 <div class="paragraph">
1226 <p>The sequence of operations to use Packet Link Mode
1227 with TeleMini is:</p>
1228 </div>
1229 <div class="olist arabic">
1230 <ol class="arabic">
1231 <li>
1232 <p>Configure the ground station data rate, frequency
1233 and callsign to match the TeleMini settings.</p>
1234 </li>
1235 <li>
1236 <p>Start Packet Link Mode in the ground station by
1237 selecting the desired operation (Safe Flight Data,
1238 Configure Altimeter, Fire Igniter or Monitor
1239 Idle). Select the TeleBT or TeleDongle device. The
1240 red LED should begin flashing rapidly.</p>
1241 </li>
1242 <li>
1243 <p>Turn on TeleMini. You should see the red LED flash
1244 very rapidly during the initial communication burst,
1245 but it should then slow down when the link is idle.</p>
1246 </li>
1247 </ol>
1248 </div>
1249 <div class="paragraph">
1250 <p>Once TeleMini is in Idle mode, it will stay in that
1251 mode until rebooted. That means you can stop one
1252 Packet Link operation, wait a while and start another
1253 Packet Link operation.</p>
1254 </div>
1255 </div>
1256 <div class="sect2">
1257 <h3 id="_forcing_telemini_radio_parameters_to_known_defaults">5.5. Forcing TeleMini radio parameters to known defaults</h3>
1258 <div class="paragraph">
1259 <p>If you don&#8217;t know what the TeleMini frequency and
1260 callsign settings are, you can temporarily force it
1261 back to the original default values (frequency
1262 434.550MHz, callsign N0CALL) by connecting a wire
1263 between hole 3 and hole 6 on the debug connector. Hole
1264 3 has the square pad around it, hole 6 is the one
1265 nearest the MS5607 baro sensor, which is a rectangular
1266 component with a metal cap that has two holes in it.</p>
1267 </div>
1268 <div class="paragraph">
1269 <p>Once TeleMini has been powered up with this wire
1270 connected, the wire may be removed. The radio
1271 parameters will stay set to these default values until
1272 changed by the user or when the device is rebooted.</p>
1273 </div>
1274 </div>
1275 <div class="sect2">
1276 <h3 id="_telemini_v1">5.6. TeleMini v1</h3>
1277 <div class="paragraph">
1278 <p>TeleMini v1 is the earlier version of this product. It
1279 has a lower-power radio, less storage, no beeper and
1280 soldered-in wires instead of screw terminals for the
1281 power switch.</p>
1282 </div>
1283 <div class="imageblock">
1284 <div class="content">
1285 <img src="telemini-v1-top.jpg" alt="telemini v1 top" width="400">
1286 </div>
1287 <div class="title">Figure 4. TeleMini v1 Board</div>
1288 </div>
1289 </div>
1290 </div>
1291 </div>
1292 <div class="sect1">
1293 <h2 id="_easymini">6. EasyMini</h2>
1294 <div class="sectionbody">
1295 <div class="imageblock">
1296 <div class="content">
1297 <img src="easymini-top.jpg" alt="easymini top" width="400">
1298 </div>
1299 <div class="title">Figure 5. EasyMini Board</div>
1300 </div>
1301 <div class="paragraph">
1302 <p>EasyMini is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1303 designed to fit in a 24mm coupler tube.</p>
1304 </div>
1305 <div class="paragraph">
1306 <p>You usually don&#8217;t need to configure EasyMini at all; it&#8217;s set
1307 up to do dual-deployment with an event at apogee to separate
1308 the airframe and deploy a drogue and another event at 250m
1309 (820ft) to deploy the main. Install EasyMini in your airframe,
1310 hook up a battery, igniters and a power switch and you&#8217;re
1311 ready to fly.</p>
1312 </div>
1313 <div class="sect2">
1314 <h3 id="_easymini_screw_terminals">6.1. EasyMini Screw Terminals</h3>
1315 <div class="paragraph">
1316 <p>EasyMini has two sets of four screw terminals near one end of the
1317 board. Using the picture
1318 above, the top four have connections for the main pyro
1319 circuit and an external battery and the bottom four have
1320 connections for the apogee pyro circuit and the power
1321 switch. Counting from the left, the connections are as follows:</p>
1322 </div>
1323 <table class="tableblock frame-all grid-all stretch">
1324 <caption class="title">Table 6. EasyMini Screw Terminals</caption>
1325 <colgroup>
1326 <col style="width: 13.3333%;">
1327 <col style="width: 20%;">
1328 <col style="width: 66.6667%;">
1329 </colgroup>
1330 <thead>
1331 <tr>
1332 <th class="tableblock halign-left valign-top">Terminal #</th>
1333 <th class="tableblock halign-left valign-top">Terminal Name</th>
1334 <th class="tableblock halign-left valign-top">Description</th>
1335 </tr>
1336 </thead>
1337 <tbody>
1338 <tr>
1339 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1340 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1341 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1342 </tr>
1343 <tr>
1344 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1345 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1346 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1347 </tr>
1348 <tr>
1349 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1350 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1351 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1352 </tr>
1353 <tr>
1354 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1355 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1356 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1357 </tr>
1358 <tr>
1359 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1360 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1361 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1362 </tr>
1363 <tr>
1364 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1365 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1366 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1367 </tr>
1368 <tr>
1369 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1370 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1371 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1372 </tr>
1373 <tr>
1374 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1375 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1376 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1377 </tr>
1378 </tbody>
1379 </table>
1380 </div>
1381 <div class="sect2">
1382 <h3 id="_connecting_a_battery_to_easymini">6.2. Connecting A Battery To EasyMini</h3>
1383 <div class="paragraph">
1384 <p>There are two possible battery connections on
1385 EasyMini. You can use either method; both feed
1386 through the power switch terminals.</p>
1387 </div>
1388 <div class="paragraph">
1389 <p>One battery connection is the standard Altus Metrum
1390 white JST plug. This mates with single-cell Lithium
1391 Polymer batteries sold by Altus Metrum.</p>
1392 </div>
1393 <div class="paragraph">
1394 <p>The other is a pair of screw terminals marked 'Battery
1395 +' and 'Battery -'. Connect a battery from 4 to 12
1396 volts to these terminals, being careful to match polarity.</p>
1397 </div>
1398 </div>
1399 <div class="sect2">
1400 <h3 id="_charging_lithium_batteries">6.3. Charging Lithium Batteries</h3>
1401 <div class="paragraph">
1402 <p>Because EasyMini allows for batteries other than the
1403 standard Altus Metrum Lithium Polymer cells, it cannot
1404 incorporate a battery charger circuit. Therefore, when
1405 using a Litium Polymer cell, you&#8217;ll need an external
1406 charger. These are available from Altus Metrum, or
1407 from Spark Fun.</p>
1408 </div>
1409 </div>
1410 <div class="sect2">
1411 <h3 id="_using_a_separate_pyro_battery_with_easymini">6.4. Using a Separate Pyro Battery with EasyMini</h3>
1412 <div class="paragraph">
1413 <p>As described above, using an external pyro battery involves
1414 connecting the negative battery terminal to the flight
1415 computer ground, connecting the positive battery terminal to
1416 one of the igniter leads and connecting the other igniter
1417 lead to the per-channel pyro circuit connection.</p>
1418 </div>
1419 <div class="paragraph">
1420 <p>To connect the negative pyro battery terminal to EasyMini
1421 ground, connect it to the negative external battery
1422 connection, top terminal 4.</p>
1423 </div>
1424 <div class="paragraph">
1425 <p>Connecting the switched positive battery terminal to the pyro
1426 charges must be done separate from EasyMini, by soldering
1427 them together or using some other connector.  Note that for
1428 safety, you must put a switch between the pyro battery and
1429 the rest of the circuit!</p>
1430 </div>
1431 <div class="paragraph">
1432 <p>The other lead from each pyro charge is then inserted into
1433 the appropriate per-pyro channel screw terminal (top
1434 terminal 1 for the Main charge, bottom terminal 1 for the
1435 Apogee charge).</p>
1436 </div>
1437 </div>
1438 <div class="sect2">
1439 <h3 id="_using_an_active_switch_with_easymini">6.5. Using an Active Switch with EasyMini</h3>
1440 <div class="paragraph">
1441 <p>As explained above, an external active switch requires three
1442 connections, one to the positive battery terminal, one to
1443 the flight computer positive input and one to ground. Use
1444 the negative external battery connection, top terminal 4 for
1445 ground.</p>
1446 </div>
1447 <div class="paragraph">
1448 <p>The positive battery terminal is available on bottom
1449 terminal 4, the positive flight computer input is on the
1450 bottom terminal 3.</p>
1451 </div>
1452 </div>
1453 </div>
1454 </div>
1455 <div class="sect1">
1456 <h2 id="_telemega">7. TeleMega</h2>
1457 <div class="sectionbody">
1458 <div class="imageblock">
1459 <div class="content">
1460 <img src="telemega-v1.0-top.jpg" alt="telemega v1.0 top" width="400">
1461 </div>
1462 <div class="title">Figure 6. TeleMega Board</div>
1463 </div>
1464 <div class="paragraph">
1465 <p>TeleMega is a 1¼ inch by 3¼ inch circuit board. It was
1466 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1467 TeleMega has an accelerometer and so it must be mounted so that
1468 the board is aligned with the flight axis. It can be mounted
1469 either antenna up or down.</p>
1470 </div>
1471 <div class="paragraph">
1472 <p>TeleMega v2.0 has a few minor changes from v1.0:</p>
1473 </div>
1474 <div class="ulist">
1475 <ul>
1476 <li>
1477 <p>Companion connector matches EasyMega functions</p>
1478 </li>
1479 <li>
1480 <p>Serial port connector replaced with servo connector with
1481 support for up to 4 PWM channels.</p>
1482 </li>
1483 <li>
1484 <p>Radio switched from cc1120 to cc1200.</p>
1485 </li>
1486 </ul>
1487 </div>
1488 <div class="paragraph">
1489 <p>None of these affect operation using the stock firmware, but
1490 they do mean that the device needs different firmware to
1491 operate correctly, so make sure you load the right firmware
1492 when reflashing the device.</p>
1493 </div>
1494 <div class="sect2">
1495 <h3 id="_telemega_screw_terminals">7.1. TeleMega Screw Terminals</h3>
1496 <div class="paragraph">
1497 <p>TeleMega has two sets of nine screw terminals on the end of
1498 the board opposite the telemetry antenna. They are as follows:</p>
1499 </div>
1500 <table class="tableblock frame-all grid-all stretch">
1501 <caption class="title">Table 7. TeleMega Screw Terminals</caption>
1502 <colgroup>
1503 <col style="width: 13.3333%;">
1504 <col style="width: 20%;">
1505 <col style="width: 66.6667%;">
1506 </colgroup>
1507 <thead>
1508 <tr>
1509 <th class="tableblock halign-left valign-top">Terminal #</th>
1510 <th class="tableblock halign-left valign-top">Terminal Name</th>
1511 <th class="tableblock halign-left valign-top">Description</th>
1512 </tr>
1513 </thead>
1514 <tbody>
1515 <tr>
1516 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1517 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1518 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1519 </tr>
1520 <tr>
1521 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1522 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1523 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1524 </tr>
1525 <tr>
1526 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1527 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1528 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1529 </tr>
1530 <tr>
1531 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1532 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1533 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1534 </tr>
1535 <tr>
1536 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1537 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1538 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1539 </tr>
1540 <tr>
1541 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1542 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1543 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1544 </tr>
1545 <tr>
1546 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1547 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1548 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1549 </tr>
1550 <tr>
1551 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1552 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1553 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1554 </tr>
1555 <tr>
1556 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1557 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1558 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1559 </tr>
1560 <tr>
1561 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1562 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1563 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1564 </tr>
1565 <tr>
1566 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1567 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1568 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1569 </tr>
1570 <tr>
1571 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1572 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1573 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1574 </tr>
1575 <tr>
1576 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1577 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1578 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1579 </tr>
1580 <tr>
1581 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1582 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1583 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1584 </tr>
1585 <tr>
1586 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1587 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1588 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1589 </tr>
1590 <tr>
1591 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1592 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1593 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1594 </tr>
1595 <tr>
1596 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1597 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1598 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1599 </tr>
1600 <tr>
1601 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1602 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1603 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1604 </tr>
1605 </tbody>
1606 </table>
1607 </div>
1608 <div class="sect2">
1609 <h3 id="_using_a_separate_pyro_battery_with_telemega">7.2. Using a Separate Pyro Battery with TeleMega</h3>
1610 <div class="paragraph">
1611 <p>TeleMega provides explicit support for an external pyro
1612 battery. All that is required is to remove the jumper
1613 between the lipo terminal (Bottom 3) and the pyro terminal
1614 (Bottom 2). Then hook the negative pyro battery terminal to
1615 ground (Bottom 1) and the switched positive pyro battery to
1616 the pyro battery input (Bottom 2). Note that you must include
1617 a switch between the pyro battery and the board for safety,
1618 as the on-board power switch circuit only supports the primary
1619 battery!  You can then use the existing pyro screw
1620 terminals to hook up all of the pyro charges.</p>
1621 </div>
1622 </div>
1623 <div class="sect2">
1624 <h3 id="_using_only_one_battery_with_telemega">7.3. Using Only One Battery With TeleMega</h3>
1625 <div class="paragraph">
1626 <p>Because TeleMega has built-in support for a separate pyro
1627 battery, if you want to fly with just one battery running
1628 both the computer and firing the charges, you need to
1629 connect the flight computer battery to the pyro
1630 circuit. TeleMega has two screw terminals for this—hook a
1631 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1632 (Bottom 2).</p>
1633 </div>
1634 </div>
1635 <div class="sect2">
1636 <h3 id="_using_an_active_switch_with_telemega">7.4. Using an Active Switch with TeleMega</h3>
1637 <div class="paragraph">
1638 <p>As explained above, an external active switch requires three
1639 connections, one to the positive battery terminal, one to
1640 the flight computer positive input and one to ground.</p>
1641 </div>
1642 <div class="paragraph">
1643 <p>The positive battery terminal is available on Top terminal
1644 1, the positive flight computer input is on Top terminal
1645 2. Ground is on Top terminal 3.</p>
1646 </div>
1647 </div>
1648 </div>
1649 </div>
1650 <div class="sect1">
1651 <h2 id="_easymega">8. EasyMega</h2>
1652 <div class="sectionbody">
1653 <div class="imageblock">
1654 <div class="content">
1655 <img src="easymega-v1.0-top.jpg" alt="easymega v1.0 top" width="400">
1656 </div>
1657 <div class="title">Figure 7. EasyMega Board</div>
1658 </div>
1659 <div class="paragraph">
1660 <p>EasyMega is a 1¼ inch by 2¼ inch circuit board. It was
1661 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1662 EasyMega has an accelerometer and so it must be mounted so that
1663 the board is aligned with the flight axis. It can be mounted
1664 either antenna up or down.</p>
1665 </div>
1666 <div class="sect2">
1667 <h3 id="_easymega_screw_terminals">8.1. EasyMega Screw Terminals</h3>
1668 <div class="paragraph">
1669 <p>EasyMega has two sets of nine screw terminals on the end of
1670 the board opposite the telemetry antenna. They are as follows:</p>
1671 </div>
1672 <table class="tableblock frame-all grid-all stretch">
1673 <caption class="title">Table 8. EasyMega Screw Terminals</caption>
1674 <colgroup>
1675 <col style="width: 13.3333%;">
1676 <col style="width: 20%;">
1677 <col style="width: 66.6667%;">
1678 </colgroup>
1679 <thead>
1680 <tr>
1681 <th class="tableblock halign-left valign-top">Terminal #</th>
1682 <th class="tableblock halign-left valign-top">Terminal Name</th>
1683 <th class="tableblock halign-left valign-top">Description</th>
1684 </tr>
1685 </thead>
1686 <tbody>
1687 <tr>
1688 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1689 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1690 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1691 </tr>
1692 <tr>
1693 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1694 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1695 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1696 </tr>
1697 <tr>
1698 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1699 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1700 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1701 </tr>
1702 <tr>
1703 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1704 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1705 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1706 </tr>
1707 <tr>
1708 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1709 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1710 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1711 </tr>
1712 <tr>
1713 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1714 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1715 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1716 </tr>
1717 <tr>
1718 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1719 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1720 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1721 </tr>
1722 <tr>
1723 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1724 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1725 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1726 </tr>
1727 <tr>
1728 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1729 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1730 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1731 </tr>
1732 <tr>
1733 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1734 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1735 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1736 </tr>
1737 <tr>
1738 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1739 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1740 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1741 </tr>
1742 <tr>
1743 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1744 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1745 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1746 </tr>
1747 <tr>
1748 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1749 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1750 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1751 </tr>
1752 <tr>
1753 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1754 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1755 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1756 </tr>
1757 <tr>
1758 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1759 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1760 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1761 </tr>
1762 <tr>
1763 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1764 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1765 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1766 </tr>
1767 <tr>
1768 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1769 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1770 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1771 </tr>
1772 <tr>
1773 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1774 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1775 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1776 </tr>
1777 </tbody>
1778 </table>
1779 </div>
1780 <div class="sect2">
1781 <h3 id="_using_a_separate_pyro_battery_with_easymega">8.2. Using a Separate Pyro Battery with EasyMega</h3>
1782 <div class="paragraph">
1783 <p>EasyMega provides explicit support for an external pyro
1784 battery. All that is required is to remove the jumper
1785 between the lipo terminal (Bottom 3) and the pyro terminal
1786 (Bottom 2). Then hook the negative pyro battery terminal to
1787 ground (Bottom 1) and the switched positive pyro battery to
1788 the pyro battery input (Bottom 2). Note that you must include
1789 a switch between the pyro battery and the board for safety,
1790 as the on-board power switch circuit only supports the primary
1791 battery!  You can then use the existing pyro screw
1792 terminals to hook up all of the pyro charges.</p>
1793 </div>
1794 </div>
1795 <div class="sect2">
1796 <h3 id="_using_only_one_battery_with_easymega">8.3. Using Only One Battery With EasyMega</h3>
1797 <div class="paragraph">
1798 <p>Because EasyMega has built-in support for a separate pyro
1799 battery, if you want to fly with just one battery running
1800 both the computer and firing the charges, you need to
1801 connect the flight computer battery to the pyro
1802 circuit. EasyMega has two screw terminals for this—hook a
1803 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1804 (Bottom 2).</p>
1805 </div>
1806 </div>
1807 <div class="sect2">
1808 <h3 id="_using_an_active_switch_with_easymega">8.4. Using an Active Switch with EasyMega</h3>
1809 <div class="paragraph">
1810 <p>As explained above, an external active switch requires three
1811 connections, one to the positive battery terminal, one to
1812 the flight computer positive input and one to ground.</p>
1813 </div>
1814 <div class="paragraph">
1815 <p>The positive battery terminal is available on Top terminal
1816 1, the positive flight computer input is on Top terminal
1817 2. Ground is on Top terminal 3.</p>
1818 </div>
1819 </div>
1820 </div>
1821 </div>
1822 <div class="sect1">
1823 <h2 id="_easytimer">9. EasyTimer</h2>
1824 <div class="sectionbody">
1825 <div class="imageblock">
1826 <div class="content">
1827 <img src="easytimer.jpg" alt="easytimer" width="400">
1828 </div>
1829 <div class="title">Figure 8. EasyTimer Board</div>
1830 </div>
1831 <div class="paragraph">
1832 <p>EasyTimer is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1833 designed to fit in a 24mm coupler tube.</p>
1834 </div>
1835 <div class="paragraph">
1836 <p>EasyTimer is designed to control events during ascent. It has
1837 an accelerometer and gyroscope that can measure acceleration
1838 and rotation and compute speed and tilt angle. EasyTimer has
1839 two pyro channels which can be configured to fire at various
1840 points during flight. Because EasyTimer has no barometric
1841 sensor, it cannot be used to fire recovery charges at apogee
1842 or during descent. EasyTimer is configured using the AltosUI
1843 application which is available for Linux, Mac OS X and Windows.</p>
1844 </div>
1845 <div class="sect2">
1846 <h3 id="_easytimer_screw_terminals">9.1. EasyTimer Screw Terminals</h3>
1847 <div class="paragraph">
1848 <p>EasyTimer has two sets of four screw terminals near
1849 one end of the board. Using the picture above, the top
1850 four have connections for pyro channel B and an
1851 external battery and the bottom four have connections
1852 for pyro circuit A and the power switch. Counting from
1853 the left, the connections are as follows:</p>
1854 </div>
1855 <table class="tableblock frame-all grid-all stretch">
1856 <caption class="title">Table 9. EasyTimer Screw Terminals</caption>
1857 <colgroup>
1858 <col style="width: 13.3333%;">
1859 <col style="width: 20%;">
1860 <col style="width: 66.6667%;">
1861 </colgroup>
1862 <thead>
1863 <tr>
1864 <th class="tableblock halign-left valign-top">Terminal #</th>
1865 <th class="tableblock halign-left valign-top">Terminal Name</th>
1866 <th class="tableblock halign-left valign-top">Description</th>
1867 </tr>
1868 </thead>
1869 <tbody>
1870 <tr>
1871 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1872 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1873 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B connection to pyro circuit</p></td>
1874 </tr>
1875 <tr>
1876 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1877 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1878 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B common connection to battery +</p></td>
1879 </tr>
1880 <tr>
1881 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1882 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1883 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1884 </tr>
1885 <tr>
1886 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1887 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1888 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1889 </tr>
1890 <tr>
1891 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1892 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1893 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A connection to pyro circuit</p></td>
1894 </tr>
1895 <tr>
1896 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1897 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1898 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A common connection to battery +</p></td>
1899 </tr>
1900 <tr>
1901 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1902 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1903 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1904 </tr>
1905 <tr>
1906 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1907 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1908 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1909 </tr>
1910 </tbody>
1911 </table>
1912 </div>
1913 <div class="sect2">
1914 <h3 id="_connecting_a_battery_to_easytimer">9.2. Connecting A Battery To EasyTimer</h3>
1915 <div class="paragraph">
1916 <p>There are two possible battery connections on
1917 EasyTimer. You can use either method; both feed
1918 through the power switch terminals.</p>
1919 </div>
1920 <div class="paragraph">
1921 <p>One battery connection is the standard Altus Metrum
1922 white JST plug. This mates with single-cell Lithium
1923 Polymer batteries sold by Altus Metrum.</p>
1924 </div>
1925 <div class="paragraph">
1926 <p>The other is a pair of screw terminals marked 'Battery
1927 +' and 'Battery -'. Connect a battery from 4 to 12
1928 volts to these terminals, being careful to match polarity.</p>
1929 </div>
1930 </div>
1931 <div class="sect2">
1932 <h3 id="_charging_lithium_batteries_2">9.3. Charging Lithium Batteries</h3>
1933 <div class="paragraph">
1934 <p>Because EasyTimer allows for batteries other than the
1935 standard Altus Metrum Lithium Polymer cells, it cannot
1936 incorporate a battery charger circuit. Therefore, when
1937 using a Litium Polymer cell, you&#8217;ll need an external
1938 charger. These are available from Altus Metrum, or
1939 from Spark Fun.</p>
1940 </div>
1941 </div>
1942 <div class="sect2">
1943 <h3 id="_using_a_separate_pyro_battery_with_easytimer">9.4. Using a Separate Pyro Battery with EasyTimer</h3>
1944 <div class="paragraph">
1945 <p>As described above, using an external pyro battery involves
1946 connecting the negative battery terminal to the flight
1947 computer ground, connecting the positive battery terminal to
1948 one of the igniter leads and connecting the other igniter
1949 lead to the per-channel pyro circuit connection.</p>
1950 </div>
1951 <div class="paragraph">
1952 <p>To connect the negative pyro battery terminal to EasyTimer
1953 ground, connect it to the negative external battery
1954 connection, top terminal 4.</p>
1955 </div>
1956 <div class="paragraph">
1957 <p>Connecting the switched positive battery terminal to the pyro
1958 charges must be done separate from EasyTimer, by soldering
1959 them together or using some other connector.  Note that for
1960 safety, you must put a switch between the pyro battery and
1961 the rest of the circuit!</p>
1962 </div>
1963 <div class="paragraph">
1964 <p>The other lead from each pyro charge is then inserted into
1965 the appropriate per-pyro channel screw terminal (top
1966 terminal 1 for pyro channel A charge, bottom terminal 1 for
1967 pyro channel B charge).</p>
1968 </div>
1969 </div>
1970 <div class="sect2">
1971 <h3 id="_using_an_active_switch_with_easytimer">9.5. Using an Active Switch with EasyTimer</h3>
1972 <div class="paragraph">
1973 <p>As explained above, an external active switch requires three
1974 connections, one to the positive battery terminal, one to
1975 the flight computer positive input and one to ground. Use
1976 the negative external battery connection, top terminal 4 for
1977 ground.</p>
1978 </div>
1979 <div class="paragraph">
1980 <p>The positive battery terminal is available on bottom
1981 terminal 4, the positive flight computer input is on the
1982 bottom terminal 3.</p>
1983 </div>
1984 </div>
1985 </div>
1986 </div>
1987 <div class="sect1">
1988 <h2 id="_installation">10. Installation</h2>
1989 <div class="sectionbody">
1990 <div class="paragraph">
1991 <p>A typical installation involves attaching
1992 only a suitable battery, a single pole switch for
1993 power on/off, and two pairs of wires connecting e-matches for the
1994 apogee and main ejection charges.  All Altus Metrum products are
1995 designed for use with single-cell batteries with 3.7 volts
1996 nominal.
1997 EasyMini may also be used with other
1998 batteries as long as they supply between 4 and 12 volts.</p>
1999 </div>
2000 <div class="paragraph">
2001 <p>The battery connectors are a standard 2-pin JST connector; you
2002 can purchase suitable batteries from the any vendor selling
2003 Altus Metrum products. These batteries are
2004 single-cell Lithium Polymer batteries that nominally provide 3.7
2005 volts.  Other vendors sell similar batteries for RC aircraft
2006 using mating connectors, however the polarity for those is
2007 generally reversed from the batteries used by Altus Metrum
2008 products. In particular, the Tenergy batteries supplied for use
2009 in Featherweight flight computers are not compatible with Altus
2010 Metrum flight computers or battery chargers.</p>
2011 </div>
2012 <div class="admonitionblock warning">
2013 <table>
2014 <tr>
2015 <td class="icon">
2016 <img src="./images/icons/warning.svg" alt="Warning">
2017 </td>
2018 <td class="content">
2019 Check polarity and voltage before connecting any battery not
2020 purchased from Altus Metrum.
2021 </td>
2022 </tr>
2023 </table>
2024 </div>
2025 <div class="admonitionblock warning">
2026 <table>
2027 <tr>
2028 <td class="icon">
2029 <img src="./images/icons/warning.svg" alt="Warning">
2030 </td>
2031 <td class="content">
2032 Spark Fun sells batteries that have a matching connector with
2033 the correct polarity. However, these batteries include an
2034 integrated current limiting circuit. That circuit will cause
2035 the battery to shut down when firing the igniter circuit. Do
2036 not use these batteries unless you remove the current limiting
2037 circuit.
2038 </td>
2039 </tr>
2040 </table>
2041 </div>
2042 <div class="paragraph">
2043 <p>By default, we use the unregulated output of the battery
2044 directly to fire ejection charges.  This works marvelously
2045 with standard low-current e-matches like the J-Tek from MJG
2046 Technologies, and with Quest Q2G2 igniters.  However, if you
2047 want or need to use a separate pyro battery, check out
2048 <a href="#_using_a_separate_pyro_battery">Using a Separate Pyro Battery</a> for instructions on how to wire
2049 that up. The altimeters are designed to work with an external
2050 pyro battery of no more than 15 volts.</p>
2051 </div>
2052 <div class="paragraph">
2053 <p>Ejection charges are wired directly to the screw terminal block
2054 at the aft end of the altimeter.  You&#8217;ll need a very small straight
2055 blade screwdriver for these screws, such as you might find in a
2056 jeweler&#8217;s screwdriver set.</p>
2057 </div>
2058 <div class="paragraph">
2059 <p>Except for TeleMini v1.0, the flight computers also use the
2060 screw terminal block for the power switch leads. On TeleMini v1.0,
2061 the power switch leads are soldered directly to the board and
2062 can be connected directly to a switch.</p>
2063 </div>
2064 <div class="paragraph">
2065 <p>For most air-frames, the integrated antennas are more than
2066 adequate.   However, if you are installing in a carbon-fiber or
2067 metal electronics bay which is opaque to RF signals, you may need to
2068 use off-board external antennas instead.  In this case, you can
2069 replace the stock UHF antenna wire with an edge-launched SMA connector,
2070 and, on TeleMetrum v1, you can unplug the integrated GPS
2071 antenna and select an appropriate off-board GPS antenna with
2072 cable terminating in a U.FL connector.</p>
2073 </div>
2074 </div>
2075 </div>
2076 <div class="sect1">
2077 <h2 id="_using_altus_metrum_products">11. Using Altus Metrum Products</h2>
2078 <div class="sectionbody">
2079 <div class="sect2">
2080 <h3 id="_being_legal">11.1. Being Legal</h3>
2081 <div class="paragraph">
2082 <p>In the US, you need an
2083 <a href="http://www.altusmetrum.org/Radio/">amateur radio license</a>
2084 or other authorization to legally operate the radio
2085 transmitters that are part of our products.</p>
2086 </div>
2087 </div>
2088 <div class="sect2">
2089 <h3 id="_in_the_rocket">11.2. In the Rocket</h3>
2090 <div class="paragraph">
2091 <p>In the rocket itself, you just need a flight computer
2092 and a single-cell, 3.7 volt nominal Li-Po rechargeable
2093 battery.
2094 An 850mAh battery weighs less than a 9V
2095 alkaline battery, and will run a TeleMetrum, TeleMega,
2096 EasyMega or EasyTimer for hours.
2097 A 110mAh battery weighs less
2098 than a triple A battery and is a good choice for use
2099 with
2100 TeleMini or
2101 EasyMini.</p>
2102 </div>
2103 <div class="paragraph">
2104 <p>By default, we ship TeleMini, TeleMetrum and TeleMega
2105 flight computers with a simple wire antenna.  If your
2106 electronics bay or the air-frame it resides within is
2107 made of carbon fiber, which is opaque to RF signals,
2108 you may prefer to install an SMA connector so that you
2109 can run a coaxial cable to an antenna mounted
2110 elsewhere in the rocket.  However, note that the GPS
2111 antenna is fixed on all current products, so you
2112 really want to install the flight computer in a bay
2113 made of RF-transparent materials if at all possible.</p>
2114 </div>
2115 </div>
2116 <div class="sect2">
2117 <h3 id="_on_the_ground">11.3. On the Ground</h3>
2118 <div class="paragraph">
2119 <p>To receive the data stream from the rocket, you need
2120 an antenna and short feed-line connected to one of our
2121 <a href="http://www.altusmetrum.org/TeleDongle/">TeleDongle</a>
2122 units.  If possible, use an SMA to BNC adapter instead
2123 of feedline between the antenna feedpoint and
2124 TeleDongle, as this will give you the best
2125 performance.  The TeleDongle in turn plugs directly
2126 into the USB port on a notebook computer.  Because
2127 TeleDongle looks like a simple serial port, your
2128 computer does not require special device
2129 drivers&#8230;&#8203; just plug it in.</p>
2130 </div>
2131 <div class="paragraph">
2132 <p>The GUI tool, AltosUI, is written in Java and runs
2133 across Linux, Mac OS and Windows. There&#8217;s also a suite
2134 of C tools for Linux which can perform most of the
2135 same tasks.</p>
2136 </div>
2137 <div class="paragraph">
2138 <p>Alternatively, a TeleBT attached with an SMA to BNC
2139 adapter at the feed point of a hand-held yagi used in
2140 conjunction with an Android device running AltosDroid
2141 makes an outstanding ground station.</p>
2142 </div>
2143 <div class="paragraph">
2144 <p>After the flight,
2145 you can use the radio link to
2146 extract the more detailed data logged in either
2147 TeleMetrum or TeleMini devices, or
2148 you can use a
2149 USB cable to plug into the flight computer board directly.
2150 A USB cable is also how you
2151 charge the Li-Po battery, so you&#8217;ll want one of those
2152 anyway. The same cable used by lots of digital
2153 cameras and other modern electronic stuff will work
2154 fine.</p>
2155 </div>
2156 <div class="paragraph">
2157 <p>If your rocket lands out of sight, you may enjoy
2158 having a hand-held GPS receiver, so that you can put
2159 in a way-point for the last reported rocket position
2160 before touch-down.  This makes looking for your rocket
2161 a lot like Geo-Caching&#8230;&#8203; just go to the way-point and
2162 look around starting from there.  AltosDroid on an
2163 Android device with GPS receiver works great for this,
2164 too!</p>
2165 </div>
2166 <div class="paragraph">
2167 <p>You may also enjoy having a ham radio “HT” that covers
2168 the 70cm band&#8230;&#8203; you can use that with your antenna to
2169 direction-find the rocket on the ground the same way
2170 you can use a Walston or Beeline tracker.  This can be
2171 handy if the rocket is hiding in sage brush or a tree,
2172 or if the last GPS position doesn&#8217;t get you close
2173 enough because the rocket dropped into a canyon, or
2174 the wind is blowing it across a dry lake bed, or
2175 something like that&#8230;&#8203;  Keith currently uses a Yaesu
2176 FT1D, Bdale has a Yaesu VX-7R, which is a nicer radio
2177 in most ways but doesn&#8217;t support APRS.</p>
2178 </div>
2179 <div class="paragraph">
2180 <p>So, to recap, on the ground the hardware you&#8217;ll need includes:</p>
2181 </div>
2182 <div class="olist arabic">
2183 <ol class="arabic">
2184 <li>
2185 <p>an antenna and feed-line or adapter</p>
2186 </li>
2187 <li>
2188 <p>a TeleDongle</p>
2189 </li>
2190 <li>
2191 <p>a notebook computer</p>
2192 </li>
2193 <li>
2194 <p>optionally, a hand-held GPS receiver</p>
2195 </li>
2196 <li>
2197 <p>optionally, an HT or receiver covering 435 MHz</p>
2198 </li>
2199 </ol>
2200 </div>
2201 <div class="paragraph">
2202 <p>The best hand-held commercial directional antennas we&#8217;ve found for radio
2203 direction finding rockets are from
2204 <a href="http://www.arrowantennas.com/">Arrow Antennas</a>.</p>
2205 </div>
2206 <div class="paragraph">
2207 <p>The 440-3 and 440-5 are both good choices for finding
2208 a TeleMetrum- or TeleMini- equipped rocket when used
2209 with a suitable 70cm HT.  TeleDongle and an SMA to BNC
2210 adapter fit perfectly between the driven element and
2211 reflector of Arrow antennas.</p>
2212 </div>
2213 </div>
2214 <div class="sect2">
2215 <h3 id="_data_analysis">11.4. Data Analysis</h3>
2216 <div class="paragraph">
2217 <p>Our software makes it easy to log the data from each
2218 flight, both the telemetry received during the flight
2219 itself, and the more complete data log recorded in the
2220 flash memory on the altimeter board.  Once this data
2221 is on your computer, our post-flight tools make it
2222 easy to quickly get to the numbers everyone wants,
2223 like apogee altitude, max acceleration, and max
2224 velocity.  You can also generate and view a standard
2225 set of plots showing the altitude, acceleration, and
2226 velocity of the rocket during flight.  And you can
2227 even export a flight log in a format usable with Google
2228 Maps and Google Earth for visualizing the flight path
2229 in two or three dimensions!</p>
2230 </div>
2231 <div class="paragraph">
2232 <p>Our ultimate goal is to emit a set of files for each
2233 flight that can be published as a web page per flight,
2234 or just viewed on your local disk with a web browser.</p>
2235 </div>
2236 </div>
2237 <div class="sect2">
2238 <h3 id="_future_plans">11.5. Future Plans</h3>
2239 <div class="paragraph">
2240 <p>We have designed and prototyped several “companion
2241 boards” that can attach to the companion connector on
2242 TeleMetrum, TeleMega and EasyMega flight computers to
2243 collect more data, provide more pyro channels, and so
2244 forth.  We do not yet know if or when any of these
2245 boards will be produced in enough quantity to sell.
2246 If you have specific interests for data collection or
2247 control of events in your rockets beyond the
2248 capabilities of our existing productions, please let
2249 us know!</p>
2250 </div>
2251 <div class="paragraph">
2252 <p>Because all of our work is open, both the hardware
2253 designs and the software, if you have some great idea
2254 for an addition to the current Altus Metrum family,
2255 feel free to dive in and help!  Or let us know what
2256 you&#8217;d like to see that we aren&#8217;t already working on,
2257 and maybe we&#8217;ll get excited about it too&#8230;&#8203;</p>
2258 </div>
2259 <div class="paragraph">
2260 <p>Watch our <a href="http://altusmetrum.org/">web site</a> for
2261 more news and information as our family of products
2262 evolves!</p>
2263 </div>
2264 </div>
2265 </div>
2266 </div>
2267 <div class="sect1">
2268 <h2 id="_altosui">12. AltosUI</h2>
2269 <div class="sectionbody">
2270 <div class="imageblock">
2271 <div class="content">
2272 <img src="altosui.png" alt="altosui" width="450">
2273 </div>
2274 <div class="title">Figure 9. AltosUI Main Window</div>
2275 </div>
2276 <div class="paragraph">
2277 <p>The AltosUI program provides a graphical user interface for
2278 interacting with the Altus Metrum product family. AltosUI can
2279 monitor telemetry data, configure devices and many other
2280 tasks. The primary interface window provides a selection of
2281 buttons, one for each major activity in the system.  This
2282 chapter is split into sections, each of which documents one of
2283 the tasks provided from the top-level toolbar.</p>
2284 </div>
2285 <div class="sect2">
2286 <h3 id="_monitor_flight">12.1. Monitor Flight</h3>
2287 <div class="paragraph">
2288 <p>Selecting this item brings up a dialog box listing all
2289 of the connected TeleDongle devices. When you choose
2290 one of these, AltosUI will create a window to display
2291 telemetry data as received by the selected TeleDongle
2292 device.</p>
2293 </div>
2294 <div class="imageblock">
2295 <div class="content">
2296 <img src="device-selection.png" alt="device selection" width="300">
2297 </div>
2298 <div class="title">Figure 10. Device Selection Dialog</div>
2299 </div>
2300 <div class="paragraph">
2301 <p>All telemetry data received are automatically recorded
2302 in suitable log files. The name of the files includes
2303 the current date and rocket serial and flight numbers.</p>
2304 </div>
2305 <div class="paragraph">
2306 <p>The radio frequency being monitored by the TeleDongle
2307 device is displayed at the top of the window. You can
2308 configure the frequency by clicking on the frequency
2309 box and selecting the desired frequency. AltosUI
2310 remembers the last frequency selected for each
2311 TeleDongle and selects that automatically the next
2312 time you use that device.</p>
2313 </div>
2314 <div class="paragraph">
2315 <p>Below the TeleDongle frequency selector, the window
2316 contains a few significant pieces of information about
2317 the altimeter providing the telemetry data stream:</p>
2318 </div>
2319 <div class="ulist">
2320 <ul>
2321 <li>
2322 <p>The configured call-sign</p>
2323 </li>
2324 <li>
2325 <p>The device serial number</p>
2326 </li>
2327 <li>
2328 <p>The flight number. Each altimeter remembers how
2329 many times it has flown.</p>
2330 </li>
2331 <li>
2332 <p>The rocket flight state. Each flight passes through
2333 several states including Pad, Boost, Fast, Coast,
2334 Drogue, Main and Landed.</p>
2335 </li>
2336 <li>
2337 <p>The Received Signal Strength Indicator value. This
2338 lets you know how strong a signal TeleDongle is
2339 receiving. At the default data rate, 38400 bps, in
2340 bench testing, the radio inside TeleDongle v0.2
2341 operates down to about -106dBm, while the v3 radio
2342 works down to about -111dBm.  Weaker signals, or an
2343 environment with radio noise may cause the data to
2344 not be received. The packet link uses error
2345 detection and correction techniques which prevent
2346 incorrect data from being reported.</p>
2347 </li>
2348 <li>
2349 <p>The age of the displayed data, in seconds since the
2350 last successfully received telemetry packet.  In
2351 normal operation this will stay in the low single
2352 digits.  If the number starts counting up, then you
2353 are no longer receiving data over the radio link
2354 from the flight computer.</p>
2355 </li>
2356 </ul>
2357 </div>
2358 <div class="paragraph">
2359 <p>Finally, the largest portion of the window contains a
2360 set of tabs, each of which contain some information
2361 about the rocket.  They&#8217;re arranged in 'flight order'
2362 so that as the flight progresses, the selected tab
2363 automatically switches to display data relevant to the
2364 current state of the flight. You can select other tabs
2365 at any time. The final 'table' tab displays all of the
2366 raw telemetry values in one place in a
2367 spreadsheet-like format.</p>
2368 </div>
2369 <div class="sect3">
2370 <h4 id="_launch_pad">12.1.1. Launch Pad</h4>
2371 <div class="imageblock">
2372 <div class="content">
2373 <img src="launch-pad.png" alt="launch pad" width="400">
2374 </div>
2375 <div class="title">Figure 11. Monitor Flight Launch Pad View</div>
2376 </div>
2377 <div class="paragraph">
2378 <p>The 'Launch Pad' tab shows information used to decide when the
2379 rocket is ready for flight. The first elements include red/green
2380 indicators, if any of these is red, you&#8217;ll want to evaluate
2381 whether the rocket is ready to launch:</p>
2382 </div>
2383 <div class="dlist">
2384 <dl>
2385 <dt class="hdlist1">Battery Voltage</dt>
2386 <dd>
2387 <p>This indicates whether the Li-Po battery powering the
2388 flight computer has sufficient charge to last for
2389 the duration of the flight. A value of more than
2390 3.8V is required for a 'GO' status.</p>
2391 </dd>
2392 <dt class="hdlist1">Apogee Igniter Voltage</dt>
2393 <dd>
2394 <p>This indicates whether the apogee
2395 igniter has continuity. If the igniter has a low
2396 resistance, then the voltage measured here will be close
2397 to the Li-Po battery voltage. A value greater than 3.2V is
2398 required for a 'GO' status.</p>
2399 </dd>
2400 <dt class="hdlist1">Main Igniter Voltage</dt>
2401 <dd>
2402 <p>This indicates whether the main
2403 igniter has continuity. If the igniter has a low
2404 resistance, then the voltage measured here will be close
2405 to the Li-Po battery voltage. A value greater than 3.2V is
2406 required for a 'GO' status.</p>
2407 </dd>
2408 <dt class="hdlist1">On-board Data Logging</dt>
2409 <dd>
2410 <p>This indicates whether there is space remaining
2411 on-board to store flight data for the upcoming
2412 flight. If you&#8217;ve downloaded data, but failed to erase
2413 flights, there may not be any space left. Most of our
2414 flight computers can store multiple flights, depending
2415 on the configured maximum flight log size. TeleMini
2416 v1.0 stores only a single flight, so it will need to
2417 be downloaded and erased after each flight to capture
2418 data. This only affects on-board flight logging; the
2419 altimeter will still transmit telemetry and fire
2420 ejection charges at the proper times even if the
2421 flight data storage is full.</p>
2422 </dd>
2423 <dt class="hdlist1">GPS Locked</dt>
2424 <dd>
2425 <p>For a TeleMetrum or TeleMega device, this indicates
2426 whether the GPS receiver is currently able to compute
2427 position information. GPS requires at least 4
2428 satellites to compute an accurate position.</p>
2429 </dd>
2430 <dt class="hdlist1">GPS Ready</dt>
2431 <dd>
2432 <p>For a TeleMetrum or TeleMega device, this indicates
2433 whether GPS has reported at least 10 consecutive
2434 positions without losing lock. This ensures that the
2435 GPS receiver has reliable reception from the
2436 satellites.</p>
2437 </dd>
2438 </dl>
2439 </div>
2440 <div class="paragraph">
2441 <p>The Launchpad tab also shows the computed launch pad
2442 position and altitude, averaging many reported
2443 positions to improve the accuracy of the fix.</p>
2444 </div>
2445 </div>
2446 <div class="sect3">
2447 <h4 id="_ascent">12.1.2. Ascent</h4>
2448 <div class="imageblock">
2449 <div class="content">
2450 <img src="ascent.png" alt="ascent" width="400">
2451 </div>
2452 <div class="title">Figure 12. Monitor Flight Ascent View</div>
2453 </div>
2454 <div class="paragraph">
2455 <p>This tab is shown during Boost, Fast and Coast
2456 phases. The information displayed here helps monitor the
2457 rocket as it heads towards apogee.</p>
2458 </div>
2459 <div class="paragraph">
2460 <p>The height, speed, acceleration and tilt are shown along
2461 with the maximum values for each of them. This allows you to
2462 quickly answer the most commonly asked questions you&#8217;ll hear
2463 during flight.</p>
2464 </div>
2465 <div class="paragraph">
2466 <p>The current latitude and longitude reported by the GPS are
2467 also shown. Note that under high acceleration, these values
2468 may not get updated as the GPS receiver loses position
2469 fix. Once the rocket starts coasting, the receiver should
2470 start reporting position again.</p>
2471 </div>
2472 <div class="paragraph">
2473 <p>Finally, the current igniter voltages are reported as in the
2474 Launch Pad tab. This can help diagnose deployment failures
2475 caused by wiring which comes loose under high acceleration.</p>
2476 </div>
2477 </div>
2478 <div class="sect3">
2479 <h4 id="_descent">12.1.3. Descent</h4>
2480 <div class="imageblock">
2481 <div class="content">
2482 <img src="descent.png" alt="descent" width="400">
2483 </div>
2484 <div class="title">Figure 13. Monitor Flight Descent View</div>
2485 </div>
2486 <div class="paragraph">
2487 <p>Once the rocket has reached apogee and (we hope)
2488 activated the apogee charge, attention switches to
2489 tracking the rocket on the way back to the ground, and
2490 for dual-deploy flights, waiting for the main charge
2491 to fire.</p>
2492 </div>
2493 <div class="paragraph">
2494 <p>To monitor whether the apogee charge operated
2495 correctly, the current descent rate is reported along
2496 with the current height. Good descent rates vary based
2497 on the choice of recovery components, but generally
2498 range from 15-30m/s on drogue and should be below
2499 10m/s when under the main parachute in a dual-deploy
2500 flight.</p>
2501 </div>
2502 <div class="paragraph">
2503 <p>With GPS-equipped flight computers, you can locate the
2504 rocket in the sky using the elevation and bearing
2505 information to figure out where to look. Elevation is
2506 in degrees above the horizon. Bearing is reported in
2507 degrees relative to true north. Range can help figure
2508 out how big the rocket will appear. Ground Distance
2509 shows how far it is to a point directly under the
2510 rocket and can help figure out where the rocket is
2511 likely to land. Note that all of these values are
2512 relative to the pad location. If the elevation is near
2513 90°, the rocket is over the pad, not over you.</p>
2514 </div>
2515 <div class="paragraph">
2516 <p>Finally, the igniter voltages are reported in this tab
2517 as well, both to monitor the main charge as well as to
2518 see what the status of the apogee charge is.  Note
2519 that some commercial e-matches are designed to retain
2520 continuity even after being fired, and will continue
2521 to show as green or return from red to green after
2522 firing.</p>
2523 </div>
2524 </div>
2525 <div class="sect3">
2526 <h4 id="_landed">12.1.4. Landed</h4>
2527 <div class="imageblock">
2528 <div class="content">
2529 <img src="landed.png" alt="landed" width="400">
2530 </div>
2531 <div class="title">Figure 14. Monitor Flight Landed View</div>
2532 </div>
2533 <div class="paragraph">
2534 <p>Once the rocket is on the ground, attention switches
2535 to recovery. While the radio signal is often lost once
2536 the rocket is on the ground, the last reported GPS
2537 position is generally within a short distance of the
2538 actual landing location.</p>
2539 </div>
2540 <div class="paragraph">
2541 <p>The last reported GPS position is reported both by
2542 latitude and longitude as well as a bearing and
2543 distance from the launch pad. The distance should give
2544 you a good idea of whether to walk or hitch a ride.
2545 Take the reported latitude and longitude and enter
2546 them into your hand-held GPS unit and have that
2547 compute a track to the landing location.</p>
2548 </div>
2549 <div class="paragraph">
2550 <p>Our flight computers will continue to transmit RDF
2551 tones after landing, allowing you to locate the rocket
2552 by following the radio signal if necessary. You may
2553 need to get away from the clutter of the flight line,
2554 or even get up on a hill (or your neighbor&#8217;s RV roof)
2555 to receive the RDF signal.</p>
2556 </div>
2557 <div class="paragraph">
2558 <p>The maximum height, speed and acceleration reported
2559 during the flight are displayed for your admiring
2560 observers.  The accuracy of these immediate values
2561 depends on the quality of your radio link and how many
2562 packets were received.  Recovering the on-board data
2563 after flight may yield more precise results.</p>
2564 </div>
2565 <div class="paragraph">
2566 <p>To get more detailed information about the flight, you
2567 can click on the 'Graph Flight' button which will
2568 bring up a graph window for the current flight.</p>
2569 </div>
2570 </div>
2571 <div class="sect3">
2572 <h4 id="_table">12.1.5. Table</h4>
2573 <div class="imageblock">
2574 <div class="content">
2575 <img src="table.png" alt="table" width="400">
2576 </div>
2577 <div class="title">Figure 15. Monitor Flight Table View</div>
2578 </div>
2579 <div class="paragraph">
2580 <p>The table view shows all of the data available from the
2581 flight computer. Probably the most useful data on
2582 this tab is the detailed GPS information, which includes
2583 horizontal dilution of precision information, and
2584 information about the signal being received from the satellites.</p>
2585 </div>
2586 </div>
2587 <div class="sect3">
2588 <h4 id="_site_map">12.1.6. Site Map</h4>
2589 <div class="imageblock">
2590 <div class="content">
2591 <img src="site-map.png" alt="site map" width="400">
2592 </div>
2593 <div class="title">Figure 16. Monitor Flight Site Map View</div>
2594 </div>
2595 <div class="paragraph">
2596 <p>When the TeleMetrum has a GPS fix, the Site Map tab
2597 will map the rocket&#8217;s position to make it easier for
2598 you to locate the rocket, both while it is in the air,
2599 and when it has landed. The rocket&#8217;s state is
2600 indicated by color: white for pad, red for boost, pink
2601 for fast, yellow for coast, light blue for drogue,
2602 dark blue for main, and black for landed.</p>
2603 </div>
2604 <div class="paragraph">
2605 <p>The map&#8217;s default scale is approximately 3m (10ft) per
2606 pixel. The map can be dragged using the left mouse
2607 button. The map will attempt to keep the rocket
2608 roughly centered while data is being received.</p>
2609 </div>
2610 <div class="paragraph">
2611 <p>You can adjust the style of map and the zoom level
2612 with buttons on the right side of the map window. You
2613 can draw a line on the map by moving the mouse over
2614 the map with a button other than the left one pressed,
2615 or by pressing the left button while also holding down
2616 the shift key. The length of the line in real-world
2617 units will be shown at the start of the line.</p>
2618 </div>
2619 <div class="paragraph">
2620 <p>Images are fetched automatically via the Google Maps
2621 Static API, and cached on disk for reuse. If map
2622 images cannot be downloaded, the rocket&#8217;s path will be
2623 traced on a dark gray background instead.</p>
2624 </div>
2625 <div class="paragraph">
2626 <p>You can pre-load images for your favorite launch sites
2627 before you leave home; check out <a href="#_load_maps">Load Maps</a>.</p>
2628 </div>
2629 </div>
2630 <div class="sect3">
2631 <h4 id="_igniter">12.1.7. Igniter</h4>
2632 <div class="imageblock">
2633 <div class="content">
2634 <img src="ignitor.png" alt="ignitor" width="400">
2635 </div>
2636 <div class="title">Figure 17. Monitor Flight Additional Igniter View</div>
2637 </div>
2638 <div class="paragraph">
2639 <p>TeleMega includes four additional programmable pyro
2640 channels. The Ignitor tab shows whether each of them has
2641 continuity. If an ignitor has a low resistance, then the
2642 voltage measured here will be close to the pyro battery
2643 voltage. A value greater than 3.2V is required for a 'GO'
2644 status.</p>
2645 </div>
2646 </div>
2647 </div>
2648 <div class="sect2">
2649 <h3 id="_save_flight_data">12.2. Save Flight Data</h3>
2650 <div class="paragraph">
2651 <p>The altimeter records flight data to its internal
2652 flash memory.
2653 Data logged on board is recorded at a much
2654 higher rate than the telemetry system can handle, and
2655 is not subject to radio drop-outs. As such, it
2656 provides a more complete and precise record of the
2657 flight.
2658 The 'Save Flight Data' button allows you to
2659 read the flash memory and write it to disk.</p>
2660 </div>
2661 <div class="paragraph">
2662 <p>Clicking on the 'Save Flight Data' button brings up a
2663 list of connected flight computers and TeleDongle
2664 devices. If you select a flight computer, the flight
2665 data will be downloaded from that device directly.
2666 If you select a TeleDongle device, flight data will be
2667 downloaded from a flight computer over radio link via
2668 the specified TeleDongle. See
2669 <a href="#_controlling_an_altimeter_over_the_radio_link">Controlling An Altimeter Over The Radio Link</a> for
2670 more information.</p>
2671 </div>
2672 <div class="paragraph">
2673 <p>After the device has been selected, a dialog showing
2674 the flight data saved in the device will be shown
2675 allowing you to select which flights to download and
2676 which to delete. With version 0.9 or newer firmware,
2677 you must erase flights in order for the space they
2678 consume to be reused by another flight. This prevents
2679 accidentally losing flight data if you neglect to
2680 download data before flying again. Note that if there
2681 is no more space available in the device, then no data
2682 will be recorded during the next flight.</p>
2683 </div>
2684 <div class="paragraph">
2685 <p>The file name for each flight log is computed
2686 automatically from the recorded flight date, altimeter
2687 serial number and flight number information.</p>
2688 </div>
2689 </div>
2690 <div class="sect2">
2691 <h3 id="_replay_flight">12.3. Replay Flight</h3>
2692 <div class="paragraph">
2693 <p>Select this button and you are prompted to select a flight
2694 record file, either a .telem file recording telemetry data or a
2695 .eeprom file containing flight data saved from the altimeter
2696 flash memory.</p>
2697 </div>
2698 <div class="paragraph">
2699 <p>Once a flight record is selected, the flight monitor interface
2700 is displayed and the flight is re-enacted in real
2701 time.
2702 Check
2703 <a href="#_monitor_flight">Monitor Flight</a> to learn how this window operates.</p>
2704 </div>
2705 </div>
2706 <div class="sect2">
2707 <h3 id="_graph_data">12.4. Graph Data</h3>
2708 <div class="paragraph">
2709 <p>Select this button and you are prompted to select a flight
2710 record file, either a .telem file recording telemetry data or a
2711 .eeprom file containing flight data saved from
2712 flash memory.</p>
2713 </div>
2714 <div class="paragraph">
2715 <p>Note that telemetry files will generally produce poor graphs
2716 due to the lower sampling rate and missed telemetry packets.
2717 Use saved flight data in .eeprom files for graphing where possible.</p>
2718 </div>
2719 <div class="paragraph">
2720 <p>Once a flight record is selected, a window with multiple tabs is
2721 opened.</p>
2722 </div>
2723 <div class="sect3">
2724 <h4 id="_flight_graph">12.4.1. Flight Graph</h4>
2725 <div class="imageblock">
2726 <div class="content">
2727 <img src="graph.png" alt="graph" width="400">
2728 </div>
2729 <div class="title">Figure 18. Flight Data Graph</div>
2730 </div>
2731 <div class="paragraph">
2732 <p>By default, the graph contains acceleration (blue),
2733 velocity (green) and altitude (red).</p>
2734 </div>
2735 <div class="paragraph">
2736 <p>The graph can be zoomed into a particular area by
2737 clicking and dragging down and to the right. Once
2738 zoomed, the graph can be reset by clicking and
2739 dragging up and to the left. Holding down control and
2740 clicking and dragging allows the graph to be panned.
2741 The right mouse button causes a pop-up menu to be
2742 displayed, giving you the option save or print the
2743 plot.</p>
2744 </div>
2745 </div>
2746 <div class="sect3">
2747 <h4 id="_configure_graph">12.4.2. Configure Graph</h4>
2748 <div class="imageblock">
2749 <div class="content">
2750 <img src="graph-configure.png" alt="graph configure" width="400">
2751 </div>
2752 <div class="title">Figure 19. Flight Graph Configuration</div>
2753 </div>
2754 <div class="paragraph">
2755 <p>This selects which graph elements to show, and, at the
2756 very bottom. It also lets you configure how
2757 the graph is drawn:</p>
2758 </div>
2759 <div class="ulist">
2760 <ul>
2761 <li>
2762 <p>Whether to use metric or imperial units</p>
2763 </li>
2764 <li>
2765 <p>Whether to show a marker at each data
2766 point. When displaying a small section of
2767 the graph, these can be useful to know what
2768 data values were recorded.</p>
2769 </li>
2770 <li>
2771 <p>How wide to draw the lines in the graph</p>
2772 </li>
2773 <li>
2774 <p>How to filter speed and acceleration data
2775 computed from barometric data. Flight
2776 computers with accelerometers never display
2777 computed acceleration data, and only use
2778 barometric data to compute speed during
2779 descent. Flight computers without
2780 accelerometers always compute both speed and
2781 acceleration from barometric data. A larger
2782 value smooths the data more.</p>
2783 </li>
2784 </ul>
2785 </div>
2786 </div>
2787 <div class="sect3">
2788 <h4 id="_flight_statistics">12.4.3. Flight Statistics</h4>
2789 <div class="imageblock">
2790 <div class="content">
2791 <img src="graph-stats.png" alt="graph stats" width="400">
2792 </div>
2793 <div class="title">Figure 20. Flight Statistics</div>
2794 </div>
2795 <div class="paragraph">
2796 <p>Shows overall data computed from the flight.</p>
2797 </div>
2798 </div>
2799 <div class="sect3">
2800 <h4 id="_map">12.4.4. Map</h4>
2801 <div class="imageblock">
2802 <div class="content">
2803 <img src="graph-map.png" alt="graph map" width="400">
2804 </div>
2805 <div class="title">Figure 21. Flight Map</div>
2806 </div>
2807 <div class="paragraph">
2808 <p>Shows a satellite image of the flight area
2809 overlaid with the path of the flight. The
2810 flight path will have different colored
2811 sections for each state of the flight (just
2812 like the Site Map in Monitor Flight mode):
2813 white for pad, red for boost, pink for fast,
2814 yellow for coast, light blue for drogue, dark
2815 blue for main, and black for landed.</p>
2816 </div>
2817 <div class="paragraph">
2818 <p>The red concentric circles mark the launch
2819 pad, the black concentric circles mark the
2820 landing location. Data for the point along the
2821 along the flight path nearest the cursor will
2822 be displayed at the bottom of the window. This
2823 data includes flight time (so you can
2824 correlate data in the graph window), latitude,
2825 longitude, height above ground and vertical
2826 speed. The selected point will be highlighted
2827 with concentric circles in the same color as
2828 the flight path at that point.</p>
2829 </div>
2830 </div>
2831 </div>
2832 <div class="sect2">
2833 <h3 id="_export_data">12.5. Export Data</h3>
2834 <div class="paragraph">
2835 <p>This tool takes the raw data files and makes them
2836 available for external analysis. When you select this
2837 button, you are prompted to select a flight data file,
2838 which can be either a .eeprom or .telem.  The .eeprom
2839 files contain higher resolution and more continuous
2840 data, while .telem files contain receiver signal
2841 strength information.  Next, a second dialog appears
2842 which is used to select where to write the resulting
2843 file.
2844 It has a selector to choose between CSV and KML
2845 file formats.</p>
2846 </div>
2847 <div class="sect3">
2848 <h4 id="_comma_separated_value_format">12.5.1. Comma Separated Value Format</h4>
2849 <div class="paragraph">
2850 <p>This is a text file containing the data in a form
2851 suitable for import into a spreadsheet or other
2852 external data analysis tool. The first few lines of
2853 the file contain the version and configuration
2854 information from the altimeter, then there is a single
2855 header line which labels all of the fields. All of
2856 these lines start with a '#' character which many
2857 tools can be configured to skip over.</p>
2858 </div>
2859 <div class="paragraph">
2860 <p>The remaining lines of the file contain the data, with
2861 each field separated by a comma and at least one
2862 space. All of the sensor values are converted to
2863 standard units, with the barometric data reported in
2864 both pressure, altitude and height above pad units.</p>
2865 </div>
2866 </div>
2867 <div class="sect3">
2868 <h4 id="_keyhole_markup_language_for_google_earth">12.5.2. Keyhole Markup Language (for Google Earth)</h4>
2869 <div class="paragraph">
2870 <p>This is the format used by Google Earth to provide an
2871 overlay within that application. With this, you can
2872 use Google Earth to see the whole flight path
2873 in 3D.</p>
2874 </div>
2875 </div>
2876 </div>
2877 <div class="sect2">
2878 <h3 id="_configure_altimeter">12.6. Configure Altimeter</h3>
2879 <div class="imageblock">
2880 <div class="content">
2881 <img src="configure-altimeter.png" alt="configure altimeter" width="350">
2882 </div>
2883 <div class="title">Figure 22. Altimeter Configuration</div>
2884 </div>
2885 <div class="paragraph">
2886 <p>Select this button and then select either an altimeter or
2887 TeleDongle Device from the list provided. Selecting a TeleDongle
2888 device will use the radio link to configure a remote
2889 altimeter.</p>
2890 </div>
2891 <div class="paragraph">
2892 <p>The first few lines of the dialog provide information about the
2893 connected device, including the product name,
2894 software version and hardware serial number. Below that are the
2895 individual configuration entries.</p>
2896 </div>
2897 <div class="paragraph">
2898 <p>At the bottom of the dialog, there are four buttons:</p>
2899 </div>
2900 <div class="dlist">
2901 <dl>
2902 <dt class="hdlist1">Save</dt>
2903 <dd>
2904 <p>This writes any changes to the configuration parameter
2905 block in flash memory. If you don&#8217;t press this button,
2906 any changes you make will be lost.</p>
2907 </dd>
2908 <dt class="hdlist1">Reset</dt>
2909 <dd>
2910 <p>This resets the dialog to the most recently saved
2911 values, erasing any changes you have made.</p>
2912 </dd>
2913 <dt class="hdlist1">Reboot</dt>
2914 <dd>
2915 <p>This reboots the device. Use this to switch from idle
2916 to pad mode by rebooting once the rocket is oriented
2917 for flight, or to confirm changes you think you saved
2918 are really saved.</p>
2919 </dd>
2920 <dt class="hdlist1">Close</dt>
2921 <dd>
2922 <p>This closes the dialog. Any unsaved changes will be
2923 lost.</p>
2924 </dd>
2925 </dl>
2926 </div>
2927 <div class="paragraph">
2928 <p>The rest of the dialog contains the parameters to be configured.</p>
2929 </div>
2930 <div class="sect3">
2931 <h4 id="_main_deploy_altitude">12.6.1. Main Deploy Altitude</h4>
2932 <div class="paragraph">
2933 <p>This sets the altitude (above the recorded pad
2934 altitude) at which the 'main' igniter will fire. The
2935 drop-down menu shows some common values, but you can
2936 edit the text directly and choose whatever you
2937 like. If the apogee charge fires below this altitude,
2938 then the main charge will fire two seconds after the
2939 apogee charge fires.</p>
2940 </div>
2941 </div>
2942 <div class="sect3">
2943 <h4 id="_apogee_delay">12.6.2. Apogee Delay</h4>
2944 <div class="paragraph">
2945 <p>When flying redundant electronics, it&#8217;s often
2946 important to ensure that multiple apogee charges don&#8217;t
2947 fire at precisely the same time, as that can over
2948 pressurize the apogee deployment bay and cause a
2949 structural failure of the air-frame. The Apogee Delay
2950 parameter tells the flight computer to fire the apogee
2951 charge a certain number of seconds after apogee has
2952 been detected.</p>
2953 </div>
2954 </div>
2955 <div class="sect3">
2956 <h4 id="_apogee_lockout">12.6.3. Apogee Lockout</h4>
2957 <div class="paragraph">
2958 <p>Apogee lockout is the number of seconds after launch
2959 where the flight computer will not fire the apogee
2960 charge, even if the rocket appears to be at
2961 apogee. This is often called 'Mach Delay', as it is
2962 intended to prevent a flight computer from
2963 unintentionally firing apogee charges due to the
2964 pressure spike that occurrs across a mach
2965 transition. Altus Metrum flight computers include a
2966 Kalman filter which is not fooled by this sharp
2967 pressure increase, and so this setting should be left
2968 at the default value of zero to disable it.</p>
2969 </div>
2970 <div class="admonitionblock warning">
2971 <table>
2972 <tr>
2973 <td class="icon">
2974 <img src="./images/icons/warning.svg" alt="Warning">
2975 </td>
2976 <td class="content">
2977 Firmware versions older than 1.8.6 have a
2978 bug which resets the time since launch to zero each
2979 time a motor starts burning. Update firmware to get
2980 the correct behavior.
2981 </td>
2982 </tr>
2983 </table>
2984 </div>
2985 </div>
2986 <div class="sect3">
2987 <h4 id="_frequency">12.6.4. Frequency</h4>
2988 <div class="paragraph">
2989 <p>This configures which of the frequencies to use for
2990 both telemetry and packet command mode. Note that if
2991 you set this value via packet command mode, the
2992 TeleDongle frequency will also be automatically
2993 reconfigured to match so that communication will
2994 continue afterwards.</p>
2995 </div>
2996 </div>
2997 <div class="sect3">
2998 <h4 id="_rf_calibration">12.6.5. RF Calibration</h4>
2999 <div class="paragraph">
3000 <p>The radios in every Altus Metrum device are calibrated
3001 at the factory to ensure that they transmit and
3002 receive on the specified frequency.  If you need to
3003 you can adjust the calibration by changing this value.
3004 Do not do this without understanding what the value
3005 means, read the appendix on calibration and/or the
3006 source code for more information.  To change a
3007 TeleDongle&#8217;s calibration, you must reprogram the unit
3008 completely.</p>
3009 </div>
3010 </div>
3011 <div class="sect3">
3012 <h4 id="_telemetryrdfaprs_enable">12.6.6. Telemetry/RDF/APRS Enable</h4>
3013 <div class="paragraph">
3014 <p>Enables the radio for transmission during
3015 flight. When disabled, the radio will not
3016 transmit anything during flight at all.</p>
3017 </div>
3018 </div>
3019 <div class="sect3">
3020 <h4 id="_limit_transmit_to_10mw">12.6.7. Limit transmit to 10mW</h4>
3021 <div class="paragraph">
3022 <p>Reduces transmit power to no more than 10mW. This is
3023 useful when operating under some UK radio regulations.</p>
3024 </div>
3025 </div>
3026 <div class="sect3">
3027 <h4 id="_telemetry_baud_rate">12.6.8. Telemetry baud rate</h4>
3028 <div class="paragraph">
3029 <p>This sets the modulation bit rate for data
3030 transmission for both telemetry and packet
3031 link mode. Lower bit rates will increase range
3032 while reducing the amount of data that can be
3033 sent and increasing battery consumption. All
3034 telemetry is done using a rate 1/2 constraint
3035 4 convolution code, so the actual data
3036 transmission rate is 1/2 of the modulation bit
3037 rate specified here.</p>
3038 </div>
3039 </div>
3040 <div class="sect3">
3041 <h4 id="_aprs_interval">12.6.9. APRS Interval</h4>
3042 <div class="paragraph">
3043 <p>How often to transmit GPS information via APRS
3044 (in seconds). When set to zero, APRS
3045 transmission is disabled.
3046 This option is
3047 available on TeleMetrum v2 or newer and TeleMega
3048 boards. TeleMetrum v1 boards cannot transmit
3049 APRS packets.
3050 Note that a single APRS packet
3051 takes nearly a full second to transmit, so
3052 enabling this option will prevent sending any
3053 other telemetry during that time.</p>
3054 </div>
3055 </div>
3056 <div class="sect3">
3057 <h4 id="_aprs_ssid">12.6.10. APRS SSID</h4>
3058 <div class="paragraph">
3059 <p>Which SSID to report in APRS packets. By
3060 default, this is set to the last digit of the
3061 serial number, but can be configured to any
3062 value from 0 to 9.</p>
3063 </div>
3064 </div>
3065 <div class="sect3">
3066 <h4 id="_aprs_format">12.6.11. APRS Format</h4>
3067 <div class="paragraph">
3068 <p>Whether to send APRS data in Compressed or
3069 Uncompressed format. Compressed format is
3070 smaller and more precise. Uncompressed
3071 format is older, but may work better with your
3072 device. The Kenwood TH-D72 only displays
3073 altitude information with Uncompressed
3074 format, while the Yaesu FT1D only displays
3075 altitude with Compressed format. Test before
3076 you fly to see which to use.</p>
3077 </div>
3078 </div>
3079 <div class="sect3">
3080 <h4 id="_aprs_offset">12.6.12. APRS Offset</h4>
3081 <div class="paragraph">
3082 <p>The delay from the top of the minute before sending
3083 the first APRS packet of the minute. Coordinating
3084 values for this parameter between multiple devices can
3085 allow a single receiver to reliably receive APRS
3086 packets from multiple devices. Note that this offset only
3087 takes effect while the GPS signal is locked so that the
3088 transmitting device knows the current time.</p>
3089 </div>
3090 </div>
3091 <div class="sect3">
3092 <h4 id="_callsign">12.6.13. Callsign</h4>
3093 <div class="paragraph">
3094 <p>This sets the call sign included in each
3095 telemetry packet. Set this as needed to
3096 conform to your local radio regulations.</p>
3097 </div>
3098 </div>
3099 <div class="sect3">
3100 <h4 id="_maximum_flight_log_size">12.6.14. Maximum Flight Log Size</h4>
3101 <div class="paragraph">
3102 <p>This sets the space (in kilobytes) allocated
3103 for each flight log. The available space will
3104 be divided into chunks of this size. A smaller
3105 value will allow more flights to be stored, a
3106 larger value will record data from longer
3107 flights.</p>
3108 </div>
3109 </div>
3110 <div class="sect3">
3111 <h4 id="_ignitor_firing_mode">12.6.15. Ignitor Firing Mode</h4>
3112 <div class="paragraph">
3113 <p>This configuration parameter allows the two standard ignitor
3114 channels (Apogee and Main) to be used in different
3115 configurations.</p>
3116 </div>
3117 <div class="dlist">
3118 <dl>
3119 <dt class="hdlist1">Dual Deploy</dt>
3120 <dd>
3121 <p>This is the usual mode of operation; the
3122 'apogee' channel is fired at apogee and the
3123 'main' channel at the height above ground
3124 specified by the 'Main Deploy Altitude' during
3125 descent.</p>
3126 </dd>
3127 <dt class="hdlist1">Redundant Apogee</dt>
3128 <dd>
3129 <p>This fires both channels at apogee, the
3130 'apogee' channel first followed after a two
3131 second delay by the 'main' channel.</p>
3132 </dd>
3133 <dt class="hdlist1">Redundant Main</dt>
3134 <dd>
3135 <p>This fires both channels at the height above
3136 ground specified by the Main Deploy Altitude
3137 setting during descent. The 'apogee' channel
3138 is fired first, followed after a two second
3139 delay by the 'main' channel.</p>
3140 </dd>
3141 <dt class="hdlist1">Separation &amp; Apogee</dt>
3142 <dd>
3143 <p>This fires the 'main' channel when the first motor
3144 burns out and fires the 'apogee' charge at apogee.</p>
3145 </dd>
3146 </dl>
3147 </div>
3148 </div>
3149 <div class="sect3">
3150 <h4 id="_pad_orientation">12.6.16. Pad Orientation</h4>
3151 <div class="paragraph">
3152 <p>Because they include accelerometers,
3153 TeleMetrum, TeleMega and EasyMega are
3154 sensitive to the orientation of the board. By
3155 default, they expect the antenna end to point
3156 forward. This parameter allows that default to
3157 be changed, permitting the board to be mounted
3158 with the antenna pointing aft instead.</p>
3159 </div>
3160 <div class="dlist">
3161 <dl>
3162 <dt class="hdlist1">Antenna Up</dt>
3163 <dd>
3164 <p>In this mode, the antenna (or beeper, for devices
3165 without an antenna) of the flight computer must point
3166 forward, in line with the expected flight path.</p>
3167 </dd>
3168 <dt class="hdlist1">Antenna Down</dt>
3169 <dd>
3170 <p>In this mode, the antenna (or beeper, for devices
3171 without an antenna) end of the flight computer must
3172 point aft, in line with the expected flight path.</p>
3173 </dd>
3174 </dl>
3175 </div>
3176 </div>
3177 <div class="sect3">
3178 <h4 id="_beeper_frequency">12.6.17. Beeper Frequency</h4>
3179 <div class="paragraph">
3180 <p>The beeper on all Altus Metrum flight
3181 computers works best at 4000Hz, however if you
3182 have more than one flight computer in a single
3183 airframe, having all of them sound at the same
3184 frequency can be confusing. This parameter
3185 lets you adjust the base beeper frequency
3186 value.</p>
3187 </div>
3188 </div>
3189 <div class="sect3">
3190 <h4 id="_logging_trigger_motion">12.6.18. Logging Trigger Motion</h4>
3191 <div class="paragraph">
3192 <p>This sets the amount of motion that TeleGPS
3193 needs to see before logging the new
3194 position. Motions smaller than this are
3195 skipped, which saves storage space.</p>
3196 </div>
3197 </div>
3198 <div class="sect3">
3199 <h4 id="_position_reporting_interval">12.6.19. Position Reporting Interval</h4>
3200 <div class="paragraph">
3201 <p>The interval between TeleGPS position reports,
3202 both over the air and in the log. Increase
3203 this to reduce the frequency of radio
3204 transmissions and the length of time available
3205 in the log.</p>
3206 </div>
3207 </div>
3208 <div class="sect3">
3209 <h4 id="_calibrate_accelerometer">12.6.20. Calibrate Accelerometer</h4>
3210 <div class="paragraph">
3211 <p>This opens a separate window to recalibrate the
3212 accelerometers. Follow the instructions, orienting the
3213 flight computer with the antenna end, or end opposite
3214 the screw terminals, in the case of EasyMega, first up
3215 and then down.</p>
3216 </div>
3217 <div class="paragraph">
3218 <p>When the calibration is complete, return to the
3219 Configure Altimeter window and save the new
3220 calibration values.</p>
3221 </div>
3222 </div>
3223 <div class="sect3">
3224 <h4 id="_configure_pyro_channels">12.6.21. Configure Pyro Channels</h4>
3225 <div class="imageblock">
3226 <div class="content">
3227 <img src="configure-pyro.png" alt="configure pyro" width="400">
3228 </div>
3229 <div class="title">Figure 23. Additional Pyro Channel Configuration</div>
3230 </div>
3231 <div class="paragraph">
3232 <p>This opens a separate window to configure the
3233 additional pyro channels available on TeleMega,
3234 EasyMega and EasyTimer.  One column is presented for
3235 each channel. Each row represents a single
3236 parameter, if enabled the parameter must meet
3237 the specified test for the pyro channel to be
3238 fired.</p>
3239 </div>
3240 <div class="paragraph">
3241 <p>Select conditions and set the related value;
3242 the pyro channel will be activated when <strong>all</strong>
3243 of the conditions are met. Each pyro channel
3244 has a separate set of configuration values, so
3245 you can use different values for the same
3246 condition with different channels.</p>
3247 </div>
3248 <div class="paragraph">
3249 <p>At the bottom of the window, the 'Pyro Firing
3250 Time' configuration sets the length of time
3251 (in seconds) which each of these pyro channels
3252 will fire for.</p>
3253 </div>
3254 <div class="paragraph">
3255 <p>Once you have selected the appropriate
3256 configuration for all of the necessary pyro
3257 channels, you can save the pyro configuration
3258 along with the rest of the flight computer
3259 configuration by pressing the 'Save' button in
3260 the main Configure Flight Computer window.</p>
3261 </div>
3262 <div class="dlist">
3263 <dl>
3264 <dt class="hdlist1">Vertical Acceleration</dt>
3265 <dd>
3266 <p>Select a value, and then choose whether
3267 acceleration away from the ground should be above or below that
3268 value. Acceleration is positive upwards, so accelerating towards the
3269 ground would produce negative numbers. Acceleration during descent is
3270 noisy and inaccurate, so be careful when using it during these phases
3271 of the flight.</p>
3272 </dd>
3273 <dt class="hdlist1">Ascent rate</dt>
3274 <dd>
3275 <p>Select a value, and then choose whether ascent rate
3276 should be above or below that value. Ascent rate is positive upwards,
3277 so moving towards the ground would produce negative numbers. Ascent
3278 rate during descent is a bit noisy and so be careful when using it
3279 during these phases of the flight.</p>
3280 </dd>
3281 <dt class="hdlist1">Height above pad</dt>
3282 <dd>
3283 <p>Select a value, and then choose whether the height
3284 above the launch pad should be above or below that value. Note that
3285 because EasyTimer has only a low-range accelerometer and no barometer,
3286 this value will not be very reliable on that device.</p>
3287 </dd>
3288 <dt class="hdlist1">Orientation</dt>
3289 <dd>
3290 <p>TeleMega, EasyMega and EasyTimer contain a 3-axis
3291 gyroscope and accelerometer which is used to compute the orientation
3292 of the rocket. A record of orientations over the last 0.64 seconds is
3293 kept and the largest value within this period is compared with the
3294 specified value. Note that the tilt angle is not the change in angle
3295 from the launch pad, but rather absolute relative to gravity—the
3296 3-axis accelerometer is used to compute the angle of the rocket on the
3297 launch pad and initialize the system.</p>
3298 </dd>
3299 </dl>
3300 </div>
3301 <div class="admonitionblock note">
3302 <table>
3303 <tr>
3304 <td class="icon">
3305 <img src="./images/icons/note.svg" alt="Note">
3306 </td>
3307 <td class="content">
3308 <div class="paragraph">
3309 <p>Because this value is computed by integrating
3310 rate gyros, it gets progressively less
3311 accurate as the flight goes on. It should have
3312 an accumulated error of less than 0.2°/second
3313 (after 10 seconds of flight, the error should
3314 be less than 2°).</p>
3315 </div>
3316 <div class="paragraph">
3317 <p>The usual use of the orientation configuration
3318 is to ensure that the rocket is traveling
3319 mostly upwards when deciding whether to ignite
3320 air starts or additional stages. For that,
3321 choose a reasonable maximum angle (like 20°)
3322 and set the motor igniter to require an angle
3323 of less than that value.</p>
3324 </div>
3325 </td>
3326 </tr>
3327 </table>
3328 </div>
3329 <div class="dlist">
3330 <dl>
3331 <dt class="hdlist1">Flight Time</dt>
3332 <dd>
3333 <p>Time since launch. Select a value and choose whether to
3334 activate the pyro channel before or after that amount of time.</p>
3335 </dd>
3336 </dl>
3337 </div>
3338 <div class="admonitionblock warning">
3339 <table>
3340 <tr>
3341 <td class="icon">
3342 <img src="./images/icons/warning.svg" alt="Warning">
3343 </td>
3344 <td class="content">
3345 Firmware versions older than 1.8.6 have a bug which resets the time
3346 since launch to zero each time a motor starts burning. Update firmware
3347 to get the correct behavior.
3348 </td>
3349 </tr>
3350 </table>
3351 </div>
3352 <div class="admonitionblock warning">
3353 <table>
3354 <tr>
3355 <td class="icon">
3356 <img src="./images/icons/warning.svg" alt="Warning">
3357 </td>
3358 <td class="content">
3359 Firmware versions older than 1.9.8 cannot use times longer
3360 than 327.67 seconds. Update firmware if you need a longer time.
3361 </td>
3362 </tr>
3363 </table>
3364 </div>
3365 <div class="dlist">
3366 <dl>
3367 <dt class="hdlist1">Ascending</dt>
3368 <dd>
3369 <p>A deprecated configuration value which was the same as
3370 setting Ascent rate &gt; 0. Existing configurations using this will be
3371 cleared and must be reconfigured by the user.</p>
3372 </dd>
3373 <dt class="hdlist1">Descending</dt>
3374 <dd>
3375 <p>A deprecated configuration value which was the same as
3376 setting Ascent rate &lt; 0. Existing configurations using this will be
3377 cleared and must be reconfigured by the user.</p>
3378 </dd>
3379 <dt class="hdlist1">After Motor</dt>
3380 <dd>
3381 <p>The flight software counts each time the rocket starts
3382 accelerating and then decelerating (presumably due to a motor or
3383 motors burning). Use this value for multi-staged or multi-airstart
3384 launches. As of version 1.8.6 firmware, this checks to make sure at
3385 least this many motors have burned. Before version 1.8.6, this checked
3386 to make sure that exactly this many motors had burned.</p>
3387 </dd>
3388 <dt class="hdlist1">Delay</dt>
3389 <dd>
3390 <p>Once the other parameters all become true, a timer is
3391 started for the specified amount of time. While the timer is running,
3392 the other parameters are checked repeatedly and if any of them become
3393 false, then the pyro channel is disabled and will not fire. If the
3394 timer expires and all of the other parameters have remained true for
3395 the entire time, then the pyro channel is fired.</p>
3396 </dd>
3397 </dl>
3398 </div>
3399 <div class="admonitionblock warning">
3400 <table>
3401 <tr>
3402 <td class="icon">
3403 <img src="./images/icons/warning.svg" alt="Warning">
3404 </td>
3405 <td class="content">
3406 Firmware versions older than 1.9.8 cannot use delays longer
3407 than 327.67 seconds. Update firmware if you need a longer delay.
3408 </td>
3409 </tr>
3410 </table>
3411 </div>
3412 <div class="dlist">
3413 <dl>
3414 <dt class="hdlist1">Flight State</dt>
3415 <dd>
3416 <p>The flight software tracks the flight
3417 through a sequence of states:</p>
3418 <div class="ulist">
3419 <ul>
3420 <li>
3421 <p>Boost. The motor has lit and the rocket is
3422 accelerating upwards. Ascent rate will be greater than zero.
3423 Vertical acceleration will be greater than zero.</p>
3424 </li>
3425 <li>
3426 <p>Fast. The motor has burned out and the
3427 rocket is decelerating, but it is going
3428 faster than 200m/s. Ascent rate will be greater than zero. Vertical
3429 acceleration will be less than zero.</p>
3430 </li>
3431 <li>
3432 <p>Coast. The rocket is still moving upwards
3433 and decelerating, but the Ascent rate is less
3434 than 200m/s. Ascent rate will greater than zero. Vertical
3435 acceleration will be less than zero.</p>
3436 </li>
3437 <li>
3438 <p>Drogue. The rocket has reached apogee and is heading back down, but
3439 is above the configured Main altitude. Ascent rate will be less
3440 than zero during this state. Vertical acceleration will be negative
3441 until the rocket reaches a terminal descent rate, at which point
3442 Vertical acceleration will be zero. Both Ascent rate and Vertical
3443 acceleration are very noisy in this state, so be careful when
3444 trying to use them to control pyro channels. This state selection
3445 is not available on EasyTimer.</p>
3446 </li>
3447 <li>
3448 <p>Main. The rocket is still descending, and
3449 is below the Main altitude. Ascent rate will be less than zero
3450 during this state. Vertical acceleration may be briefly less than
3451 zero as the rocket slows from drogue descent to main descent, but
3452 it will settle down to a zero value once the rocket has reached the
3453 terminal velocity under the main chute. Ascent rate and Vertical
3454 acceleration should be much less noisy once the main chute has
3455 deployed. This state selection is not available on EasyTimer.</p>
3456 </li>
3457 <li>
3458 <p>Landed. The rocket is no longer moving.</p>
3459 </li>
3460 </ul>
3461 </div>
3462 </dd>
3463 </dl>
3464 </div>
3465 <div class="paragraph">
3466 <p>You can select a state to limit when the pyro channel may activate;
3467 note that the check is based on when the rocket transitions <strong>into</strong> the
3468 state, and so checking for “greater than Boost” means that the rocket
3469 is currently in boost or some later state.</p>
3470 </div>
3471 <div class="paragraph">
3472 <p>When a motor burns out, the rocket enters either Fast or Coast state
3473 (depending on how fast it is moving). If the computer detects upwards
3474 acceleration again, it will move back to Boost state.</p>
3475 </div>
3476 </div>
3477 </div>
3478 <div class="sect2">
3479 <h3 id="_configure_altosui">12.7. Configure AltosUI</h3>
3480 <div class="imageblock">
3481 <div class="content">
3482 <img src="configure-altosui.png" alt="configure altosui" width="230">
3483 </div>
3484 <div class="title">Figure 24. Configure AltosUI Dialog</div>
3485 </div>
3486 <div class="paragraph">
3487 <p>This button presents a dialog so that you can
3488 configure the AltosUI global settings.</p>
3489 </div>
3490 <div class="sect3">
3491 <h4 id="_voice_settings">12.7.1. Voice Settings</h4>
3492 <div class="paragraph">
3493 <p>AltosUI provides voice announcements during
3494 flight so that you can keep your eyes on the
3495 sky and still get information about the
3496 current flight status. However, sometimes you
3497 don&#8217;t want to hear them.</p>
3498 </div>
3499 <div class="dlist">
3500 <dl>
3501 <dt class="hdlist1">Enable</dt>
3502 <dd>
3503 <p>Turns all voice announcements on and off</p>
3504 </dd>
3505 <dt class="hdlist1">Test Voice</dt>
3506 <dd>
3507 <p>Plays a short message allowing you to verify
3508 that the audio system is working and the volume settings
3509 are reasonable</p>
3510 </dd>
3511 </dl>
3512 </div>
3513 </div>
3514 <div class="sect3">
3515 <h4 id="_log_directory">12.7.2. Log Directory</h4>
3516 <div class="paragraph">
3517 <p>AltosUI logs all telemetry data and saves all
3518 flash data to this directory. This
3519 directory is also used as the staring point
3520 when selecting data files for display or
3521 export.</p>
3522 </div>
3523 <div class="paragraph">
3524 <p>Click on the directory name to bring up a
3525 directory choosing dialog, select a new
3526 directory and click 'Select Directory' to
3527 change where AltosUI reads and writes data
3528 files.</p>
3529 </div>
3530 </div>
3531 <div class="sect3">
3532 <h4 id="_callsign_2">12.7.3. Callsign</h4>
3533 <div class="paragraph">
3534 <p>This value is transmitted in each command
3535 packet sent from TeleDongle and received from
3536 an altimeter.  It is not used in telemetry
3537 mode, as the callsign configured in the
3538 altimeter board is included in all telemetry
3539 packets.  Configure this with the AltosUI
3540 operators call sign as needed to comply with
3541 your local radio regulations.</p>
3542 </div>
3543 <div class="paragraph">
3544 <p>Note that to successfully command a flight
3545 computer over the radio (to configure the
3546 altimeter, monitor idle, or fire pyro
3547 charges), the callsign configured here must
3548 exactly match the callsign configured in the
3549 flight computer.  This matching is case
3550 sensitive.</p>
3551 </div>
3552 </div>
3553 <div class="sect3">
3554 <h4 id="_imperial_units">12.7.4. Imperial Units</h4>
3555 <div class="paragraph">
3556 <p>This switches between metric units (meters)
3557 and imperial units (feet and miles). This
3558 affects the display of values use during
3559 flight monitoring, configuration, data
3560 graphing and all of the voice
3561 announcements. It does not change the units
3562 used when exporting to CSV files, those are
3563 always produced in metric units.</p>
3564 </div>
3565 </div>
3566 <div class="sect3">
3567 <h4 id="_serial_debug">12.7.5. Serial Debug</h4>
3568 <div class="paragraph">
3569 <p>This causes all communication with a connected
3570 device to be dumped to the console from which
3571 AltosUI was started. If you&#8217;ve started it from
3572 an icon or menu entry, the output will simply
3573 be discarded. This mode can be useful to debug
3574 various serial communication issues.</p>
3575 </div>
3576 </div>
3577 <div class="sect3">
3578 <h4 id="_font_size">12.7.6. Font size</h4>
3579 <div class="paragraph">
3580 <p>Selects the set of fonts used in the flight
3581 monitor window. Choose between the small,
3582 medium and large sets.</p>
3583 </div>
3584 </div>
3585 <div class="sect3">
3586 <h4 id="_look_feel">12.7.7. Look &amp; feel</h4>
3587 <div class="paragraph">
3588 <p>Switches between the available Java user
3589 interface appearances. The default selection
3590 is supposed to match the native window system
3591 appearance for the target platform.</p>
3592 </div>
3593 </div>
3594 <div class="sect3">
3595 <h4 id="_menu_position">12.7.8. Menu position</h4>
3596 <div class="paragraph">
3597 <p>Selects the initial position for the main
3598 AltosUI window that includes all of the
3599 command buttons.</p>
3600 </div>
3601 </div>
3602 <div class="sect3">
3603 <h4 id="_map_cache_size">12.7.9. Map Cache Size</h4>
3604 <div class="paragraph">
3605 <p>Sets the number of map 'tiles' kept in memory
3606 while the application is running. More tiles
3607 consume more memory, but will make panning
3608 around the map faster.</p>
3609 </div>
3610 </div>
3611 <div class="sect3">
3612 <h4 id="_manage_frequencies">12.7.10. Manage Frequencies</h4>
3613 <div class="paragraph">
3614 <p>This brings up a dialog where you can
3615 configure the set of frequencies shown in the
3616 various frequency menus. You can add as many
3617 as you like, or even reconfigure the default
3618 set. Changing this list does not affect the
3619 frequency settings of any devices, it only
3620 changes the set of frequencies shown in the
3621 menus.</p>
3622 </div>
3623 </div>
3624 </div>
3625 <div class="sect2">
3626 <h3 id="_configure_groundstation">12.8. Configure Groundstation</h3>
3627 <div class="imageblock">
3628 <div class="content">
3629 <img src="configure-groundstation.png" alt="configure groundstation" width="300">
3630 </div>
3631 <div class="title">Figure 25. Configure Groundstation Dialog</div>
3632 </div>
3633 <div class="paragraph">
3634 <p>Select this button and then select a TeleDongle or
3635 TeleBT Device from the list provided.</p>
3636 </div>
3637 <div class="paragraph">
3638 <p>The first few lines of the dialog provide information
3639 about the connected device, including the product
3640 name, software version and hardware serial
3641 number. Below that are the individual configuration
3642 entries.</p>
3643 </div>
3644 <div class="paragraph">
3645 <p>Note that TeleDongle and TeleBT don&#8217;t save any
3646 configuration data, the settings here are recorded on
3647 the local machine in the Java preferences
3648 database. Moving the device to another machine, or
3649 using a different user account on the same machine
3650 will cause settings made here to have no effect.</p>
3651 </div>
3652 <div class="paragraph">
3653 <p>At the bottom of the dialog, there are three
3654 buttons:</p>
3655 </div>
3656 <div class="dlist">
3657 <dl>
3658 <dt class="hdlist1">Save</dt>
3659 <dd>
3660 <p>This writes any changes to the local Java
3661 preferences file. If you don&#8217;t press this
3662 button, any changes you make will be lost.</p>
3663 </dd>
3664 <dt class="hdlist1">Reset</dt>
3665 <dd>
3666 <p>This resets the dialog to the most recently
3667 saved values, erasing any changes you have
3668 made.</p>
3669 </dd>
3670 <dt class="hdlist1">Close</dt>
3671 <dd>
3672 <p>This closes the dialog. Any unsaved changes
3673 will be lost.</p>
3674 </dd>
3675 </dl>
3676 </div>
3677 <div class="paragraph">
3678 <p>The rest of the dialog contains the parameters
3679 to be configured.</p>
3680 </div>
3681 <div class="sect3">
3682 <h4 id="_frequency_2">12.8.1. Frequency</h4>
3683 <div class="paragraph">
3684 <p>This configures the frequency to use for both
3685 telemetry and packet command mode. Set this
3686 before starting any operation involving packet
3687 command mode so that it will use the right
3688 frequency. Telemetry monitoring mode also
3689 provides a menu to change the frequency, and
3690 that menu also sets the same Java preference
3691 value used here.</p>
3692 </div>
3693 </div>
3694 <div class="sect3">
3695 <h4 id="_rf_calibration_2">12.8.2. RF Calibration</h4>
3696 <div class="paragraph">
3697 <p>The radios in every Altus Metrum device are
3698 calibrated at the factory to ensure that they
3699 transmit and receive on the specified
3700 frequency.  To change a TeleDongle or TeleBT&#8217;s
3701 calibration, you must reprogram the unit
3702 completely, so this entry simply shows the
3703 current value and doesn&#8217;t allow any changes.</p>
3704 </div>
3705 </div>
3706 <div class="sect3">
3707 <h4 id="_telemetry_rate">12.8.3. Telemetry Rate</h4>
3708 <div class="paragraph">
3709 <p>This lets you match the telemetry and packet
3710 link rate from the transmitter. If they don&#8217;t
3711 match, the device won&#8217;t receive any data.</p>
3712 </div>
3713 </div>
3714 </div>
3715 <div class="sect2">
3716 <h3 id="_flash_image">12.9. Flash Image</h3>
3717 <div class="paragraph">
3718 <p>This reprograms Altus Metrum devices with new
3719 firmware.
3720 TeleMetrum v1.x, TeleDongle v0.2, TeleMini v1.0
3721 and TeleBT v1.0 are all reprogrammed by using another
3722 similar unit as a programming dongle (pair
3723 programming).
3724 TeleMega, EasyMega, TeleMetrum v2 or newer,
3725 EasyMini, EasyTimer, TeleBT v3 or newer and TeleDongle v3
3726 or newer are all
3727 programmed directly
3728 over USB (self programming). Please read
3729 the directions for flashing devices in
3730 <a href="#_updating_device_firmware">Updating Device Firmware</a>.</p>
3731 </div>
3732 </div>
3733 <div class="sect2">
3734 <h3 id="_fire_igniter">12.10. Fire Igniter</h3>
3735 <div class="imageblock">
3736 <div class="content">
3737 <img src="fire-igniter.png" alt="fire igniter" width="120">
3738 </div>
3739 <div class="title">Figure 26. Fire Igniter Window</div>
3740 </div>
3741 <div class="paragraph">
3742 <p>This activates the igniter circuits in the flight
3743 computer to help test recovery systems
3744 deployment.
3745 Because this command can operate over the
3746 Packet Command Link, you can prepare the rocket as for
3747 flight and then test the recovery system without
3748 needing to snake wires inside the air-frame.</p>
3749 </div>
3750 <div class="paragraph">
3751 <p>Selecting the 'Fire Igniter' button brings up the
3752 usual device selection dialog. Pick the desired
3753 device. This brings up another window which shows the
3754 current continuity test status for all of the pyro
3755 channels.</p>
3756 </div>
3757 <div class="paragraph">
3758 <p>Next, select the desired igniter to fire. This will
3759 enable the 'Arm' button.</p>
3760 </div>
3761 <div class="paragraph">
3762 <p>Select the 'Arm' button. This enables the 'Fire'
3763 button. The word 'Arm' is replaced by a countdown
3764 timer indicating that you have 10 seconds to press the
3765 'Fire' button or the system will deactivate, at which
3766 point you start over again at selecting the desired
3767 igniter.</p>
3768 </div>
3769 </div>
3770 <div class="sect2">
3771 <h3 id="_scan_channels">12.11. Scan Channels</h3>
3772 <div class="imageblock">
3773 <div class="content">
3774 <img src="scan-channels.png" alt="scan channels" width="300">
3775 </div>
3776 <div class="title">Figure 27. Scan Channels Window</div>
3777 </div>
3778 <div class="paragraph">
3779 <p>This listens for telemetry packets on all of the
3780 configured frequencies, displaying information about
3781 each device it receives a packet from. You can select
3782 which of the baud rates and telemetry formats should
3783 be tried; by default, it only listens at 38400 baud
3784 with the standard telemetry format used in v1.0 and
3785 later firmware.</p>
3786 </div>
3787 </div>
3788 <div class="sect2">
3789 <h3 id="_load_maps">12.12. Load Maps</h3>
3790 <div class="imageblock">
3791 <div class="content">
3792 <img src="load-maps.png" alt="load maps" width="500">
3793 </div>
3794 <div class="title">Figure 28. Load Maps Window</div>
3795 </div>
3796 <div class="paragraph">
3797 <p>Before heading out to a new launch site, you can use
3798 this to load satellite images in case you don&#8217;t have
3799 internet connectivity at the site.  Try not to wait
3800 until the last minute, though, particularly if you&#8217;re
3801 heading to a major launch.  If too many people are
3802 all trying to download map data at once, Google may
3803 limit access until the next day.</p>
3804 </div>
3805 <div class="paragraph">
3806 <p>There&#8217;s a drop-down menu of launch sites we know
3807 about; if your favorites aren&#8217;t there, please let us
3808 know the lat/lon and name of the site. The contents of
3809 this list are actually downloaded from our server at
3810 run-time, so as new sites are sent in, they&#8217;ll get
3811 automatically added to this list.  If the launch site
3812 isn&#8217;t in the list, you can manually enter the lat/lon
3813 values</p>
3814 </div>
3815 <div class="paragraph">
3816 <p>There are four different kinds of maps you can view;
3817 you can select which to download by selecting as many
3818 as you like from the available types:</p>
3819 </div>
3820 <div class="dlist">
3821 <dl>
3822 <dt class="hdlist1">Hybrid</dt>
3823 <dd>
3824 <p>A combination of satellite imagery and road data. This
3825 is the default view.</p>
3826 </dd>
3827 <dt class="hdlist1">Satellite</dt>
3828 <dd>
3829 <p>Just the satellite imagery without any annotation.</p>
3830 </dd>
3831 <dt class="hdlist1">Roadmap</dt>
3832 <dd>
3833 <p>Roads, political boundaries and a few geographic
3834 features.</p>
3835 </dd>
3836 <dt class="hdlist1">Terrain</dt>
3837 <dd>
3838 <p>Contour intervals and shading that show hills and
3839 valleys.</p>
3840 </dd>
3841 </dl>
3842 </div>
3843 <div class="paragraph">
3844 <p>You can specify the range of zoom levels to download;
3845 smaller numbers show more area with less
3846 resolution. The default level, 0, shows about
3847 3m/pixel. One zoom level change doubles or halves that
3848 number. Larger zoom levels show more detail, smaller
3849 zoom levels less.</p>
3850 </div>
3851 <div class="paragraph">
3852 <p>The Map Radius value sets how large an area around the
3853 center point to download. Select a value large enough
3854 to cover any plausible flight from that site. Be aware
3855 that loading a large area with a high maximum zoom
3856 level can attempt to download a lot of data. Loading
3857 hybrid maps with a 10km radius at a minimum zoom of -2
3858 and a maximum zoom of 2 consumes about 120MB of
3859 space. Terrain and road maps consume about 1/10 as
3860 much space as satellite or hybrid maps.</p>
3861 </div>
3862 <div class="paragraph">
3863 <p>Clicking the 'Load Map' button will fetch images from
3864 Google Maps; note that Google limits how many images
3865 you can fetch at once, so if you load more than one
3866 launch site, you may get some gray areas in the map
3867 which indicate that Google is tired of sending data to
3868 you. Try again later.</p>
3869 </div>
3870 </div>
3871 <div class="sect2">
3872 <h3 id="_monitor_idle">12.13. Monitor Idle</h3>
3873 <div class="imageblock">
3874 <div class="content">
3875 <img src="monitor-idle.png" alt="monitor idle" width="500">
3876 </div>
3877 <div class="title">Figure 29. Monitor Idle Window</div>
3878 </div>
3879 <div class="paragraph">
3880 <p>This brings up a dialog similar to the Monitor Flight
3881 UI, except it works with the altimeter in “idle” mode
3882 by sending query commands to discover the current
3883 state rather than listening for telemetry
3884 packets. Because this uses command mode, it needs to
3885 have the TeleDongle and flight computer callsigns
3886 match exactly. If you can receive telemetry, but
3887 cannot manage to run Monitor Idle, then it&#8217;s very
3888 likely that your callsigns are different in some way.</p>
3889 </div>
3890 <div class="paragraph">
3891 <p>You can change the frequency and callsign used to
3892 communicate with the flight computer; they must both
3893 match the configuration in the flight computer
3894 exactly.</p>
3895 </div>
3896 </div>
3897 </div>
3898 </div>
3899 <div class="sect1">
3900 <h2 id="_altosdroid">13. AltosDroid</h2>
3901 <div class="sectionbody">
3902 <div class="paragraph">
3903 <p>AltosDroid provides the same flight monitoring capabilities as
3904 AltosUI, but runs on Android devices. AltosDroid is designed
3905 to connect to a TeleBT receiver over Bluetooth™ and (on
3906 Android devices supporting USB On-the-go) TeleDongle and
3907 TeleBT devices over USB. AltosDroid monitors telemetry data,
3908 logging it to internal storage in the Android device, and
3909 presents that data in a UI similar to the 'Monitor Flight'
3910 window in AltosUI.</p>
3911 </div>
3912 <div class="paragraph">
3913 <p>This manual will explain how to configure AltosDroid, connect
3914 to TeleBT or TeleDongle, operate the flight monitoring
3915 interface and describe what the displayed data means.</p>
3916 </div>
3917 <div class="sect2">
3918 <h3 id="_installing_altosdroid">13.1. Installing AltosDroid</h3>
3919 <div class="paragraph">
3920 <p>AltosDroid is available from the Google Play store. To
3921 install it on your Android device, open the Google
3922 Play Store application and search for
3923 “altosdroid”. Make sure you don&#8217;t have a space between
3924 “altos” and “droid” or you probably won&#8217;t find what
3925 you want. That should bring you to the right page from
3926 which you can download and install the application.</p>
3927 </div>
3928 </div>
3929 <div class="sect2">
3930 <h3 id="_charging_telebt_battery">13.2. Charging TeleBT Battery</h3>
3931 <div class="paragraph">
3932 <p>Before using TeleBT with AltosDroid, make sure the
3933 internal TeleBT battery is charged.  To do this,
3934 attach a micro USB cable from a computer or other USB
3935 power source to TeleBT.  A dual LED on the circuit
3936 board should illuminate, showing red while the battery
3937 is charging, green when charging is completed, and
3938 both red and green on at the same time if there is a
3939 battery fault.</p>
3940 </div>
3941 </div>
3942 <div class="sect2">
3943 <h3 id="_connecting_to_telebt_over_bluetooth">13.3. Connecting to TeleBT over Bluetooth™</h3>
3944 <div class="paragraph">
3945 <p>Note that when turning TeleBT on, you may see a brief LED
3946 flash, but there will be no "activity" indicated until you
3947 pair with the device from AltosDroid.</p>
3948 </div>
3949 <div class="paragraph">
3950 <p>Press the Android 'Menu' button or soft-key to see the
3951 configuration options available. Select the 'Connect a
3952 device' option and then the 'Scan for devices' entry
3953 at the bottom to look for your TeleBT device. Select
3954 your device, and when it asks for the code, enter
3955 '1234'.</p>
3956 </div>
3957 <div class="paragraph">
3958 <p>Subsequent connections will not require you to enter
3959 that code, and your 'paired' device will appear in the
3960 list without scanning.</p>
3961 </div>
3962 </div>
3963 <div class="sect2">
3964 <h3 id="_connecting_to_teledongle_or_telebt_over_usb">13.4. Connecting to TeleDongle or TeleBT over USB</h3>
3965 <div class="paragraph">
3966 <p>Get a special USB On-the-go adapter cable. These
3967 cables have a USB micro-B male connector on one end
3968 and a standard A female connector on the other
3969 end. Plug in your TeleDongle or TeleBT device to the
3970 adapter cable and the adapter cable into your phone
3971 and AltosDroid should automatically start up. If it
3972 doesn&#8217;t, the most likely reason is that your Android
3973 device doesn&#8217;t support USB On-the-go.</p>
3974 </div>
3975 </div>
3976 <div class="sect2">
3977 <h3 id="_altosdroid_menu">13.5. AltosDroid Menu</h3>
3978 <div class="paragraph">
3979 <p>The main AltosDroid menu has a selection of operation
3980 and configuration options.</p>
3981 </div>
3982 <div class="dlist">
3983 <dl>
3984 <dt class="hdlist1">Connect a device</dt>
3985 <dd>
3986 <p>Offers a menu of available TeleBT devices, and an
3987 option to scan for additional devices.</p>
3988 </dd>
3989 <dt class="hdlist1">Disconnect device</dt>
3990 <dd>
3991 <p>Disconnects the current TeleBT or TeleDongle
3992 device. You can reconnect TeleBT over bluetooth by
3993 using Connect a Device. You can reconnect a USB device
3994 by unplugging it and then plugging it back in.</p>
3995 </dd>
3996 <dt class="hdlist1">Select radio frequency</dt>
3997 <dd>
3998 <p>This selects which frequency to listen on by bringing
3999 up a menu of pre-set radio frequencies. Pick the one
4000 which matches your altimeter.</p>
4001 </dd>
4002 <dt class="hdlist1">Select Tracker</dt>
4003 <dd>
4004 <p>Switches the information displays to show data for a
4005 different transmitting device. The map will always
4006 show all of the devices in view. Trackers are shown
4007 and selected by serial number, so make sure you note
4008 the serial number of devices in each airframe.</p>
4009 </dd>
4010 <dt class="hdlist1">Delete Track</dt>
4011 <dd>
4012 <p>Deletes all information about a transmitting device.</p>
4013 </dd>
4014 <dt class="hdlist1">Setup</dt>
4015 <dd>
4016 <p>Offers additional configuration operations. See
4017 <a href="#_setup">Setup</a>.</p>
4018 </dd>
4019 <dt class="hdlist1">Idle Mode</dt>
4020 <dd>
4021 <p>Communicate with an altimeter in Idle mode. See <a href="#_idle_mode">Idle Mode</a></p>
4022 </dd>
4023 <dt class="hdlist1">Quit</dt>
4024 <dd>
4025 <p>Shuts down AltosDroid.</p>
4026 </dd>
4027 </dl>
4028 </div>
4029 </div>
4030 <div class="sect2">
4031 <h3 id="_setup">13.6. Setup</h3>
4032 <div class="dlist">
4033 <dl>
4034 <dt class="hdlist1">Telemetry Rate</dt>
4035 <dd>
4036 <p>Altus Metrum transmitters can be configured to operate
4037 at lower data rates to improve transmission range. If
4038 you have configured your device to do this, this menu
4039 item allows you to change the receiver to match.</p>
4040 </dd>
4041 <dt class="hdlist1">Units</dt>
4042 <dd>
4043 <p>Selects which units used to report values.</p>
4044 </dd>
4045 <dt class="hdlist1">Map Type</dt>
4046 <dd>
4047 <p>Displays a menu of map types and lets you select
4048 one. Hybrid maps include satellite images with a
4049 roadmap overlaid. Satellite maps dispense with the
4050 roadmap overlay. Roadmap shows just the roads. Terrain
4051 includes roads along with shadows indicating changes
4052 in elevation, and other geographical features.</p>
4053 </dd>
4054 <dt class="hdlist1">Map Source</dt>
4055 <dd>
4056 <p>Select between online and offline maps. Online maps
4057 will show a 'move to current position' icon in the
4058 upper right corner, while offline maps will have
4059 copyright information all over the map. Otherwise,
4060 they&#8217;re pretty similar.</p>
4061 </dd>
4062 <dt class="hdlist1">Preload Maps</dt>
4063 <dd>
4064 <p>Brings up a dialog allowing you to download offline
4065 map tiles so that you can have maps available even if
4066 you have no network connectivity at the launch site.</p>
4067 </dd>
4068 <dt class="hdlist1">Manage Frequencies</dt>
4069 <dd>
4070 <p>This presents a dialog containing the current list of
4071 frequencies that will be show in the 'Select radio
4072 frequency' menu. You can change the label for existing
4073 frequencies, delete or add new frequencies.</p>
4074 </dd>
4075 </dl>
4076 </div>
4077 </div>
4078 <div class="sect2">
4079 <h3 id="_idle_mode">13.7. Idle Mode</h3>
4080 <div class="dlist">
4081 <dl>
4082 <dt class="hdlist1">Callsign</dt>
4083 <dd>
4084 <p>Lets you configure the callsign used by AltosDroid to
4085 communicate with the flight computer. The callsign on
4086 the two devices must match or the communication will
4087 fail. This provides a modest amount of protection
4088 against accidentally controlling another persons
4089 flight computer.</p>
4090 </dd>
4091 <dt class="hdlist1">Monitor</dt>
4092 <dd>
4093 <p>This provides similar information to monitoring the
4094 telemetry stream from a flight computer in flight
4095 mode. The title of the application will change to
4096 include (idle) so you can tell this mode is active.</p>
4097 </dd>
4098 <dt class="hdlist1">Reboot</dt>
4099 <dd>
4100 <p>Remotely reboots the flight computer. This is useful
4101 when the flight computers turned on while the airframe
4102 is horizontal and you want to restart the flight
4103 computers in pad mode after raising the airframe to
4104 vertical.</p>
4105 </dd>
4106 <dt class="hdlist1">Fire Igniters</dt>
4107 <dd>
4108 <p>Remotely control igniters for ground testing recovery
4109 systems.</p>
4110 </dd>
4111 </dl>
4112 </div>
4113 </div>
4114 <div class="sect2">
4115 <h3 id="_altosdroid_flight_monitoring">13.8. AltosDroid Flight Monitoring</h3>
4116 <div class="paragraph">
4117 <p>AltosDroid is designed to mimic the AltosUI flight
4118 monitoring display, providing separate tabs for each
4119 stage of your rocket flight along with a tab
4120 containing a map of the local area with icons marking
4121 the current location of the altimeter and the Android
4122 device.</p>
4123 </div>
4124 </div>
4125 <div class="sect2">
4126 <h3 id="_pad">13.9. Pad</h3>
4127 <div class="paragraph">
4128 <p>The 'Pad' tab shows information used to decide when
4129 the rocket is ready for flight. The first elements
4130 include red/green indicators, if any of these is red,
4131 you&#8217;ll want to evaluate whether the rocket is ready to
4132 launch.</p>
4133 </div>
4134 <div class="paragraph">
4135 <p>When the pad tab is selected, the voice responses will
4136 include status changes to the igniters and GPS
4137 reception, letting you know if the rocket is still
4138 ready for launch.</p>
4139 </div>
4140 <div class="dlist">
4141 <dl>
4142 <dt class="hdlist1">Battery</dt>
4143 <dd>
4144 <p>This indicates whether the Li-Po battery powering the
4145 transmitter has sufficient charge to last for the
4146 duration of the flight. A value of more than 3.8V is
4147 required for a 'GO' status.</p>
4148 </dd>
4149 <dt class="hdlist1">Receiver Battery</dt>
4150 <dd>
4151 <p>This indicates whether the Li-Po battery powering the
4152 TeleBT has sufficient charge to last for the duration
4153 of the flight. A value of more than 3.8V is required
4154 for a 'GO' status.</p>
4155 </dd>
4156 <dt class="hdlist1">Data Logging</dt>
4157 <dd>
4158 <p>This indicates whether there is space remaining
4159 on-board to store flight data for the upcoming
4160 flight. If you&#8217;ve downloaded data, but failed to erase
4161 flights, there may not be any space left. TeleMetrum
4162 and TeleMega can store multiple flights, depending on
4163 the configured maximum flight log size. TeleGPS logs
4164 data continuously. TeleMini v1.0 stores only a single
4165 flight, so it will need to be downloaded and erased
4166 after each flight to capture data. This only affects
4167 on-board flight logging; the altimeter will still
4168 transmit telemetry and fire ejection charges at the
4169 proper times.</p>
4170 </dd>
4171 <dt class="hdlist1">GPS Locked</dt>
4172 <dd>
4173 <p>For a TeleMetrum or TeleMega device, this indicates
4174 whether the GPS receiver is currently able to compute
4175 position information. GPS requires at least 4
4176 satellites to compute an accurate position.</p>
4177 </dd>
4178 <dt class="hdlist1">GPS Ready</dt>
4179 <dd>
4180 <p>For a TeleMetrum or TeleMega device, this indicates
4181 whether GPS has reported at least 10 consecutive
4182 positions without losing lock. This ensures that the
4183 GPS receiver has reliable reception from the
4184 satellites.</p>
4185 </dd>
4186 <dt class="hdlist1">Apogee Igniter</dt>
4187 <dd>
4188 <p>This indicates whether the apogee igniter has
4189 continuity. If the igniter has a low resistance, then
4190 the voltage measured here will be close to the Li-Po
4191 battery voltage. A value greater than 3.2V is required
4192 for a 'GO' status.</p>
4193 </dd>
4194 <dt class="hdlist1">Main Igniter</dt>
4195 <dd>
4196 <p>This indicates whether the main igniter has
4197 continuity. If the igniter has a low resistance, then
4198 the voltage measured here will be close to the Li-Po
4199 battery voltage. A value greater than 3.2V is required
4200 for a 'GO' status.</p>
4201 </dd>
4202 <dt class="hdlist1">Igniter A-D</dt>
4203 <dd>
4204 <p>This indicates whether the indicated additional pyro
4205 channel igniter has continuity. If the igniter has a
4206 low resistance, then the voltage measured here will be
4207 close to the Li-Po battery voltage. A value greater
4208 than 3.2V is required for a 'GO' status.</p>
4209 </dd>
4210 </dl>
4211 </div>
4212 <div class="paragraph">
4213 <p>The Pad tab also shows the location of the Android
4214 device.</p>
4215 </div>
4216 </div>
4217 <div class="sect2">
4218 <h3 id="_flight">13.10. Flight</h3>
4219 <div class="paragraph">
4220 <p>The 'Flight' tab shows information used to evaluate
4221 and spot a rocket while in flight. It displays speed
4222 and height data to monitor the health of the rocket,
4223 along with elevation, range and bearing to help locate
4224 the rocket in the sky.</p>
4225 </div>
4226 <div class="paragraph">
4227 <p>While the Flight tab is displayed, the voice
4228 announcements will include current speed, height,
4229 elevation and bearing information.</p>
4230 </div>
4231 <div class="dlist">
4232 <dl>
4233 <dt class="hdlist1">Speed</dt>
4234 <dd>
4235 <p>Shows current vertical speed. During descent, the
4236 speed values are averaged over a fairly long time to
4237 try and make them steadier.</p>
4238 </dd>
4239 <dt class="hdlist1">Height</dt>
4240 <dd>
4241 <p>Shows the current height above the launch pad.</p>
4242 </dd>
4243 <dt class="hdlist1">Max Speed</dt>
4244 <dd>
4245 <p>Shows the maximum vertical speed seen during the
4246 flight.</p>
4247 </dd>
4248 <dt class="hdlist1">Max Height</dt>
4249 <dd>
4250 <p>Shows the maximum height above launch pad.</p>
4251 </dd>
4252 <dt class="hdlist1">Elevation</dt>
4253 <dd>
4254 <p>This is the angle above the horizon from the android
4255 devices current position.</p>
4256 </dd>
4257 <dt class="hdlist1">Range</dt>
4258 <dd>
4259 <p>The total distance from the android device to the
4260 rocket, including both ground distance and difference
4261 in altitude. Use this to gauge how large the rocket is
4262 likely to appear in the sky.</p>
4263 </dd>
4264 <dt class="hdlist1">Bearing</dt>
4265 <dd>
4266 <p>This is the azimuth from true north for the rocket
4267 from the android device. Use this in combination with
4268 the Elevation value to help locate the rocket in the
4269 sky, or at least to help point the antenna in the
4270 general direction. This is provided in both degrees
4271 and a compass point (like West South West). You&#8217;ll
4272 want to know which direction is true north before
4273 launching your rocket.</p>
4274 </dd>
4275 <dt class="hdlist1">Ground Distance</dt>
4276 <dd>
4277 <p>This shows the distance across the ground to the
4278 lat/lon where the rocket is located. Use this to
4279 estimate what is currently under the rocket.</p>
4280 </dd>
4281 <dt class="hdlist1">Latitude/Longitude</dt>
4282 <dd>
4283 <p>Displays the last known location of the rocket.</p>
4284 </dd>
4285 <dt class="hdlist1">Apogee Igniter</dt>
4286 <dd>
4287 <p>This indicates whether the apogee igniter has
4288 continuity. If the igniter has a low resistance, then
4289 the voltage measured here will be close to the Li-Po
4290 battery voltage. A value greater than 3.2V is required
4291 for a 'GO' status.</p>
4292 </dd>
4293 <dt class="hdlist1">Main Igniter</dt>
4294 <dd>
4295 <p>This indicates whether the main igniter has
4296 continuity. If the igniter has a low resistance, then
4297 the voltage measured here will be close to the Li-Po
4298 battery voltage. A value greater than 3.2V is required
4299 for a 'GO' status.</p>
4300 </dd>
4301 </dl>
4302 </div>
4303 </div>
4304 <div class="sect2">
4305 <h3 id="_recover">13.11. Recover</h3>
4306 <div class="paragraph">
4307 <p>The 'Recover' tab shows information used while
4308 recovering the rocket on the ground after flight.</p>
4309 </div>
4310 <div class="paragraph">
4311 <p>While the Recover tab is displayed, the voice
4312 announcements will include distance along with either
4313 bearing or direction, depending on whether you are
4314 moving.</p>
4315 </div>
4316 <div class="dlist">
4317 <dl>
4318 <dt class="hdlist1">Bearing</dt>
4319 <dd>
4320 <p>This is the azimuth from true north for the rocket
4321 from the android device. Use this in combination with
4322 the Elevation value to help locate the rocket in the
4323 sky, or at least to help point the antenna in the
4324 general direction. This is provided in both degrees
4325 and a compass point (like West South West). You&#8217;ll
4326 want to know which direction is true north before
4327 launching your rocket.</p>
4328 </dd>
4329 <dt class="hdlist1">Direction</dt>
4330 <dd>
4331 <p>When you are in motion, this provides the angle from
4332 your current direction of motion towards the rocket.</p>
4333 </dd>
4334 <dt class="hdlist1">Distance</dt>
4335 <dd>
4336 <p>Distance over the ground to the rocket.</p>
4337 </dd>
4338 <dt class="hdlist1">Tar Lat/Tar Lon</dt>
4339 <dd>
4340 <p>Displays the last known location of the rocket.</p>
4341 </dd>
4342 <dt class="hdlist1">My Lat/My Lon</dt>
4343 <dd>
4344 <p>Displays the location of the Android device.</p>
4345 </dd>
4346 <dt class="hdlist1">Max Height</dt>
4347 <dd>
4348 <p>Shows the maximum height above launch pad seen during
4349 the flight.</p>
4350 </dd>
4351 <dt class="hdlist1">Max Speed</dt>
4352 <dd>
4353 <p>Shows the maximum vertical speed seen during the
4354 flight.</p>
4355 </dd>
4356 <dt class="hdlist1">Max Accel</dt>
4357 <dd>
4358 <p>Shows the maximum vertical acceleration seen during
4359 the flight.</p>
4360 </dd>
4361 </dl>
4362 </div>
4363 </div>
4364 <div class="sect2">
4365 <h3 id="_map_2">13.12. Map</h3>
4366 <div class="paragraph">
4367 <p>The 'Map' tab shows a map of the area around the
4368 rocket being tracked along with information needed to
4369 recover it.</p>
4370 </div>
4371 <div class="paragraph">
4372 <p>On the map itself, icons showing the location of the
4373 android device along with the last known location of
4374 each tracker. A blue line is drawn from the android
4375 device location to the currently selected tracker.</p>
4376 </div>
4377 <div class="paragraph">
4378 <p>Below the map, the distance and either bearing or
4379 direction along with the lat/lon of the target and the
4380 android device are shown</p>
4381 </div>
4382 <div class="paragraph">
4383 <p>The Map tab provides the same voice announcements as
4384 the Recover tab.</p>
4385 </div>
4386 </div>
4387 <div class="sect2">
4388 <h3 id="_downloading_flight_logs">13.13. Downloading Flight Logs</h3>
4389 <div class="paragraph">
4390 <p>AltosDroid always saves every bit of telemetry data it
4391 receives. To download that to a computer for use with
4392 AltosUI, remove the SD card from your Android device,
4393 or connect your device to your computer&#8217;s USB port and
4394 browse the files on that device. You will find
4395 '.telem' files in the TeleMetrum directory that will
4396 work with AltosUI directly.</p>
4397 </div>
4398 </div>
4399 </div>
4400 </div>
4401 <div class="sect1">
4402 <h2 id="_system_operation">Appendix A: System Operation</h2>
4403 <div class="sectionbody">
4404 <div class="sect2">
4405 <h3 id="_firmware_modes">A.1. Firmware Modes</h3>
4406 <div class="paragraph">
4407 <p>The AltOS firmware build for the altimeters has two
4408 fundamental modes, “idle” and “flight”.  Which of these modes
4409 the firmware operates in is determined at start up
4410 time.
4411 For
4412 TeleMetrum, TeleMega, EasyMega and EasyTimer, which have accelerometers, the mode is
4413 controlled by the orientation of the
4414 rocket (well, actually the board, of course&#8230;&#8203;) at the time
4415 power is switched on.  If the rocket is “nose up”, then
4416 the flight computer assumes it&#8217;s on a rail or rod being prepared for
4417 launch, so the firmware chooses flight mode.  However, if the
4418 rocket is more or less horizontal, the firmware instead enters
4419 idle mode.
4420 Since
4421 EasyMini doesn&#8217;t
4422 have an
4423 accelerometer we can use to determine orientation, “idle” mode
4424 is selected if the board is connected via USB to a computer,
4425 otherwise the board enters “flight” mode.
4426 TeleMini
4427 selects “idle” mode if it receives a command packet
4428 within the
4429 first five seconds of operation.</p>
4430 </div>
4431 <div class="paragraph">
4432 <p>At power on, the altimeter will beep out the battery voltage
4433 to the nearest tenth of a volt.  Each digit is represented by
4434 a sequence of short “dit” beeps, with a pause between
4435 digits. A zero digit is represented with one long “dah”
4436 beep. Then there will be a short pause while the altimeter
4437 completes initialization and self test, and decides which mode
4438 to enter next.</p>
4439 </div>
4440 <div class="paragraph">
4441 <p>In flight or “pad” mode, the altimeter engages the flight
4442 state machine, goes into transmit-only mode to send telemetry,
4443 and waits for launch to be detected.  Flight mode is indicated
4444 by an “di-dah-dah-dit” (“P” for pad) on the beeper or lights,
4445 followed by beeps or flashes indicating the state of the
4446 pyrotechnic igniter continuity.  One beep/flash indicates
4447 apogee continuity, two beeps/flashes indicate main continuity,
4448 three beeps/flashes indicate both apogee and main continuity,
4449 and one longer “brap” sound which is made by rapidly
4450 alternating between two tones indicates no continuity.  For a
4451 dual deploy flight, make sure you&#8217;re getting three beeps or
4452 flashes before launching!  For apogee-only or motor eject
4453 flights, do what makes sense.</p>
4454 </div>
4455 <div class="paragraph">
4456 <p>If idle mode is entered, you will hear an audible “di-dit” or
4457 see two short flashes (“I” for idle), and the flight state
4458 machine is disengaged, thus no ejection charges will fire.
4459 The altimeters also listen for the radio link when in idle
4460 mode for requests sent via TeleDongle.  Commands can be issued
4461 in idle mode over either USB or the radio link
4462 equivalently.
4463 TeleMini only has the radio link.
4464 Idle mode is useful for configuring the altimeter, for
4465 extracting data from the on-board storage chip after
4466 flight, and for ground testing pyro charges.</p>
4467 </div>
4468 <div class="paragraph">
4469 <p>In “Idle” and “Pad” modes, once the mode indication
4470 beeps/flashes and continuity indication has been sent, if
4471 there is no space available to log the flight in on-board
4472 memory, the flight computer will emit a warbling tone (much
4473 slower than the “no continuity tone”)</p>
4474 </div>
4475 <div class="paragraph">
4476 <p>See <a href="#_understanding_beeps">Understanding Beeps</a> for a summary of all of
4477 the audio signals used.</p>
4478 </div>
4479 <div class="paragraph">
4480 <p>Once landed, the flight computer will signal that by emitting
4481 the “Landed” sound described above, after which it will beep
4482 out the apogee height (in meters). Each digit is represented
4483 by a sequence of short “dit” beeps, with a pause between
4484 digits. A zero digit is represented with one long “dah”
4485 beep. The flight computer will continue to report landed mode
4486 and beep out the maximum height until turned off.</p>
4487 </div>
4488 <div class="paragraph">
4489 <p>One “neat trick” of particular value when TeleMetrum, TeleMega
4490 or EasyMega are used with
4491 very large air-frames, is that you can power the board up while the
4492 rocket is horizontal, such that it comes up in idle mode.  Then you can
4493 raise the air-frame to launch position, and issue a 'reset' command
4494 via TeleDongle over the radio link to cause the altimeter to reboot and
4495 come up in flight mode.  This is much safer than standing on the top
4496 step of a rickety step-ladder or hanging off the side of a launch
4497 tower with a screw-driver trying to turn on your avionics before
4498 installing igniters!</p>
4499 </div>
4500 <div class="paragraph">
4501 <p>TeleMini is configured solely via the radio link. Of course, that
4502 means you need to know the TeleMini radio configuration values
4503 or you won&#8217;t be able to communicate with it. For situations
4504 when you don&#8217;t have the radio configuration values,
4505 TeleMini v1.0
4506 offers an 'emergency recovery' mode. In this mode,
4507 TeleMini v1.0 is
4508 configured as follows:</p>
4509 </div>
4510 <div class="ulist">
4511 <ul>
4512 <li>
4513 <p>Sets the radio frequency to 434.550MHz</p>
4514 </li>
4515 <li>
4516 <p>Sets the radio calibration back to the factory value.</p>
4517 </li>
4518 <li>
4519 <p>Sets the callsign to N0CALL</p>
4520 </li>
4521 <li>
4522 <p>Does not go to 'pad' mode after five seconds.</p>
4523 </li>
4524 </ul>
4525 </div>
4526 <div class="paragraph">
4527 <p>To get into 'emergency recovery' mode, first find the row of
4528 four small holes opposite the switch wiring. Using a short
4529 piece of small gauge wire, connect the outer two holes
4530 together, then power TeleMini up. Once the red LED is lit,
4531 disconnect the wire and the board should signal that it&#8217;s in
4532 'idle' mode after the initial five second startup
4533 period.</p>
4534 </div>
4535 </div>
4536 <div class="sect2">
4537 <h3 id="_gps">A.2. GPS</h3>
4538 <div class="paragraph">
4539 <p>TeleMetrum and TeleMega include a complete GPS receiver.  A
4540 complete explanation of how GPS works is beyond the scope of
4541 this manual, but the bottom line is that the GPS receiver
4542 needs to lock onto at least four satellites to obtain a solid
4543 3 dimensional position fix and know what time it is.</p>
4544 </div>
4545 <div class="paragraph">
4546 <p>The flight computers provide backup power to the GPS chip any time a
4547 battery is connected.  This allows the receiver to “warm start” on
4548 the launch rail much faster than if every power-on were a GPS
4549 “cold start”.  In typical operations, powering up
4550 on the flight line in idle mode while performing final air-frame
4551 preparation will be sufficient to allow the GPS receiver to cold
4552 start and acquire lock.  Then the board can be powered down during
4553 RSO review and installation on a launch rod or rail.  When the board
4554 is turned back on, the GPS system should lock very quickly, typically
4555 long before igniter installation and return to the flight line are
4556 complete.</p>
4557 </div>
4558 </div>
4559 <div class="sect2">
4560 <h3 id="_controlling_an_altimeter_over_the_radio_link">A.3. Controlling An Altimeter Over The Radio Link</h3>
4561 <div class="paragraph">
4562 <p>One of the unique features of the Altus Metrum system is the
4563 ability to create a two way command link between TeleDongle
4564 and an altimeter using the digital radio transceivers
4565 built into each device. This allows you to interact with the
4566 altimeter from afar, as if it were directly connected to the
4567 computer.</p>
4568 </div>
4569 <div class="paragraph">
4570 <p>Any operation which can be performed with a flight computer can
4571 either be done with the device directly connected to the
4572 computer via the USB cable, or through the radio
4573 link. TeleMini doesn&#8217;t provide a USB connector and so it is
4574 always communicated with over radio.  Select the appropriate
4575 TeleDongle device when the list of devices is presented and
4576 AltosUI will interact with an altimeter over the radio link.</p>
4577 </div>
4578 <div class="paragraph">
4579 <p>One oddity in the current interface is how AltosUI selects the
4580 frequency for radio communications. Instead of providing
4581 an interface to specifically configure the frequency, it uses
4582 whatever frequency was most recently selected for the target
4583 TeleDongle device in Monitor Flight mode. If you haven&#8217;t ever
4584 used that mode with the TeleDongle in question, select the
4585 Monitor Flight button from the top level UI, and pick the
4586 appropriate TeleDongle device.  Once the flight monitoring
4587 window is open, select the desired frequency and then close it
4588 down again. All radio communications will now use that frequency.</p>
4589 </div>
4590 <div class="ulist">
4591 <ul>
4592 <li>
4593 <p>Save Flight Data—Recover flight data from the
4594 rocket without opening it up.</p>
4595 </li>
4596 <li>
4597 <p>Configure altimeter apogee delays, main deploy
4598 heights and additional pyro event conditions to
4599 respond to changing launch conditions. You can also
4600 'reboot' the altimeter. Use this to remotely enable
4601 the flight computer by turning TeleMetrum or
4602 TeleMega on in “idle” mode, then once the air-frame
4603 is oriented for launch, you can reboot the
4604 altimeter and have it restart in pad mode without
4605 having to climb the scary ladder.</p>
4606 </li>
4607 <li>
4608 <p>Fire Igniters—Test your deployment charges without snaking
4609 wires out through holes in the air-frame. Simply assemble the
4610 rocket as if for flight with the apogee and main charges
4611 loaded, then remotely command the altimeter to fire the
4612 igniters.</p>
4613 </li>
4614 </ul>
4615 </div>
4616 <div class="paragraph">
4617 <p>Operation over the radio link for configuring an
4618 altimeter, ground testing igniters, and so forth uses
4619 the same RF frequencies as flight telemetry.  To
4620 configure the desired TeleDongle frequency, select the
4621 monitor flight tab, then use the frequency selector
4622 and close the window before performing other desired
4623 radio operations.</p>
4624 </div>
4625 <div class="paragraph">
4626 <p>The flight computers only enable radio commanding in
4627 'idle' mode.  TeleMetrum and TeleMega use the
4628 accelerometer to detect which orientation they start
4629 up in, so make sure you have the flight computer lying
4630 horizontally when you turn it on. Otherwise, it will
4631 start in 'pad' mode ready for flight, and will not be
4632 listening for command packets from TeleDongle.</p>
4633 </div>
4634 <div class="paragraph">
4635 <p>TeleMini listens for a command packet for five seconds
4636 after first being turned on, if it doesn&#8217;t hear
4637 anything, it enters 'pad' mode, ready for flight and
4638 will no longer listen for command packets. The easiest
4639 way to connect to TeleMini is to initiate the command
4640 and select the TeleDongle device. At this point, the
4641 TeleDongle will be attempting to communicate with the
4642 TeleMini. Now turn TeleMini on, and it should
4643 immediately start communicating with the TeleDongle
4644 and the desired operation can be performed.</p>
4645 </div>
4646 <div class="paragraph">
4647 <p>You can monitor the operation of the radio link by watching the
4648 lights on the devices. The red LED will flash each time a packet
4649 is transmitted, while the green LED will light up on TeleDongle when
4650 it is waiting to receive a packet from the altimeter.</p>
4651 </div>
4652 </div>
4653 <div class="sect2">
4654 <h3 id="_ground_testing">A.4. Ground Testing</h3>
4655 <div class="paragraph">
4656 <p>An important aspect of preparing a rocket using electronic deployment
4657 for flight is ground testing the recovery system.
4658 Thanks
4659 to the bi-directional radio link central to the Altus Metrum system,
4660 this can be accomplished in a TeleMega, TeleMetrum or TeleMini equipped rocket
4661 with less work than you may be accustomed to with other systems.  It
4662 can even be fun!</p>
4663 </div>
4664 <div class="paragraph">
4665 <p>Just prep the rocket for flight, then power up the altimeter
4666 in “idle”
4667 mode (placing air-frame horizontal for TeleMetrum or TeleMega, or
4668 selecting the Configure Altimeter tab for TeleMini).
4669 This will cause
4670 the firmware to go into “idle” mode, in which the normal flight
4671 state machine is disabled and charges will not fire without
4672 manual command.
4673 You can now command the altimeter to fire the apogee
4674 or main charges from a safe distance using your
4675 computer and the Fire Igniter tab to complete ejection testing.</p>
4676 </div>
4677 </div>
4678 <div class="sect2">
4679 <h3 id="_radio_link">A.5. Radio Link</h3>
4680 <div class="paragraph">
4681 <p>TeleMetrum, TeleMini and TeleMega all incorporate an
4682 RF transceiver, but it&#8217;s not a full duplex system;
4683 each end can only be transmitting or receiving at any
4684 given moment. So we had to decide how to manage the
4685 link.</p>
4686 </div>
4687 <div class="paragraph">
4688 <p>By design, the altimeter firmware listens for the
4689 radio link when it&#8217;s in “idle mode”, which allows us
4690 to use the radio link to configure the rocket, do
4691 things like ejection tests, and extract data after a
4692 flight without having to crack open the air-frame.
4693 However, when the board is in “flight mode”, the
4694 altimeter only transmits and doesn&#8217;t listen at all.
4695 That&#8217;s because we want to put ultimate priority on
4696 event detection and getting telemetry out of the
4697 rocket through the radio in case the rocket crashes
4698 and we aren&#8217;t able to extract data later.</p>
4699 </div>
4700 <div class="paragraph">
4701 <p>We don&#8217;t generally use a 'normal packet radio' mode
4702 like APRS because they&#8217;re just too inefficient.  The
4703 GFSK modulation we use is FSK with the base-band
4704 pulses passed through a Gaussian filter before they go
4705 into the modulator to limit the transmitted bandwidth.
4706 When combined with forward error correction and
4707 interleaving, this allows us to have a very robust
4708 19.2 kilobit data link with only 10-40 milliwatts of
4709 transmit power, a whip antenna in the rocket, and a
4710 hand-held Yagi on the ground.  We&#8217;ve had flights to
4711 above 21k feet AGL with great reception, and
4712 calculations suggest we should be good to well over
4713 40k feet AGL with a 5-element yagi on the ground with
4714 our 10mW units and over 100k feet AGL with the 40mW
4715 devices.  We hope to fly boards to higher altitudes
4716 over time, and would of course appreciate customer
4717 feedback on performance in higher altitude flights!</p>
4718 </div>
4719 </div>
4720 <div class="sect2">
4721 <h3 id="_aprs">A.6. APRS</h3>
4722 <div class="paragraph">
4723 <p>TeleMetrum v2 and newer and TeleMega can send APRS if desired, and the
4724 interval between APRS packets can be configured. As
4725 each APRS packet takes a full second to transmit, we
4726 recommend an interval of at least 5 seconds to avoid
4727 consuming too much battery power or radio channel
4728 bandwidth. You can configure the time within each
4729 minute that APRS transmits by changing the APRS offset
4730 value. When the GPS signal is locked and knows the
4731 current time, the APRS offset selects the time with
4732 each minute for the first APRS transmission;
4733 subsequent transmissions occur each APRS interval
4734 seconds thereafter.  You can configure the APRS
4735 interval and APRS offset using AltosUI; that
4736 process is described in <a href="#_configure_altimeter">Configure Altimeter</a>.</p>
4737 </div>
4738 <div class="paragraph">
4739 <p>AltOS supports both compressed and uncompressed APRS
4740 position report data formats. The compressed format
4741 provides for higher position precision and shorter
4742 packets than the uncompressed APRS format. We&#8217;ve found
4743 some older APRS receivers that do not handle the
4744 compressed format. The Kenwood TH-72A requires the use
4745 of uncompressed format to display altitude information
4746 correctly. The Yaesu FT1D requires the use of
4747 compressed format to display altitude information.</p>
4748 </div>
4749 <div class="paragraph">
4750 <p>APRS packets include an SSID (Secondary Station Identifier)
4751 field that allows one operator to have multiple
4752 transmitters. AltOS allows you to set this to a single digit
4753 from 0 to 9, allowing you to fly multiple transmitters at the
4754 same time while keeping the identify of each one separate in
4755 the receiver. By default, the SSID is set to the last digit of
4756 the device serial number.</p>
4757 </div>
4758 <div class="paragraph">
4759 <p>The APRS packet format includes a comment field that
4760 can have arbitrary text in it. AltOS uses this to send
4761 status information as shown in the following table.</p>
4762 </div>
4763 <table class="tableblock frame-all grid-all stretch">
4764 <caption class="title">Table 10. Altus Metrum APRS Comments</caption>
4765 <colgroup>
4766 <col style="width: 20%;">
4767 <col style="width: 20%;">
4768 <col style="width: 60%;">
4769 </colgroup>
4770 <thead>
4771 <tr>
4772 <th class="tableblock halign-left valign-top">Field</th>
4773 <th class="tableblock halign-left valign-top">Example</th>
4774 <th class="tableblock halign-left valign-top">Description</th>
4775 </tr>
4776 </thead>
4777 <tbody>
4778 <tr>
4779 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
4780 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
4781 <td class="tableblock halign-left valign-top"><p class="tableblock">GPS Status U for unlocked, L for locked</p></td>
4782 </tr>
4783 <tr>
4784 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
4785 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4786 <td class="tableblock halign-left valign-top"><p class="tableblock">Number of Satellites in View</p></td>
4787 </tr>
4788 <tr>
4789 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
4790 <td class="tableblock halign-left valign-top"><p class="tableblock">B4.0</p></td>
4791 <td class="tableblock halign-left valign-top"><p class="tableblock">Altimeter Battery Voltage</p></td>
4792 </tr>
4793 <tr>
4794 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4795 <td class="tableblock halign-left valign-top"><p class="tableblock">A3.7</p></td>
4796 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee Igniter Voltage</p></td>
4797 </tr>
4798 <tr>
4799 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
4800 <td class="tableblock halign-left valign-top"><p class="tableblock">M3.7</p></td>
4801 <td class="tableblock halign-left valign-top"><p class="tableblock">Main Igniter Voltage</p></td>
4802 </tr>
4803 <tr>
4804 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4805 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4806 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4807 </tr>
4808 <tr>
4809 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4810 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4811 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4812 </tr>
4813 </tbody>
4814 </table>
4815 <div class="paragraph">
4816 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4817 satellites in view, a primary battery at 4.0V, and
4818 apogee and main igniters both at 3.7V from device 1286.</p>
4819 </div>
4820 <div class="literalblock">
4821 <div class="content">
4822 <pre>L6 B4.0 A3.7 M3.7 1286</pre>
4823 </div>
4824 </div>
4825 <div class="paragraph">
4826 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4827 satellites in view and a primary battery at 4.0V from device 1876.</p>
4828 </div>
4829 <div class="literalblock">
4830 <div class="content">
4831 <pre>L6 B4.0 1876</pre>
4832 </div>
4833 </div>
4834 <div class="paragraph">
4835 <p>Make sure your primary battery is above 3.8V
4836 any connected igniters are above 3.5V
4837 and GPS is locked with at least 5 or 6 satellites in
4838 view before flying. If GPS is switching between L and
4839 U regularly, then it doesn&#8217;t have a good lock and you
4840 should wait until it becomes stable.</p>
4841 </div>
4842 <div class="paragraph">
4843 <p>If the GPS receiver loses lock, the APRS data
4844 transmitted will contain the last position for which
4845 GPS lock was available. You can tell that this has
4846 happened by noticing that the GPS status character
4847 switches from 'L' to 'U'. Before GPS has locked, APRS
4848 will transmit zero for latitude, longitude and
4849 altitude.</p>
4850 </div>
4851 </div>
4852 <div class="sect2">
4853 <h3 id="_configurable_parameters">A.7. Configurable Parameters</h3>
4854 <div class="paragraph">
4855 <p>Configuring an Altus Metrum altimeter for flight is
4856 very simple.  Even on our baro-only TeleMini and
4857 EasyMini boards, the use of a Kalman filter means
4858 there is no need to set a “mach delay”.  All of the
4859 configurable parameters can be set using AltosUI. Read
4860 <a href="#_configure_altimeter">Configure Altimeter</a> for more information.</p>
4861 </div>
4862 </div>
4863 </div>
4864 </div>
4865 <div class="sect1">
4866 <h2 id="_example_pyro_channel_configurations">Appendix B: Example Pyro Channel Configurations</h2>
4867 <div class="sectionbody">
4868 <div class="paragraph">
4869 <p>Programming configurable pyro channels on Altus Metrum products that
4870 include them isn&#8217;t difficult, but in an attempt to aid understanding
4871 of the configuration interface and help "keep simple things simple",
4872 we offer the following examples of the simplest configurations for
4873 common situations, along with some hints on avoiding unexpected
4874 results.</p>
4875 </div>
4876 <div class="paragraph">
4877 <p>The rich set of conditions provided can be used to configure almost
4878 any pyro event you can imagine, for a wide variety of objectives.
4879 But don&#8217;t be fooled!  Typical events need only one or a few simple
4880 conditions to be configured for success.  A key thing to remember is
4881 that <strong>all</strong> configured conditions must be true to allow a pyro channel
4882 to fire.  Trying to include too many conditions often results in
4883 conflicting rules that never allow a channel to fire.  The most
4884 important advice we can offer is, therefore, to try and find the
4885 simplest set of conditions that will do what you need for a given
4886 project.</p>
4887 </div>
4888 <div class="sect2">
4889 <h3 id="_two_stage_flights">B.1. Two-Stage Flights</h3>
4890 <div class="paragraph">
4891 <p>Successful completion of a two-stage flight often involves
4892 programming of two events.  The first is firing a separation
4893 charge, the second is igniting the sustainer&#8217;s (primary)
4894 motor.</p>
4895 </div>
4896 <div class="paragraph">
4897 <p>Separation charges are best fired as soon as possible after
4898 the previous stage has completed providing acceleration, to
4899 minimize drag of the sustainer&#8217;s coast phase before ignition.
4900 Recovery, whether the remainder of the flight is nominal or
4901 not, usually works best when the states are separated.  So,
4902 the "best" way to configure a pyro channel for a separation
4903 charge is to just set "after motor number".  For a 2-stage
4904 project, set this to "1".  This will cause the pyro channel
4905 to fire as soon as the firmware&#8217;s flight state machine
4906 determines the first motor has burned out.</p>
4907 </div>
4908 <div class="paragraph">
4909 <p>Safe ignition of a sustainer (primary) motor requires that
4910 it happen after the previous stage burns out, while the
4911 airframe remains mostly vertical, and typically after the
4912 sustainer has coasted away from the booster a bit.  A good
4913 starting point is thus "after motor number" set the same as
4914 the separation charge, which is "1" for a 2-stage rocket.
4915 Then "angle from vertical less than" set to some
4916 reasonably vertical amount, perhaps 20 degrees.  Then "delay
4917 after other conditions" set for the desired duration of coast.
4918 Use simulations to figure out what a reasonable value here is,
4919 but for typical high power rocketry sport flights that aren&#8217;t
4920 trying to set records, something like 2 seconds is usually a
4921 good place to start.</p>
4922 </div>
4923 </div>
4924 <div class="sect2">
4925 <h3 id="_triggered_clusters_and_air_starts">B.2. Triggered Clusters and Air Starts</h3>
4926 <div class="paragraph">
4927 <p>When an airframe has a cluster of motors, one of which is
4928 "primary" and centered, surrounding by a ring of "secondary"
4929 motors, you may want to use the launch control system to                        fire the primary motor and use onboard electronics to light
4930 the rest of the cluster as soon as launch is detected.  This
4931 is particularly true if the primary motor is significantly
4932 different in geometry and may take longer to come up to
4933 pressure than the secondary motors.  In this case, a simple
4934 configuration to light secondary motors is is "time since
4935 boost greater than" enabled and set to "0".  There&#8217;s
4936 really no point in setting an angle limit since no time has
4937 transpired for the airframe to change orientation.</p>
4938 </div>
4939 <div class="paragraph">
4940 <p>Air starts can use the same simple configuration, but with
4941 the time set to a non-zero value.  However, if air starts
4942 are going to light after the airframe leaves the launch rail
4943 or tower, add an "angle from vertical less than"
4944 condition just you would for a 2-stage sustainer to stay safe.</p>
4945 </div>
4946 </div>
4947 <div class="sect2">
4948 <h3 id="_redundant_apogee">B.3. Redundant Apogee</h3>
4949 <div class="paragraph">
4950 <p>When flying a board like TeleMega or EasyMega, it&#8217;s easy to
4951 configure a programmable channel to fire a redundant apogee
4952 charge.  This is of course not <strong>fully</strong> redundant, since it&#8217;s
4953 always possible that the board itself or its battery could
4954 the the failure source, but far more often, pyro events fail
4955 due to broken wires, bad connectors, or bad e-matches&#8230;&#8203; so
4956 firing two charges from one board can add useful redundancy.</p>
4957 </div>
4958 <div class="paragraph">
4959 <p>The simplest configuration for redundant apogee is "flight
4960 state after" set to "drogue", and then "delay after other
4961 conditions" set to a second or two.</p>
4962 </div>
4963 </div>
4964 <div class="sect2">
4965 <h3 id="_redundant_main">B.4. Redundant Main</h3>
4966 <div class="paragraph">
4967 <p>Similarly to apogee, configuring a redundant main charge can
4968 provide useful redundancy.  What we want is to configure an
4969 altitude for deployment lower than the primary main deploy
4970 altitude, and then ensure we only trigger on that condition
4971 while descending.</p>
4972 </div>
4973 <div class="paragraph">
4974 <p>The simplest configuration for redundant main is "flight
4975 state after" set to "drogue", which will ensure we&#8217;re in to
4976 the descent phase, then "height less than" set to a number
4977 lower than you&#8217;ve chosen for the primary main channel
4978 deployment height.</p>
4979 </div>
4980 </div>
4981 <div class="sect2">
4982 <h3 id="_apogee_above_baro_sensor_limit">B.5. Apogee Above Baro Sensor Limit</h3>
4983 <div class="paragraph">
4984 <p>A question we&#8217;ve seen increasingly often is "How does the
4985 Telemega/Easymega detect apogee for flights above 100,000
4986 feet?"  Flights above that height are a bit outside
4987 our original design envelope, but can be made to work&#8230;&#8203;
4988 This is <strong>not</strong> a simple flight, and the configuration for it
4989 is also not simple, but we think including this information
4990 is important for anyone contemplating such a project with our
4991 electronics!</p>
4992 </div>
4993 <div class="paragraph">
4994 <p>Our flight computers use a Kalman sensor-fusing filter to
4995 estimate the flight state, which consists of three values:</p>
4996 </div>
4997 <div class="olist arabic">
4998 <ol class="arabic">
4999 <li>
5000 <p>Height above ground</p>
5001 </li>
5002 <li>
5003 <p>Vertical speed</p>
5004 </li>
5005 <li>
5006 <p>Vertical acceleration</p>
5007 </li>
5008 </ol>
5009 </div>
5010 <div class="paragraph">
5011 <p>Apogee is assumed to be where vertical speed crosses zero.</p>
5012 </div>
5013 <div class="paragraph">
5014 <p>Below 30km altitude (about 100k'), we use both the barometer
5015 and the accelerometer to update the flight state, along with
5016 a basic Newtonian model of motion. That works well, pegging
5017 apogee within a few sensor samples essentially every time.</p>
5018 </div>
5019 <div class="paragraph">
5020 <p>Above 30km, the barometric sensor doesn&#8217;t provide useful data,
5021 so we can&#8217;t use it to update the flight state. Instead, the
5022 Kalman filter falls back to a single sensor mode, using only
5023 the accelerometer.</p>
5024 </div>
5025 <div class="paragraph">
5026 <p>At all altitudes, we de-sense the barometric data when we
5027 estimate the speed is near or above mach as the sensor is
5028 often subjected to significant transients, which would
5029 otherwise push the flight state estimates too fast and could
5030 trigger a false apogee event.</p>
5031 </div>
5032 <div class="paragraph">
5033 <p>That means the filter is no longer getting the benefit of two
5034 sensors, and relies on just the accelerometer. The trouble
5035 with accelerometers is they&#8217;re measuring the derivative of
5036 speed, so you have to integrate their values to compute speed.
5037 Any offset error in acceleration measurement gets constantly
5038 added to that speed.</p>
5039 </div>
5040 <div class="paragraph">
5041 <p>In addition, we assume the axial acceleration is actually
5042 vertical acceleration; our tilt measurements have enough
5043 integration error during coast that we can&#8217;t usefully use
5044 that to get vertical acceleration. Because we don&#8217;t live in
5045 an inertial frame, that means we&#8217;re mis-computing the total
5046 acceleration acting on the airframe as we have to add gravity
5047 into the mix, and simply adding that to the axial acceleration
5048 value doesn&#8217;t generate the right value.</p>
5049 </div>
5050 <div class="paragraph">
5051 <p>The effect of this is to under-estimate apogee when you base
5052 the computation purely on acceleration as the rocket flies a
5053 parabolic path.</p>
5054 </div>
5055 <div class="paragraph">
5056 <p>For flights <strong>near</strong> 100k', all of this works pretty well -
5057 you&#8217;ve got the flight state estimates adjusted using the
5058 barometric sensor up to 30km, then you&#8217;re flying on inertial
5059 data to apogee.</p>
5060 </div>
5061 <div class="paragraph">
5062 <p>For flights well above 100k', it&#8217;s not great; you&#8217;re usually
5063 going fast enough through 100k' that the baro sensor is still
5064 de-sensed through the end of its useful range, so the flight
5065 state estimates are not as close. After that, as you&#8217;re flying
5066 purely on accelerometer data, there&#8217;s no way to re-correct the
5067 state, so the apogee estimates can be off by quite a bit.</p>
5068 </div>
5069 <div class="paragraph">
5070 <p>In the worst cases we have seen, the baro sensor data was
5071 wildly incorrect above mach due to poor static port design,
5072 leaving the state estimate of speed across the 30km boundary
5073 way off and causing the apogee detection to happen far from
5074 the correct time.</p>
5075 </div>
5076 <div class="paragraph">
5077 <p>The good news is that correctly determining apogee is not
5078 really all that important at high altitudes; there&#8217;s so little
5079 density that a drogue will have almost no drag anyways.  Data
5080 from customer flights shows a very parabolic path down to
5081 about 50-60k feet, even with a recovery system deployed.</p>
5082 </div>
5083 <div class="paragraph">
5084 <p>So, what we recommend is to set up two apogee plans:</p>
5085 </div>
5086 <div class="olist arabic">
5087 <ol class="arabic">
5088 <li>
5089 <p>Use the built-in apogee detection, but add a
5090 significant delay (as much as 30 seconds). This
5091 will probably fire near enough to apogee to not
5092 have a significant impact on the maximum height
5093 achieved.</p>
5094 </li>
5095 <li>
5096 <p>Add a back-up apogee which fires after apogee
5097 <strong>when the height is below about 20-25km</strong>. This
5098 way, if the flight isn&#8217;t nominal, and the sustainer
5099 ends up reaching apogee in dense air, you aren&#8217;t
5100 hoping the chutes come out before it gets going
5101 too fast. And, you get a second pyro channel firing
5102 at that altitude even if it reached a higher
5103 altitude before.</p>
5104 </li>
5105 </ol>
5106 </div>
5107 <div class="paragraph">
5108 <p>You can wire these two pyro channels to the same pyro device;
5109 you just need to make sure they&#8217;re wired + to + and - to -
5110 (the manual shows which screw terminals are which).</p>
5111 </div>
5112 <div class="paragraph">
5113 <p>The bottom line is that flights to altitudes modestly above
5114 the range of the baro sensor with Altus Metrum products can
5115 be accomplished safely, but flying "way high" (like 300k')
5116 demands a deployment mechanism which doesn&#8217;t solely rely on
5117 altimeters (like ours) which are designed for modest altitude
5118 rocketry.  Flights to those altitudes also probably need
5119 active stabilization to make sure they follow the prescribed
5120 trajectory and stay inside their waiver.</p>
5121 </div>
5122 </div>
5123 </div>
5124 </div>
5125 <div class="sect1">
5126 <h2 id="_handling_precautions">Appendix C: Handling Precautions</h2>
5127 <div class="sectionbody">
5128 <div class="paragraph">
5129 <p>All Altus Metrum products are sophisticated electronic devices.
5130 When handled gently and properly installed in an air-frame, they
5131 will deliver impressive results.  However, as with all electronic
5132 devices, there are some precautions you must take.</p>
5133 </div>
5134 <div class="admonitionblock warning">
5135 <table>
5136 <tr>
5137 <td class="icon">
5138 <img src="./images/icons/warning.svg" alt="Warning">
5139 </td>
5140 <td class="content">
5141 The Lithium Polymer rechargeable batteries have an
5142 extraordinary power density.  This is great because we can fly with
5143 much less battery mass than if we used alkaline batteries or previous
5144 generation rechargeable batteries&#8230;&#8203; but if they are punctured
5145 or their leads are allowed to short, they can and will release their
5146 energy very rapidly!
5147 Thus we recommend that you take some care when handling our batteries
5148 and consider giving them some extra protection in your air-frame.  We
5149 often wrap them in suitable scraps of closed-cell packing foam before
5150 strapping them down, for example.
5151 </td>
5152 </tr>
5153 </table>
5154 </div>
5155 <div class="paragraph">
5156 <p>The barometric sensors used on all of our flight computers are
5157 sensitive to sunlight.  In normal mounting situations, the baro sensor
5158 and all of the other surface mount components
5159 are “down” towards whatever the underlying mounting surface is, so
5160 this is not normally a problem.  Please consider this when designing an
5161 installation in an air-frame with a see-through plastic payload bay.  It
5162 is particularly important to
5163 consider this with TeleMini v1.0, both because the baro sensor is on the
5164 “top” of the board, and because many model rockets with payload bays
5165 use clear plastic for the payload bay!  Replacing these with an opaque
5166 cardboard tube, painting them, or wrapping them with a layer of masking
5167 tape are all reasonable approaches to keep the sensor out of direct
5168 sunlight.</p>
5169 </div>
5170 <div class="paragraph">
5171 <p>The barometric sensor sampling port must be able to “breathe”,
5172 both by not being covered by foam or tape or other materials that might
5173 directly block the hole on the top of the sensor, and also by having a
5174 suitable static vent to outside air.</p>
5175 </div>
5176 <div class="paragraph">
5177 <p>As with all other rocketry electronics, Altus Metrum altimeters must
5178 be protected from exposure to corrosive motor exhaust and ejection
5179 charge gasses.</p>
5180 </div>
5181 </div>
5182 </div>
5183 <div class="sect1">
5184 <h2 id="_updating_device_firmware">Appendix D: Updating Device Firmware</h2>
5185 <div class="sectionbody">
5186 <div class="paragraph">
5187 <p>TeleMega, TeleMetrum v2 and newer, EasyMega, EasyMini and TeleDongle v3
5188 are all
5189 programmed directly over their USB connectors (self
5190 programming).
5191 TeleMetrum v1, TeleMini v1.0 and TeleDongle v0.2 are
5192 all programmed by using another device as a programmer (pair
5193 programming). It&#8217;s important to recognize which kind of devices
5194 you have before trying to reprogram them.</p>
5195 </div>
5196 <div class="paragraph">
5197 <p>TeleMini v3 can be updated directly over USB, but has no USB connector
5198 on the board.  Instead, the USB signals are present on a row of 6
5199 holes adjacent to the copyright assertion in the silk screen.  Thus,
5200 updating firmware on TeleMini v3 requires making up a special cable,
5201 after which you can treat it just like TeleMetrum or TeleMega.  Many
5202 USB cables seem to follow the color code of red is +5V, black is GND,
5203 green is USB +, and white is USB -.  On TeleMini v3, pin 3 which has
5204 a square copper pad is ground, pin 1 is USB -, and pin 2 is USB +.</p>
5205 </div>
5206 <div class="paragraph">
5207 <p>You may wish to begin by ensuring you have current firmware
5208 images.  These are distributed as part of the AltOS software
5209 bundle that also includes the AltosUI ground station program.
5210 Newer ground station versions typically work fine with older
5211 firmware versions, so you don&#8217;t need to update your devices
5212 just to try out new software features.  You can always
5213 download the most recent version from
5214 <a href="http://www.altusmetrum.org/AltOS/" class="bare">http://www.altusmetrum.org/AltOS/</a></p>
5215 </div>
5216 <div class="sect2">
5217 <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>
5218 <div class="paragraph">
5219 <p>Self-programmable devices are reprogrammed by
5220 connecting them to your computer over USB.</p>
5221 </div>
5222 <div class="olist arabic">
5223 <ol class="arabic">
5224 <li>
5225 <p>Attach a battery if necessary and power switch to
5226 the target device. Power up the device.</p>
5227 </li>
5228 <li>
5229 <p>Using a Micro USB cable, connect the target device to your
5230 computer&#8217;s USB socket.  If the target is a TeleMini v3,
5231 make up and attach a special USB cable.</p>
5232 </li>
5233 <li>
5234 <p>Run AltosUI, and select 'Flash Image' from the File menu.</p>
5235 </li>
5236 <li>
5237 <p>Select the target device in the Device Selection dialog.</p>
5238 </li>
5239 <li>
5240 <p>Select the image you want to flash to the device,
5241 which should have a name in the form
5242 &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx,
5243 such as EasyMini-v1.0-1.6.0.ihx.</p>
5244 </li>
5245 <li>
5246 <p>Make sure the configuration parameters are
5247 reasonable looking. If the serial number and/or RF
5248 configuration values aren&#8217;t right, you&#8217;ll need to
5249 change them.</p>
5250 </li>
5251 <li>
5252 <p>Hit the 'OK' button and the software should proceed
5253 to flash the device with new firmware, showing a
5254 progress bar.</p>
5255 </li>
5256 <li>
5257 <p>Verify that the device is working by using the
5258 'Configure Altimeter' or 'Configure Groundstation'
5259 item to check over the configuration.</p>
5260 </li>
5261 </ol>
5262 </div>
5263 <div class="sect3">
5264 <h4 id="_recovering_from_self_flashing_failure">D.1.1. Recovering From Self-Flashing Failure</h4>
5265 <div class="paragraph">
5266 <p>If the firmware loading fails, it can leave the device
5267 unable to boot. Not to worry, you can force the device to
5268 start the boot loader instead, which will let you try to
5269 flash the device again.</p>
5270 </div>
5271 <div class="paragraph">
5272 <p>On each device, connecting two pins from one of the exposed
5273 connectors will force the boot loader to start, even if the
5274 regular operating system has been corrupted in some way.</p>
5275 </div>
5276 <div class="dlist">
5277 <dl>
5278 <dt class="hdlist1">TeleMega</dt>
5279 <dd>
5280 <p>Connect pin 6 and pin 1 of the companion
5281 connector. Pin 1 can be identified by the square pad
5282 around it, and then the pins count sequentially across
5283 the board. Be very careful to <strong>not</strong> short pin 8 to
5284 anything as that is connected directly to the
5285 battery. Pin 7 carries 3.3V and the board will crash
5286 if that is connected to pin 1, but shouldn&#8217;t damage
5287 the board.</p>
5288 </dd>
5289 <dt class="hdlist1">EasyMega</dt>
5290 <dd>
5291 <p>Connect pin 6 and pin 1 of the companion
5292 connector. Pin 1 can be identified by the square pad
5293 around it, and then the pins count sequentially across
5294 the board. Be very careful to <strong>not</strong> short pin 8 to
5295 anything as that is connected directly to the
5296 battery. Pin 7 carries 3.3V and the board will crash
5297 if that is connected to pin 1, but shouldn&#8217;t damage
5298 the board.</p>
5299 </dd>
5300 <dt class="hdlist1">EasyTimer</dt>
5301 <dd>
5302 <p>Connect pin 5 and pin 1 of the debug connector, which
5303 is the six holes next to the beeper. Pin 1 can be
5304 identified by the square pad around it, and then the
5305 pins count sequentially across the board, making Pin 5
5306 the one on the other end of the row.</p>
5307 </dd>
5308 <dt class="hdlist1">TeleMetrum v2 and newer</dt>
5309 <dd>
5310 <p>Connect pin 6 and pin 1 of the companion
5311 connector. Pin 1 can be identified by the square pad
5312 around it, and then the pins count sequentially across
5313 the board. Be very careful to <strong>not</strong> short pin 8 to
5314 anything as that is connected directly to the
5315 battery. Pin 7 carries 3.3V and the board will crash
5316 if that is connected to pin 1, but shouldn&#8217;t damage
5317 the board.</p>
5318 </dd>
5319 <dt class="hdlist1">EasyMini</dt>
5320 <dd>
5321 <p>Connect pin 6 and pin 1 of the debug connector, which
5322 is the six holes next to the beeper. Pin 1 can be
5323 identified by the square pad around it, and then the
5324 pins count sequentially across the board, making Pin 6
5325 the one on the other end of the row.</p>
5326 </dd>
5327 <dt class="hdlist1">TeleGPS v1</dt>
5328 <dd>
5329 <p>Connect pin 32 on the CPU to ground.  Pin 32 is the
5330 right-most pin on the bottom edge of the CPU when the
5331 board is oriented with the USB and battery connectors
5332 to the right.</p>
5333 </dd>
5334 <dt class="hdlist1">TeleGPS v2</dt>
5335 <dd>
5336 <p>Connect together pins 1 and 5 of the Debug connector.
5337 Pin 1 is the pin with the square pad around the hole.</p>
5338 </dd>
5339 <dt class="hdlist1">TeleDongle v3</dt>
5340 <dd>
5341 <p>Connect pin 32 on the CPU to ground. Pin 32 is closest
5342 to the USB wires on the row of pins towards the center
5343 of the board. Ground is available on the capacitor
5344 next to it, on the end towards the USB wires.</p>
5345 </dd>
5346 <dt class="hdlist1">TeleBT v3</dt>
5347 <dd>
5348 <p>Connect pin 4 on the CPU to 3.3V, which can be done by
5349 connecting pin 1 to pin 4.  Pin 1 is the left pin on
5350 the lower edge of the chip when the unit is oriented
5351 such that the SMA is at the top.</p>
5352 </dd>
5353 <dt class="hdlist1">TeleBT v4</dt>
5354 <dd>
5355 <p>Connect pin 30 on the CPU to ground. Pin 30 is the 6th
5356 pin from the right on the top when the unit is oriented
5357 such that the SMA is at the top.</p>
5358 </dd>
5359 </dl>
5360 </div>
5361 <div class="paragraph">
5362 <p>Once you&#8217;ve located the right pins:</p>
5363 </div>
5364 <div class="olist arabic">
5365 <ol class="arabic">
5366 <li>
5367 <p>Turn the altimeter power off.</p>
5368 </li>
5369 <li>
5370 <p>Connect a battery.</p>
5371 </li>
5372 <li>
5373 <p>Connect the indicated terminals together with a
5374 short piece of wire. Take care not to accidentally
5375 connect anything else.</p>
5376 </li>
5377 <li>
5378 <p>Connect USB</p>
5379 </li>
5380 <li>
5381 <p>Turn the board power on.</p>
5382 </li>
5383 </ol>
5384 </div>
5385 <div class="paragraph">
5386 <p>The board should now be visible over USB as
5387 'AltosFlash' and be ready to receive firmware.  Once
5388 the board has been powered up, you can remove the
5389 piece of wire.</p>
5390 </div>
5391 </div>
5392 </div>
5393 <div class="sect2">
5394 <h3 id="_pair_programming">D.2. Pair Programming</h3>
5395 <div class="paragraph">
5396 <p>The big concept to understand is that you have to use
5397 a TeleMetrum v1.0, TeleBT v1.0 or TeleDongle v0.2 as a
5398 programmer to update a pair programmed device. Due to
5399 limited memory resources in the cc1111, we don&#8217;t
5400 support programming directly over USB for these
5401 devices.</p>
5402 </div>
5403 <div class="paragraph">
5404 <p>If you need to update the firmware on a TeleDongle
5405 v0.2, we recommend updating the altimeter first,
5406 before updating TeleDongle.  However, note that
5407 TeleDongle rarely need to be updated.  Any firmware
5408 version 1.0.1 or later will work, version 1.2.1 may
5409 have improved receiver performance slightly.</p>
5410 </div>
5411 <div class="sect3">
5412 <h4 id="_updating_telemetrum_v1_x_firmware">D.2.1. Updating TeleMetrum v1.x Firmware</h4>
5413 <div class="olist arabic">
5414 <ol class="arabic">
5415 <li>
5416 <p>Find the 'programming cable' that you got as
5417 part of the starter kit, that has a red
5418 8-pin MicroMaTch connector on one end and a
5419 red 4-pin MicroMaTch connector on the other
5420 end.</p>
5421 </li>
5422 <li>
5423 <p>Take the 2 screws out of the TeleDongle v0.2
5424 or TeleBT v1.0 case to get access to the
5425 circuit board.</p>
5426 </li>
5427 <li>
5428 <p>Plug the 8-pin end of the programming cable
5429 to the matching connector on the TeleDongle
5430 v0.2 or TeleBT v1.0, and the 4-pin end to
5431 the matching connector on the TeleMetrum.
5432 Note that each MicroMaTch connector has an
5433 alignment pin that goes through a hole in
5434 the PC board when you have the cable
5435 oriented correctly.</p>
5436 </li>
5437 <li>
5438 <p>Attach a battery to the TeleMetrum board.</p>
5439 </li>
5440 <li>
5441 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5442 your computer&#8217;s USB port, and power up the
5443 TeleMetrum.</p>
5444 </li>
5445 <li>
5446 <p>Run AltosUI, and select 'Flash Image' from
5447 the File menu.</p>
5448 </li>
5449 <li>
5450 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5451 device from the list, identifying it as the
5452 programming device.</p>
5453 </li>
5454 <li>
5455 <p>Select the image you want put on the
5456 TeleMetrum, which should have a name in the
5457 form telemetrum-v1.2-1.0.0.ihx.  It should
5458 be visible in the default directory, if not
5459 you may have to poke around your system to
5460 find it.</p>
5461 </li>
5462 <li>
5463 <p>Make sure the configuration parameters are
5464 reasonable looking. If the serial number
5465 and/or RF configuration values aren&#8217;t right,
5466 you&#8217;ll need to change them.</p>
5467 </li>
5468 <li>
5469 <p>Hit the 'OK' button and the software should
5470 proceed to flash the TeleMetrum with new
5471 firmware, showing a progress bar.</p>
5472 </li>
5473 <li>
5474 <p>Confirm that the TeleMetrum board seems to
5475 have updated OK, which you can do by
5476 plugging in to it over USB and using a
5477 terminal program to connect to the board and
5478 issue the 'v' command to check the version,
5479 etc.</p>
5480 </li>
5481 </ol>
5482 </div>
5483 <div class="paragraph">
5484 <p>If something goes wrong, give it another try.</p>
5485 </div>
5486 </div>
5487 <div class="sect3">
5488 <h4 id="_updating_telemini_v1_0_firmware">D.2.2. Updating TeleMini v1.0 Firmware</h4>
5489 <div class="paragraph">
5490 <p>You&#8217;ll need a special 'programming cable' to
5491 reprogram the TeleMini v1.0.  You can make your own
5492 using an 8-pin MicroMaTch connector on one end
5493 and a set of four pins on the other.</p>
5494 </div>
5495 <div class="olist arabic">
5496 <ol class="arabic">
5497 <li>
5498 <p>Take the 2 screws out of the TeleDongle v0.2
5499 or TeleBT v1.0 case to get access to the
5500 circuit board.</p>
5501 </li>
5502 <li>
5503 <p>Plug the 8-pin end of the programming cable
5504 to the matching connector on the TeleDongle
5505 v0.2 or TeleBT v1.0, and the 4-pins into the
5506 holes in the TeleMini v1.0 circuit board.  Note
5507 that the MicroMaTch connector has an
5508 alignment pin that goes through a hole in
5509 the PC board when you have the cable
5510 oriented correctly, and that pin 1 on the
5511 TeleMini v1.0 board is marked with a square pad
5512 while the other pins have round pads.</p>
5513 </li>
5514 <li>
5515 <p>Attach a battery to the TeleMini v1.0 board.</p>
5516 </li>
5517 <li>
5518 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5519 your computer&#8217;s USB port, and power up the
5520 TeleMini v1.0</p>
5521 </li>
5522 <li>
5523 <p>Run AltosUI, and select 'Flash Image' from
5524 the File menu.</p>
5525 </li>
5526 <li>
5527 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5528 device from the list, identifying it as the
5529 programming device.</p>
5530 </li>
5531 <li>
5532 <p>Select the image you want put on the
5533 TeleMini v1.0, which should have a name in the
5534 form telemini-v1.0-1.0.0.ihx.  It should be
5535 visible in the default directory, if not you
5536 may have to poke around your system to find
5537 it.</p>
5538 </li>
5539 <li>
5540 <p>Make sure the configuration parameters are
5541 reasonable looking. If the serial number
5542 and/or RF configuration values aren&#8217;t right,
5543 you&#8217;ll need to change them.</p>
5544 </li>
5545 <li>
5546 <p>Hit the 'OK' button and the software should
5547 proceed to flash the TeleMini v1.0 with new
5548 firmware, showing a progress bar.</p>
5549 </li>
5550 <li>
5551 <p>Confirm that the TeleMini v1.0 board seems to
5552 have updated OK, which you can do by
5553 configuring it over the radio link through
5554 the TeleDongle, or letting it come up in
5555 “flight” mode and listening for telemetry.</p>
5556 </li>
5557 </ol>
5558 </div>
5559 <div class="paragraph">
5560 <p>If something goes wrong, give it another try.</p>
5561 </div>
5562 </div>
5563 <div class="sect3">
5564 <h4 id="_updating_teledongle_v0_2_firmware">D.2.3. Updating TeleDongle v0.2 Firmware</h4>
5565 <div class="paragraph">
5566 <p>Updating TeleDongle v0.2 firmware is just like
5567 updating TeleMetrum v1.x or TeleMini v1.0 firmware, but you
5568 use either a TeleMetrum v1.x, TeleDongle v0.2 or
5569 TeleBT v1.0 as the programmer.</p>
5570 </div>
5571 <div class="olist arabic">
5572 <ol class="arabic">
5573 <li>
5574 <p>Find the 'programming cable' that you got as part of
5575 the starter kit, that has a red 8-pin MicroMaTch
5576 connector on one end and a red 4-pin MicroMaTch
5577 connector on the other end.</p>
5578 </li>
5579 <li>
5580 <p>Find the USB cable that you got as part of the
5581 starter kit, and plug the “mini” end in to the
5582 mating connector on TeleMetrum v1.x, TeleDongle v0.2
5583 or TeleBT v1.0.</p>
5584 </li>
5585 <li>
5586 <p>Take the 2 screws out of the TeleDongle v0.2 or
5587 TeleBT v1.0 case to get access to the circuit board.</p>
5588 </li>
5589 <li>
5590 <p>Plug the 8-pin end of the programming cable to the
5591 matching connector on the programmer, and the 4-pin
5592 end to the matching connector on the TeleDongle
5593 v0.2.  Note that each MicroMaTch connector has an
5594 alignment pin that goes through a hole in the PC
5595 board when you have the cable oriented correctly.</p>
5596 </li>
5597 <li>
5598 <p>Attach a battery to the TeleMetrum v1.x board if
5599 you&#8217;re using one.</p>
5600 </li>
5601 <li>
5602 <p>Plug both the programmer and the TeleDongle into
5603 your computer&#8217;s USB ports, and power up the
5604 programmer.</p>
5605 </li>
5606 <li>
5607 <p>Run AltosUI, and select 'Flash Image' from the File
5608 menu.</p>
5609 </li>
5610 <li>
5611 <p>Pick the programmer device from the list,
5612 identifying it as the programming device.</p>
5613 </li>
5614 <li>
5615 <p>Select the image you want put on the TeleDongle
5616 v0.2, which should have a name in the form
5617 teledongle-v0.2-1.0.0.ihx.  It should be visible in
5618 the default directory, if not you may have to poke
5619 around your system to find it.</p>
5620 </li>
5621 <li>
5622 <p>Make sure the configuration parameters are
5623 reasonable looking. If the serial number and/or RF
5624 configuration values aren&#8217;t right, you&#8217;ll need to
5625 change them.  The TeleDongle v0.2 serial number is
5626 on the “bottom” of the circuit board, and can
5627 usually be read through the translucent blue plastic
5628 case without needing to remove the board from the
5629 case.</p>
5630 </li>
5631 <li>
5632 <p>Hit the 'OK' button and the software should proceed
5633 to flash the TeleDongle v0.2 with new firmware,
5634 showing a progress bar.</p>
5635 </li>
5636 <li>
5637 <p>Confirm that the TeleDongle v0.2 board seems to have
5638 updated OK, which you can do by plugging in to it
5639 over USB and using a terminal program to connect to
5640 the board and issue the 'v' command to check the
5641 version, etc.  Once you&#8217;re happy, remove the
5642 programming cable and put the cover back on the
5643 TeleDongle v0.2.</p>
5644 </li>
5645 </ol>
5646 </div>
5647 <div class="paragraph">
5648 <p>If something goes wrong, give it another try.</p>
5649 </div>
5650 <div class="paragraph">
5651 <p>Be careful removing the programming cable from the
5652 locking 8-pin connector on TeleMetrum.  You&#8217;ll need a
5653 fingernail or perhaps a thin screwdriver or knife
5654 blade to gently pry the locking ears out slightly to
5655 extract the connector.  We used a locking connector on
5656 TeleMetrum to help ensure that the cabling to
5657 companion boards used in a rocket don&#8217;t ever come
5658 loose accidentally in flight.</p>
5659 </div>
5660 </div>
5661 </div>
5662 </div>
5663 </div>
5664 <div class="sect1">
5665 <h2 id="_frequency_calibration">Appendix E: Frequency Calibration</h2>
5666 <div class="sectionbody">
5667 <div class="paragraph">
5668 <p>All products that have radio interfaces require calibration of the radio
5669 frequency.  Normally, this calibration is done once during the production
5670 process and the resulting cal value is saved into non-volatile memory.  The
5671 procedure decribed here should only be used outside of the factory if you
5672 are really convinced the radio calibration is bad, and you have access to
5673 the required tools to do the calibration.</p>
5674 </div>
5675 <div class="paragraph">
5676 <p>Because this procedure is only rarely needed in the field, we have not
5677 written any fancy user interface for doing it .. some interaction with
5678 and careful typing in a command-like style interface are required!</p>
5679 </div>
5680 <div class="sect2">
5681 <h3 id="_background_information">E.1. Background Information</h3>
5682 <div class="paragraph">
5683 <p>The radio system on each board uses a quartz crystal to control
5684 a frequency synthesizer that can be programmed to a range of operating
5685 frequencies.  While these crystals are very stable, they have an accuracy
5686 specification that means once the base frequency they set is multiplied up
5687 to the typical operating range of our products, any variation also gets
5688 multiplied.  The objective of the calibration process is, indirectly, to
5689 measure the actual operating frequency of the crystal and adjust the way
5690 the frequency synthesizer is programmed to account for this variation.</p>
5691 </div>
5692 <div class="paragraph">
5693 <p>The frequency may shift a few tens of Hz over the full operating temperature
5694 range, and it may also shift a bit over time as the crystal ages.  But once
5695 properly calibrated, none of those changes are likely to ever cause any
5696 operational problem, as the shift in operating frequency due to these factors
5697 is tiny compared to the bandwidth of our transmitted signal.</p>
5698 </div>
5699 </div>
5700 <div class="sect2">
5701 <h3 id="_required_equipment">E.2. Required Equipment</h3>
5702 <div class="paragraph">
5703 <p>The calibration process requires the ability to precisely measure the actual
5704 frequency of a steady CW carrier on or about the intended operating frequency
5705 in the vicinity of 435 MHz.</p>
5706 </div>
5707 <div class="paragraph">
5708 <p>In production, we use an HP 5385A that is locked to a 10 MHz reference that
5709 is in turn locked to GPS, which provides a highly accurate calibration.  Any
5710 reasonably accurate frequency counter is likely to be sufficient.</p>
5711 </div>
5712 <div class="paragraph">
5713 <p>You also need a computer with terminal program and USB cable to attach to
5714 the board in question, along with a battery and power switch suitable for
5715 powering the board up.</p>
5716 </div>
5717 </div>
5718 <div class="sect2">
5719 <h3 id="_rf_calibration_procedure">E.3. RF Calibration Procedure</h3>
5720 <div class="paragraph">
5721 <p>Using the terminal program, connect to the board over USB.  You will find
5722 that you are now interacting with a command interpreter on the board.  Using
5723 '?' will show the available commands.  Of interest for this process are the
5724 'C' command which turns on a steady transmitted carrier on the currently
5725 selected operating frequency, and the 'c' subcommands that allow interaction
5726 with the saved configuration.</p>
5727 </div>
5728 <div class="paragraph">
5729 <p>Use the 'c s' command to discover and note the current radio calibration
5730 value, and the operating frequency the board is configured for in kHz.</p>
5731 </div>
5732 <div class="paragraph">
5733 <p>Set up your frequency counter with a suitable antenna near the board&#8217;s
5734 antenna and use the 'C' command to turn on a steady carrier.  Let the
5735 frequency stabilize, and note what it is to as many digits as are steady
5736 on your counter&#8217;s display.</p>
5737 </div>
5738 <div class="paragraph">
5739 <p>To calculate the new calibration value, the equation is:</p>
5740 </div>
5741 <div class="olist arabic">
5742 <ol class="arabic">
5743 <li>
5744 <p>(intended_frequency / measured_frequency) * current_cal_value</p>
5745 </li>
5746 </ol>
5747 </div>
5748 <div class="paragraph">
5749 <p>Set the new calibration value using 'c f &lt;value&gt;', then use 'c w' to save
5750 that cal value into non-volatile memory.  You can use the 'C' command again
5751 to confirm the operating frequency is now within a few 10&#8217;s of Hz of the
5752 intended operating frequency.</p>
5753 </div>
5754 </div>
5755 </div>
5756 </div>
5757 <div class="sect1">
5758 <h2 id="_flight_data_recording">Appendix F: Flight Data Recording</h2>
5759 <div class="sectionbody">
5760 <div class="paragraph">
5761 <p>Each flight computer logs data at 100 samples per second
5762 during ascent and 10 samples per second during
5763 descent, except for TeleMini v1.0, which records ascent at 10 samples
5764 per second and descent at 1 sample per second.
5765 Data are logged to
5766 an on-board flash memory part, which can be partitioned into
5767 several equal-sized blocks, one for each flight.</p>
5768 </div>
5769 <table class="tableblock frame-all grid-all stretch">
5770 <caption class="title">Table 11. Data Storage on Altus Metrum altimeters</caption>
5771 <colgroup>
5772 <col style="width: 25%;">
5773 <col style="width: 25%;">
5774 <col style="width: 25%;">
5775 <col style="width: 25%;">
5776 </colgroup>
5777 <thead>
5778 <tr>
5779 <th class="tableblock halign-left valign-top">Device</th>
5780 <th class="tableblock halign-left valign-top">Bytes per Sample</th>
5781 <th class="tableblock halign-left valign-top">Total Storage</th>
5782 <th class="tableblock halign-left valign-top">Minutes at Full Rate</th>
5783 </tr>
5784 </thead>
5785 <tbody>
5786 <tr>
5787 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5788 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5789 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5790 <td class="tableblock halign-left valign-top"><p class="tableblock">20</p></td>
5791 </tr>
5792 <tr>
5793 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1 v1.2</p></td>
5794 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5795 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5796 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5797 </tr>
5798 <tr>
5799 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5800 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5801 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5802 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5803 </tr>
5804 <tr>
5805 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5806 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5807 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5808 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5809 </tr>
5810 <tr>
5811 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5812 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
5813 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5814 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
5815 </tr>
5816 <tr>
5817 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5818 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5819 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5820 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
5821 </tr>
5822 <tr>
5823 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
5824 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5825 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5826 <td class="tableblock halign-left valign-top"><p class="tableblock">10</p></td>
5827 </tr>
5828 <tr>
5829 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
5830 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5831 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5832 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5833 </tr>
5834 <tr>
5835 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
5836 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5837 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5838 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5839 </tr>
5840 </tbody>
5841 </table>
5842 <div class="paragraph">
5843 <p>The on-board flash is partitioned into separate flight logs,
5844 each of a fixed maximum size. Increase the maximum size of
5845 each log and you reduce the number of flights that can be
5846 stored. Decrease the size and you can store more flights.</p>
5847 </div>
5848 <div class="paragraph">
5849 <p>Configuration data is also stored in the flash memory on
5850 TeleMetrum v1.x,
5851 TeleMini v3.0 and
5852 EasyMini.
5853 This consumes 64kB
5854 of flash space.  This configuration space is not available
5855 for storing flight log data.</p>
5856 </div>
5857 <div class="paragraph">
5858 <p>TeleMetrum v2 or newer, TeleMega and EasyMega
5859 store configuration data in a bit of eeprom available within
5860 the processor chip, leaving that space available in flash for
5861 more flight data.</p>
5862 </div>
5863 <div class="paragraph">
5864 <p>To compute the amount of space needed for a single flight, you
5865 can multiply the expected ascent time (in seconds) by 100
5866 times bytes-per-sample, multiply the expected descent time (in
5867 seconds) by 10 times the bytes per sample and add the two
5868 together. That will slightly under-estimate the storage (in
5869 bytes) needed for the flight.
5870 For instance, a TeleMetrum v2 or newer flight spending
5871 20 seconds in ascent and 150 seconds in descent will take
5872 about (20 * 1600) + (150 * 160) = 56000 bytes of storage. You
5873 could store dozens of these flights in the on-board flash.</p>
5874 </div>
5875 <div class="paragraph">
5876 <p>The default size allows for several flights on each flight
5877 computer, except for TeleMini v1.0, which
5878 only holds data for a single flight.
5879 You can adjust the size.</p>
5880 </div>
5881 <div class="paragraph">
5882 <p>Altus Metrum flight computers will not overwrite existing
5883 flight data, so be sure to download flight data and erase it
5884 from the flight computer before it fills up. The flight
5885 computer will still successfully control the flight even if it
5886 cannot log data, so the only thing you will lose is the data.</p>
5887 </div>
5888 </div>
5889 </div>
5890 <div class="sect1">
5891 <h2 id="_altus_metrum_hardware_specifications">Appendix G: Altus Metrum Hardware Specifications</h2>
5892 <div class="sectionbody">
5893 <div class="paragraph">
5894 <p>Here&#8217;s the full set of Altus Metrum products, both in
5895 production and retired.</p>
5896 </div>
5897 <table class="tableblock frame-all grid-all stretch">
5898 <caption class="title">Table 12. Altus Metrum Flight Computer Electronics</caption>
5899 <colgroup>
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 <col style="width: 12.5%;">
5907 <col style="width: 12.5%;">
5908 </colgroup>
5909 <thead>
5910 <tr>
5911 <th class="tableblock halign-left valign-top">Device</th>
5912 <th class="tableblock halign-left valign-top">Barometer</th>
5913 <th class="tableblock halign-left valign-top">Z-axis accel</th>
5914 <th class="tableblock halign-left valign-top">GPS</th>
5915 <th class="tableblock halign-left valign-top">3D sensors</th>
5916 <th class="tableblock halign-left valign-top">Storage</th>
5917 <th class="tableblock halign-left valign-top">RF Output</th>
5918 <th class="tableblock halign-left valign-top">Battery</th>
5919 </tr>
5920 </thead>
5921 <tbody>
5922 <tr>
5923 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5924 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5925 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5926 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5927 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5928 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5929 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5930 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5931 </tr>
5932 <tr>
5933 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1</p></td>
5934 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5935 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5936 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5937 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5938 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5939 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5940 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5941 </tr>
5942 <tr>
5943 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.2</p></td>
5944 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5945 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL78 70g</p></td>
5946 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5947 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5948 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5949 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5950 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5951 </tr>
5952 <tr>
5953 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5954 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5955 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
5956 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
5957 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5958 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5959 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5960 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5961 </tr>
5962 <tr>
5963 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5964 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5965 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5966 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
5967 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5968 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5969 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5970 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5971 </tr>
5972 <tr>
5973 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5974 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</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">-</p></td>
5977 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5978 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5979 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5980 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5981 </tr>
5982 <tr>
5983 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5984 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</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">-</p></td>
5987 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5988 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5989 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5990 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5991 </tr>
5992 <tr>
5993 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini v1.0-v3.0</p></td>
5994 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</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">-</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">1MB</p></td>
5999 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6000 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6001 </tr>
6002 <tr>
6003 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v1.0</p></td>
6004 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6005 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6006 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6007 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6008 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6009 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6010 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6011 </tr>
6012 <tr>
6013 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v2.0</p></td>
6014 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6015 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6016 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6017 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6018 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6019 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6020 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6021 </tr>
6022 <tr>
6023 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v3.0</p></td>
6024 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6025 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6026 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6027 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6028 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6029 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6030 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6031 </tr>
6032 <tr>
6033 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v4.0</p></td>
6034 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6035 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6036 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6037 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6038 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6039 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6040 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6041 </tr>
6042 <tr>
6043 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v5.0</p></td>
6044 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6045 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6046 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6047 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 MMC5983</p></td>
6048 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6049 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6050 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6051 </tr>
6052 <tr>
6053 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v1.0</p></td>
6054 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6055 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6056 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6057 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6058 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6059 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6060 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6061 </tr>
6062 <tr>
6063 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v2.0</p></td>
6064 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6065 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6066 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6067 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6068 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6069 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6070 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6071 </tr>
6072 <tr>
6073 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer v1.0</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">16g</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">BMX160</p></td>
6078 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6079 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6080 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6081 </tr>
6082 <tr>
6083 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor v3.0</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">ADXL375 200g</p></td>
6086 <td class="tableblock halign-left valign-top"><p class="tableblock">-</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">8MB</p></td>
6089 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6090 <td class="tableblock halign-left valign-top"><p class="tableblock">6.5-15V</p></td>
6091 </tr>
6092 </tbody>
6093 </table>
6094 <div style="page-break-after: always;"></div>
6095 <table class="tableblock frame-all grid-all stretch">
6096 <caption class="title">Table 13. Altus Metrum Flight Computer Mechanical Components</caption>
6097 <colgroup>
6098 <col style="width: 16.6666%;">
6099 <col style="width: 16.6666%;">
6100 <col style="width: 16.6666%;">
6101 <col style="width: 16.6666%;">
6102 <col style="width: 16.6666%;">
6103 <col style="width: 16.667%;">
6104 </colgroup>
6105 <thead>
6106 <tr>
6107 <th class="tableblock halign-left valign-top">Device</th>
6108 <th class="tableblock halign-left valign-top">Connectors</th>
6109 <th class="tableblock halign-left valign-top">Screw Terminals</th>
6110 <th class="tableblock halign-left valign-top">Width</th>
6111 <th class="tableblock halign-left valign-top">Length</th>
6112 <th class="tableblock halign-left valign-top">Tube Size</th>
6113 </tr>
6114 </thead>
6115 <tbody>
6116 <tr>
6117 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum</p></td>
6118 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6119 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Switch</p></td>
6120 <td class="tableblock halign-left valign-top"><p class="tableblock">1 inch (2.54cm)</p></td>
6121 <td class="tableblock halign-left valign-top"><p class="tableblock">2 ¾ inch (6.99cm)</p></td>
6122 <td class="tableblock halign-left valign-top"><p class="tableblock">29mm coupler</p></td>
6123 </tr>
6124 <tr>
6125 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
6126 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Battery</p></td>
6127 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro</p></td>
6128 <td class="tableblock halign-left valign-top"><p class="tableblock">½ inch (1.27cm)</p></td>
6129 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6130 <td class="tableblock halign-left valign-top"><p class="tableblock">18mm coupler</p></td>
6131 </tr>
6132 <tr>
6133 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v2.0</p></td>
6134 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug USB Battery</p></td>
6135 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery Switch</p></td>
6136 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6137 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6138 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6139 </tr>
6140 <tr>
6141 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
6142 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6143 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery</p></td>
6144 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6145 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6146 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6147 </tr>
6148 <tr>
6149 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
6150 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6151 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6152 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6153 <td class="tableblock halign-left valign-top"><p class="tableblock">3¼ inch (8.26cm)</p></td>
6154 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6155 </tr>
6156 <tr>
6157 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
6158 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug Companion USB Battery</p></td>
6159 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6160 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6161 <td class="tableblock halign-left valign-top"><p class="tableblock">2¼ inch (5.62cm)</p></td>
6162 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6163 </tr>
6164 <tr>
6165 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer</p></td>
6166 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6167 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro A Pyro B Battery</p></td>
6168 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6169 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6170 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6171 </tr>
6172 <tr>
6173 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor</p></td>
6174 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB</p></td>
6175 <td class="tableblock halign-left valign-top"><p class="tableblock">+5V Pres GND Switch Battery</p></td>
6176 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6177 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6178 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6179 </tr>
6180 </tbody>
6181 </table>
6182 </div>
6183 </div>
6184 <div class="sect1">
6185 <h2 id="_release_notes">Appendix H: Release Notes</h2>
6186 <div class="sectionbody">
6187 <div class="sect2">
6188 <h3 id="_release_notes_for_version_1_9_14">H.1. Release Notes for Version 1.9.14</h3>
6189 <div class="paragraph">
6190 <p>Version 1.9.14</p>
6191 </div>
6192 <div class="sect3">
6193 <h4 id="_altos">H.1.1. AltOS</h4>
6194 <div class="ulist">
6195 <ul>
6196 <li>
6197 <p>Fix 1.9.13 regression in TeleLCO startup sequence that
6198 detects available TeleFire units.</p>
6199 </li>
6200 </ul>
6201 </div>
6202 <div style="page-break-after: always;"></div>
6203 </div>
6204 </div>
6205 <div class="sect2">
6206 <h3 id="_release_notes_for_version_1_9_13">H.2. Release Notes for Version 1.9.13</h3>
6207 <div class="paragraph">
6208 <p>Version 1.9.13</p>
6209 </div>
6210 <div class="sect3">
6211 <h4 id="_altos_2">H.2.1. AltOS</h4>
6212 <div class="ulist">
6213 <ul>
6214 <li>
6215 <p>Add option to beep max height in feet after landing</p>
6216 </li>
6217 <li>
6218 <p>Fix APRS reports to be sent at the correct time and spacing.</p>
6219 </li>
6220 <li>
6221 <p>Fix possible barometric sensor communication failure when
6222 the CPU is busy talking to the radio at the same time. This
6223 would cause loss of telemetry and failure to track the state
6224 of the rocket during flight. This was aggrevated by the APRS
6225 reports getting sent more often than they should.</p>
6226 </li>
6227 <li>
6228 <p>Change EasyMotor v3 code to base logging on motor pressure
6229 rather than the accelerometer. This allows use of EasyMotor
6230 v3 in a static test stand.</p>
6231 </li>
6232 </ul>
6233 </div>
6234 </div>
6235 <div class="sect3">
6236 <h4 id="_altosui_2">H.2.2. AltosUI</h4>
6237 <div class="ulist">
6238 <ul>
6239 <li>
6240 <p>Add support for configuring the units used to report height
6241 after landing on the beeper.</p>
6242 </li>
6243 </ul>
6244 </div>
6245 <div style="page-break-after: always;"></div>
6246 </div>
6247 </div>
6248 <div class="sect2">
6249 <h3 id="_release_notes_for_version_1_9_12">H.3. Release Notes for Version 1.9.12</h3>
6250 <div class="paragraph">
6251 <p>Version 1.9.12</p>
6252 </div>
6253 <div class="sect3">
6254 <h4 id="_altos_3">H.3.1. AltOS</h4>
6255 <div class="ulist">
6256 <ul>
6257 <li>
6258 <p>Add EasyMini v3.0 and EasyMotor v3.0 support</p>
6259 </li>
6260 <li>
6261 <p>Fix TeleMetrum v2.0 configuration. Saving config would
6262 crash the board.</p>
6263 </li>
6264 </ul>
6265 </div>
6266 </div>
6267 <div class="sect3">
6268 <h4 id="_altosui_3">H.3.2. AltosUI</h4>
6269 <div class="ulist">
6270 <ul>
6271 <li>
6272 <p>Add EasyMotor log parsing and graphing.</p>
6273 </li>
6274 </ul>
6275 </div>
6276 <div style="page-break-after: always;"></div>
6277 </div>
6278 </div>
6279 <div class="sect2">
6280 <h3 id="_release_notes_for_version_1_9_11">H.4. Release Notes for Version 1.9.11</h3>
6281 <div class="paragraph">
6282 <p>Version 1.9.11</p>
6283 </div>
6284 <div class="sect3">
6285 <h4 id="_altos_4">H.4.1. AltOS</h4>
6286 <div class="ulist">
6287 <ul>
6288 <li>
6289 <p>Make Apogee Delay work again.</p>
6290 </li>
6291 <li>
6292 <p>Allow TX power to be limited to 10mW for compliance with
6293 some uses under UK regulations.</p>
6294 </li>
6295 <li>
6296 <p>Fix numerous minor issues with 16- vs 32- bit time values.</p>
6297 </li>
6298 </ul>
6299 </div>
6300 </div>
6301 <div class="sect3">
6302 <h4 id="_altosui_4">H.4.2. AltosUI</h4>
6303 <div class="ulist">
6304 <ul>
6305 <li>
6306 <p>Support M1-based Macs, follow AdoptOpenJDK to Adoptium</p>
6307 </li>
6308 </ul>
6309 </div>
6310 </div>
6311 <div class="sect3">
6312 <h4 id="_altosdroid_2">H.4.3. AltosDroid</h4>
6313 <div class="ulist">
6314 <ul>
6315 <li>
6316 <p>Handle Bluetooth permissions reliably.</p>
6317 </li>
6318 <li>
6319 <p>Fix some screen rotation bugs.</p>
6320 </li>
6321 </ul>
6322 </div>
6323 <div style="page-break-after: always;"></div>
6324 </div>
6325 </div>
6326 <div class="sect2">
6327 <h3 id="_release_notes_for_version_1_9_10">H.5. Release Notes for Version 1.9.10</h3>
6328 <div class="paragraph">
6329 <p>Version 1.9.10</p>
6330 </div>
6331 <div class="paragraph">
6332 <p>This release contains a couple of bug fixes for ground station software.</p>
6333 </div>
6334 <div class="sect3">
6335 <h4 id="_altosui_5">H.5.1. AltosUI</h4>
6336 <div class="ulist">
6337 <ul>
6338 <li>
6339 <p>Rework the windows DLL build to make AltosUI run on more
6340 instances of Windows 10.</p>
6341 </li>
6342 </ul>
6343 </div>
6344 </div>
6345 <div class="sect3">
6346 <h4 id="_altosdroid_3">H.5.2. AltosDroid</h4>
6347 <div class="ulist">
6348 <ul>
6349 <li>
6350 <p>Adapt to Android security changes which prevent AltosDroid
6351 from storing flights in
6352 /storage/emulated/0/AltusMetrum. Now, flights are stored in
6353 /storage/emulated/0/media/org.altusmetrum.AltosDroid/AltusMetrum
6354 instead.  Also, AltosDroid will display an error message if
6355 flight data cannot be logged.</p>
6356 </li>
6357 </ul>
6358 </div>
6359 <div style="page-break-after: always;"></div>
6360 </div>
6361 </div>
6362 <div class="sect2">
6363 <h3 id="_release_notes_for_version_1_9_9">H.6. Release Notes for Version 1.9.9</h3>
6364 <div class="paragraph">
6365 <p>Version 1.9.9</p>
6366 </div>
6367 <div class="paragraph">
6368 <p>This release contains a critical bug fix for a problem
6369 introduced in version 1.9.8 for TeleMega and EasyMega
6370 boards. This problem occurs when using the stored
6371 configuration from 1.9.7 or earlier.</p>
6372 </div>
6373 <div class="paragraph">
6374 <p>If you are running 1.9.8 or are upgrading from 1.9.8 on any
6375 version of TeleMega or EasyMega, you must reconfigure all pyro
6376 channels, recalibrate accelerometers, reset the APRS interval,
6377 adjust the beep tone and reset the pyro time.</p>
6378 </div>
6379 <div class="sect3">
6380 <h4 id="_altos_5">H.6.1. AltOS</h4>
6381 <div class="ulist">
6382 <ul>
6383 <li>
6384 <p>Fix EasyMega and TeleMega upgrade process from 1.9.7 or
6385 earlier.  1.9.8 introduced larger delay values, which
6386 required modifying the configuration in-place, and the 1.9.8
6387 version had a flaw which broke the pyro channel config and
6388 all of the config values beyond that in memory, including
6389 APRS interval, IMU accel calibation, beep tone and pyro
6390 time.</p>
6391 </li>
6392 <li>
6393 <p>Fix TeleMega v5.0 mag sensor driver. This driver was quite
6394 broken due to developing it in the presence of the magnetic
6395 beeper on the board. Because of that beeper, the values this
6396 sensor records are not accurate. Fortunately, they are not
6397 used for controlling the flight.</p>
6398 </li>
6399 </ul>
6400 </div>
6401 </div>
6402 <div class="sect3">
6403 <h4 id="_altosui_6">H.6.2. AltosUI</h4>
6404 <div class="ulist">
6405 <ul>
6406 <li>
6407 <p>Parse TeleMega v5.0 log files. A missing check in the code
6408 meant that the TeleMega v5.0 log files would cause an error
6409 when attempting to load them. Logs saved with AltosUI
6410 1.9.8 were not affected, only the presentation of the data
6411 was broken.</p>
6412 </li>
6413 </ul>
6414 </div>
6415 <div style="page-break-after: always;"></div>
6416 </div>
6417 </div>
6418 <div class="sect2">
6419 <h3 id="_release_notes_for_version_1_9_8">H.7. Release Notes for Version 1.9.8</h3>
6420 <div class="paragraph">
6421 <p>Version 1.9.8</p>
6422 </div>
6423 <div class="sect3">
6424 <h4 id="_altos_6">H.7.1. AltOS</h4>
6425 <div class="ulist">
6426 <ul>
6427 <li>
6428 <p>Add support for TeleMega v5.0</p>
6429 </li>
6430 <li>
6431 <p>Extend extra pyro channel times to support delay &gt; 327 seconds</p>
6432 </li>
6433 </ul>
6434 </div>
6435 </div>
6436 <div class="sect3">
6437 <h4 id="_altosui_7">H.7.2. AltosUI</h4>
6438 <div class="ulist">
6439 <ul>
6440 <li>
6441 <p>Support ARM devices in Linux binary release</p>
6442 </li>
6443 <li>
6444 <p>Add support for TeleMega v5.0</p>
6445 </li>
6446 </ul>
6447 </div>
6448 </div>
6449 <div class="sect3">
6450 <h4 id="_altosdroid_4">H.7.3. AltosDroid</h4>
6451 <div class="ulist">
6452 <ul>
6453 <li>
6454 <p>Show tilt angle in pad and flight tabs</p>
6455 </li>
6456 <li>
6457 <p>Show altitude as well as height (useful for TeleGPS)</p>
6458 </li>
6459 <li>
6460 <p>Support devices without GPS receivers</p>
6461 </li>
6462 </ul>
6463 </div>
6464 </div>
6465 <div class="sect3">
6466 <h4 id="_micropeak_gui">H.7.4. MicroPeak GUI</h4>
6467 <div class="ulist">
6468 <ul>
6469 <li>
6470 <p>Show error dialog if device open fails</p>
6471 </li>
6472 </ul>
6473 </div>
6474 <div style="page-break-after: always;"></div>
6475 </div>
6476 </div>
6477 <div class="sect2">
6478 <h3 id="_release_notes_for_version_1_9_7">H.8. Release Notes for Version 1.9.7</h3>
6479 <div class="paragraph">
6480 <p>Version 1.9.7</p>
6481 </div>
6482 <div class="sect3">
6483 <h4 id="_altos_7">H.8.1. AltOS</h4>
6484 <div class="ulist">
6485 <ul>
6486 <li>
6487 <p>Fix TeleGPS logging so that new data are appended to an existing log correctly</p>
6488 </li>
6489 </ul>
6490 </div>
6491 </div>
6492 <div class="sect3">
6493 <h4 id="_altosui_8">H.8.2. AltosUI</h4>
6494 <div class="ulist">
6495 <ul>
6496 <li>
6497 <p>Support Mac OS X 11 (Big Sur)</p>
6498 </li>
6499 <li>
6500 <p>Support Monitor Idle on Easy Timer</p>
6501 </li>
6502 <li>
6503 <p>Fix TeleMega v4.0 and TeleMetrum v3.0 configuration in Antenna Down mode</p>
6504 </li>
6505 <li>
6506 <p>Show launch sites in Load Maps view</p>
6507 </li>
6508 <li>
6509 <p>Add IMU header names to CSV files</p>
6510 </li>
6511 <li>
6512 <p>Clean up TeleGPS log corruption due to firmware bugs during firmware update</p>
6513 </li>
6514 </ul>
6515 </div>
6516 </div>
6517 <div class="sect3">
6518 <h4 id="_altosdroid_5">H.8.3. AltosDroid</h4>
6519 <div class="ulist">
6520 <ul>
6521 <li>
6522 <p>Support older devices back to Android version 5.1</p>
6523 </li>
6524 <li>
6525 <p>Fix a number of issues that could result in app crashes</p>
6526 </li>
6527 </ul>
6528 </div>
6529 <div style="page-break-after: always;"></div>
6530 </div>
6531 </div>
6532 <div class="sect2">
6533 <h3 id="_release_notes_for_version_1_9_6">H.9. Release Notes for Version 1.9.6</h3>
6534 <div class="paragraph">
6535 <p>Version 1.9.6</p>
6536 </div>
6537 <div class="sect3">
6538 <h4 id="_altos_8">H.9.1. AltOS</h4>
6539 <div class="ulist">
6540 <ul>
6541 <li>
6542 <p>Fix EasyTimer bug where it might mis-detect boost (either
6543 detect it early or not at all) due to small errors in
6544 accelerometer calibration leading to large accumulated error
6545 in speed.</p>
6546 </li>
6547 <li>
6548 <p>Adjust self-test of new 9-axis IMU (BMX-160) so that it
6549 doesn&#8217;t think the part has a failure when tested sitting
6550 horizontally.</p>
6551 </li>
6552 </ul>
6553 </div>
6554 <div style="page-break-after: always;"></div>
6555 </div>
6556 </div>
6557 <div class="sect2">
6558 <h3 id="_release_notes_for_version_1_9_5">H.10. Release Notes for Version 1.9.5</h3>
6559 <div class="paragraph">
6560 <p>Version 1.9.5</p>
6561 </div>
6562 <div class="sect3">
6563 <h4 id="_altos_9">H.10.1. AltOS</h4>
6564 <div class="ulist">
6565 <ul>
6566 <li>
6567 <p>Add Booster mode for all dual-deploy altimeters. Select
6568 "Separation &amp; Apogee" mode in AltosUI to fire the 'main'
6569 channel at first motor burnout and the 'apogee' channel at
6570 apogee.</p>
6571 </li>
6572 <li>
6573 <p>Improve reliability of stm32l firmware under heavy
6574 load. This was found using Monitor Idle on TeleMega with all
6575 flash slots full of data which would occasionally lock up.</p>
6576 </li>
6577 <li>
6578 <p>Fix orientation label in AltosUI for devices with
6579 radios. This makes the orientation say 'Antenna up' and
6580 'Antenna Down' for TeleMetrum and TeleMega again.</p>
6581 </li>
6582 <li>
6583 <p>Fix log data for pyro channels which were inhibited (often
6584 because of a tilt limit). They used to report 'fired' as
6585 soon as they were inhibited, which was misleading. Now they
6586 never report as having been fired.</p>
6587 </li>
6588 <li>
6589 <p>Allow Igniter Test to fire each igniter more than once.</p>
6590 </li>
6591 </ul>
6592 </div>
6593 </div>
6594 <div class="sect3">
6595 <h4 id="_altosui_9">H.10.2. AltosUI</h4>
6596 <div class="ulist">
6597 <ul>
6598 <li>
6599 <p>Improve performance of Monitor Idle mode by sending less data for each
6600 update.</p>
6601 </li>
6602 <li>
6603 <p>Improve Mac OS X install scripts so that they work on
6604 Catalina. This involves sending the user to get Java from
6605 the AdoptOpenJDK project which provides a version that works
6606 with Java applications.</p>
6607 </li>
6608 <li>
6609 <p>Make larger dialogs scrollable for use on smaller screens.</p>
6610 </li>
6611 <li>
6612 <p>Fix troubles re-flashing EasyMega boards running older
6613 firmware.</p>
6614 </li>
6615 <li>
6616 <p>Add TeleMetrum v3.0 firmware to the Windows
6617 AltosUI packages.</p>
6618 </li>
6619 </ul>
6620 </div>
6621 <div style="page-break-after: always;"></div>
6622 </div>
6623 </div>
6624 <div class="sect2">
6625 <h3 id="_release_notes_for_version_1_9_4">H.11. Release Notes for Version 1.9.4</h3>
6626 <div class="paragraph">
6627 <p>Version 1.9.4</p>
6628 </div>
6629 <div class="sect3">
6630 <h4 id="_altos_10">H.11.1. AltOS</h4>
6631 <div class="ulist">
6632 <ul>
6633 <li>
6634 <p>Fixed firmware for TeleDongle v3.0 and TeleBT v4.0. Version 1.9.3 bricked those
6635 devices requiring them to be opened up to get them working again.</p>
6636 </li>
6637 <li>
6638 <p>Fixed firmware for EasyMini v1.0. Changes in the storage
6639 code caused it to use significantly more RAM which made the
6640 interrupt stack smash into other data structures and cause
6641 the device to panic at startup time.</p>
6642 </li>
6643 </ul>
6644 </div>
6645 </div>
6646 <div class="sect3">
6647 <h4 id="_altosui_10">H.11.2. AltosUI</h4>
6648 <div class="ulist">
6649 <ul>
6650 <li>
6651 <p>Add TeleMetrum v3.0 firmware to the Linux and Mac OSX
6652 AltosUI packages.</p>
6653 </li>
6654 </ul>
6655 </div>
6656 <div style="page-break-after: always;"></div>
6657 </div>
6658 </div>
6659 <div class="sect2">
6660 <h3 id="_release_notes_for_version_1_9_3">H.12. Release Notes for Version 1.9.3</h3>
6661 <div class="paragraph">
6662 <p>Version 1.9.3</p>
6663 </div>
6664 <div class="sect3">
6665 <h4 id="_altos_11">H.12.1. AltOS</h4>
6666 <div class="ulist">
6667 <ul>
6668 <li>
6669 <p>Add APRS offset. Allows multiple APRS transmitters to coordinate when
6670 transmission occurs to allow them to share a frequency.</p>
6671 </li>
6672 <li>
6673 <p>Fix max log size. Flight computer storage is erased in 64kB chunks. Adjust max
6674 log size to be a multiple of this size.</p>
6675 </li>
6676 <li>
6677 <p>Check flight erasing more carefully. Handle interrupting erasing in the
6678 middle.</p>
6679 </li>
6680 <li>
6681 <p>Add EasyTimer support.</p>
6682 </li>
6683 </ul>
6684 </div>
6685 </div>
6686 <div class="sect3">
6687 <h4 id="_altosui_telegps_micropeak">H.12.2. AltosUI, TeleGPS, MicroPeak</h4>
6688 <div class="ulist">
6689 <ul>
6690 <li>
6691 <p>Add configuration support for APRS offset.</p>
6692 </li>
6693 <li>
6694 <p>Adjust flight log sizes to be a multiple of the flight
6695 computer erase block size.</p>
6696 </li>
6697 <li>
6698 <p>Report barometric pad altitude in Pad tab for TeleMini.</p>
6699 </li>
6700 </ul>
6701 </div>
6702 <div style="page-break-after: always;"></div>
6703 </div>
6704 </div>
6705 <div class="sect2">
6706 <h3 id="_release_notes_for_version_1_9_2">H.13. Release Notes for Version 1.9.2</h3>
6707 <div class="paragraph">
6708 <p>Version 1.9.2</p>
6709 </div>
6710 <div class="sect3">
6711 <h4 id="_altos_12">H.13.1. AltOS</h4>
6712 <div class="ulist">
6713 <ul>
6714 <li>
6715 <p>Add support for TeleMega v4.0</p>
6716 </li>
6717 <li>
6718 <p>Fix time wrapping issue with TeleLCO and TeleFire</p>
6719 </li>
6720 </ul>
6721 </div>
6722 </div>
6723 <div class="sect3">
6724 <h4 id="_altosui_telegps_micropeak_2">H.13.2. AltosUI, TeleGPS, MicroPeak</h4>
6725 <div class="ulist">
6726 <ul>
6727 <li>
6728 <p>Add column in AltosUI for IMU data from TeleMega and EasyMega</p>
6729 </li>
6730 </ul>
6731 </div>
6732 </div>
6733 <div class="sect3">
6734 <h4 id="_altosdroid_6">H.13.3. AltosDroid</h4>
6735 <div class="ulist">
6736 <ul>
6737 <li>
6738 <p>Allow sorting of trackers by call, serial, frequency or age</p>
6739 </li>
6740 <li>
6741 <p>Offer selection of font sizes</p>
6742 </li>
6743 <li>
6744 <p>Various bug fixes for older Android versions</p>
6745 </li>
6746 </ul>
6747 </div>
6748 <div style="page-break-after: always;"></div>
6749 </div>
6750 </div>
6751 <div class="sect2">
6752 <h3 id="_release_notes_for_version_1_9_1">H.14. Release Notes for Version 1.9.1</h3>
6753 <div class="paragraph">
6754 <p>Version 1.9.1</p>
6755 </div>
6756 <div class="sect3">
6757 <h4 id="_altos_13">H.14.1. AltOS</h4>
6758 <div class="ulist">
6759 <ul>
6760 <li>
6761 <p>Add support for TeleMetrum v3.0</p>
6762 </li>
6763 <li>
6764 <p>Fix accel cal value when changing EasyMega v2.0 pad orientation</p>
6765 </li>
6766 <li>
6767 <p>Correct EasyMega v2.0 magnetometer data axes</p>
6768 </li>
6769 <li>
6770 <p>Fix EasyMega v2.0 idle monitor display of IMU data</p>
6771 </li>
6772 <li>
6773 <p>Report all sensor failures at power-up time.</p>
6774 </li>
6775 </ul>
6776 </div>
6777 </div>
6778 <div class="sect3">
6779 <h4 id="_altosui_telegps_micropeak_3">H.14.2. AltosUI, TeleGPS, MicroPeak</h4>
6780 <div class="ulist">
6781 <ul>
6782 <li>
6783 <p>Display error message when attempting to graph unknown format file.</p>
6784 </li>
6785 <li>
6786 <p>Make it possible to disable APRS once enabled.</p>
6787 </li>
6788 <li>
6789 <p>Display some data for point near cursor in map tab.</p>
6790 </li>
6791 <li>
6792 <p>Support upgrading devices from pre-1.8 firmware</p>
6793 </li>
6794 <li>
6795 <p>Wait for Windows to prepare new devices during firmware
6796 upgrade. This should avoid the “COMxx: open failed” message.</p>
6797 </li>
6798 </ul>
6799 </div>
6800 <div style="page-break-after: always;"></div>
6801 </div>
6802 </div>
6803 <div class="sect2">
6804 <h3 id="_release_notes_for_version_1_9">H.15. Release Notes for Version 1.9</h3>
6805 <div class="paragraph">
6806 <p>Version 1.9</p>
6807 </div>
6808 <div class="sect3">
6809 <h4 id="_altos_14">H.15.1. AltOS</h4>
6810 <div class="ulist">
6811 <ul>
6812 <li>
6813 <p>Add support for EasyMega v2.0</p>
6814 </li>
6815 <li>
6816 <p>Replace C library for ARM devices</p>
6817 </li>
6818 <li>
6819 <p>Remove support for 8051-based devices and SDCC compiler</p>
6820 </li>
6821 </ul>
6822 </div>
6823 </div>
6824 <div class="sect3">
6825 <h4 id="_altosui_telegps_micropeak_4">H.15.2. AltosUI, TeleGPS, MicroPeak</h4>
6826 <div class="ulist">
6827 <ul>
6828 <li>
6829 <p>Select ROM images based on product name when reflashing</p>
6830 </li>
6831 <li>
6832 <p>Fix TeleGPS v2 battery voltage display</p>
6833 </li>
6834 </ul>
6835 </div>
6836 <div style="page-break-after: always;"></div>
6837 </div>
6838 </div>
6839 <div class="sect2">
6840 <h3 id="_release_notes_for_version_1_8_7">H.16. Release Notes for Version 1.8.7</h3>
6841 <div class="paragraph">
6842 <p>Version 1.8.7</p>
6843 </div>
6844 <div class="sect3">
6845 <h4 id="_altos_15">H.16.1. AltOS</h4>
6846 <div class="ulist">
6847 <ul>
6848 <li>
6849 <p>Include TeleMega v3.0 firmware</p>
6850 </li>
6851 </ul>
6852 </div>
6853 </div>
6854 <div class="sect3">
6855 <h4 id="_altosui_telegps_micropeak_5">H.16.2. AltosUI, TeleGPS, MicroPeak</h4>
6856 <div class="ulist">
6857 <ul>
6858 <li>
6859 <p>Poll for new devices while Device dialog is displayed</p>
6860 </li>
6861 <li>
6862 <p>Wait for device to re-appear when flashing new firmware</p>
6863 </li>
6864 <li>
6865 <p>Fetch correct TeleBT v4.0 RF calibration values from web
6866 site when reflashing.</p>
6867 </li>
6868 <li>
6869 <p>Change gyro headings in .csv files from x/y/z to
6870 roll/pitch/yaw</p>
6871 </li>
6872 <li>
6873 <p>Add documentation about Packet Link mode</p>
6874 </li>
6875 <li>
6876 <p>Add documentation about forcing TeleMini RF parameters to
6877 known values.</p>
6878 </li>
6879 <li>
6880 <p>Create a proxy server for Google Maps to re-enable map
6881 images</p>
6882 </li>
6883 <li>
6884 <p>Fix Java version info in all distributed jar files so that
6885 applications will run with standard Mac OS X Java.</p>
6886 </li>
6887 <li>
6888 <p>Replace JavaApplicationStub for Mac OS X so that
6889 applications will run with Oracle Java.</p>
6890 </li>
6891 </ul>
6892 </div>
6893 <div style="page-break-after: always;"></div>
6894 </div>
6895 </div>
6896 <div class="sect2">
6897 <h3 id="_release_notes_for_version_1_8_6">H.17. Release Notes for Version 1.8.6</h3>
6898 <div class="paragraph">
6899 <p>Version 1.8.6</p>
6900 </div>
6901 <div class="sect3">
6902 <h4 id="_altos_16">H.17.1. AltOS</h4>
6903 <div class="ulist">
6904 <ul>
6905 <li>
6906 <p>Use maximum of 64 previous tilt values in pyro tilt tests</p>
6907 </li>
6908 <li>
6909 <p>Eliminate 100m height requirement for coast detection</p>
6910 </li>
6911 <li>
6912 <p>Change After Motor pyro check to be &gt;= instead of ==</p>
6913 </li>
6914 <li>
6915 <p>Change Time since Boost to be Time since launch.</p>
6916 </li>
6917 </ul>
6918 </div>
6919 </div>
6920 <div class="sect3">
6921 <h4 id="_altosui_telegps">H.17.2. AltosUI, TeleGPS</h4>
6922 <div class="ulist">
6923 <ul>
6924 <li>
6925 <p>Clarify pyro test phrasing</p>
6926 </li>
6927 <li>
6928 <p>Remove ascending/descending from pyro config UI</p>
6929 </li>
6930 <li>
6931 <p>Fix accel calibration in Antenna Down mode</p>
6932 </li>
6933 <li>
6934 <p>Add mag sensor reporting for TeleMega v3 idle monitoring.</p>
6935 </li>
6936 <li>
6937 <p>Fix radio parameter saving at 2400 bps telmetry rate.</p>
6938 </li>
6939 </ul>
6940 </div>
6941 </div>
6942 <div class="sect3">
6943 <h4 id="_micropeak">H.17.3. MicroPeak</h4>
6944 <div class="ulist">
6945 <ul>
6946 <li>
6947 <p>Report altimeter-recorded maximum height value</p>
6948 </li>
6949 </ul>
6950 </div>
6951 <div style="page-break-after: always;"></div>
6952 </div>
6953 </div>
6954 <div class="sect2">
6955 <h3 id="_release_notes_for_version_1_8_5">H.18. Release Notes for Version 1.8.5</h3>
6956 <div class="paragraph">
6957 <p>Version 1.8.5 includes fixes to the ground software support
6958 for TeleBT v4, along with a few other minor updates.</p>
6959 </div>
6960 <div class="sect3">
6961 <h4 id="_altos_17">H.18.1. AltOS</h4>
6962 <div class="ulist">
6963 <ul>
6964 <li>
6965 <p>Fix startup beeps that indicate sensor failures.</p>
6966 </li>
6967 </ul>
6968 </div>
6969 </div>
6970 <div class="sect3">
6971 <h4 id="_altosui_telegps_2">H.18.2. AltosUI, TeleGPS</h4>
6972 <div class="ulist">
6973 <ul>
6974 <li>
6975 <p>When updating device firmware, make sure selected firmware
6976 matches target device.</p>
6977 </li>
6978 <li>
6979 <p>Correct Bluetooth device matching when looking for TeleBT
6980 devices.</p>
6981 </li>
6982 </ul>
6983 </div>
6984 <div style="page-break-after: always;"></div>
6985 </div>
6986 </div>
6987 <div class="sect2">
6988 <h3 id="_release_notes_for_version_1_8_4">H.19. Release Notes for Version 1.8.4</h3>
6989 <div class="paragraph">
6990 <p>Version 1.8.4 includes support for EasyMini version 2.0</p>
6991 </div>
6992 <div class="sect3">
6993 <h4 id="_altos_18">H.19.1. AltOS</h4>
6994 <div class="ulist">
6995 <ul>
6996 <li>
6997 <p>Support for EasyMini version 2.0 hardware.</p>
6998 </li>
6999 </ul>
7000 </div>
7001 <div style="page-break-after: always;"></div>
7002 </div>
7003 </div>
7004 <div class="sect2">
7005 <h3 id="_release_notes_for_version_1_8_3">H.20. Release Notes for Version 1.8.3</h3>
7006 <div class="paragraph">
7007 <p>Version 1.8.3 includes support for TeleMega version 3.0 along
7008 with two important flight computer fixes. This version also
7009 changes KML export data to make Tripoli Record reporting
7010 better and some updates to graph presentation and data
7011 downloading.</p>
7012 </div>
7013 <div class="sect3">
7014 <h4 id="_altos_19">H.20.1. AltOS</h4>
7015 <div class="sect4">
7016 <h5 id="_altos_new_features">AltOS New Features</h5>
7017 <div class="ulist">
7018 <ul>
7019 <li>
7020 <p>Support for TeleMega version 3.0 hardware.</p>
7021 </li>
7022 </ul>
7023 </div>
7024 </div>
7025 <div class="sect4">
7026 <h5 id="_altos_bug_fixes">AltOS Bug Fixes</h5>
7027 <div class="ulist">
7028 <ul>
7029 <li>
7030 <p>Ground testing EasyMega and TeleMega additional pyro
7031 channels could result in a sticky 'fired' status which would
7032 prevent these channels from firing on future flights.</p>
7033 </li>
7034 <li>
7035 <p>Corrupted flight log records could prevent future flights
7036 from capturing log data.</p>
7037 </li>
7038 <li>
7039 <p>Fixed saving of pyro configuration that ended with
7040 'Descending'.</p>
7041 </li>
7042 </ul>
7043 </div>
7044 </div>
7045 </div>
7046 <div class="sect3">
7047 <h4 id="_altosui_and_telegps_applications">H.20.2. AltosUI and TeleGPS Applications</h4>
7048 <div class="sect4">
7049 <h5 id="_altosui_new_features">AltosUI New Features</h5>
7050 <div class="ulist">
7051 <ul>
7052 <li>
7053 <p>Support for TeleMega version 3.0.</p>
7054 </li>
7055 <li>
7056 <p>Graph lines have improved appearance to make them easier to
7057 distinguish. Markers may be placed at data points to show
7058 captured recorded data values.</p>
7059 </li>
7060 <li>
7061 <p>Graphing offers the ability to adjust the smoothing of
7062 computed speed and acceleration data.</p>
7063 </li>
7064 <li>
7065 <p>The download dialog now offers to graph new flights, checks
7066 for existing files to avoid overwriting data and reports if
7067 there are checksum errors in the downloaded data.</p>
7068 </li>
7069 </ul>
7070 </div>
7071 </div>
7072 <div class="sect4">
7073 <h5 id="_altosuitelegps_bug_fixes">AltosUI/TeleGPS Bug Fixes</h5>
7074 <div class="ulist">
7075 <ul>
7076 <li>
7077 <p>Restore TeleGPS tracking behavior.</p>
7078 </li>
7079 <li>
7080 <p>Display flight computer call sign and serial number in
7081 Monitor Idle mode instead of ground station values.</p>
7082 </li>
7083 </ul>
7084 </div>
7085 </div>
7086 <div class="sect4">
7087 <h5 id="_altosui_and_telegps_changes">AltosUI and TeleGPS Changes</h5>
7088 <div class="ulist">
7089 <ul>
7090 <li>
7091 <p>KML export now reports both barometric and GPS altitude data
7092 to make it more useful for Tripoli record reporting.</p>
7093 </li>
7094 <li>
7095 <p>CSV export now includes TeleMega/EasyMega pyro voltages and
7096 tilt angle.</p>
7097 </li>
7098 </ul>
7099 </div>
7100 <div style="page-break-after: always;"></div>
7101 </div>
7102 </div>
7103 </div>
7104 <div class="sect2">
7105 <h3 id="_release_notes_for_version_1_8_2">H.21. Release Notes for Version 1.8.2</h3>
7106 <div class="paragraph">
7107 <p>Version 1.8.2 includes support for TeleGPS version 2.0 along
7108 with accelerometer recalibration support in AltosUI.</p>
7109 </div>
7110 <div class="paragraph">
7111 <p>1.8.2 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_20">H.21.1. AltOS</h4>
7116 <div class="paragraph">
7117 <p>AltOS New Features</p>
7118 </div>
7119 <div class="ulist">
7120 <ul>
7121 <li>
7122 <p>Support for TeleGPS version 2.0 hardware.</p>
7123 </li>
7124 </ul>
7125 </div>
7126 </div>
7127 <div class="sect3">
7128 <h4 id="_altosui_and_telegps_applications_2">H.21.2. AltosUI and TeleGPS Applications</h4>
7129 <div class="paragraph">
7130 <p>AltosUI and TeleGPS New Features</p>
7131 </div>
7132 <div class="ulist">
7133 <ul>
7134 <li>
7135 <p>Support for TeleGPS version 2.0.</p>
7136 </li>
7137 <li>
7138 <p>Accelerometer re-calibration user interface.</p>
7139 </li>
7140 </ul>
7141 </div>
7142 <div class="paragraph">
7143 <p>AltosUI and TeleGPS Bug Fixes</p>
7144 </div>
7145 <div class="ulist">
7146 <ul>
7147 <li>
7148 <p>Prevent some crashes when reading older saved flight data
7149 for graphing or KML export.</p>
7150 </li>
7151 </ul>
7152 </div>
7153 <div style="page-break-after: always;"></div>
7154 </div>
7155 </div>
7156 <div class="sect2">
7157 <h3 id="_release_notes_for_version_1_8_1">H.22. Release Notes for Version 1.8.1</h3>
7158 <div class="paragraph">
7159 <p>Version 1.8.1 includes an important bug fix for Apogee Lockout
7160 operation in all flight computers. Anyone using this option
7161 must update firmware.</p>
7162 </div>
7163 <div class="paragraph">
7164 <p>This release also contains a change in how flight computers
7165 with accelerometers deal with speeds around and above Mach
7166 1. In previous versions, the flight computer would completely
7167 disregard the barometric sensor above 330m/s (around Mach
7168 1). Now, the data from the barometric sensor is reduced in
7169 effect without ever going away entirely. This prevents early
7170 drogue deployment for flights which spend considerable time
7171 above Mach 1.</p>
7172 </div>
7173 <div class="paragraph">
7174 <p>1.8.1 also contains a couple of minor fixes for AltosUI when
7175 analyzing saved data files.</p>
7176 </div>
7177 <div class="sect3">
7178 <h4 id="_altos_21">H.22.1. AltOS</h4>
7179 <div class="paragraph">
7180 <p>AltOS Bug Fixes</p>
7181 </div>
7182 <div class="ulist">
7183 <ul>
7184 <li>
7185 <p>Handle time value wrapping in Apogee Lockout
7186 correctly. Without this, apogee lockout would sometimes
7187 prevent any drogue charge from firing.</p>
7188 </li>
7189 <li>
7190 <p>Change Kalman filter on flight computers with accelerometer
7191 to continue using the barometric sensor even at high speeds
7192 to avoid unintentional drogue deployment during
7193 deceleration.</p>
7194 </li>
7195 </ul>
7196 </div>
7197 </div>
7198 <div class="sect3">
7199 <h4 id="_altosui_and_telegps_applications_3">H.22.2. AltosUI and TeleGPS Applications</h4>
7200 <div class="paragraph">
7201 <p>AltosUI New Features</p>
7202 </div>
7203 <div class="ulist">
7204 <ul>
7205 <li>
7206 <p>Add new 'Huge' font size to make text even bigger on high
7207 resolution monitors.</p>
7208 </li>
7209 </ul>
7210 </div>
7211 <div class="paragraph">
7212 <p>AltosUI Bug Fixes</p>
7213 </div>
7214 <div class="ulist">
7215 <ul>
7216 <li>
7217 <p>Prevent some crashes when reading older saved flight data
7218 for graphing or KML export.</p>
7219 </li>
7220 <li>
7221 <p>Load frequency preference at startup. The loading code was
7222 broken, so you&#8217;d see only the default frequencies.</p>
7223 </li>
7224 </ul>
7225 </div>
7226 <div style="page-break-after: always;"></div>
7227 </div>
7228 </div>
7229 <div class="sect2">
7230 <h3 id="_release_notes_for_version_1_8">H.23. Release Notes for Version 1.8</h3>
7231 <div class="paragraph">
7232 <p>Version 1.8 includes support for our new TeleBT v4.0 ground
7233 station, updates for data analysis in our ground station
7234 software and bug fixes in in the flight software for all our
7235 boards and ground station interfaces.</p>
7236 </div>
7237 <div class="sect3">
7238 <h4 id="_altos_22">H.23.1. AltOS</h4>
7239 <div class="paragraph">
7240 <p>AltOS New Features</p>
7241 </div>
7242 <div class="ulist">
7243 <ul>
7244 <li>
7245 <p>Add support for TeleBT v4.0 boards.</p>
7246 </li>
7247 </ul>
7248 </div>
7249 </div>
7250 <div class="sect3">
7251 <h4 id="_altosui_and_telegps_applications_4">H.23.2. AltosUI and TeleGPS Applications</h4>
7252 <div class="paragraph">
7253 <p>AltosUI New Features</p>
7254 </div>
7255 <div class="ulist">
7256 <ul>
7257 <li>
7258 <p>Add support for TeleBT v4.0 hardware</p>
7259 </li>
7260 <li>
7261 <p>Rewrite graphing and export functions. This code now handles
7262 each data series separately so that graphs are drawn
7263 correctly. Smoothing now uses a filter that looks both
7264 forward and backwards in time to make computed speed and
7265 acceleration data more accurate.</p>
7266 </li>
7267 </ul>
7268 </div>
7269 <div class="paragraph">
7270 <p>AltosUI Bug Fixes</p>
7271 </div>
7272 <div class="ulist">
7273 <ul>
7274 <li>
7275 <p>Correct axis labeling of magnetic sensor in TeleMega and
7276 EasyMega. The Y and Z axes were flipped.</p>
7277 </li>
7278 </ul>
7279 </div>
7280 <div style="page-break-after: always;"></div>
7281 </div>
7282 </div>
7283 <div class="sect2">
7284 <h3 id="_release_notes_for_version_1_7">H.24. Release Notes for Version 1.7</h3>
7285 <div class="paragraph">
7286 <p>Version 1.7 includes support for our new TeleMini v3.0
7287 flight computer and bug fixes in in the flight software for all our boards
7288 and ground station interfaces.</p>
7289 </div>
7290 <div class="sect3">
7291 <h4 id="_altos_23">H.24.1. AltOS</h4>
7292 <div class="paragraph">
7293 <p>AltOS New Features</p>
7294 </div>
7295 <div class="ulist">
7296 <ul>
7297 <li>
7298 <p>Add support for TeleMini v3.0 boards.</p>
7299 </li>
7300 </ul>
7301 </div>
7302 <div class="paragraph">
7303 <p>AltOS Fixes</p>
7304 </div>
7305 <div class="ulist">
7306 <ul>
7307 <li>
7308 <p>Fix interrupt priorities on STM32L processors. Run timer
7309 interrupt at lowest priority so that device interrupts get
7310 serviced first.</p>
7311 </li>
7312 </ul>
7313 </div>
7314 </div>
7315 <div class="sect3">
7316 <h4 id="_altosui_and_telegps_applications_5">H.24.2. AltosUI and TeleGPS Applications</h4>
7317 <div class="paragraph">
7318 <p>AltosUI New Features</p>
7319 </div>
7320 <div class="ulist">
7321 <ul>
7322 <li>
7323 <p>Add support for TeleMini v3.0 hardware</p>
7324 </li>
7325 </ul>
7326 </div>
7327 <div style="page-break-after: always;"></div>
7328 </div>
7329 </div>
7330 <div class="sect2">
7331 <h3 id="_release_notes_for_version_1_6_8">H.25. Release Notes for Version 1.6.8</h3>
7332 <div class="paragraph">
7333 <p>Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where
7334 the device could stop logging data and transmitting
7335 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7336 v2.0 users should update their flight firmware.</p>
7337 </div>
7338 <div class="sect3">
7339 <h4 id="_altos_24">H.25.1. AltOS</h4>
7340 <div class="paragraph">
7341 <p>AltOS fixes:</p>
7342 </div>
7343 <div class="ulist">
7344 <ul>
7345 <li>
7346 <p>Fix STM32L DMA driver to work around STM32L SoC DMA priority
7347 issue t lock-up in the logging or radio code, either of
7348 which could stop data logging and telemetry.</p>
7349 </li>
7350 <li>
7351 <p>Avoid having TeleBT battery status values smash telemetry
7352 packet data by holding a lock during both operations.</p>
7353 </li>
7354 <li>
7355 <p>Don&#8217;t start reporting 'flight 0' when the log fills in
7356 flight.</p>
7357 </li>
7358 </ul>
7359 </div>
7360 <div class="paragraph">
7361 <p>AltOS changes:</p>
7362 </div>
7363 <div class="ulist">
7364 <ul>
7365 <li>
7366 <p>Flash LEDS on all products briefly during power up so that
7367 they can be tested during production.</p>
7368 </li>
7369 </ul>
7370 </div>
7371 </div>
7372 <div class="sect3">
7373 <h4 id="_altosui_telegps_and_altosdroid_applications">H.25.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7374 <div class="paragraph">
7375 <p>AltosUI fixes:</p>
7376 </div>
7377 <div class="ulist">
7378 <ul>
7379 <li>
7380 <p>Re-enable go/no-go entries after they&#8217;ve been disabled due
7381 to lack of data. If telemetry information is delayed when
7382 the Ui starts up, sometimes important fields would get
7383 disabled to never re-appear.</p>
7384 </li>
7385 <li>
7386 <p>Deal with ground station failure better during Configure
7387 Ground Station operation by cleaning up pending operations.</p>
7388 </li>
7389 </ul>
7390 </div>
7391 <div style="page-break-after: always;"></div>
7392 </div>
7393 </div>
7394 <div class="sect2">
7395 <h3 id="_release_notes_for_version_1_6_5">H.26. Release Notes for Version 1.6.5</h3>
7396 <div class="paragraph">
7397 <p>Version 1.6.5 fixes a TeleMega and TeleMetrum v2.0 bug where
7398 the device would often stop logging data and transmitting
7399 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7400 v2.0 users should update their flight firmware.</p>
7401 </div>
7402 <div class="sect3">
7403 <h4 id="_altos_25">H.26.1. AltOS</h4>
7404 <div class="paragraph">
7405 <p>AltOS fixes:</p>
7406 </div>
7407 <div class="ulist">
7408 <ul>
7409 <li>
7410 <p>Fix STM32L SPI driver to prevent lock-up in the logging or
7411 radio code, either of which could stop data logging and
7412 telemetry. Found and characterized by Chuck Haskin, who also
7413 tested the new firmware before release.</p>
7414 </li>
7415 </ul>
7416 </div>
7417 </div>
7418 <div class="sect3">
7419 <h4 id="_altosui_telegps_and_altosdroid_applications_2">H.26.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7420 <div class="paragraph">
7421 <p>AltosUI fixes:</p>
7422 </div>
7423 <div class="ulist">
7424 <ul>
7425 <li>
7426 <p>Deliver firmward for TeleMega v2.0 and TeleBT v3.0 with
7427 Windows package.</p>
7428 </li>
7429 </ul>
7430 </div>
7431 <div style="page-break-after: always;"></div>
7432 </div>
7433 </div>
7434 <div class="sect2">
7435 <h3 id="_release_notes_for_version_1_6_4">H.27. Release Notes for Version 1.6.4</h3>
7436 <div class="paragraph">
7437 <p>Version 1.6.4 fixes a bluetooth communication problem with
7438 TeleBT v1.0 devices, along with some altosui and altosdroid
7439 minor nits. It also now ships firmware for some newer devices.</p>
7440 </div>
7441 <div class="sect3">
7442 <h4 id="_altos_26">H.27.1. AltOS</h4>
7443 <div class="paragraph">
7444 <p>AltOS fixes:</p>
7445 </div>
7446 <div class="ulist">
7447 <ul>
7448 <li>
7449 <p>Fix hardware flow control on TeleBT v1.0. Hardware RTS/CTS
7450 doesn&#8217;t seem to work, switch from using the hardware to
7451 driving these pins with software.</p>
7452 </li>
7453 <li>
7454 <p>Fix ARM USB drivers to deal with OS restarts. Needed to
7455 reset all USB-related state when the USB bus is reset. These
7456 fixes affect all STM32L, STM32F0 and LPC11U14 based devices.</p>
7457 </li>
7458 </ul>
7459 </div>
7460 </div>
7461 <div class="sect3">
7462 <h4 id="_altosui_telegps_and_altosdroid_applications_3">H.27.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7463 <div class="paragraph">
7464 <p>AltosUI, TeleGPS and AltosDroid New Features:</p>
7465 </div>
7466 <div class="ulist">
7467 <ul>
7468 <li>
7469 <p>Automatically switch from meters or feet to kilometers or
7470 miles for distance units.</p>
7471 </li>
7472 <li>
7473 <p>Add Monitor Idle mode to TeleGPS application.</p>
7474 </li>
7475 </ul>
7476 </div>
7477 <div class="paragraph">
7478 <p>AltosUI, TeleGPS and AltosDroid Fixes:</p>
7479 </div>
7480 <div class="ulist">
7481 <ul>
7482 <li>
7483 <p>Abort map preloading when the preload map dialog is closed.</p>
7484 </li>
7485 <li>
7486 <p>In AltosDroid, Don&#8217;t reconnect to last device if the user
7487 had disconnected it the last time the application was
7488 active.</p>
7489 </li>
7490 </ul>
7491 </div>
7492 </div>
7493 <div class="sect3">
7494 <h4 id="_documentation">H.27.3. Documentation</h4>
7495 <div class="ulist">
7496 <ul>
7497 <li>
7498 <p>Mention TeleMega v2.0 in hardware specs table.</p>
7499 </li>
7500 <li>
7501 <p>Document TeleGPS RF output in telegps manual.</p>
7502 </li>
7503 </ul>
7504 </div>
7505 <div style="page-break-after: always;"></div>
7506 </div>
7507 </div>
7508 <div class="sect2">
7509 <h3 id="_release_notes_for_version_1_6_3">H.28. Release Notes for Version 1.6.3</h3>
7510 <div class="paragraph">
7511 <p>Version 1.6.3 adds idle mode to AltosDroid and has bug fixes
7512 for our host software on desktops, laptops an android devices
7513 along with BlueTooth support for Windows.</p>
7514 </div>
7515 <div class="sect3">
7516 <h4 id="_altos_27">H.28.1. AltOS</h4>
7517 <div class="paragraph">
7518 <p>AltOS fixes:</p>
7519 </div>
7520 <div class="ulist">
7521 <ul>
7522 <li>
7523 <p>Fix hardware flow control on TeleBT v3.0. RTS/CTS is
7524 wired backwards on this board, switch from using the
7525 hardware to driving these pins with software.</p>
7526 </li>
7527 </ul>
7528 </div>
7529 </div>
7530 <div class="sect3">
7531 <h4 id="_altosui_and_telegps_applications_6">H.28.2. AltosUI and TeleGPS Applications</h4>
7532 <div class="paragraph">
7533 <p>AltosUI and TeleGPS New Features:</p>
7534 </div>
7535 <div class="ulist">
7536 <ul>
7537 <li>
7538 <p>Add BlueTooth support for Windows operating system. This
7539 supports connections to TeleBT over BlueTooth rather than
7540 just USB.</p>
7541 </li>
7542 </ul>
7543 </div>
7544 <div class="paragraph">
7545 <p>AltosUI and TeleGPS Fixes:</p>
7546 </div>
7547 <div class="ulist">
7548 <ul>
7549 <li>
7550 <p>Change Java detection and install on Windows. Detection is
7551 now done by looking for the 'javaw.exe' program, and
7552 installation by opening a browser on the java.com web site.</p>
7553 </li>
7554 <li>
7555 <p>Delay polling while the Fire Igniters is visible to allow
7556 for TeleMega to report back complete status over the radio.</p>
7557 </li>
7558 <li>
7559 <p>Disallow changing RF calibration numbers in the
7560 configuration UI. There&#8217;s no good reason to change this from
7561 the field, and recovering is really hard if you haven&#8217;t
7562 written down the right number.</p>
7563 </li>
7564 <li>
7565 <p>Fix USB device discovery on Mac OS X El Capitan. This makes
7566 the connected Altus Metrum USB devices appear again.</p>
7567 </li>
7568 <li>
7569 <p>Fix acceleration data presented in MonitorIdle mode for
7570 TeleMetrum v2.0 flight computers.</p>
7571 </li>
7572 </ul>
7573 </div>
7574 </div>
7575 <div class="sect3">
7576 <h4 id="_altosdroid_7">H.28.3. AltosDroid</h4>
7577 <div class="paragraph">
7578 <p>AltosDroid new features:</p>
7579 </div>
7580 <div class="ulist">
7581 <ul>
7582 <li>
7583 <p>Monitor Idle mode. Check state of flight computer while in
7584 idle mode over the radio link</p>
7585 </li>
7586 <li>
7587 <p>Fire Igniters. Remotely fire ignires for recovery system
7588 ground tests.</p>
7589 </li>
7590 <li>
7591 <p>Remote reboot. Cause the flight computer to reboot over the
7592 radio link. This provides a method for switching the flight
7593 computer from idle to flight mode without needing to reach
7594 the power switch.</p>
7595 </li>
7596 <li>
7597 <p>Configurable frequency menu. Change the set of available
7598 frequencies and provide more descriptive names.</p>
7599 </li>
7600 </ul>
7601 </div>
7602 <div class="paragraph">
7603 <p>AltosDroid bug fixes:</p>
7604 </div>
7605 <div class="ulist">
7606 <ul>
7607 <li>
7608 <p>Don&#8217;t set target location if GPS hasn&#8217;t locked yet.</p>
7609 </li>
7610 <li>
7611 <p>Fix saving target states so they can be reloaded when the
7612 application restarts. When the application is shut down and
7613 restarted, all previous target state information will be
7614 restored (including GPS position if available).</p>
7615 </li>
7616 <li>
7617 <p>Fix crash on some Android devices for offline maps when
7618 changing the map scale or location.</p>
7619 </li>
7620 <li>
7621 <p>Don&#8217;t require USB OTG support. This kept the latest
7622 AltosDroid from being offered on devices without USB device
7623 support, although it can work without that just fine using
7624 BlueTooth.</p>
7625 </li>
7626 <li>
7627 <p>Don&#8217;t require bluetooth to be enabled. This allows the
7628 application to operate with USB devices or just show old
7629 data without turning on the bluetooth radio.</p>
7630 </li>
7631 <li>
7632 <p>Recover old tracker positions when restarting
7633 application. This finally allows you to safely stop and
7634 restart the application without losing the last known
7635 location of any tracker.</p>
7636 </li>
7637 </ul>
7638 </div>
7639 </div>
7640 <div class="sect3">
7641 <h4 id="_documentation_2">H.28.4. Documentation</h4>
7642 <div class="ulist">
7643 <ul>
7644 <li>
7645 <p>Document TeleMega and EasyMega additional pyro channel
7646 continuity audio alert pattern.</p>
7647 </li>
7648 </ul>
7649 </div>
7650 <div style="page-break-after: always;"></div>
7651 </div>
7652 </div>
7653 <div class="sect2">
7654 <h3 id="_release_notes_for_version_1_6_2">H.29. Release Notes for Version 1.6.2</h3>
7655 <div class="paragraph">
7656 <p>Version 1.6.2 includes support for our updated TeleMega v2.0
7657 product and bug fixes in in the flight software for all our boards
7658 and ground station interfaces.</p>
7659 </div>
7660 <div class="sect3">
7661 <h4 id="_altos_28">H.29.1. AltOS</h4>
7662 <div class="paragraph">
7663 <p>AltOS New Features:</p>
7664 </div>
7665 <div class="ulist">
7666 <ul>
7667 <li>
7668 <p>Add support for TeleMega v2.0 boards.</p>
7669 </li>
7670 <li>
7671 <p>Add PWM servo driver. There&#8217;s no higher level code using
7672 this yet, but the driver allows testing of the TeleMega v2.0
7673 servo output connector.</p>
7674 </li>
7675 </ul>
7676 </div>
7677 <div class="paragraph">
7678 <p>AltOS Fixes:</p>
7679 </div>
7680 <div class="ulist">
7681 <ul>
7682 <li>
7683 <p>Slow down telemetry packets to allow receiver to keep
7684 up.</p>
7685 </li>
7686 </ul>
7687 </div>
7688 </div>
7689 <div class="sect3">
7690 <h4 id="_altosui_and_telegps_applications_7">H.29.2. AltosUI and TeleGPS Applications</h4>
7691 <div class="paragraph">
7692 <p>AltosUI and TeleGPS Fixes:</p>
7693 </div>
7694 <div class="ulist">
7695 <ul>
7696 <li>
7697 <p>Fix post-flight orientation computation when processing
7698 TeleMega and EasyMega eeprom data files.</p>
7699 </li>
7700 <li>
7701 <p>Capture complete eeprom data even when there are invalid
7702 entries in the data. This keeps reading eeprom contents and
7703 writing the associated .eeprom file when an error is detected.</p>
7704 </li>
7705 </ul>
7706 </div>
7707 </div>
7708 <div class="sect3">
7709 <h4 id="_documentation_3">H.29.3. Documentation</h4>
7710 <div class="paragraph">
7711 <p>We spent a bunch of time trying to improve our documentation</p>
7712 </div>
7713 <div class="ulist">
7714 <ul>
7715 <li>
7716 <p>HTML versions now have a table of contents on the left side.</p>
7717 </li>
7718 <li>
7719 <p>EasyMini now has its own shorter manual.</p>
7720 </li>
7721 <li>
7722 <p>Provide links between sections in each document.</p>
7723 </li>
7724 <li>
7725 <p>Lots of minor rewriting and restructuring to avoid
7726 duplication of information</p>
7727 </li>
7728 </ul>
7729 </div>
7730 <div style="page-break-after: always;"></div>
7731 </div>
7732 </div>
7733 <div class="sect2">
7734 <h3 id="_release_notes_for_version_1_6_1">H.30. Release Notes for Version 1.6.1</h3>
7735 <div class="paragraph">
7736 <p>Version 1.6.1 includes support for our updated TeleBT v3.0
7737 product and bug fixes in in the flight software for all our boards
7738 and ground station interfaces.</p>
7739 </div>
7740 <div class="sect3">
7741 <h4 id="_altos_29">H.30.1. AltOS</h4>
7742 <div class="paragraph">
7743 <p>AltOS New Features:</p>
7744 </div>
7745 <div class="ulist">
7746 <ul>
7747 <li>
7748 <p>Add support for TeleBT v3.0 boards.</p>
7749 </li>
7750 <li>
7751 <p>Add support for uncompressed APRS data, providing support
7752 for older APRS receivers. Uncompressed APRS data is less
7753 precise, takes more bandwidth and doesn&#8217;t have integrated
7754 altitude data.</p>
7755 </li>
7756 </ul>
7757 </div>
7758 <div class="paragraph">
7759 <p>AltOS Fixes:</p>
7760 </div>
7761 <div class="ulist">
7762 <ul>
7763 <li>
7764 <p>Make TeleDongle and TeleBT more tolerant of data rate
7765 variations from transmitting devices.</p>
7766 </li>
7767 </ul>
7768 </div>
7769 </div>
7770 <div class="sect3">
7771 <h4 id="_altosui_and_telegps_applications_8">H.30.2. AltosUI and TeleGPS Applications</h4>
7772 <div class="paragraph">
7773 <p>AltosUI and TeleGPS New Features:</p>
7774 </div>
7775 <div class="ulist">
7776 <ul>
7777 <li>
7778 <p>Add map to Monitor Idle display. It&#8217;s nice to be able to
7779 verify that maps are working, instead of needing to use
7780 Monitor Flight.</p>
7781 </li>
7782 </ul>
7783 </div>
7784 <div class="paragraph">
7785 <p>AltosUI and TeleGPS Fixes:</p>
7786 </div>
7787 <div class="ulist">
7788 <ul>
7789 <li>
7790 <p>Fix frequency configuration to round values instead of
7791 truncate them, avoiding a common 1kHz error in the setting.</p>
7792 </li>
7793 <li>
7794 <p>Turn the Windows stub into a more useful program that can
7795 launch the application with parameters so that file manager
7796 icons work more reliably.</p>
7797 </li>
7798 <li>
7799 <p>Force KML export to use a C locale so that numbers are
7800 formatted with '.' instead of ',' for a decimal separator in
7801 non-US locales.</p>
7802 </li>
7803 <li>
7804 <p>Preload map tiles based on distance rather than number of
7805 tiles; this means you get the same resolution covering the
7806 entire area, rather than having high resolution near the
7807 center and low resolution further away.</p>
7808 </li>
7809 <li>
7810 <p>Allow configuration of frequency and callsign in Monitor
7811 Idle mode.</p>
7812 </li>
7813 <li>
7814 <p>Fix layout weirdness when resizing windows on
7815 Windows. Windows shouldn&#8217;t have giant blank spaces around
7816 the useful content anymore.</p>
7817 </li>
7818 <li>
7819 <p>Fix layout weirdness when resizing windows on
7820 Windows. Windows shouldn&#8217;t have giant blank spaces around
7821 the useful content anymore.</p>
7822 </li>
7823 <li>
7824 <p>Use a longer filter for descent speed values. This should
7825 provide something more useful on the display, although it
7826 will take longer to respond to changes now.</p>
7827 </li>
7828 <li>
7829 <p>Make Replay Flight run in realtime again. It had been set to
7830 run at 10x speed by mistake.</p>
7831 </li>
7832 </ul>
7833 </div>
7834 </div>
7835 <div class="sect3">
7836 <h4 id="_altosdroid_8">H.30.3. AltosDroid</h4>
7837 <div class="paragraph">
7838 <p>AltosDroid New Features:</p>
7839 </div>
7840 <div class="ulist">
7841 <ul>
7842 <li>
7843 <p>Add offline map support using mapping code from AltosUI.</p>
7844 </li>
7845 <li>
7846 <p>Support TeleDongle (and TeleBT via USB) on devices
7847 supporting USB On-The-Go.</p>
7848 </li>
7849 <li>
7850 <p>Display additional TeleMega pyro channel status in Pad tab.</p>
7851 </li>
7852 <li>
7853 <p>Switch between metric and imperial units.</p>
7854 </li>
7855 <li>
7856 <p>Monitor TeleBT battery voltage.</p>
7857 </li>
7858 <li>
7859 <p>Track multiple devices at the same time, selecting between
7860 them with a menu or using the map.</p>
7861 </li>
7862 <li>
7863 <p>Add hybrid, satellite and terrain map types.</p>
7864 </li>
7865 </ul>
7866 </div>
7867 <div class="paragraph">
7868 <p>AltosDroid Fixes:</p>
7869 </div>
7870 <div class="ulist">
7871 <ul>
7872 <li>
7873 <p>Use standard Android display conventions so that a menu
7874 button is available in the application title bar.</p>
7875 </li>
7876 <li>
7877 <p>Adjust layout to work on large and small screens; shrinking
7878 the go/no-go lights in smaller environments to try and make
7879 everything visible.</p>
7880 </li>
7881 <li>
7882 <p>Make voice announcements depend on current tab.</p>
7883 </li>
7884 <li>
7885 <p>Compute adjustment to current travel direction while in
7886 motion towards rocket.</p>
7887 </li>
7888 </ul>
7889 </div>
7890 <div style="page-break-after: always;"></div>
7891 </div>
7892 </div>
7893 <div class="sect2">
7894 <h3 id="_release_notes_for_version_1_6">H.31. Release Notes for Version 1.6</h3>
7895 <div class="paragraph">
7896 <p>Version 1.6 includes support for our updated TeleDongle v3.0
7897 product and bug fixes in in the flight software for all our boards
7898 and ground station interfaces.</p>
7899 </div>
7900 <div class="sect3">
7901 <h4 id="_altos_30">H.31.1. AltOS</h4>
7902 <div class="paragraph">
7903 <p>AltOS New Features</p>
7904 </div>
7905 <div class="ulist">
7906 <ul>
7907 <li>
7908 <p>Add support for TeleDongle v3.0 boards.</p>
7909 </li>
7910 </ul>
7911 </div>
7912 <div class="paragraph">
7913 <p>AltOS Fixes</p>
7914 </div>
7915 <div class="ulist">
7916 <ul>
7917 <li>
7918 <p>Don&#8217;t beep out the continuity twice by accident in idle mode.
7919 If the battery voltage report takes longer than the initialiation
7920 sequence, the igniter continuity would get reported twice.</p>
7921 </li>
7922 <li>
7923 <p>Record all 32 bits of gyro calibration data in TeleMega and
7924 EasyMega log files. This fixes computation of the gyro rates
7925 in AltosUI.</p>
7926 </li>
7927 <li>
7928 <p>Change TeleDongle LED usage. Green LED flashes when valid
7929 packet is received. Red LED flashes when invalid packet is
7930 received.</p>
7931 </li>
7932 <li>
7933 <p>Replace LPC11U14 SPI driver with non-interrupt version. The
7934 interrupt code would occasionally wedge on long transfers
7935 if interrupts were blocked for too long. This affects all
7936 released TeleGPS products; if you have a TeleGPS device,
7937 you&#8217;ll want to reflash the firmware.</p>
7938 </li>
7939 </ul>
7940 </div>
7941 </div>
7942 <div class="sect3">
7943 <h4 id="_altosui_and_telegps_applications_9">H.31.2. AltosUI and TeleGPS Applications</h4>
7944 <div class="paragraph">
7945 <p>AltosUI and TeleGPS New Features</p>
7946 </div>
7947 <div class="ulist">
7948 <ul>
7949 <li>
7950 <p>Compute tilt angle from TeleMega and EasyMega log
7951 files. This duplicates the quaternion-based angle tracking
7952 code from the flight firmware inside the ground station
7953 software so that post-flight analysis can include evaluation
7954 of the tilt angle.</p>
7955 </li>
7956 <li>
7957 <p>Shows the tool button window when starting with a data file
7958 specified. This means that opening a data file from the file
7959 manager will now bring up the main window to let you operate
7960 the whole application.</p>
7961 </li>
7962 </ul>
7963 </div>
7964 <div class="paragraph">
7965 <p>AltosUI Fixes</p>
7966 </div>
7967 <div class="ulist">
7968 <ul>
7969 <li>
7970 <p>Show the 'Connecting' dialog when using Monitor Idle. Lets
7971 you cancel the Monitor Idle startup when connecting over the
7972 radio link.</p>
7973 </li>
7974 <li>
7975 <p>Make 'Monitor Idle' work for TeleGPS devices when connected
7976 over USB. It&#8217;s nice for testing without needing to broadcast
7977 over the radio.</p>
7978 </li>
7979 <li>
7980 <p>Use different Windows API to discover USB devices. This
7981 works better on my Windows 7 box, and will be used if the
7982 older API fails to provide the necessary information.</p>
7983 </li>
7984 <li>
7985 <p>Look in more places in the registry to try and identify the
7986 installed Java version on Windows. If you install the
7987 default 32-bit version of Windows on a 64-bit OS, the Java
7988 registry information is hiding \SOFTWARE\Wow6432Node for
7989 some reason.</p>
7990 </li>
7991 <li>
7992 <p>Fix file association on Windows by searching for the
7993 javaw.exe program instead of assuming it is in
7994 %SYSTEMROOT%. This makes double-clicking on Altus Metrum
7995 data files in the file manager work correctly.</p>
7996 </li>
7997 <li>
7998 <p>When replaying a file, put 'done' in the Age field when we
7999 reach the end of the file, instead of continuing to count forever.</p>
8000 </li>
8001 <li>
8002 <p>In the Scan Channels code, wait for five seconds if we see
8003 any packet. This is needed because AltOS now sends the
8004 callsign, serial number and flight number only once every
8005 five seconds these days.</p>
8006 </li>
8007 <li>
8008 <p>In the Scan Channels code, reset pending flight state
8009 information each time we change channels. This avoids having
8010 flight computers appear on multiple frequencies by accident.</p>
8011 </li>
8012 </ul>
8013 </div>
8014 <div style="page-break-after: always;"></div>
8015 </div>
8016 </div>
8017 <div class="sect2">
8018 <h3 id="_release_notes_for_version_1_5">H.32. Release Notes for Version 1.5</h3>
8019 <div class="paragraph">
8020 <p>Version 1.5 is a major release. It includes support for our new
8021 EasyMega product, new features and bug fixes in in the flight
8022 software for all our boards and the AltosUI ground station</p>
8023 </div>
8024 <div class="sect3">
8025 <h4 id="_altos_31">H.32.1. AltOS</h4>
8026 <div class="paragraph">
8027 <p>AltOS New Features</p>
8028 </div>
8029 <div class="ulist">
8030 <ul>
8031 <li>
8032 <p>Add support for EasyMega boards.</p>
8033 </li>
8034 <li>
8035 <p>Make the APRS SSID be configurable. This lets you track
8036 different rockets on the same receiver without getting
8037 things mixed up.</p>
8038 </li>
8039 <li>
8040 <p>Report extra pyro channel continuity state on EasyMega and
8041 TeleMega via the beeper. This lets you easily verify flight
8042 readiness on these boards after powering up the electronics
8043 on the rail.</p>
8044 </li>
8045 <li>
8046 <p>Add lower telemetry data rates (2400 and 9600 bps) to
8047 increase telemetry radio range. This reduces the amount of
8048 data received as well as increasing battery consumption in
8049 the transmitter.</p>
8050 </li>
8051 <li>
8052 <p>Change TeleGPS to have only a single log, and append new
8053 data to it rather than using seperate per-flight logs. This
8054 avoids accidentally filling up log storage by turning
8055 TeleGPS on/off several times.</p>
8056 </li>
8057 </ul>
8058 </div>
8059 <div class="paragraph">
8060 <p>AltOS Fixes</p>
8061 </div>
8062 <div class="ulist">
8063 <ul>
8064 <li>
8065 <p>Increase the maximum range for altitude values from +/-32767m
8066 to +/-2147483647m, allowing the flight computers to function
8067 correctly above the 32km level.</p>
8068 </li>
8069 <li>
8070 <p>Continuously test pyro firing conditions during delay stage,
8071 inhibiting the pyro channel if the test fails. This prevents
8072 firing pyro charges where the conditions were good before
8073 the delay, but become bad before the delay expires.</p>
8074 </li>
8075 <li>
8076 <p>Allow negative numbers in pyro configuration values. This
8077 lets you specify things like descending speed or
8078 deceleration.</p>
8079 </li>
8080 </ul>
8081 </div>
8082 </div>
8083 <div class="sect3">
8084 <h4 id="_altosui_and_telegps_applications_10">H.32.2. AltosUI and TeleGPS Applications</h4>
8085 <div class="paragraph">
8086 <p>AltosUI and TeleGPS New Features</p>
8087 </div>
8088 <div class="ulist">
8089 <ul>
8090 <li>
8091 <p>Support telemetry baud rate selection. Adds menus to
8092 the flight monitoring and configuration for baud rate
8093 selection.</p>
8094 </li>
8095 <li>
8096 <p>Support APRS SSID configuration.</p>
8097 </li>
8098 <li>
8099 <p>Integrate with file managers. This provides icons for all of
8100 our file types and associates our application with the files
8101 so that using a file manager to open a AltOS data file
8102 results in launching our application.</p>
8103 </li>
8104 </ul>
8105 </div>
8106 <div class="paragraph">
8107 <p>AltosUI Fixes</p>
8108 </div>
8109 <div class="ulist">
8110 <ul>
8111 <li>
8112 <p>Make the 'Graph' button on the landed tab work again.</p>
8113 </li>
8114 <li>
8115 <p>Make tests for Java on Windows a bit smarter, and also
8116 provide the user with the option to skip installing Java for
8117 cases where we just can&#8217;t figure out what version is installed.</p>
8118 </li>
8119 </ul>
8120 </div>
8121 <div style="page-break-after: always;"></div>
8122 </div>
8123 </div>
8124 <div class="sect2">
8125 <h3 id="_release_notes_for_version_1_4_2">H.33. Release Notes for Version 1.4.2</h3>
8126 <div class="paragraph">
8127 <p>Version 1.4.2 is a minor release. It fixes Java-related install issues on
8128 Windows</p>
8129 </div>
8130 <div class="sect3">
8131 <h4 id="_altosui_and_telegps_applications_11">H.33.1. AltosUI and TeleGPS Applications</h4>
8132 <div class="paragraph">
8133 <p>Windows Install Fixes</p>
8134 </div>
8135 <div class="ulist">
8136 <ul>
8137 <li>
8138 <p>Checks for Java installation data in more registry locations.</p>
8139 </li>
8140 <li>
8141 <p>Allows user to bypass Java installation in case the
8142 detection fails.</p>
8143 </li>
8144 </ul>
8145 </div>
8146 <div style="page-break-after: always;"></div>
8147 </div>
8148 </div>
8149 <div class="sect2">
8150 <h3 id="_release_notes_for_version_1_4_1">H.34. Release Notes for Version 1.4.1</h3>
8151 <div class="paragraph">
8152 <p>Version 1.4.1 is a minor release. It fixes install issues on
8153 Windows and provides the missing TeleMetrum V2.0 firmware. There
8154 aren&#8217;t any changes to the firmware or host applications at
8155 all. All Windows users will want to upgrade to get the signed
8156 driver, but Mac and Linux users who do not need the TeleMetrum
8157 V2.0 firmware image will not need to upgrade.</p>
8158 </div>
8159 <div class="sect3">
8160 <h4 id="_altosui_and_telegps_applications_12">H.34.1. AltosUI and TeleGPS Applications:</h4>
8161 <div class="paragraph">
8162 <p>Windows Install Fixes</p>
8163 </div>
8164 <div class="ulist">
8165 <ul>
8166 <li>
8167 <p>Provide signed Windows driver files. This should avoid any need to
8168 disable driver signature checking on Windows 7 or 8.</p>
8169 </li>
8170 <li>
8171 <p>Fix Java version detection and download. Previously, the
8172 installer would only look for Java 6 or 7 and insist on
8173 downloading its own Java bits if there was something else
8174 installed. Furthermore, the 64-bit Java link provided didn&#8217;t
8175 work for anyone other than Keith, making it impossible to
8176 install AltOS on any machine with Java SE 8 installed.</p>
8177 </li>
8178 </ul>
8179 </div>
8180 <div class="paragraph">
8181 <p>Other Fixes</p>
8182 </div>
8183 <div class="ulist">
8184 <ul>
8185 <li>
8186 <p>Include 1.4 firmware for TeleMetrum V2.0. None of the
8187 installers shipped this file. Now it&#8217;s included in the AltOS
8188 packages for Linux, Mac and Windows.</p>
8189 </li>
8190 <li>
8191 <p>Include Google Application Key for map downloading. The 1.4
8192 release didn&#8217;t have this key in the released version of the
8193 software, making map downloading fail for most people.</p>
8194 </li>
8195 </ul>
8196 </div>
8197 <div style="page-break-after: always;"></div>
8198 </div>
8199 </div>
8200 <div class="sect2">
8201 <h3 id="_release_notes_for_version_1_4">H.35. Release Notes for Version 1.4</h3>
8202 <div class="paragraph">
8203 <p>Version 1.4 is a major release. It includes support for our new
8204 TeleGPS product, new features and bug fixes in in the flight
8205 software for all our boards and the AltosUI ground station</p>
8206 </div>
8207 <div class="sect3">
8208 <h4 id="_altos_32">H.35.1. AltOS</h4>
8209 <div class="paragraph">
8210 <p>AltOS new features:</p>
8211 </div>
8212 <div class="ulist">
8213 <ul>
8214 <li>
8215 <p>Add support for TeleGPS boards.</p>
8216 </li>
8217 <li>
8218 <p>Make the beeper tone configurable, making it
8219 possible to distinguish between two Altus Metrum
8220 products in the same ebay.</p>
8221 </li>
8222 <li>
8223 <p>Make the firing time for extra pyro channels
8224 configurable, allowing longer (or shorter) than the
8225 default 50ms.  Only relevant for TeleMega at this
8226 time.</p>
8227 </li>
8228 </ul>
8229 </div>
8230 <div class="paragraph">
8231 <p>AltOS fixes:</p>
8232 </div>
8233 <div class="ulist">
8234 <ul>
8235 <li>
8236 <p>Replace the 'dit dit dit' tones at startup with the
8237 current battery voltage, measured in tenths of a
8238 volt. This lets you check the battery voltage
8239 without needing telemetry, which is especially
8240 useful on EasyMini.</p>
8241 </li>
8242 <li>
8243 <p>Change state beeping to "Farnsworth spacing", which
8244 means they&#8217;re quite a bit faster than before, and so
8245 they take less time to send.</p>
8246 </li>
8247 <li>
8248 <p>Fix bug preventing the selection of the 'Flight
8249 State After' mode in pyro configuration.</p>
8250 </li>
8251 <li>
8252 <p>Fix bug where erasing flights would reset the flight
8253 number to 2 on TeleMega and TeleMetrum v2.</p>
8254 </li>
8255 <li>
8256 <p>Fix u-Blox GPS driver to mark course and speed data
8257 as being present.</p>
8258 </li>
8259 </ul>
8260 </div>
8261 </div>
8262 <div class="sect3">
8263 <h4 id="_altosui_application">H.35.2. AltosUI Application</h4>
8264 <div class="paragraph">
8265 <p>AltosUI new features:</p>
8266 </div>
8267 <div class="ulist">
8268 <ul>
8269 <li>
8270 <p>Add zooming and new content types (terrain and road
8271 maps) to map view. Change map storage format from
8272 PNG to Jpeg, which saves a huge amount of disk
8273 space. You will need to re-download all of your
8274 pre-loaded map images.</p>
8275 </li>
8276 <li>
8277 <p>Add a distance measuring device to the maps
8278 view. Select this by using any button other than the
8279 left one, or by pressing shift or control on the
8280 keyboard while using the left button.</p>
8281 </li>
8282 <li>
8283 <p>Add new 'Ignitor' tab to the flight monitor display
8284 for TeleMega&#8217;s extra ignitors.</p>
8285 </li>
8286 <li>
8287 <p>Add additional ignitor firing marks and voltages to
8288 the graph so you can see when the ignitors fired,
8289 along with the ignitor voltages.</p>
8290 </li>
8291 <li>
8292 <p>Add GPS course, ground speed and climb rate as
8293 optional graph elements.</p>
8294 </li>
8295 </ul>
8296 </div>
8297 <div class="paragraph">
8298 <p>AltosUI fixes:</p>
8299 </div>
8300 <div class="ulist">
8301 <ul>
8302 <li>
8303 <p>When flashing new firmware, re-try opening the
8304 device as sometimes it takes a while for the
8305 underlying operating system to recognize that the
8306 device has rebooted in preparation for the flashing
8307 operation.</p>
8308 </li>
8309 <li>
8310 <p>Hide Tilt Angle in ascent tab for devices that don&#8217;t
8311 have a gyro.</p>
8312 </li>
8313 <li>
8314 <p>Increase the width of data lines in the graphs to
8315 make them easier to read.</p>
8316 </li>
8317 <li>
8318 <p>Filter out speed and acceleration spikes caused by
8319 ejection charge firing when computing the maximum
8320 values. This provides a more accurate reading of
8321 those maximums.</p>
8322 </li>
8323 <li>
8324 <p>Fix EasyMini voltage displays. Early EasyMini
8325 prototypes used a 3.0V regulator, and AltosUI still
8326 used that value as the basis of the
8327 computation. Production EasyMini boards have always
8328 shipped with a 3.3V regulator. Also, purple EasyMini
8329 boards sensed the battery voltage past the blocking
8330 diode, resulting in a drop of about 150mV from the
8331 true battery voltage. Compensate for that when
8332 displaying the value.</p>
8333 </li>
8334 <li>
8335 <p>Display error message when trying to configure
8336 maximum flight log size while the flight computer
8337 still has flight data stored.</p>
8338 </li>
8339 <li>
8340 <p>Handle TeleMetrum and TeleMini eeprom files
8341 generated with pre-1.0 firmware. Those ancient
8342 versions didn&#8217;t report the log format, so just use
8343 the product name instead.</p>
8344 </li>
8345 </ul>
8346 </div>
8347 </div>
8348 <div class="sect3">
8349 <h4 id="_telegps_application">H.35.3. TeleGPS Application</h4>
8350 <div class="ulist">
8351 <ul>
8352 <li>
8353 <p>New application designed for use with TeleGPS boards.</p>
8354 </li>
8355 <li>
8356 <p>Shares code with AltosUI, mostly just trimmed down
8357 to focus on TeleGPS-related functions.</p>
8358 </li>
8359 </ul>
8360 </div>
8361 </div>
8362 <div class="sect3">
8363 <h4 id="_documentation_4">H.35.4. Documentation</h4>
8364 <div class="paragraph">
8365 <p>Documentation changes:</p>
8366 </div>
8367 <div class="ulist">
8368 <ul>
8369 <li>
8370 <p>Re-create the drill template images; they should
8371 print correctly from Firefox at least. Ship these as
8372 individual PDF files so they&#8217;re easy to print.</p>
8373 </li>
8374 <li>
8375 <p>Add a description of the 'Apogee Lockout' setting,
8376 which prevents the apogee charge from firing for a
8377 configurable amount of time after boost.</p>
8378 </li>
8379 </ul>
8380 </div>
8381 <div style="page-break-after: always;"></div>
8382 </div>
8383 </div>
8384 <div class="sect2">
8385 <h3 id="_release_notes_for_version_1_3_2">H.36. Release Notes for Version 1.3.2</h3>
8386 <div class="paragraph">
8387 <p>Version 1.3.2 is a minor release. It includes small bug fixes for
8388 the TeleMega flight software and AltosUI ground station</p>
8389 </div>
8390 <div class="sect3">
8391 <h4 id="_altos_33">H.36.1. AltOS</h4>
8392 <div class="paragraph">
8393 <p>AltOS fixes:</p>
8394 </div>
8395 <div class="ulist">
8396 <ul>
8397 <li>
8398 <p>On TeleMega, limit number of logged GPS status
8399 information to 12 satellites. That&#8217;s all there is
8400 room for in the log structure.</p>
8401 </li>
8402 <li>
8403 <p>Improve APRS behavior. Remembers last known GPS
8404 position and keeps sending that if we lose GPS
8405 lock. Marks locked/unlocked by sending L/U in the
8406 APRS comment field along with the number of sats in
8407 view and voltages.</p>
8408 </li>
8409 </ul>
8410 </div>
8411 </div>
8412 <div class="sect3">
8413 <h4 id="_altosui_application_2">H.36.2. AltosUI Application</h4>
8414 <div class="paragraph">
8415 <p>AltosUI fixes:</p>
8416 </div>
8417 <div class="ulist">
8418 <ul>
8419 <li>
8420 <p>If the TeleMega flight firmware reports that it has
8421 logged information about more than 12 satellites,
8422 don&#8217;t believe it as the log only holds 12 satellite
8423 records.</p>
8424 </li>
8425 <li>
8426 <p>Track the maximum height as computed from GPS
8427 altitude data and report that in the flight summary
8428 data.</p>
8429 </li>
8430 <li>
8431 <p>Use letters (A, B, C, D) for alternate pyro channel
8432 names instead of numbers (0, 1, 2, 3) in the Fire
8433 Igniter dialog.</p>
8434 </li>
8435 </ul>
8436 </div>
8437 <div style="page-break-after: always;"></div>
8438 </div>
8439 </div>
8440 <div class="sect2">
8441 <h3 id="_release_notes_for_version_1_3_1">H.37. Release Notes for Version 1.3.1</h3>
8442 <div class="paragraph">
8443 <p>Version 1.3.1 is a minor release. It improves support for
8444 TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8445 </div>
8446 <div class="sect3">
8447 <h4 id="_altos_34">H.37.1. AltOS</h4>
8448 <div class="paragraph">
8449 <p>AltOS new features:</p>
8450 </div>
8451 <div class="ulist">
8452 <ul>
8453 <li>
8454 <p>Improved APRS mode. Now uses compressed position
8455 format for smaller data size, improved precision and
8456 to include altitude data as well as latitude and
8457 longitude. Also added battery and pyro voltage
8458 reports in the APRS comment field so you can confirm
8459 that the unit is ready for launch.</p>
8460 </li>
8461 </ul>
8462 </div>
8463 <div class="paragraph">
8464 <p>AltOS fixes:</p>
8465 </div>
8466 <div class="ulist">
8467 <ul>
8468 <li>
8469 <p>Improve sensor boot code. If sensors fail to
8470 self-test, the device will still boot up and check
8471 for pad/idle modes. If in idle mode, the device will
8472 warn the user with a distinct beep, if in Pad mode,
8473 the unit will operate as best it can. Also, the
8474 Z-axis accelerometer now uses the factory
8475 calibration values instead of re-calibrating on the
8476 pad each time. This avoids accidental boost detect
8477 when moving the device around while in Pad mode.</p>
8478 </li>
8479 <li>
8480 <p>Fix antenna-down mode accelerometer
8481 configuration. Antenna down mode wasn&#8217;t working
8482 because the accelerometer calibration values were
8483 getting re-computed incorrectly in inverted mode.</p>
8484 </li>
8485 </ul>
8486 </div>
8487 </div>
8488 <div class="sect3">
8489 <h4 id="_altosui_application_3">H.37.2. AltosUI Application</h4>
8490 <div class="paragraph">
8491 <p>AltosUI new features:</p>
8492 </div>
8493 <div class="ulist">
8494 <ul>
8495 <li>
8496 <p>Display additional TeleMega sensor values in real
8497 units. Make all of these values available for
8498 plotting. Display TeleMega orientation value in the
8499 Ascent and Table tabs.</p>
8500 </li>
8501 <li>
8502 <p>Support additional TeleMega pyro channels in the
8503 Fire Igniter dialog. This lets you do remote testing
8504 of all of the channels, rather than just Apogee and
8505 Main.</p>
8506 </li>
8507 </ul>
8508 </div>
8509 <div class="paragraph">
8510 <p>AltosUI fixes:</p>
8511 </div>
8512 <div class="ulist">
8513 <ul>
8514 <li>
8515 <p>Limit data rate when downloading satellite images
8516 from Google to make sure we stay within their limits
8517 so that all of the map tiles download successfully.</p>
8518 </li>
8519 </ul>
8520 </div>
8521 <div style="page-break-after: always;"></div>
8522 </div>
8523 </div>
8524 <div class="sect2">
8525 <h3 id="_release_notes_for_version_1_3">H.38. Release Notes for Version 1.3</h3>
8526 <div class="paragraph">
8527 <p>Version 1.3 is a major release. It adds support for TeleMega,
8528 TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8529 </div>
8530 <div class="sect3">
8531 <h4 id="_altos_35">H.38.1. AltOS</h4>
8532 <div class="paragraph">
8533 <p>AltOS new features:</p>
8534 </div>
8535 <div class="ulist">
8536 <ul>
8537 <li>
8538 <p>Add STM32L processor support. This includes
8539 enhancements to the scheduler to support products
8540 with many threads.</p>
8541 </li>
8542 <li>
8543 <p>Add NXP LPC11U14 processor support.</p>
8544 </li>
8545 <li>
8546 <p>Support additional pyro channels. These are
8547 configurable through the UI to handle air starts,
8548 staging, additional recovery events and external
8549 devices such as cameras.</p>
8550 </li>
8551 <li>
8552 <p>Add 3-axis gyro support for orientation
8553 tracking. This integrates the gyros to compute the
8554 angle from vertical during flight, allowing the
8555 additional pyro events to be controlled by this
8556 value.</p>
8557 </li>
8558 <li>
8559 <p>Many more device drivers, including u-Blox Max 7Q
8560 GPS, Freescale MMA6555 digital single-axis
8561 accelerometer, Invensense MPU6000 3-axis
8562 accelerometer + 3 axis gyro, Honeywell HMC5883
8563 3-axis magnetic sensor and the TI CC1120 and CC115L
8564 digital FM transceivers</p>
8565 </li>
8566 </ul>
8567 </div>
8568 </div>
8569 <div class="sect3">
8570 <h4 id="_altosui_application_4">H.38.2. AltosUI Application</h4>
8571 <div class="paragraph">
8572 <p>AltosUI new features:</p>
8573 </div>
8574 <div class="ulist">
8575 <ul>
8576 <li>
8577 <p>Support TeleMega, TeleMetrum v2.0, TeleMini v2.0 and
8578 EasyMini telemetry and log formats.</p>
8579 </li>
8580 </ul>
8581 </div>
8582 <div class="paragraph">
8583 <p>AltosUI fixes:</p>
8584 </div>
8585 <div class="ulist">
8586 <ul>
8587 <li>
8588 <p>Use preferred units for main deployment height
8589 configuration, instead of always doing configuration in
8590 meters.
8591 == MicroPeak Application</p>
8592 </li>
8593 <li>
8594 <p>Add 'Download' button to menu bar.</p>
8595 </li>
8596 <li>
8597 <p>Save the last log directory and offer that as the
8598 default for new downloads</p>
8599 </li>
8600 </ul>
8601 </div>
8602 <div style="page-break-after: always;"></div>
8603 </div>
8604 </div>
8605 <div class="sect2">
8606 <h3 id="_release_notes_for_version_1_2_1">H.39. Release Notes for Version 1.2.1</h3>
8607 <div class="paragraph">
8608 <p>Version 1.2.1 is a minor release. It adds support for TeleBT and
8609 the AltosDroid application, provides several new features in
8610 AltosUI and fixes some bugs in the AltOS firmware.</p>
8611 </div>
8612 <div class="sect3">
8613 <h4 id="_altos_36">H.39.1. AltOS</h4>
8614 <div class="paragraph">
8615 <p>AltOS new features:</p>
8616 </div>
8617 <div class="ulist">
8618 <ul>
8619 <li>
8620 <p>Add support for TeleBT</p>
8621 </li>
8622 </ul>
8623 </div>
8624 <div class="paragraph">
8625 <p>AltOS fixes:</p>
8626 </div>
8627 <div class="ulist">
8628 <ul>
8629 <li>
8630 <p>In TeleMini recovery mode (when booted with the
8631 outer two debug pins connected together), the radio
8632 parameters are also set back to defaults
8633 (434.550MHz, N0CALL, factory radio cal).</p>
8634 </li>
8635 <li>
8636 <p>Correct Kalman filter model error covariance
8637 matrix. The values used previously assumed
8638 continuous measurements instead of discrete
8639 measurements.</p>
8640 </li>
8641 <li>
8642 <p>Fix some bugs in the USB driver for TeleMetrum and
8643 TeleDongle that affected Windows users.</p>
8644 </li>
8645 <li>
8646 <p>Adjusted the automatic gain control parameters that
8647 affect receive performance for TeleDongle. Field
8648 tests indicate that this may improve receive
8649 performance somewhat.</p>
8650 </li>
8651 </ul>
8652 </div>
8653 </div>
8654 <div class="sect3">
8655 <h4 id="_altosui_application_5">H.39.2. AltosUI Application</h4>
8656 <div class="paragraph">
8657 <p>AltosUI application new features:</p>
8658 </div>
8659 <div class="ulist">
8660 <ul>
8661 <li>
8662 <p>Make the initial position of the AltosUI top level
8663 window configurable. Along with this change, the
8664 other windows will pop up at 'sensible' places now,
8665 instead of on top of one another.</p>
8666 </li>
8667 <li>
8668 <p>Add GPS data and a map to the graph window. This
8669 lets you see a complete summary of the flight
8670 without needing to 'replay' the whole thing.</p>
8671 </li>
8672 </ul>
8673 </div>
8674 <div class="paragraph">
8675 <p>AltosUI application fixes:</p>
8676 </div>
8677 <div class="ulist">
8678 <ul>
8679 <li>
8680 <p>Handle missing GPS lock in 'Descent'
8681 tab. Previously, if the GPS position of the pad was
8682 unknown, an exception would be raised, breaking the
8683 Descent tab contents.</p>
8684 </li>
8685 <li>
8686 <p>Improve the graph, adding tool-tips to show values
8687 near the cursor and making the displayed set of
8688 values configurable, adding all of the flight data
8689 as options while leaving the default settings alone
8690 so that the graph starts by showing height, speed
8691 and acceleration.</p>
8692 </li>
8693 <li>
8694 <p>Add callsign to Monitor idle window and connecting
8695 dialogs. This makes it clear which callsign is being
8696 used so that the operator will be aware that it must
8697 match the flight computer value or no communication
8698 will work.</p>
8699 </li>
8700 <li>
8701 <p>When downloading flight data, display the block
8702 number so that the user has some sense of
8703 progress. Unfortunately, we don&#8217;t know how many
8704 blocks will need to be downloaded, but at least it
8705 isn&#8217;t just sitting there doing nothing for a long
8706 time.</p>
8707 </li>
8708 </ul>
8709 </div>
8710 </div>
8711 <div class="sect3">
8712 <h4 id="_altosdroid_9">H.39.3. AltosDroid</h4>
8713 <div class="ulist">
8714 <ul>
8715 <li>
8716 <p>First version of this application</p>
8717 </li>
8718 </ul>
8719 </div>
8720 <div style="page-break-after: always;"></div>
8721 </div>
8722 </div>
8723 <div class="sect2">
8724 <h3 id="_release_notes_for_version_1_2">H.40. Release Notes for Version 1.2</h3>
8725 <div class="paragraph">
8726 <p>Version 1.2 is a major release. It adds support for MicroPeak
8727 and the MicroPeak USB adapter.</p>
8728 </div>
8729 <div class="sect3">
8730 <h4 id="_altos_37">H.40.1. AltOS</h4>
8731 <div class="paragraph">
8732 <p>AltOS New Features:</p>
8733 </div>
8734 <div class="ulist">
8735 <ul>
8736 <li>
8737 <p>Add MicroPeak support. This includes support for the
8738 ATtiny85 processor and adaptations to the core code
8739 to allow for devices too small to run the
8740 multi-tasking scheduler.</p>
8741 </li>
8742 </ul>
8743 </div>
8744 </div>
8745 <div class="sect3">
8746 <h4 id="_altosui_and_micropeak_application">H.40.2. AltosUI and MicroPeak Application</h4>
8747 <div class="paragraph">
8748 <p>New Features:</p>
8749 </div>
8750 <div class="ulist">
8751 <ul>
8752 <li>
8753 <p>Added MicroPeak application</p>
8754 </li>
8755 </ul>
8756 </div>
8757 <div class="paragraph">
8758 <p>AltosUI and MicroPeak fixes:</p>
8759 </div>
8760 <div class="ulist">
8761 <ul>
8762 <li>
8763 <p>Distribute Mac OS X packages in disk image ('.dmg')
8764 format to greatly simplify installation.</p>
8765 </li>
8766 <li>
8767 <p>Provide version numbers for the shared Java
8768 libraries to ensure that upgrades work properly, and
8769 to allow for multiple Altus Metrum software packages
8770 to be installed in the same directory at the same
8771 time.</p>
8772 </li>
8773 </ul>
8774 </div>
8775 <div style="page-break-after: always;"></div>
8776 </div>
8777 </div>
8778 <div class="sect2">
8779 <h3 id="_release_notes_for_version_1_1">H.41. Release Notes for Version 1.1</h3>
8780 <div class="paragraph">
8781 <p>Version 1.1.1 is a bug-fix release. It fixes a couple of bugs
8782 in AltosUI and one firmware bug that affects TeleMetrum
8783 version 1.0 boards. Thanks to Bob Brown for help diagnosing
8784 the Google Earth file export issue, and for suggesting the
8785 addition of the Ground Distance value in the Descent tab.</p>
8786 </div>
8787 <div class="sect3">
8788 <h4 id="_altos_38">H.41.1. AltOS</h4>
8789 <div class="paragraph">
8790 <p>AltOS fixes:</p>
8791 </div>
8792 <div class="ulist">
8793 <ul>
8794 <li>
8795 <p>TeleMetrum v1.0 boards use the AT45DB081D flash
8796 memory part to store flight data, which is different
8797 from later TeleMetrum boards. The AltOS v1.1 driver
8798 for this chip couldn&#8217;t erase memory, leaving it
8799 impossible to delete flight data or update
8800 configuration values. This bug doesn&#8217;t affect newer
8801 TeleMetrum boards, and it doesn&#8217;t affect the safety
8802 of rockets flying version 1.1 firmware.</p>
8803 </li>
8804 </ul>
8805 </div>
8806 </div>
8807 <div class="sect3">
8808 <h4 id="_altosui_11">H.41.2. AltosUI</h4>
8809 <div class="paragraph">
8810 <p>AltosUI new features:</p>
8811 </div>
8812 <div class="ulist">
8813 <ul>
8814 <li>
8815 <p>The “Descent” tab displays the range to the rocket,
8816 which is a combination of the over-the-ground
8817 distance to the rockets current latitude/longitude
8818 and the height of the rocket. As such, it&#8217;s useful
8819 for knowing how far away the rocket is, but
8820 difficult to use when estimating where the rocket
8821 might eventually land. A new “Ground Distance” field
8822 has been added which displays the distance to a spot
8823 right underneath the rocket.</p>
8824 </li>
8825 </ul>
8826 </div>
8827 <div class="paragraph">
8828 <p>AltosUI fixes:</p>
8829 </div>
8830 <div class="ulist">
8831 <ul>
8832 <li>
8833 <p>Creating a Google Earth file (KML) from on-board
8834 flight data (EEPROM) would generate an empty
8835 file. The code responsible for reading the EEPROM
8836 file wasn&#8217;t ever setting the GPS valid bits, and so
8837 the KML export code thought there was no GPS data in
8838 the file.</p>
8839 </li>
8840 <li>
8841 <p>The “Landed” tab was displaying all values in metric
8842 units, even when AltosUI was configured to display
8843 imperial units. Somehow I just missed this tab when
8844 doing the units stuff.</p>
8845 </li>
8846 <li>
8847 <p>Sensor data wasn&#8217;t being displayed for TeleMini
8848 flight computers in Monitor Idle mode, including
8849 things like battery voltage. The code that picked
8850 which kinds of data to fetch from the flight
8851 computer was missing a check for TeleMini when
8852 deciding whether to fetch the analog sensor data.</p>
8853 </li>
8854 </ul>
8855 </div>
8856 <div style="page-break-after: always;"></div>
8857 </div>
8858 </div>
8859 <div class="sect2">
8860 <h3 id="_release_notes_for_version_1_1_2">H.42. Release Notes for Version 1.1</h3>
8861 <div class="paragraph">
8862 <p>Version 1.1 is a minor release. It provides a few new features
8863 in AltosUI and the AltOS firmware and fixes bugs.</p>
8864 </div>
8865 <div class="sect3">
8866 <h4 id="_altos_39">H.42.1. AltOS</h4>
8867 <div class="paragraph">
8868 <p>AltOS Firmware New Features:</p>
8869 </div>
8870 <div class="ulist">
8871 <ul>
8872 <li>
8873 <p>Add apogee-lockout value. Overrides the apogee
8874 detection logic to prevent incorrect apogee charge
8875 firing.</p>
8876 </li>
8877 <li>
8878 <p>Force the radio frequency to 434.550MHz when the
8879 debug clock pin is connected to ground at boot
8880 time. This provides a way to talk to a TeleMini
8881 which is configured to some unknown frequency.</p>
8882 </li>
8883 <li>
8884 <p>Provide RSSI values for Monitor Idle mode. This
8885 makes it easy to check radio range without needing
8886 to go to flight mode.</p>
8887 </li>
8888 </ul>
8889 </div>
8890 <div class="paragraph">
8891 <p>AltOS Fixes:</p>
8892 </div>
8893 <div class="ulist">
8894 <ul>
8895 <li>
8896 <p>Fix a bug where the data reported in telemetry
8897 packets was from 320ms ago.</p>
8898 </li>
8899 <li>
8900 <p>Fix a bug which caused the old received telemetry
8901 packets to be retransmitted over the USB link when
8902 the radio was turned off and back on.</p>
8903 </li>
8904 </ul>
8905 </div>
8906 </div>
8907 <div class="sect3">
8908 <h4 id="_altosui_12">H.42.2. AltosUI</h4>
8909 <div class="paragraph">
8910 <p>AltosUI New Features:</p>
8911 </div>
8912 <div class="ulist">
8913 <ul>
8914 <li>
8915 <p>Make the look-n-feel configurable, providing a choice from
8916 the available options.</p>
8917 </li>
8918 <li>
8919 <p>Add an 'Age' element to mark how long since a
8920 telemetry packet has been received. Useful to
8921 quickly gauge whether communications with the rocket
8922 are still active.</p>
8923 </li>
8924 <li>
8925 <p>Add 'Configure Ground Station' dialog to set the
8926 radio frequency used by a particular TeleDongle
8927 without having to go through the flight monitor UI.</p>
8928 </li>
8929 <li>
8930 <p>Add configuration for the new apogee-lockout
8931 value. A menu provides a list of reasonable values,
8932 or the value can be set by hand.</p>
8933 </li>
8934 <li>
8935 <p>Add Imperial units mode to present data in feet
8936 instead of meters.</p>
8937 </li>
8938 </ul>
8939 </div>
8940 <div class="paragraph">
8941 <p>AltosUI Fixes:</p>
8942 </div>
8943 <div class="ulist">
8944 <ul>
8945 <li>
8946 <p>Fix a bug that caused GPS ready to happen too
8947 quickly. The software was using every telemetry
8948 packet to signal new GPS data, which caused GPS
8949 ready to be signalled after 10 packets instead of 10
8950 GPS updates.</p>
8951 </li>
8952 <li>
8953 <p>Fix Google Earth data export to work with recent
8954 versions. The google earth file loading code got a
8955 lot pickier, requiring some minor white space
8956 changes in the export code.</p>
8957 </li>
8958 <li>
8959 <p>Changed how flight data are downloaded. Now there&#8217;s
8960 an initial dialog asking which flights to download,
8961 and after that finishes, a second dialog comes up
8962 asking which flights to delete.</p>
8963 </li>
8964 <li>
8965 <p>Re-compute time spent in each state for the flight
8966 graph; this figures out the actual boost and landing
8967 times instead of using the conservative values
8968 provide by the flight electronics. This improves the
8969 accuracy of the boost acceleration and main descent
8970 rate computations.</p>
8971 </li>
8972 <li>
8973 <p>Make AltosUI run on Mac OS Lion. The default Java
8974 heap space was dramatically reduced for this release
8975 causing much of the UI to fail randomly. This most
8976 often affected the satellite mapping download and
8977 displays.</p>
8978 </li>
8979 <li>
8980 <p>Change how data are displayed in the 'table' tab of
8981 the flight monitoring window. This eliminates
8982 entries duplicated from the header and adds both
8983 current altitude and pad altitude, which are useful
8984 in 'Monitor Idle' mode.</p>
8985 </li>
8986 </ul>
8987 </div>
8988 <div style="page-break-after: always;"></div>
8989 </div>
8990 </div>
8991 <div class="sect2">
8992 <h3 id="_release_notes_for_version_1_0_1">H.43. Release Notes for Version 1.0.1</h3>
8993 <div class="paragraph">
8994 <p>Version 1.0.1 is a major release, adding support for the
8995 TeleMini device and lots of new AltosUI features</p>
8996 </div>
8997 <div class="sect3">
8998 <h4 id="_altos_40">H.43.1. AltOS</h4>
8999 <div class="paragraph">
9000 <p>AltOS New Features</p>
9001 </div>
9002 <div class="ulist">
9003 <ul>
9004 <li>
9005 <p>Add TeleMini v1.0 support.</p>
9006 </li>
9007 <li>
9008 <p>Support operation of TeleMetrum with the antenna pointing
9009 aft. Previous firmware versions required the antenna to be
9010 pointing upwards, now there is a configuration option
9011 allowing the antenna to point aft, to aid installation in
9012 some airframes.</p>
9013 </li>
9014 <li>
9015 <p>Ability to disable telemetry. For airframes where an antenna
9016 just isn&#8217;t possible, or where radio transmissions might
9017 cause trouble with other electronics, there&#8217;s a
9018 configuration option to disable all telemetry. Note that the
9019 board will still enable the radio link in idle mode.</p>
9020 </li>
9021 <li>
9022 <p>Arbitrary frequency selection. The radios in Altus Metrum
9023 devices can be programmed to a wide range of frequencies, so
9024 instead of limiting devices to 10 pre-selected 'channels',
9025 the new firmware allows the user to choose any frequency in
9026 the 70cm band. Note that the RF matching circuit on the
9027 boards is tuned for around 435MHz, so frequencies far from
9028 that may reduce the available range.</p>
9029 </li>
9030 </ul>
9031 </div>
9032 <div class="paragraph">
9033 <p>AltOS Fixes</p>
9034 </div>
9035 <div class="ulist">
9036 <ul>
9037 <li>
9038 <p>Change telemetry to be encoded in multiple 32-byte
9039 packets. This enables support for TeleMini and other devices
9040 without requiring further updates to the TeleDongle
9041 firmware.</p>
9042 </li>
9043 <li>
9044 <p>Kalman-filter based flight-tracking. The model based sensor
9045 fusion approach of a Kalman filter means that AltOS now
9046 computes apogee much more accurately than before, generally
9047 within a fraction of a second. In addition, this approach
9048 allows the baro-only TeleMini device to correctly identify
9049 Mach transitions, avoiding the error-prone selection of a
9050 Mach delay.</p>
9051 </li>
9052 </ul>
9053 </div>
9054 </div>
9055 <div class="sect3">
9056 <h4 id="_altosui_application_6">H.43.2. AltosUI Application</h4>
9057 <div class="paragraph">
9058 <p>AltosUI New Features</p>
9059 </div>
9060 <div class="ulist">
9061 <ul>
9062 <li>
9063 <p>Add main/apogee voltage graphs to the data
9064 plot. This provides a visual indication if the
9065 igniters fail before being fired.</p>
9066 </li>
9067 <li>
9068 <p>Scan for altimeter devices by watching the defined
9069 telemetry frequencies. This avoids the problem of
9070 remembering what frequency a device was configured
9071 to use, which is especially important with TeleMini
9072 which does not include a USB connection.</p>
9073 </li>
9074 <li>
9075 <p>Monitor altimeter state in "Idle" mode. This
9076 provides much of the information presented in the
9077 "Pad" dialog from the Monitor Flight command,
9078 monitoring the igniters, battery and GPS status
9079 withing requiring the flight computer to be armed
9080 and ready for flight.</p>
9081 </li>
9082 <li>
9083 <p>Pre-load map images from home. For those launch
9084 sites which don&#8217;t provide free Wi-Fi, this allows
9085 you to download the necessary satellite images
9086 given the location of the launch site. A list of
9087 known launch sites is maintained at altusmetrum.org
9088 which AltosUI downloads to populate a menu; if
9089 you&#8217;ve got a launch site not on that list, please
9090 send the name of it, latitude and longitude along
9091 with a link to the web site of the controlling club
9092 to the altusmetrum mailing list.</p>
9093 </li>
9094 <li>
9095 <p>Flight statistics are now displayed in the Graph
9096 data window. These include max height/speed/accel,
9097 average descent rates and a few other bits of
9098 information. The Graph Data window can now be
9099 reached from the 'Landed' tab in the Monitor Flight
9100 window so you can immediately see the results of a
9101 flight.</p>
9102 </li>
9103 </ul>
9104 </div>
9105 <div class="paragraph">
9106 <p>AltosUI Changes</p>
9107 </div>
9108 <div class="ulist">
9109 <ul>
9110 <li>
9111 <p>Wait for altimeter when using packet mode. Instead
9112 of quicly timing out when trying to initialize a
9113 packet mode configuration connection, AltosUI now
9114 waits indefinitely for the remote device to appear,
9115 providing a cancel button should the user get
9116 bored. This is necessary as the TeleMini can only be
9117 placed in "Idle" mode if AltosUI is polling it.</p>
9118 </li>
9119 </ul>
9120 </div>
9121 <div style="page-break-after: always;"></div>
9122 </div>
9123 </div>
9124 <div class="sect2">
9125 <h3 id="_release_notes_for_version_0_9_2">H.44. Release Notes for Version 0.9.2</h3>
9126 <div class="paragraph">
9127 <p>Version 0.9.2 is an AltosUI bug-fix release, with no firmware
9128 changes.</p>
9129 </div>
9130 <div class="sect3">
9131 <h4 id="_altosui_13">H.44.1. AltosUI</h4>
9132 <div class="paragraph">
9133 <p>AltosUI fixes:</p>
9134 </div>
9135 <div class="ulist">
9136 <ul>
9137 <li>
9138 <p>Fix plotting problems due to missing file in the Mac
9139 OS install image.</p>
9140 </li>
9141 <li>
9142 <p>Always read whole eeprom blocks, mark empty records
9143 invalid, display parsing errors to user.</p>
9144 </li>
9145 <li>
9146 <p>Add software version to Configure AltosUI dialog</p>
9147 </li>
9148 </ul>
9149 </div>
9150 <div style="page-break-after: always;"></div>
9151 </div>
9152 </div>
9153 <div class="sect2">
9154 <h3 id="_release_notes_for_version_0_9">H.45. Release Notes for Version 0.9</h3>
9155 <div class="paragraph">
9156 <p>Version 0.9 adds a few new firmware features and accompanying
9157 AltosUI changes, along with new hardware support.</p>
9158 </div>
9159 <div class="sect3">
9160 <h4 id="_altos_41">H.45.1. AltOS</h4>
9161 <div class="ulist">
9162 <ul>
9163 <li>
9164 <p>Support for TeleMetrum v1.1 hardware. Sources for the flash
9165 memory part used in v1.0 dried up, so v1.1 uses a different
9166 part which required a new driver and support for explicit
9167 flight log erasing.</p>
9168 </li>
9169 <li>
9170 <p>Multiple flight log support. This stores more than one
9171 flight log in the on-board flash memory. It also requires
9172 the user to explicitly erase flights so that you won&#8217;t lose
9173 flight logs just because you fly the same board twice in one
9174 day.</p>
9175 </li>
9176 <li>
9177 <p>Telemetry support for devices with serial number &gt;= 256.
9178 Previous versions used a telemetry packet format that
9179 provided only 8 bits for the device serial number. This
9180 change requires that both ends of the telemetry link be
9181 running the 0.9 firmware or they will not communicate.</p>
9182 </li>
9183 </ul>
9184 </div>
9185 </div>
9186 <div class="sect3">
9187 <h4 id="_altosui_application_7">H.45.2. AltosUI Application</h4>
9188 <div class="ulist">
9189 <ul>
9190 <li>
9191 <p>Support for telemetry format changes.</p>
9192 </li>
9193 <li>
9194 <p>Support for multiple flight logs.</p>
9195 </li>
9196 </ul>
9197 </div>
9198 <div style="page-break-after: always;"></div>
9199 </div>
9200 </div>
9201 <div class="sect2">
9202 <h3 id="_release_notes_for_version_0_8">H.46. Release Notes for Version 0.8</h3>
9203 <div class="paragraph">
9204 <p>Version 0.8 offers a major upgrade in the AltosUI
9205 interface.</p>
9206 </div>
9207 <div class="sect3">
9208 <h4 id="_altosui_application_8">H.46.1. AltosUI Application:</h4>
9209 <div class="ulist">
9210 <ul>
9211 <li>
9212 <p>Post-flight graphing tool. This lets you explore the
9213 behaviour of your rocket after flight with a scroll-able and
9214 zoom-able chart showing the altitude, speed and acceleration
9215 of the airframe along with events recorded by the flight
9216 computer. You can export graphs to PNG files, or print them
9217 directly.</p>
9218 </li>
9219 <li>
9220 <p>Real-time moving map which overlays the in-progress flight
9221 on satellite imagery fetched from Google Maps. This lets you
9222 see in pictures where your rocket has landed, allowing you
9223 to plan recovery activities more accurately.</p>
9224 </li>
9225 <li>
9226 <p>Wireless recovery system testing. Prep your rocket for
9227 flight and test fire the deployment charges to make sure
9228 things work as expected. All without threading wires through
9229 holes in your airframe.</p>
9230 </li>
9231 <li>
9232 <p>Optimized flight status displays. Each flight state now has
9233 it&#8217;s own custom 'tab' in the flight monitoring window so you
9234 can focus on the most important details. Pre-flight, the
9235 system shows a set of red/green status indicators for
9236 battery voltage, apogee/main igniter continutity and GPS
9237 reception. Wait until they&#8217;re all green and your rocket is
9238 ready for flight. There are also tabs for ascent, descent
9239 and landing along with the original tabular view of the
9240 data.</p>
9241 </li>
9242 <li>
9243 <p>Monitor multiple flights simultaneously. If you have more
9244 than one TeleDongle, you can monitor a flight with each one
9245 on the same computer.</p>
9246 </li>
9247 <li>
9248 <p>Automatic flight monitoring at startup. Plug TeleDongle into
9249 the machine before starting AltosUI and it will
9250 automatically connect to it and prepare to monitor a flight.</p>
9251 </li>
9252 <li>
9253 <p>Exports Google Earth flight tracks. Using the Keyhole Markup
9254 Language (.kml) file format, this provides a 3D view of your
9255 rocket flight through the Google Earth program.</p>
9256 </li>
9257 </ul>
9258 </div>
9259 <div style="page-break-after: always;"></div>
9260 </div>
9261 </div>
9262 <div class="sect2">
9263 <h3 id="_release_notes_for_version_0_7_1">H.47. Release Notes for Version 0.7.1</h3>
9264 <div class="paragraph">
9265 <p>Version 0.7.1 is the first release containing our new
9266 cross-platform Java-based user interface.</p>
9267 </div>
9268 <div class="sect3">
9269 <h4 id="_altosui_application_9">H.47.1. AltosUI Application</h4>
9270 <div class="ulist">
9271 <ul>
9272 <li>
9273 <p>Receive and log telemetry from a connected TeleDongle
9274 device. All data received is saved to log files named with
9275 the current date and the connected rocket serial and flight
9276 numbers. There is no mode in which telemetry data will not
9277 be saved.</p>
9278 </li>
9279 <li>
9280 <p>Download logged data from TeleMetrum devices, either through
9281 a direct USB connection or over the air through a TeleDongle
9282 device.</p>
9283 </li>
9284 <li>
9285 <p>Configure a TeleMetrum device, setting the radio channel,
9286 callsign, apogee delay and main deploy height. This can be
9287 done through either a USB connection or over a radio link
9288 via a TeleDongle device.</p>
9289 </li>
9290 <li>
9291 <p>Replay a flight in real-time. This takes a saved telemetry
9292 log or eeprom download and replays it through the user
9293 interface so you can relive your favorite rocket flights.</p>
9294 </li>
9295 <li>
9296 <p>Reprogram Altus Metrum devices. Using an Altus Metrum device
9297 connected via USB, another Altus Metrum device can be
9298 reprogrammed using the supplied programming cable between
9299 the two devices.</p>
9300 </li>
9301 <li>
9302 <p>Export Flight data to a comma-separated-values file. This
9303 takes either telemetry or on-board flight data and generates
9304 data suitable for use in external applications. All data is
9305 exported using standard units so that no device-specific
9306 knowledge is needed to handle the data.</p>
9307 </li>
9308 <li>
9309 <p>Speak to you during the flight. Instead of spending the
9310 flight hunched over your laptop looking at the screen, enjoy
9311 the view while the computer tells you what’s going on up
9312 there. During ascent, you hear the current flight state and
9313 altitude information. During descent, you get azimuth,
9314 elevation and range information to try and help you find
9315 your rocket in the air. Once on the ground, the direction
9316 and distance are reported.</p>
9317 </li>
9318 </ul>
9319 </div>
9320 </div>
9321 </div>
9322 </div>
9323 </div>
9324 </div>
9325 <div id="footer">
9326 <div id="footer-text">
9327 Version v1.9.14<br>
9328 Last updated 2023-02-02 13:06:56 -0700
9329 </div>
9330 </div>
9331 </body>
9332 </html>