update docs
[web/altusmetrum] / AltOS / doc / altusmetrum.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta name="generator" content="Asciidoctor 2.0.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.16,</span>
24 <span id="revdate">27 Apr 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_16">H.1. Release Notes for Version 1.9.16</a></li>
188 <li><a href="#_release_notes_for_version_1_9_15">H.2. Release Notes for Version 1.9.15</a></li>
189 <li><a href="#_release_notes_for_version_1_9_14">H.3. Release Notes for Version 1.9.14</a></li>
190 <li><a href="#_release_notes_for_version_1_9_13">H.4. Release Notes for Version 1.9.13</a></li>
191 <li><a href="#_release_notes_for_version_1_9_12">H.5. Release Notes for Version 1.9.12</a></li>
192 <li><a href="#_release_notes_for_version_1_9_11">H.6. Release Notes for Version 1.9.11</a></li>
193 <li><a href="#_release_notes_for_version_1_9_10">H.7. Release Notes for Version 1.9.10</a></li>
194 <li><a href="#_release_notes_for_version_1_9_9">H.8. Release Notes for Version 1.9.9</a></li>
195 <li><a href="#_release_notes_for_version_1_9_8">H.9. Release Notes for Version 1.9.8</a></li>
196 <li><a href="#_release_notes_for_version_1_9_7">H.10. Release Notes for Version 1.9.7</a></li>
197 <li><a href="#_release_notes_for_version_1_9_6">H.11. Release Notes for Version 1.9.6</a></li>
198 <li><a href="#_release_notes_for_version_1_9_5">H.12. Release Notes for Version 1.9.5</a></li>
199 <li><a href="#_release_notes_for_version_1_9_4">H.13. Release Notes for Version 1.9.4</a></li>
200 <li><a href="#_release_notes_for_version_1_9_3">H.14. Release Notes for Version 1.9.3</a></li>
201 <li><a href="#_release_notes_for_version_1_9_2">H.15. Release Notes for Version 1.9.2</a></li>
202 <li><a href="#_release_notes_for_version_1_9_1">H.16. Release Notes for Version 1.9.1</a></li>
203 <li><a href="#_release_notes_for_version_1_9">H.17. Release Notes for Version 1.9</a></li>
204 <li><a href="#_release_notes_for_version_1_8_7">H.18. Release Notes for Version 1.8.7</a></li>
205 <li><a href="#_release_notes_for_version_1_8_6">H.19. Release Notes for Version 1.8.6</a></li>
206 <li><a href="#_release_notes_for_version_1_8_5">H.20. Release Notes for Version 1.8.5</a></li>
207 <li><a href="#_release_notes_for_version_1_8_4">H.21. Release Notes for Version 1.8.4</a></li>
208 <li><a href="#_release_notes_for_version_1_8_3">H.22. Release Notes for Version 1.8.3</a></li>
209 <li><a href="#_release_notes_for_version_1_8_2">H.23. Release Notes for Version 1.8.2</a></li>
210 <li><a href="#_release_notes_for_version_1_8_1">H.24. Release Notes for Version 1.8.1</a></li>
211 <li><a href="#_release_notes_for_version_1_8">H.25. Release Notes for Version 1.8</a></li>
212 <li><a href="#_release_notes_for_version_1_7">H.26. Release Notes for Version 1.7</a></li>
213 <li><a href="#_release_notes_for_version_1_6_8">H.27. Release Notes for Version 1.6.8</a></li>
214 <li><a href="#_release_notes_for_version_1_6_5">H.28. Release Notes for Version 1.6.5</a></li>
215 <li><a href="#_release_notes_for_version_1_6_4">H.29. Release Notes for Version 1.6.4</a></li>
216 <li><a href="#_release_notes_for_version_1_6_3">H.30. Release Notes for Version 1.6.3</a></li>
217 <li><a href="#_release_notes_for_version_1_6_2">H.31. Release Notes for Version 1.6.2</a></li>
218 <li><a href="#_release_notes_for_version_1_6_1">H.32. Release Notes for Version 1.6.1</a></li>
219 <li><a href="#_release_notes_for_version_1_6">H.33. Release Notes for Version 1.6</a></li>
220 <li><a href="#_release_notes_for_version_1_5">H.34. Release Notes for Version 1.5</a></li>
221 <li><a href="#_release_notes_for_version_1_4_2">H.35. Release Notes for Version 1.4.2</a></li>
222 <li><a href="#_release_notes_for_version_1_4_1">H.36. Release Notes for Version 1.4.1</a></li>
223 <li><a href="#_release_notes_for_version_1_4">H.37. Release Notes for Version 1.4</a></li>
224 <li><a href="#_release_notes_for_version_1_3_2">H.38. Release Notes for Version 1.3.2</a></li>
225 <li><a href="#_release_notes_for_version_1_3_1">H.39. Release Notes for Version 1.3.1</a></li>
226 <li><a href="#_release_notes_for_version_1_3">H.40. Release Notes for Version 1.3</a></li>
227 <li><a href="#_release_notes_for_version_1_2_1">H.41. Release Notes for Version 1.2.1</a></li>
228 <li><a href="#_release_notes_for_version_1_2">H.42. Release Notes for Version 1.2</a></li>
229 <li><a href="#_release_notes_for_version_1_1">H.43. Release Notes for Version 1.1</a></li>
230 <li><a href="#_release_notes_for_version_1_1_2">H.44. Release Notes for Version 1.1</a></li>
231 <li><a href="#_release_notes_for_version_1_0_1">H.45. Release Notes for Version 1.0.1</a></li>
232 <li><a href="#_release_notes_for_version_0_9_2">H.46. Release Notes for Version 0.9.2</a></li>
233 <li><a href="#_release_notes_for_version_0_9">H.47. Release Notes for Version 0.9</a></li>
234 <li><a href="#_release_notes_for_version_0_8">H.48. Release Notes for Version 0.8</a></li>
235 <li><a href="#_release_notes_for_version_0_7_1">H.49. Release Notes for Version 0.7.1</a></li>
236 </ul>
237 </li>
238 </ul>
239 </div>
240 </div>
241 <div id="content">
242 <div id="preamble">
243 <div class="sectionbody">
244 <div id="logo" class="imageblock">
245 <div class="content">
246 <a class="image" href="https://altusmetrum.org"><img src="altusmetrum-oneline.svg" alt="Altus Metrum"></a>
247 </div>
248 </div>
249 </div>
250 </div>
251 <div class="sect1">
252 <h2 id="_license">License</h2>
253 <div class="sectionbody">
254 <div class="paragraph">
255 <p>Copyright © 2023 Bdale Garbee and Keith Packard</p>
256 </div>
257 <div class="paragraph">
258 <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>
259 </div>
260 </div>
261 </div>
262 <div class="sect1">
263 <h2 id="_acknowledgments">Acknowledgments</h2>
264 <div class="sectionbody">
265 <div class="paragraph">
266 <p>Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing “The
267 Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
268 Kit” which formed the basis of the original Getting Started chapter
269 in this manual.  Bob was one of our first customers for a production
270 TeleMetrum, and his continued enthusiasm and contributions
271 are immensely gratifying and highly appreciated!</p>
272 </div>
273 <div class="paragraph">
274 <p>And thanks to Anthony (AJ) Towns for major contributions including
275 the AltosUI graphing and site map code and associated documentation.
276 Free software means that our customers and friends can become our
277 collaborators, and we certainly appreciate this level of
278 contribution!</p>
279 </div>
280 <div class="paragraph">
281 <p>Have fun using these products, and we hope to meet all of you
282 out on the rocket flight line somewhere.</p>
283 </div>
284 <div class="verseblock">
285 <pre class="content">Bdale Garbee, KB0G
286 NAR #87103, TRA #12201</pre>
287 </div>
288 <div class="verseblock">
289 <pre class="content">Keith Packard, K7WQ
290 NAR #88757, TRA #12200</pre>
291 </div>
292 </div>
293 </div>
294 <div class="sect1">
295 <h2 id="_introduction_and_overview">1. Introduction and Overview</h2>
296 <div class="sectionbody">
297 <div class="paragraph">
298 <p>Welcome to the Altus Metrum community!  Our circuits and software reflect
299 our passion for both hobby rocketry and Free Software.  We hope their
300 capabilities and performance will delight you in every way, but by
301 releasing all of our hardware and software designs under open licenses,
302 we also hope to empower you to take as active a role in our collective
303 future as you wish!</p>
304 </div>
305 <div class="paragraph">
306 <p>Our goal is to include in this document all of the information required
307 to successfully configure and use Altus Metrum products.  But
308 documentation is a lot like software in that it can contain "bugs",
309 and can probably always be improved!  If you have questions that
310 aren&#8217;t answered in this manual, or just need a little help figuring
311 things out, we strongly suggest joining the Altus Metrum user email
312 list, which you can do by visiting
313 <a href="https://lists.gag.com/mailman/listinfo/altusmetrum" class="bare">https://lists.gag.com/mailman/listinfo/altusmetrum</a>.  There&#8217;s a lot
314 of useful information in the mailing list archives!</p>
315 </div>
316 <div class="paragraph">
317 <p>The first device created for our community was TeleMetrum, a dual
318 deploy altimeter with fully integrated GPS and radio telemetry
319 as standard features, and a “companion interface” that will
320 support optional capabilities in the future. The later versions
321 of TeleMetrum, v2 and newer, have all of the same features but with
322 improved sensors and radio to offer increased performance.</p>
323 </div>
324 <div class="paragraph">
325 <p>Our second device was TeleMini, a dual deploy altimeter with
326 radio telemetry and radio direction finding. The first version
327 of this device was only 13mm by 38mm (½ inch by 1½ inches) and
328 could fit easily in an 18mm air-frame. The latest version, v3.0,
329 includes a beeper, higher power radio, extended on-board
330 flight logging and an improved barometric sensor.</p>
331 </div>
332 <div class="paragraph">
333 <p>TeleMega is our most sophisticated device, including six pyro
334 channels (four of which are fully programmable), integrated GPS,
335 integrated gyroscopes for staging/air-start inhibit and high
336 performance telemetry.</p>
337 </div>
338 <div class="paragraph">
339 <p>EasyMini is a dual-deploy altimeter with logging and built-in
340 USB data download.</p>
341 </div>
342 <div class="paragraph">
343 <p>EasyMega is essentially a TeleMega board with the GPS receiver
344 and telemetry transmitter removed. It offers the same 6 pyro
345 channels and integrated gyroscopes for staging/air-start inhibit.</p>
346 </div>
347 <div class="paragraph">
348 <p>TeleDongle v0.2 was our first ground station, providing a USB to RF
349 interfaces for communicating with the altimeters. Combined with
350 your choice of antenna and notebook computer, TeleDongle and our
351 associated user interface software form a complete ground
352 station capable of logging and displaying in-flight telemetry,
353 aiding rocket recovery, then processing and archiving flight
354 data for analysis and review. The latest version, TeleDongle
355 v3, has all new electronics with a higher performance radio
356 for improved range.</p>
357 </div>
358 <div class="paragraph">
359 <p>For a slightly more portable ground station experience that also
360 provides direct rocket recovery support, TeleBT offers flight
361 monitoring and data logging using a  Bluetooth™ connection between
362 the receiver and an Android device that has the AltosDroid
363 application installed from the Google Play store.</p>
364 </div>
365 <div class="paragraph">
366 <p>More products will be added to the Altus Metrum family over time, and
367 we currently envision that this will be a single, comprehensive manual
368 for the entire product family.</p>
369 </div>
370 </div>
371 </div>
372 <div class="sect1">
373 <h2 id="_getting_started">2. Getting Started</h2>
374 <div class="sectionbody">
375 <div class="paragraph">
376 <p>The first thing to do after you open the box is to hook up a
377 battery and charge it if necessary.</p>
378 </div>
379 <div class="sect2">
380 <h3 id="_batteries">2.1. Batteries</h3>
381 <div class="paragraph">
382 <p>For TeleMetrum, TeleMega and EasyMega, the battery can be charged by plugging it into the
383 corresponding socket of the device and then using the USB
384 cable to plug the flight computer into your computer&#8217;s USB socket. The
385 on-board circuitry will charge the battery whenever it is plugged
386 in, because the on-off switch does NOT control the
387 charging circuitry.
388 The Lithium Polymer
389 EasyTimer,
390 TeleMini and
391 EasyMini battery can be charged by disconnecting it
392 from the board and plugging it into a standalone
393 battery charger such as <a href="http://altusmetrum.org/LipoCharger">LipoCharger</a>, and
394 connecting that via a USB cable to a laptop or other
395 USB power source.</p>
396 </div>
397 <div class="paragraph">
398 <p>You can also choose to use another battery with
399 EasyTimer and
400 EasyMini, anything supplying between 4 and 12 volts should
401 work fine (like a standard 9V battery), but if you are planning
402 to fire pyro charges, ground testing is required to verify that
403 the battery supplies enough current to fire your chosen e-matches.</p>
404 </div>
405 <div class="admonitionblock note">
406 <table>
407 <tr>
408 <td class="icon">
409 <img src="./images/icons/note.svg" alt="Note">
410 </td>
411 <td class="content">
412 <div class="paragraph">
413 <p>On TeleMetrum v1 boards, when the GPS chip is initially
414 searching for satellites, TeleMetrum will consume more current
415 than it pulls from the USB port, so the battery must be
416 attached in order to get satellite lock.  Once GPS is locked,
417 the current consumption goes back down enough to enable charging
418 while running. So it&#8217;s a good idea to fully charge the battery
419 as your first item of business so there is no issue getting and
420 maintaining satellite lock.  The yellow charge indicator led
421 will go out when the battery is nearly full and the charger goes
422 to trickle charge. It can take several hours to fully recharge a
423 deeply discharged battery.</p>
424 </div>
425 <div class="paragraph">
426 <p>TeleMetrum v2 or newer, TeleMega and EasyMega use a
427 higher power battery charger, allowing them to charge
428 the battery while running the board at maximum
429 power. When the battery is charging, or when the board
430 is consuming a lot of power, the red LED will be
431 lit. When the battery is fully charged, the green LED
432 will be lit. When the battery is damaged or missing,
433 both LEDs will be lit, which appears yellow.</p>
434 </div>
435 </td>
436 </tr>
437 </table>
438 </div>
439 </div>
440 <div class="sect2">
441 <h3 id="_ground_station_hardware">2.2. Ground Station Hardware</h3>
442 <div class="paragraph">
443 <p>There are two ground stations available, the TeleDongle USB to
444 RF interface and the TeleBT Bluetooth/USB to RF interface.  If
445 you plug either of these in to your Mac or Linux computer it should
446 “just work”, showing up as a serial port device.  Windows systems need
447 driver information that is part of the AltOS download to know that the
448 existing USB modem driver will work.  We therefore recommend installing
449 our software before plugging in TeleDongle if you are using a Windows
450 computer.  If you are using an older version of Linux and are having
451 problems, try moving to a fresher kernel (2.6.33 or
452 newer).</p>
453 </div>
454 </div>
455 <div class="sect2">
456 <h3 id="_linuxmacwindows_ground_station_software">2.3. Linux/Mac/Windows Ground Station Software</h3>
457 <div class="paragraph">
458 <p>Next you should obtain and install the AltOS software.
459 The AltOS distribution includes the AltosUI ground
460 station program, current firmware images for all of
461 the hardware, and a number of standalone utilities
462 that are rarely needed.  Pre-built binary packages are
463 available for Linux, Microsoft Windows, Mac OSX. Full
464 source code and build instructions are also
465 available. The latest version may always be downloaded
466 from <a href="http://altusmetrum.org/AltOS" class="bare">http://altusmetrum.org/AltOS</a></p>
467 </div>
468 </div>
469 <div class="sect2">
470 <h3 id="_android_ground_station_software">2.4. Android Ground Station Software</h3>
471 <div class="paragraph">
472 <p>TeleBT can also connect to an Android device over
473 BlueTooth or USB. The
474 <a href="https://play.google.com/store/apps/details?id=org.altusmetrum.AltosDroid">AltosDroid
475 Android application</a> is available from the
476 <a href="https://play.google.com">Google Play system</a>.</p>
477 </div>
478 <div class="paragraph">
479 <p>You don&#8217;t need a data plan to use AltosDroid, but
480 without network access, you&#8217;ll want to download
481 offline map data before wandering away from the
482 network.</p>
483 </div>
484 </div>
485 </div>
486 </div>
487 <div class="sect1">
488 <h2 id="_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</h2>
489 <div class="sectionbody">
490 <div class="paragraph">
491 <p>Here are general instructions for hooking up an Altus Metrum
492 flight computer. Instructions specific to each model will be
493 found in the section devoted to that model below.</p>
494 </div>
495 <div class="sect2">
496 <h3 id="_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</h3>
497 <div class="paragraph">
498 <p>To prevent electrical interference from affecting the
499 operation of the flight computer, it&#8217;s important to always
500 twist pairs of wires connected to the board. Twist the switch
501 leads, the pyro leads and the battery leads. This reduces
502 interference through a mechanism called common mode rejection.</p>
503 </div>
504 </div>
505 <div class="sect2">
506 <h3 id="_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</h3>
507 <div class="paragraph">
508 <p>All Altus Metrum flight computers have a two pin JST PH
509 series connector to connect up a single-cell Lithium Polymer
510 cell (3.7V nominal). You can purchase matching batteries
511 from the Altus Metrum store, or other vendors, or you can
512 make your own. Pin 1 of the connector is positive, pin 2 is
513 negative. Spark Fun sells a cable with the connector
514 attached, which they call a
515 <a href="https://www.sparkfun.com/products/9914">JST Jumper 2 Wire Assembly</a></p>
516 </div>
517 <div class="admonitionblock warning">
518 <table>
519 <tr>
520 <td class="icon">
521 <img src="./images/icons/warning.svg" alt="Warning">
522 </td>
523 <td class="content">
524 Many RC vendors also sell lithium polymer batteries with
525 this same connector. All that we have found use the opposite
526 polarity, and if you use them that way, you will damage or
527 destroy the flight computer.
528 </td>
529 </tr>
530 </table>
531 </div>
532 </div>
533 <div class="sect2">
534 <h3 id="_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</h3>
535 <div class="paragraph">
536 <p>Altus Metrum flight computers always have two screws for
537 each pyro charge. This means you shouldn&#8217;t need to put two
538 wires into a screw terminal or connect leads from pyro
539 charges together externally.</p>
540 </div>
541 <div class="paragraph">
542 <p>On the flight computer, one lead from each charge is hooked
543 to the positive battery terminal through the power switch.
544 The other lead is connected through the pyro circuit, which
545 is connected to the negative battery terminal when the pyro
546 circuit is fired.</p>
547 </div>
548 </div>
549 <div class="sect2">
550 <h3 id="_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</h3>
551 <div class="paragraph">
552 <p>Altus Metrum flight computers need an external power switch
553 to turn them on. This disconnects both the computer and the
554 pyro charges from the battery, preventing the charges from
555 firing when in the Off position. The switch is in-line with
556 the positive battery terminal.</p>
557 </div>
558 </div>
559 <div class="sect2">
560 <h3 id="_understanding_beeps">3.5. Understanding Beeps</h3>
561 <div class="paragraph">
562 <p>Altus Metrum flight computers include a beeper to
563 provide information about the state of the system.
564 TeleMini doesn&#8217;t have room for a beeper, so instead it
565 uses an LED, which works the same, except for every
566 beep is replaced with the flash of the LED.</p>
567 </div>
568 <div class="paragraph">
569 <p>Here&#8217;s a short summary of all of the modes and the
570 beeping
571 (or flashing, in the case of TeleMini v1)
572 that accompanies each mode. In the description of the
573 beeping pattern, “dit” means a short beep while "dah"
574 means a long beep (three times as long). “Brap” means
575 a long dissonant tone.</p>
576 </div>
577 <table class="tableblock frame-all grid-all stretch">
578 <caption class="title">Table 1. AltOS Modes</caption>
579 <colgroup>
580 <col style="width: 16.6666%;">
581 <col style="width: 16.6666%;">
582 <col style="width: 33.3333%;">
583 <col style="width: 33.3335%;">
584 </colgroup>
585 <tbody>
586 <tr>
587 <td class="tableblock halign-left valign-top"><p class="tableblock">Mode Name</p></td>
588 <td class="tableblock halign-left valign-top"><p class="tableblock">Abbreviation</p></td>
589 <td class="tableblock halign-left valign-top"><p class="tableblock">Beeps</p></td>
590 <td class="tableblock halign-left valign-top"><p class="tableblock">Description</p></td>
591 </tr>
592 <tr>
593 <td class="tableblock halign-left valign-top"><p class="tableblock">Startup</p></td>
594 <td class="tableblock halign-left valign-top"><p class="tableblock">S</p></td>
595 <td class="tableblock halign-left valign-top"><p class="tableblock">battery voltage in decivolts</p></td>
596 <td class="tableblock halign-left valign-top"><p class="tableblock">Calibrating sensors, detecting orientation.</p></td>
597 </tr>
598 <tr>
599 <td class="tableblock halign-left valign-top"><p class="tableblock">Idle</p></td>
600 <td class="tableblock halign-left valign-top"><p class="tableblock">I</p></td>
601 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
602 <td class="tableblock halign-left valign-top"><p class="tableblock">Ready to accept commands over USB
603 or radio link.</p></td>
604 </tr>
605 <tr>
606 <td class="tableblock halign-left valign-top"><p class="tableblock">Pad</p></td>
607 <td class="tableblock halign-left valign-top"><p class="tableblock">P</p></td>
608 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dah dit</p></td>
609 <td class="tableblock halign-left valign-top"><p class="tableblock">Waiting for launch. Not listening for commands.</p></td>
610 </tr>
611 <tr>
612 <td class="tableblock halign-left valign-top"><p class="tableblock">Boost</p></td>
613 <td class="tableblock halign-left valign-top"><p class="tableblock">B</p></td>
614 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dit</p></td>
615 <td class="tableblock halign-left valign-top"><p class="tableblock">Accelerating upwards.</p></td>
616 </tr>
617 <tr>
618 <td class="tableblock halign-left valign-top"><p class="tableblock">Fast</p></td>
619 <td class="tableblock halign-left valign-top"><p class="tableblock">F</p></td>
620 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dah dit</p></td>
621 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, but moving faster than 200m/s.</p></td>
622 </tr>
623 <tr>
624 <td class="tableblock halign-left valign-top"><p class="tableblock">Coast</p></td>
625 <td class="tableblock halign-left valign-top"><p class="tableblock">C</p></td>
626 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dah dit</p></td>
627 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, moving slower than 200m/s</p></td>
628 </tr>
629 <tr>
630 <td class="tableblock halign-left valign-top"><p class="tableblock">Drogue</p></td>
631 <td class="tableblock halign-left valign-top"><p class="tableblock">D</p></td>
632 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit</p></td>
633 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending after apogee. Above main height.</p></td>
634 </tr>
635 <tr>
636 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
637 <td class="tableblock halign-left valign-top"><p class="tableblock">M</p></td>
638 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dah</p></td>
639 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending. Below main height.</p></td>
640 </tr>
641 <tr>
642 <td class="tableblock halign-left valign-top"><p class="tableblock">Landed</p></td>
643 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
644 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dit dit</p></td>
645 <td class="tableblock halign-left valign-top"><p class="tableblock">Stable altitude for at least ten seconds.</p></td>
646 </tr>
647 <tr>
648 <td class="tableblock halign-left valign-top"><p class="tableblock">Sensor error</p></td>
649 <td class="tableblock halign-left valign-top"><p class="tableblock">X</p></td>
650 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dah</p></td>
651 <td class="tableblock halign-left valign-top"><p class="tableblock">Error detected during sensor calibration.</p></td>
652 </tr>
653 </tbody>
654 </table>
655 <div class="paragraph">
656 <p>Here&#8217;s a summary of all of the Pad and Idle mode
657 indications. In Idle mode, you&#8217;ll hear one of these
658 just once after the two short dits indicating idle
659 mode. In Pad mode, after the dit dah dah dit
660 indicating Pad mode, you&#8217;ll hear these once every five
661 seconds.</p>
662 </div>
663 <table class="tableblock frame-all grid-all stretch">
664 <caption class="title">Table 2. Pad/Idle Indications</caption>
665 <colgroup>
666 <col style="width: 20%;">
667 <col style="width: 20%;">
668 <col style="width: 60%;">
669 </colgroup>
670 <thead>
671 <tr>
672 <th class="tableblock halign-left valign-top">Name</th>
673 <th class="tableblock halign-left valign-top">Beeps</th>
674 <th class="tableblock halign-left valign-top">Description</th>
675 </tr>
676 </thead>
677 <tbody>
678 <tr>
679 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
680 <td class="tableblock halign-left valign-top"><p class="tableblock">brap</p></td>
681 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
682 </tr>
683 <tr>
684 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
685 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
686 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
687 </tr>
688 <tr>
689 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
690 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
691 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
692 </tr>
693 <tr>
694 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
695 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
696 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
697 </tr>
698 <tr>
699 <td class="tableblock halign-left valign-top"><p class="tableblock">Storage Full</p></td>
700 <td class="tableblock halign-left valign-top"><p class="tableblock">warble</p></td>
701 <td class="tableblock halign-left valign-top"><p class="tableblock">On-board data logging storage is full. This will
702 not prevent the flight computer from safely
703 controlling the flight or transmitting telemetry
704 signals, but no record of the flight will be
705 stored in on-board flash.</p></td>
706 </tr>
707 <tr>
708 <td class="tableblock halign-left valign-top"><p class="tableblock">Additional Igniters</p></td>
709 <td class="tableblock halign-left valign-top"><p class="tableblock">four very short beeps</p></td>
710 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity indication for the additional pyro
711 channels on TeleMega, EasyMega and EasyTimer. One high tone for
712 no continuity, one low tone for continuity. On TeleMega and EasyMegay, these are
713 produced after the continuity indicators for the two
714 primary igniter channels.</p></td>
715 </tr>
716 </tbody>
717 </table>
718 <div class="paragraph">
719 <p>For devices with a radio transmitter, in addition to
720 the digital and APRS telemetry signals, you can also
721 receive audio tones with a standard amateur
722 70cm FM receiver. While on the pad, you will hear
723 igniter status once every five seconds.</p>
724 </div>
725 <table class="tableblock frame-all grid-all stretch">
726 <caption class="title">Table 3. Pad Radio Indications</caption>
727 <colgroup>
728 <col style="width: 20%;">
729 <col style="width: 20%;">
730 <col style="width: 60%;">
731 </colgroup>
732 <thead>
733 <tr>
734 <th class="tableblock halign-left valign-top">Name</th>
735 <th class="tableblock halign-left valign-top">Beeps</th>
736 <th class="tableblock halign-left valign-top">Description</th>
737 </tr>
738 </thead>
739 <tbody>
740 <tr>
741 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
742 <td class="tableblock halign-left valign-top"><p class="tableblock">½ second tone</p></td>
743 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
744 </tr>
745 <tr>
746 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
747 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
748 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
749 </tr>
750 <tr>
751 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
752 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
753 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
754 </tr>
755 <tr>
756 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
757 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
758 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
759 </tr>
760 </tbody>
761 </table>
762 <div class="paragraph">
763 <p>During ascent, the tones will be muted to allow the
764 telemetry data to consume the full radio bandwidth.</p>
765 </div>
766 <div class="paragraph">
767 <p>During descent and after landing, a ½ second tone will
768 be transmitted every five seconds. This can be used to
769 find the rocket using RDF techniques when the signal
770 is too weak to receive GPS information via telemetry
771 or APRS.</p>
772 </div>
773 </div>
774 <div class="sect2">
775 <h3 id="_turning_on_the_power">3.6. Turning On the Power</h3>
776 <div class="paragraph">
777 <p>Connect a battery and power switch and turn the switch
778 to "on". The flight computer will signal power on by
779 reporting the battery voltage and then perform an internal self
780 test and sensor calibration.</p>
781 </div>
782 <div class="paragraph">
783 <p>Once the self test and calibration are complete, there
784 are two modes that an Altus Metrum flight computer can
785 operate in:</p>
786 </div>
787 <div class="dlist">
788 <dl>
789 <dt class="hdlist1">Flight/Pad</dt>
790 <dd>
791 <p>The flight computer is waiting to detect
792 launch and then fly the rocket. In this mode, the USB
793 link is
794 disabled, and the radio goes into transmit-only mode.
795 The only way to get out of this
796 mode is to power the flight computer down. See below for how to get the flight
797 computer to come up in Flight/Pad mode at power on.</p>
798 </dd>
799 <dt class="hdlist1">Idle</dt>
800 <dd>
801 <p>The flight computer is ready to communicate over USB
802 and in packet mode over the radio.
803 You can configure
804 the flight computer, download data or display
805 the current state. See below for how to get the flight
806 computer to come up in Idle mode at power on.</p>
807 </dd>
808 </dl>
809 </div>
810 <div class="paragraph">
811 <p>For flight computers with accelerometers (TeleMetrum,
812 EasyMega, TeleMega and EasyTimer), the mode is selected by the
813 orientation of the board during the self test
814 interval. If the board is pointing upwards as if ready
815 to fly, it will enter Flight/Pad mode. Otherwise, it will
816 enter Idle mode.</p>
817 </div>
818 <div class="paragraph">
819 <p>For EasyMini, if the USB cable is connected to a
820 computer, it will enter Idle mode. Otherwise, it will
821 enter Flight/Pad mode.</p>
822 </div>
823 <div class="paragraph">
824 <p>For TeleMini v1.0, if a packet link is waiting to
825 connect when the device is powered on, it will enter
826 Idle mode, otherwise it will enter Flight/Pad mode.</p>
827 </div>
828 <div class="paragraph">
829 <p>You can see in <a href="#_understanding_beeps">Understanding Beeps</a>
830 how to tell which mode the flight computer is in.</p>
831 </div>
832 </div>
833 <div class="sect2">
834 <h3 id="_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</h3>
835 <div class="paragraph">
836 <p>You can use an active switch circuit, such as the
837 Featherweight Magnetic Switch, with any Altus Metrum
838 flight computer. These require three connections, one to
839 the battery, one to the positive power input on the flight
840 computer and one to ground. Find instructions on how to
841 hook these up for each flight computer below. Then follow
842 the instructions that come with your active switch to
843 connect it up.</p>
844 </div>
845 </div>
846 <div class="sect2">
847 <h3 id="_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</h3>
848 <div class="paragraph">
849 <p>As mentioned above in <a href="#_hooking_up_pyro_charges">Hooking Up Pyro Charges</a>, one
850 lead for each of the pyro charges is connected through
851 the power switch directly to the positive battery
852 terminal. The other lead is connected to the pyro
853 circuit, which connects it to the negative battery
854 terminal when the pyro circuit is fired. The pyro
855 circuit on all of the flight computers is designed to
856 handle up to 16V.</p>
857 </div>
858 <div class="paragraph">
859 <p>To use a separate pyro battery, connect the negative pyro
860 battery terminal to the flight computer ground terminal,
861 the the switched positive battery terminal to the igniter
862 and the other
863 igniter lead to the negative pyro terminal on the flight
864 computer. When the pyro channel fires, it will complete the
865 circuit between the negative pyro terminal and the ground
866 terminal, firing the igniter. Specific instructions on how
867 to hook this up for each flight computer will be found
868 in the section below for that flight computer.</p>
869 </div>
870 <div class="paragraph">
871 <p>Note that you must include a switch in the positive lead of
872 the pyro battery for safety, as the on-board power switch
873 circuit on our product only controls current flow from the
874 the primary or system battery!</p>
875 </div>
876 </div>
877 <div class="sect2">
878 <h3 id="_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</h3>
879 <div class="paragraph">
880 <p>EasyMini
881 and EasyTimer are
882 designed to use either a
883 lithium polymer battery or any other battery producing
884 between 4 and 12 volts, such as a rectangular 9V
885 battery.</p>
886 </div>
887 <div class="admonitionblock warning">
888 <table>
889 <tr>
890 <td class="icon">
891 <img src="./images/icons/warning.svg" alt="Warning">
892 </td>
893 <td class="content">
894 TeleMini,
895 TeleMega, EasyMega and TeleMetrum are only designed to
896 operate off a single-cell Lithium Polymer battery and
897 cannot be used with any other kind. Connecting a
898 different kind of battery to any of these will destroy
899 the board.
900 </td>
901 </tr>
902 </table>
903 </div>
904 </div>
905 <div class="sect2">
906 <h3 id="_using_packet_link_mode">3.10. Using Packet Link Mode</h3>
907 <div class="paragraph">
908 <p>All AltusMetrum flight computers that have a radio can
909 communicate with the ground station software for
910 configuration and other operations using the Packet
911 Link mode. This uses radio communication instead of a
912 USB cable. To set this up, the ground station software
913 must be configured to the correct data rate, frequency
914 and callsign.</p>
915 </div>
916 <div class="paragraph">
917 <p>You can monitor Packet Link mode from TeleBT or
918 TeleDongle by watching the LEDs. Each time the device
919 transmits, the red LED will flash. When the link is
920 busy, or when the link is not working, the device will
921 transmit 10 times per second, so the LED will flash
922 rapidly. When the link is working and there is no data
923 to send, the link will flash once per second, and the
924 LED will flash more slowly.</p>
925 </div>
926 </div>
927 </div>
928 </div>
929 <div class="sect1">
930 <h2 id="_telemetrum">4. TeleMetrum</h2>
931 <div class="sectionbody">
932 <div class="imageblock">
933 <div class="content">
934 <img src="telemetrum-v2.0-th.jpg" alt="telemetrum v2.0 th" width="400">
935 </div>
936 <div class="title">Figure 1. TeleMetrum v2 Board</div>
937 </div>
938 <div class="imageblock">
939 <div class="content">
940 <img src="telemetrum-v1.1-thside.jpg" alt="telemetrum v1.1 thside" width="400">
941 </div>
942 <div class="title">Figure 2. TeleMetrum v1 Board</div>
943 </div>
944 <div class="paragraph">
945 <p>TeleMetrum is a 1 inch by 2¾ inch circuit board.  It was designed to
946 fit inside coupler for 29mm air-frame tubing, but using it in a tube that
947 small in diameter may require some creativity in mounting and wiring
948 to succeed!  The presence of an accelerometer means TeleMetrum should
949 be aligned along the flight axis of the airframe, and by default the ¼
950 wave UHF wire antenna should be on the nose-cone end of the board.  The
951 antenna wire is about 7 inches long, and wiring for a power switch and
952 the e-matches for apogee and main ejection charges depart from the
953 fin can end of the board, meaning an ideal “simple” avionics
954 bay for TeleMetrum should have at least 10 inches of interior length.</p>
955 </div>
956 <div class="paragraph">
957 <p>There are two generations of the TeleMetrum design. The
958 major changes after v1 generation are:</p>
959 </div>
960 <div class="ulist">
961 <ul>
962 <li>
963 <p>uBlox GPS chip certified for altitude records</p>
964 </li>
965 <li>
966 <p>Higher power radio (40mW vs 10mW)</p>
967 </li>
968 <li>
969 <p>APRS support</p>
970 </li>
971 </ul>
972 </div>
973 <div class="paragraph">
974 <p>Otherwise, they&#8217;re the same size, with mounting holes and
975 screw terminals in the same position.</p>
976 </div>
977 <div class="sect2">
978 <h3 id="_telemetrum_screw_terminals">4.1. TeleMetrum Screw Terminals</h3>
979 <div class="paragraph">
980 <p>TeleMetrum has six screw terminals on the end of the board
981 opposite the telemetry antenna. Two are for the power
982 switch, and two each for the apogee and main igniter
983 circuits. Using the picture above and starting from the top,
984 the terminals are as follows:</p>
985 </div>
986 <table class="tableblock frame-all grid-all stretch">
987 <caption class="title">Table 4. TeleMetrum Screw Terminals</caption>
988 <colgroup>
989 <col style="width: 13.3333%;">
990 <col style="width: 20%;">
991 <col style="width: 66.6667%;">
992 </colgroup>
993 <thead>
994 <tr>
995 <th class="tableblock halign-left valign-top">Terminal #</th>
996 <th class="tableblock halign-left valign-top">Terminal Name</th>
997 <th class="tableblock halign-left valign-top">Description</th>
998 </tr>
999 </thead>
1000 <tbody>
1001 <tr>
1002 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1003 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1004 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1005 </tr>
1006 <tr>
1007 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1008 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1009 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1010 </tr>
1011 <tr>
1012 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1013 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1014 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1015 </tr>
1016 <tr>
1017 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1018 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1019 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1020 </tr>
1021 <tr>
1022 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
1023 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1024 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1025 </tr>
1026 <tr>
1027 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
1028 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1029 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1030 </tr>
1031 </tbody>
1032 </table>
1033 </div>
1034 <div class="sect2">
1035 <h3 id="_using_a_separate_pyro_battery_with_telemetrum">4.2. Using a Separate Pyro Battery with TeleMetrum</h3>
1036 <div class="paragraph">
1037 <p>As described above, using an external pyro battery involves
1038 connecting the negative battery terminal to the flight
1039 computer ground, connecting the positive battery terminal to
1040 one of the igniter leads and connecting the other igniter
1041 lead to the per-channel pyro circuit connection.</p>
1042 </div>
1043 <div class="paragraph">
1044 <p>To connect the negative battery terminal to the TeleMetrum
1045 ground, insert a small piece of wire, 24 to 28 gauge
1046 stranded, into the GND hole just above the screw terminal
1047 strip and solder it in place.</p>
1048 </div>
1049 <div class="paragraph">
1050 <p>Connecting the switched positive battery terminal to the pyro
1051 charges must be done separate from TeleMetrum, by soldering
1052 them together or using some other connector. Note that you
1053 must include a switch in the positive lead from the pyro
1054 battery for safety!</p>
1055 </div>
1056 <div class="paragraph">
1057 <p>The other lead from each pyro charge is then inserted into
1058 the appropriate per-pyro channel screw terminal (terminal 4
1059 for the Main charge, terminal 6 for the Apogee charge).</p>
1060 </div>
1061 </div>
1062 <div class="sect2">
1063 <h3 id="_using_an_active_switch_with_telemetrum">4.3. Using an Active Switch with TeleMetrum</h3>
1064 <div class="paragraph">
1065 <p>As explained above, an external active switch requires three
1066 connections, one to the positive battery terminal, one to
1067 the flight computer positive input and one to ground.</p>
1068 </div>
1069 <div class="paragraph">
1070 <p>The positive battery terminal is available on screw terminal
1071 2, the positive flight computer input is on terminal 1. To
1072 hook a lead to ground, solder a piece of wire, 24 to 28
1073 gauge stranded, to the GND hole just above terminal 1.</p>
1074 </div>
1075 </div>
1076 </div>
1077 </div>
1078 <div class="sect1">
1079 <h2 id="_telemini">5. TeleMini</h2>
1080 <div class="sectionbody">
1081 <div class="imageblock">
1082 <div class="content">
1083 <img src="telemini-v3.0-top.jpg" alt="telemini v3.0 top" width="400">
1084 </div>
1085 <div class="title">Figure 3. TeleMini v3 Board</div>
1086 </div>
1087 <div class="imageblock">
1088 <div class="content">
1089 <img src="telemini-v3.0-bottom.jpg" alt="telemini v3.0 bottom" width="400">
1090 </div>
1091 </div>
1092 <div class="paragraph">
1093 <p>TeleMini v3 is 0.5 inches by 1.67 inches.  It was
1094 designed to fit inside an 18mm air-frame tube, but using it in
1095 a tube that small in diameter may require some creativity in
1096 mounting and wiring to succeed!  Since there is no
1097 accelerometer, TeleMini can be mounted in any convenient
1098 orientation.  The default ¼ wave UHF wire antenna attached to
1099 the center of one end of the board is about 7 inches long. Screw
1100 terminals for the power switch are located in the
1101 middle of the board. Screw terminals for the e-matches for
1102 apogee and main ejection charges depart from the other end of
1103 the board, meaning an ideal “simple” avionics bay for TeleMini
1104 should have at least 9 inches of interior length.</p>
1105 </div>
1106 <div class="sect2">
1107 <h3 id="_telemini_v3_screw_terminals">5.1. TeleMini v3 Screw Terminals</h3>
1108 <div class="paragraph">
1109 <p>TeleMini v3 has four screw terminals on the end of the
1110 board opposite the telemetry antenna. Two are for the apogee
1111 and two are for main igniter circuits. Another two
1112 screw terminals are located in the middle of the board
1113 for the power switch.  Using the
1114 picture above and starting from the top for the pyro terminals
1115 and from the left for the power switch terminals, the
1116 connections are as follows:</p>
1117 </div>
1118 <table class="tableblock frame-all grid-all stretch">
1119 <caption class="title">Table 5. TeleMini v3 Screw Terminals</caption>
1120 <colgroup>
1121 <col style="width: 13.3333%;">
1122 <col style="width: 20%;">
1123 <col style="width: 66.6667%;">
1124 </colgroup>
1125 <thead>
1126 <tr>
1127 <th class="tableblock halign-left valign-top">Terminal #</th>
1128 <th class="tableblock halign-left valign-top">Terminal Name</th>
1129 <th class="tableblock halign-left valign-top">Description</th>
1130 </tr>
1131 </thead>
1132 <tbody>
1133 <tr>
1134 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1135 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1136 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1137 </tr>
1138 <tr>
1139 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1140 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1141 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1142 </tr>
1143 <tr>
1144 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1145 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1146 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1147 </tr>
1148 <tr>
1149 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1150 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1151 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1152 </tr>
1153 <tr>
1154 <td class="tableblock halign-left valign-top"><p class="tableblock">Left</p></td>
1155 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1156 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1157 </tr>
1158 <tr>
1159 <td class="tableblock halign-left valign-top"><p class="tableblock">Right</p></td>
1160 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1161 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1162 </tr>
1163 </tbody>
1164 </table>
1165 </div>
1166 <div class="sect2">
1167 <h3 id="_using_a_separate_pyro_battery_with_telemini_v3">5.2. Using a Separate Pyro Battery with TeleMini v3</h3>
1168 <div class="paragraph">
1169 <p>As described above, using an external pyro battery involves
1170 connecting the negative battery terminal to the flight
1171 computer ground, connecting the switched positive battery
1172 terminal to one of the igniter leads and connecting the other
1173 igniter lead to the per-channel pyro circuit connection.
1174 Because there is no solid ground connection to use on
1175 TeleMini, this is not recommended.</p>
1176 </div>
1177 <div class="paragraph">
1178 <p>The only available ground connection on TeleMini v3 are
1179 the two mounting holes next to the telemetry
1180 antenna. Somehow connect a small piece of wire to one of
1181 those holes and hook it to the negative pyro battery terminal.</p>
1182 </div>
1183 <div class="paragraph">
1184 <p>Connecting the positive battery terminal to the pyro
1185 charges must be done separate from TeleMini v3, by soldering
1186 them together or using some other connector.  Note that you
1187 must include a switch in the pyro battery positive lead for
1188 safety!</p>
1189 </div>
1190 <div class="paragraph">
1191 <p>The other lead from each pyro charge is then inserted into
1192 the appropriate per-pyro channel screw terminal (terminal 3 for the
1193 Main charge, terminal 1 for the Apogee charge).</p>
1194 </div>
1195 </div>
1196 <div class="sect2">
1197 <h3 id="_using_an_active_switch_with_telemini_v3">5.3. Using an Active Switch with TeleMini v3</h3>
1198 <div class="paragraph">
1199 <p>As explained above, an external active switch requires three
1200 connections, one to the positive battery terminal, one to
1201 the flight computer positive input and one to ground. Again,
1202 because TeleMini doesn&#8217;t have any good ground connection,
1203 this is not recommended.</p>
1204 </div>
1205 <div class="paragraph">
1206 <p>The positive battery terminal is available on the Right
1207 power switch wire, the positive flight computer input is on
1208 the left power switch wire. Hook a lead to either of the
1209 mounting holes for a ground connection.</p>
1210 </div>
1211 </div>
1212 <div class="sect2">
1213 <h3 id="_using_packet_link_mode_with_telemini">5.4. Using Packet Link Mode with TeleMini</h3>
1214 <div class="paragraph">
1215 <p>After TeleMini powers up, it will check to see if some
1216 device is attempting to communicate with it using
1217 Packet Link Mode. If so, it will switch to idle mode
1218 and start communicating. To switch to flight mode,
1219 reboot the device either over the radio link or by
1220 powering it off and back on.</p>
1221 </div>
1222 <div class="paragraph">
1223 <p>If no ground station is attempting to communicate
1224 using Packet Link Mode, TeleMini will enter pad mode
1225 and prepare for flight.</p>
1226 </div>
1227 <div class="paragraph">
1228 <p>The sequence of operations to use Packet Link Mode
1229 with TeleMini is:</p>
1230 </div>
1231 <div class="olist arabic">
1232 <ol class="arabic">
1233 <li>
1234 <p>Configure the ground station data rate, frequency
1235 and callsign to match the TeleMini settings.</p>
1236 </li>
1237 <li>
1238 <p>Start Packet Link Mode in the ground station by
1239 selecting the desired operation (Safe Flight Data,
1240 Configure Altimeter, Fire Igniter or Monitor
1241 Idle). Select the TeleBT or TeleDongle device. The
1242 red LED should begin flashing rapidly.</p>
1243 </li>
1244 <li>
1245 <p>Turn on TeleMini. You should see the red LED flash
1246 very rapidly during the initial communication burst,
1247 but it should then slow down when the link is idle.</p>
1248 </li>
1249 </ol>
1250 </div>
1251 <div class="paragraph">
1252 <p>Once TeleMini is in Idle mode, it will stay in that
1253 mode until rebooted. That means you can stop one
1254 Packet Link operation, wait a while and start another
1255 Packet Link operation.</p>
1256 </div>
1257 </div>
1258 <div class="sect2">
1259 <h3 id="_forcing_telemini_radio_parameters_to_known_defaults">5.5. Forcing TeleMini radio parameters to known defaults</h3>
1260 <div class="paragraph">
1261 <p>If you don&#8217;t know what the TeleMini frequency and
1262 callsign settings are, you can temporarily force it
1263 back to the original default values (frequency
1264 434.550MHz, callsign N0CALL) by connecting a wire
1265 between hole 3 and hole 6 on the debug connector. Hole
1266 3 has the square pad around it, hole 6 is the one
1267 nearest the MS5607 baro sensor, which is a rectangular
1268 component with a metal cap that has two holes in it.</p>
1269 </div>
1270 <div class="paragraph">
1271 <p>Once TeleMini has been powered up with this wire
1272 connected, the wire may be removed. The radio
1273 parameters will stay set to these default values until
1274 changed by the user or when the device is rebooted.</p>
1275 </div>
1276 </div>
1277 <div class="sect2">
1278 <h3 id="_telemini_v1">5.6. TeleMini v1</h3>
1279 <div class="paragraph">
1280 <p>TeleMini v1 is the earlier version of this product. It
1281 has a lower-power radio, less storage, no beeper and
1282 soldered-in wires instead of screw terminals for the
1283 power switch.</p>
1284 </div>
1285 <div class="imageblock">
1286 <div class="content">
1287 <img src="telemini-v1-top.jpg" alt="telemini v1 top" width="400">
1288 </div>
1289 <div class="title">Figure 4. TeleMini v1 Board</div>
1290 </div>
1291 </div>
1292 </div>
1293 </div>
1294 <div class="sect1">
1295 <h2 id="_easymini">6. EasyMini</h2>
1296 <div class="sectionbody">
1297 <div class="imageblock">
1298 <div class="content">
1299 <img src="easymini-top.jpg" alt="easymini top" width="400">
1300 </div>
1301 <div class="title">Figure 5. EasyMini Board</div>
1302 </div>
1303 <div class="paragraph">
1304 <p>EasyMini is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1305 designed to fit in a 24mm coupler tube.</p>
1306 </div>
1307 <div class="paragraph">
1308 <p>You usually don&#8217;t need to configure EasyMini at all; it&#8217;s set
1309 up to do dual-deployment with an event at apogee to separate
1310 the airframe and deploy a drogue and another event at 250m
1311 (820ft) to deploy the main. Install EasyMini in your airframe,
1312 hook up a battery, igniters and a power switch and you&#8217;re
1313 ready to fly.</p>
1314 </div>
1315 <div class="sect2">
1316 <h3 id="_easymini_screw_terminals">6.1. EasyMini Screw Terminals</h3>
1317 <div class="paragraph">
1318 <p>EasyMini has two sets of four screw terminals near one end of the
1319 board. Using the picture
1320 above, the top four have connections for the main pyro
1321 circuit and an external battery and the bottom four have
1322 connections for the apogee pyro circuit and the power
1323 switch. Counting from the left, the connections are as follows:</p>
1324 </div>
1325 <table class="tableblock frame-all grid-all stretch">
1326 <caption class="title">Table 6. EasyMini Screw Terminals</caption>
1327 <colgroup>
1328 <col style="width: 13.3333%;">
1329 <col style="width: 20%;">
1330 <col style="width: 66.6667%;">
1331 </colgroup>
1332 <thead>
1333 <tr>
1334 <th class="tableblock halign-left valign-top">Terminal #</th>
1335 <th class="tableblock halign-left valign-top">Terminal Name</th>
1336 <th class="tableblock halign-left valign-top">Description</th>
1337 </tr>
1338 </thead>
1339 <tbody>
1340 <tr>
1341 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1342 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1343 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1344 </tr>
1345 <tr>
1346 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1347 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1348 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1349 </tr>
1350 <tr>
1351 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1352 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1353 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1354 </tr>
1355 <tr>
1356 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1357 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1358 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1359 </tr>
1360 <tr>
1361 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1362 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1363 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1364 </tr>
1365 <tr>
1366 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1367 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1368 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1369 </tr>
1370 <tr>
1371 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1372 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1373 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1374 </tr>
1375 <tr>
1376 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1377 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1378 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1379 </tr>
1380 </tbody>
1381 </table>
1382 </div>
1383 <div class="sect2">
1384 <h3 id="_connecting_a_battery_to_easymini">6.2. Connecting A Battery To EasyMini</h3>
1385 <div class="paragraph">
1386 <p>There are two possible battery connections on
1387 EasyMini. You can use either method; both feed
1388 through the power switch terminals.</p>
1389 </div>
1390 <div class="paragraph">
1391 <p>One battery connection is the standard Altus Metrum
1392 white JST plug. This mates with single-cell Lithium
1393 Polymer batteries sold by Altus Metrum.</p>
1394 </div>
1395 <div class="paragraph">
1396 <p>The other is a pair of screw terminals marked 'Battery
1397 +' and 'Battery -'. Connect a battery from 4 to 12
1398 volts to these terminals, being careful to match polarity.</p>
1399 </div>
1400 </div>
1401 <div class="sect2">
1402 <h3 id="_charging_lithium_batteries">6.3. Charging Lithium Batteries</h3>
1403 <div class="paragraph">
1404 <p>Because EasyMini allows for batteries other than the
1405 standard Altus Metrum Lithium Polymer cells, it cannot
1406 incorporate a battery charger circuit. Therefore, when
1407 using a Litium Polymer cell, you&#8217;ll need an external
1408 charger. These are available from Altus Metrum, or
1409 from Spark Fun.</p>
1410 </div>
1411 </div>
1412 <div class="sect2">
1413 <h3 id="_using_a_separate_pyro_battery_with_easymini">6.4. Using a Separate Pyro Battery with EasyMini</h3>
1414 <div class="paragraph">
1415 <p>As described above, using an external pyro battery involves
1416 connecting the negative battery terminal to the flight
1417 computer ground, connecting the positive battery terminal to
1418 one of the igniter leads and connecting the other igniter
1419 lead to the per-channel pyro circuit connection.</p>
1420 </div>
1421 <div class="paragraph">
1422 <p>To connect the negative pyro battery terminal to EasyMini
1423 ground, connect it to the negative external battery
1424 connection, top terminal 4.</p>
1425 </div>
1426 <div class="paragraph">
1427 <p>Connecting the switched positive battery terminal to the pyro
1428 charges must be done separate from EasyMini, by soldering
1429 them together or using some other connector.  Note that for
1430 safety, you must put a switch between the pyro battery and
1431 the rest of the circuit!</p>
1432 </div>
1433 <div class="paragraph">
1434 <p>The other lead from each pyro charge is then inserted into
1435 the appropriate per-pyro channel screw terminal (top
1436 terminal 1 for the Main charge, bottom terminal 1 for the
1437 Apogee charge).</p>
1438 </div>
1439 </div>
1440 <div class="sect2">
1441 <h3 id="_using_an_active_switch_with_easymini">6.5. Using an Active Switch with EasyMini</h3>
1442 <div class="paragraph">
1443 <p>As explained above, an external active switch requires three
1444 connections, one to the positive battery terminal, one to
1445 the flight computer positive input and one to ground. Use
1446 the negative external battery connection, top terminal 4 for
1447 ground.</p>
1448 </div>
1449 <div class="paragraph">
1450 <p>The positive battery terminal is available on bottom
1451 terminal 4, the positive flight computer input is on the
1452 bottom terminal 3.</p>
1453 </div>
1454 </div>
1455 </div>
1456 </div>
1457 <div class="sect1">
1458 <h2 id="_telemega">7. TeleMega</h2>
1459 <div class="sectionbody">
1460 <div class="imageblock">
1461 <div class="content">
1462 <img src="telemega-v1.0-top.jpg" alt="telemega v1.0 top" width="400">
1463 </div>
1464 <div class="title">Figure 6. TeleMega Board</div>
1465 </div>
1466 <div class="paragraph">
1467 <p>TeleMega is a 1¼ inch by 3¼ inch circuit board. It was
1468 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1469 TeleMega has an accelerometer and so it must be mounted so that
1470 the board is aligned with the flight axis. It can be mounted
1471 either antenna up or down.</p>
1472 </div>
1473 <div class="paragraph">
1474 <p>TeleMega v2.0 has a few minor changes from v1.0:</p>
1475 </div>
1476 <div class="ulist">
1477 <ul>
1478 <li>
1479 <p>Companion connector matches EasyMega functions</p>
1480 </li>
1481 <li>
1482 <p>Serial port connector replaced with servo connector with
1483 support for up to 4 PWM channels.</p>
1484 </li>
1485 <li>
1486 <p>Radio switched from cc1120 to cc1200.</p>
1487 </li>
1488 </ul>
1489 </div>
1490 <div class="paragraph">
1491 <p>None of these affect operation using the stock firmware, but
1492 they do mean that the device needs different firmware to
1493 operate correctly, so make sure you load the right firmware
1494 when reflashing the device.</p>
1495 </div>
1496 <div class="sect2">
1497 <h3 id="_telemega_screw_terminals">7.1. TeleMega Screw Terminals</h3>
1498 <div class="paragraph">
1499 <p>TeleMega has two sets of nine screw terminals on the end of
1500 the board opposite the telemetry antenna. They are as follows:</p>
1501 </div>
1502 <table class="tableblock frame-all grid-all stretch">
1503 <caption class="title">Table 7. TeleMega Screw Terminals</caption>
1504 <colgroup>
1505 <col style="width: 13.3333%;">
1506 <col style="width: 20%;">
1507 <col style="width: 66.6667%;">
1508 </colgroup>
1509 <thead>
1510 <tr>
1511 <th class="tableblock halign-left valign-top">Terminal #</th>
1512 <th class="tableblock halign-left valign-top">Terminal Name</th>
1513 <th class="tableblock halign-left valign-top">Description</th>
1514 </tr>
1515 </thead>
1516 <tbody>
1517 <tr>
1518 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1519 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1520 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1521 </tr>
1522 <tr>
1523 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1524 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1525 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1526 </tr>
1527 <tr>
1528 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1529 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1530 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1531 </tr>
1532 <tr>
1533 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1534 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1535 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1536 </tr>
1537 <tr>
1538 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1539 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1540 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1541 </tr>
1542 <tr>
1543 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1544 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1545 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1546 </tr>
1547 <tr>
1548 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1549 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1550 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1551 </tr>
1552 <tr>
1553 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1554 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1555 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1556 </tr>
1557 <tr>
1558 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1559 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1560 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1561 </tr>
1562 <tr>
1563 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1564 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1565 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1566 </tr>
1567 <tr>
1568 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1569 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1570 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1571 </tr>
1572 <tr>
1573 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1574 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1575 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1576 </tr>
1577 <tr>
1578 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1579 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1580 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1581 </tr>
1582 <tr>
1583 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1584 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1585 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1586 </tr>
1587 <tr>
1588 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1589 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1590 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1591 </tr>
1592 <tr>
1593 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1594 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1595 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1596 </tr>
1597 <tr>
1598 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1599 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1600 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1601 </tr>
1602 <tr>
1603 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1604 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1605 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1606 </tr>
1607 </tbody>
1608 </table>
1609 </div>
1610 <div class="sect2">
1611 <h3 id="_using_a_separate_pyro_battery_with_telemega">7.2. Using a Separate Pyro Battery with TeleMega</h3>
1612 <div class="paragraph">
1613 <p>TeleMega provides explicit support for an external pyro
1614 battery. All that is required is to remove the jumper
1615 between the lipo terminal (Bottom 3) and the pyro terminal
1616 (Bottom 2). Then hook the negative pyro battery terminal to
1617 ground (Bottom 1) and the switched positive pyro battery to
1618 the pyro battery input (Bottom 2). Note that you must include
1619 a switch between the pyro battery and the board for safety,
1620 as the on-board power switch circuit only supports the primary
1621 battery!  You can then use the existing pyro screw
1622 terminals to hook up all of the pyro charges.</p>
1623 </div>
1624 </div>
1625 <div class="sect2">
1626 <h3 id="_using_only_one_battery_with_telemega">7.3. Using Only One Battery With TeleMega</h3>
1627 <div class="paragraph">
1628 <p>Because TeleMega has built-in support for a separate pyro
1629 battery, if you want to fly with just one battery running
1630 both the computer and firing the charges, you need to
1631 connect the flight computer battery to the pyro
1632 circuit. TeleMega has two screw terminals for this—hook a
1633 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1634 (Bottom 2).</p>
1635 </div>
1636 </div>
1637 <div class="sect2">
1638 <h3 id="_using_an_active_switch_with_telemega">7.4. Using an Active Switch with TeleMega</h3>
1639 <div class="paragraph">
1640 <p>As explained above, an external active switch requires three
1641 connections, one to the positive battery terminal, one to
1642 the flight computer positive input and one to ground.</p>
1643 </div>
1644 <div class="paragraph">
1645 <p>The positive battery terminal is available on Top terminal
1646 1, the positive flight computer input is on Top terminal
1647 2. Ground is on Top terminal 3.</p>
1648 </div>
1649 </div>
1650 </div>
1651 </div>
1652 <div class="sect1">
1653 <h2 id="_easymega">8. EasyMega</h2>
1654 <div class="sectionbody">
1655 <div class="imageblock">
1656 <div class="content">
1657 <img src="easymega-v1.0-top.jpg" alt="easymega v1.0 top" width="400">
1658 </div>
1659 <div class="title">Figure 7. EasyMega Board</div>
1660 </div>
1661 <div class="paragraph">
1662 <p>EasyMega is a 1¼ inch by 2¼ inch circuit board. It was
1663 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1664 EasyMega has an accelerometer and so it must be mounted so that
1665 the board is aligned with the flight axis. It can be mounted
1666 either antenna up or down.</p>
1667 </div>
1668 <div class="sect2">
1669 <h3 id="_easymega_screw_terminals">8.1. EasyMega Screw Terminals</h3>
1670 <div class="paragraph">
1671 <p>EasyMega has two sets of nine screw terminals on the end of
1672 the board opposite the telemetry antenna. They are as follows:</p>
1673 </div>
1674 <table class="tableblock frame-all grid-all stretch">
1675 <caption class="title">Table 8. EasyMega Screw Terminals</caption>
1676 <colgroup>
1677 <col style="width: 13.3333%;">
1678 <col style="width: 20%;">
1679 <col style="width: 66.6667%;">
1680 </colgroup>
1681 <thead>
1682 <tr>
1683 <th class="tableblock halign-left valign-top">Terminal #</th>
1684 <th class="tableblock halign-left valign-top">Terminal Name</th>
1685 <th class="tableblock halign-left valign-top">Description</th>
1686 </tr>
1687 </thead>
1688 <tbody>
1689 <tr>
1690 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1691 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1692 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1693 </tr>
1694 <tr>
1695 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1696 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1697 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1698 </tr>
1699 <tr>
1700 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1701 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1702 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1703 </tr>
1704 <tr>
1705 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1706 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1707 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1708 </tr>
1709 <tr>
1710 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1711 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1712 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1713 </tr>
1714 <tr>
1715 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1716 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1717 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1718 </tr>
1719 <tr>
1720 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1721 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1722 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1723 </tr>
1724 <tr>
1725 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1726 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1727 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1728 </tr>
1729 <tr>
1730 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1731 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1732 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1733 </tr>
1734 <tr>
1735 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1736 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1737 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1738 </tr>
1739 <tr>
1740 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1741 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1742 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1743 </tr>
1744 <tr>
1745 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1746 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1747 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1748 </tr>
1749 <tr>
1750 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1751 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1752 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1753 </tr>
1754 <tr>
1755 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1756 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1757 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1758 </tr>
1759 <tr>
1760 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1761 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1762 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1763 </tr>
1764 <tr>
1765 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1766 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1767 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1768 </tr>
1769 <tr>
1770 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1771 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1772 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1773 </tr>
1774 <tr>
1775 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1776 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1777 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1778 </tr>
1779 </tbody>
1780 </table>
1781 </div>
1782 <div class="sect2">
1783 <h3 id="_using_a_separate_pyro_battery_with_easymega">8.2. Using a Separate Pyro Battery with EasyMega</h3>
1784 <div class="paragraph">
1785 <p>EasyMega provides explicit support for an external pyro
1786 battery. All that is required is to remove the jumper
1787 between the lipo terminal (Bottom 3) and the pyro terminal
1788 (Bottom 2). Then hook the negative pyro battery terminal to
1789 ground (Bottom 1) and the switched positive pyro battery to
1790 the pyro battery input (Bottom 2). Note that you must include
1791 a switch between the pyro battery and the board for safety,
1792 as the on-board power switch circuit only supports the primary
1793 battery!  You can then use the existing pyro screw
1794 terminals to hook up all of the pyro charges.</p>
1795 </div>
1796 </div>
1797 <div class="sect2">
1798 <h3 id="_using_only_one_battery_with_easymega">8.3. Using Only One Battery With EasyMega</h3>
1799 <div class="paragraph">
1800 <p>Because EasyMega has built-in support for a separate pyro
1801 battery, if you want to fly with just one battery running
1802 both the computer and firing the charges, you need to
1803 connect the flight computer battery to the pyro
1804 circuit. EasyMega has two screw terminals for this—hook a
1805 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1806 (Bottom 2).</p>
1807 </div>
1808 </div>
1809 <div class="sect2">
1810 <h3 id="_using_an_active_switch_with_easymega">8.4. Using an Active Switch with EasyMega</h3>
1811 <div class="paragraph">
1812 <p>As explained above, an external active switch requires three
1813 connections, one to the positive battery terminal, one to
1814 the flight computer positive input and one to ground.</p>
1815 </div>
1816 <div class="paragraph">
1817 <p>The positive battery terminal is available on Top terminal
1818 1, the positive flight computer input is on Top terminal
1819 2. Ground is on Top terminal 3.</p>
1820 </div>
1821 </div>
1822 </div>
1823 </div>
1824 <div class="sect1">
1825 <h2 id="_easytimer">9. EasyTimer</h2>
1826 <div class="sectionbody">
1827 <div class="imageblock">
1828 <div class="content">
1829 <img src="easytimer.jpg" alt="easytimer" width="400">
1830 </div>
1831 <div class="title">Figure 8. EasyTimer Board</div>
1832 </div>
1833 <div class="paragraph">
1834 <p>EasyTimer is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1835 designed to fit in a 24mm coupler tube.</p>
1836 </div>
1837 <div class="paragraph">
1838 <p>EasyTimer is designed to control events during ascent. It has
1839 an accelerometer and gyroscope that can measure acceleration
1840 and rotation and compute speed and tilt angle. EasyTimer has
1841 two pyro channels which can be configured to fire at various
1842 points during flight. Because EasyTimer has no barometric
1843 sensor, it cannot be used to fire recovery charges at apogee
1844 or during descent. EasyTimer is configured using the AltosUI
1845 application which is available for Linux, Mac OS X and Windows.</p>
1846 </div>
1847 <div class="sect2">
1848 <h3 id="_easytimer_screw_terminals">9.1. EasyTimer Screw Terminals</h3>
1849 <div class="paragraph">
1850 <p>EasyTimer has two sets of four screw terminals near
1851 one end of the board. Using the picture above, the top
1852 four have connections for pyro channel B and an
1853 external battery and the bottom four have connections
1854 for pyro circuit A and the power switch. Counting from
1855 the left, the connections are as follows:</p>
1856 </div>
1857 <table class="tableblock frame-all grid-all stretch">
1858 <caption class="title">Table 9. EasyTimer Screw Terminals</caption>
1859 <colgroup>
1860 <col style="width: 13.3333%;">
1861 <col style="width: 20%;">
1862 <col style="width: 66.6667%;">
1863 </colgroup>
1864 <thead>
1865 <tr>
1866 <th class="tableblock halign-left valign-top">Terminal #</th>
1867 <th class="tableblock halign-left valign-top">Terminal Name</th>
1868 <th class="tableblock halign-left valign-top">Description</th>
1869 </tr>
1870 </thead>
1871 <tbody>
1872 <tr>
1873 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1874 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1875 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B connection to pyro circuit</p></td>
1876 </tr>
1877 <tr>
1878 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1879 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1880 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B common connection to battery +</p></td>
1881 </tr>
1882 <tr>
1883 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1884 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1885 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1886 </tr>
1887 <tr>
1888 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1889 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1890 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1891 </tr>
1892 <tr>
1893 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1894 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1895 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A connection to pyro circuit</p></td>
1896 </tr>
1897 <tr>
1898 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1899 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1900 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A common connection to battery +</p></td>
1901 </tr>
1902 <tr>
1903 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1904 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1905 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1906 </tr>
1907 <tr>
1908 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1909 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1910 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1911 </tr>
1912 </tbody>
1913 </table>
1914 </div>
1915 <div class="sect2">
1916 <h3 id="_connecting_a_battery_to_easytimer">9.2. Connecting A Battery To EasyTimer</h3>
1917 <div class="paragraph">
1918 <p>There are two possible battery connections on
1919 EasyTimer. You can use either method; both feed
1920 through the power switch terminals.</p>
1921 </div>
1922 <div class="paragraph">
1923 <p>One battery connection is the standard Altus Metrum
1924 white JST plug. This mates with single-cell Lithium
1925 Polymer batteries sold by Altus Metrum.</p>
1926 </div>
1927 <div class="paragraph">
1928 <p>The other is a pair of screw terminals marked 'Battery
1929 +' and 'Battery -'. Connect a battery from 4 to 12
1930 volts to these terminals, being careful to match polarity.</p>
1931 </div>
1932 </div>
1933 <div class="sect2">
1934 <h3 id="_charging_lithium_batteries_2">9.3. Charging Lithium Batteries</h3>
1935 <div class="paragraph">
1936 <p>Because EasyTimer allows for batteries other than the
1937 standard Altus Metrum Lithium Polymer cells, it cannot
1938 incorporate a battery charger circuit. Therefore, when
1939 using a Litium Polymer cell, you&#8217;ll need an external
1940 charger. These are available from Altus Metrum, or
1941 from Spark Fun.</p>
1942 </div>
1943 </div>
1944 <div class="sect2">
1945 <h3 id="_using_a_separate_pyro_battery_with_easytimer">9.4. Using a Separate Pyro Battery with EasyTimer</h3>
1946 <div class="paragraph">
1947 <p>As described above, using an external pyro battery involves
1948 connecting the negative battery terminal to the flight
1949 computer ground, connecting the positive battery terminal to
1950 one of the igniter leads and connecting the other igniter
1951 lead to the per-channel pyro circuit connection.</p>
1952 </div>
1953 <div class="paragraph">
1954 <p>To connect the negative pyro battery terminal to EasyTimer
1955 ground, connect it to the negative external battery
1956 connection, top terminal 4.</p>
1957 </div>
1958 <div class="paragraph">
1959 <p>Connecting the switched positive battery terminal to the pyro
1960 charges must be done separate from EasyTimer, by soldering
1961 them together or using some other connector.  Note that for
1962 safety, you must put a switch between the pyro battery and
1963 the rest of the circuit!</p>
1964 </div>
1965 <div class="paragraph">
1966 <p>The other lead from each pyro charge is then inserted into
1967 the appropriate per-pyro channel screw terminal (top
1968 terminal 1 for pyro channel A charge, bottom terminal 1 for
1969 pyro channel B charge).</p>
1970 </div>
1971 </div>
1972 <div class="sect2">
1973 <h3 id="_using_an_active_switch_with_easytimer">9.5. Using an Active Switch with EasyTimer</h3>
1974 <div class="paragraph">
1975 <p>As explained above, an external active switch requires three
1976 connections, one to the positive battery terminal, one to
1977 the flight computer positive input and one to ground. Use
1978 the negative external battery connection, top terminal 4 for
1979 ground.</p>
1980 </div>
1981 <div class="paragraph">
1982 <p>The positive battery terminal is available on bottom
1983 terminal 4, the positive flight computer input is on the
1984 bottom terminal 3.</p>
1985 </div>
1986 </div>
1987 </div>
1988 </div>
1989 <div class="sect1">
1990 <h2 id="_installation">10. Installation</h2>
1991 <div class="sectionbody">
1992 <div class="paragraph">
1993 <p>A typical installation involves attaching
1994 only a suitable battery, a single pole switch for
1995 power on/off, and two pairs of wires connecting e-matches for the
1996 apogee and main ejection charges.  All Altus Metrum products are
1997 designed for use with single-cell batteries with 3.7 volts
1998 nominal.
1999 EasyMini may also be used with other
2000 batteries as long as they supply between 4 and 12 volts.</p>
2001 </div>
2002 <div class="paragraph">
2003 <p>The battery connectors are a standard 2-pin JST connector; you
2004 can purchase suitable batteries from the any vendor selling
2005 Altus Metrum products. These batteries are
2006 single-cell Lithium Polymer batteries that nominally provide 3.7
2007 volts.  Other vendors sell similar batteries for RC aircraft
2008 using mating connectors, however the polarity for those is
2009 generally reversed from the batteries used by Altus Metrum
2010 products. In particular, the Tenergy batteries supplied for use
2011 in Featherweight flight computers are not compatible with Altus
2012 Metrum flight computers or battery chargers.</p>
2013 </div>
2014 <div class="admonitionblock warning">
2015 <table>
2016 <tr>
2017 <td class="icon">
2018 <img src="./images/icons/warning.svg" alt="Warning">
2019 </td>
2020 <td class="content">
2021 Check polarity and voltage before connecting any battery not
2022 purchased from Altus Metrum.
2023 </td>
2024 </tr>
2025 </table>
2026 </div>
2027 <div class="admonitionblock warning">
2028 <table>
2029 <tr>
2030 <td class="icon">
2031 <img src="./images/icons/warning.svg" alt="Warning">
2032 </td>
2033 <td class="content">
2034 Spark Fun sells batteries that have a matching connector with
2035 the correct polarity. However, these batteries include an
2036 integrated current limiting circuit. That circuit will cause
2037 the battery to shut down when firing the igniter circuit. Do
2038 not use these batteries unless you remove the current limiting
2039 circuit.
2040 </td>
2041 </tr>
2042 </table>
2043 </div>
2044 <div class="paragraph">
2045 <p>By default, we use the unregulated output of the battery
2046 directly to fire ejection charges.  This works marvelously
2047 with standard low-current e-matches like the J-Tek from MJG
2048 Technologies, and with Quest Q2G2 igniters.  However, if you
2049 want or need to use a separate pyro battery, check out
2050 <a href="#_using_a_separate_pyro_battery">Using a Separate Pyro Battery</a> for instructions on how to wire
2051 that up. The altimeters are designed to work with an external
2052 pyro battery of no more than 15 volts.</p>
2053 </div>
2054 <div class="paragraph">
2055 <p>Ejection charges are wired directly to the screw terminal block
2056 at the aft end of the altimeter.  You&#8217;ll need a very small straight
2057 blade screwdriver for these screws, such as you might find in a
2058 jeweler&#8217;s screwdriver set.</p>
2059 </div>
2060 <div class="paragraph">
2061 <p>Except for TeleMini v1.0, the flight computers also use the
2062 screw terminal block for the power switch leads. On TeleMini v1.0,
2063 the power switch leads are soldered directly to the board and
2064 can be connected directly to a switch.</p>
2065 </div>
2066 <div class="paragraph">
2067 <p>For most air-frames, the integrated antennas are more than
2068 adequate.   However, if you are installing in a carbon-fiber or
2069 metal electronics bay which is opaque to RF signals, you may need to
2070 use off-board external antennas instead.  In this case, you can
2071 replace the stock UHF antenna wire with an edge-launched SMA connector,
2072 and, on TeleMetrum v1, you can unplug the integrated GPS
2073 antenna and select an appropriate off-board GPS antenna with
2074 cable terminating in a U.FL connector.</p>
2075 </div>
2076 </div>
2077 </div>
2078 <div class="sect1">
2079 <h2 id="_using_altus_metrum_products">11. Using Altus Metrum Products</h2>
2080 <div class="sectionbody">
2081 <div class="sect2">
2082 <h3 id="_being_legal">11.1. Being Legal</h3>
2083 <div class="paragraph">
2084 <p>In the US, you need an
2085 <a href="http://www.altusmetrum.org/Radio/">amateur radio license</a>
2086 or other authorization to legally operate the radio
2087 transmitters that are part of our products.</p>
2088 </div>
2089 </div>
2090 <div class="sect2">
2091 <h3 id="_in_the_rocket">11.2. In the Rocket</h3>
2092 <div class="paragraph">
2093 <p>In the rocket itself, you just need a flight computer
2094 and a single-cell, 3.7 volt nominal Li-Po rechargeable
2095 battery.
2096 An 850mAh battery weighs less than a 9V
2097 alkaline battery, and will run a TeleMetrum, TeleMega,
2098 EasyMega or EasyTimer for hours.
2099 A 110mAh battery weighs less
2100 than a triple A battery and is a good choice for use
2101 with
2102 TeleMini or
2103 EasyMini.</p>
2104 </div>
2105 <div class="paragraph">
2106 <p>By default, we ship TeleMini, TeleMetrum and TeleMega
2107 flight computers with a simple wire antenna.  If your
2108 electronics bay or the air-frame it resides within is
2109 made of carbon fiber, which is opaque to RF signals,
2110 you may prefer to install an SMA connector so that you
2111 can run a coaxial cable to an antenna mounted
2112 elsewhere in the rocket.  However, note that the GPS
2113 antenna is fixed on all current products, so you
2114 really want to install the flight computer in a bay
2115 made of RF-transparent materials if at all possible.</p>
2116 </div>
2117 </div>
2118 <div class="sect2">
2119 <h3 id="_on_the_ground">11.3. On the Ground</h3>
2120 <div class="paragraph">
2121 <p>To receive the data stream from the rocket, you need
2122 an antenna and short feed-line connected to one of our
2123 <a href="http://www.altusmetrum.org/TeleDongle/">TeleDongle</a>
2124 units.  If possible, use an SMA to BNC adapter instead
2125 of feedline between the antenna feedpoint and
2126 TeleDongle, as this will give you the best
2127 performance.  The TeleDongle in turn plugs directly
2128 into the USB port on a notebook computer.  Because
2129 TeleDongle looks like a simple serial port, your
2130 computer does not require special device
2131 drivers&#8230;&#8203; just plug it in.</p>
2132 </div>
2133 <div class="paragraph">
2134 <p>The GUI tool, AltosUI, is written in Java and runs
2135 across Linux, Mac OS and Windows. There&#8217;s also a suite
2136 of C tools for Linux which can perform most of the
2137 same tasks.</p>
2138 </div>
2139 <div class="paragraph">
2140 <p>Alternatively, a TeleBT attached with an SMA to BNC
2141 adapter at the feed point of a hand-held yagi used in
2142 conjunction with an Android device running AltosDroid
2143 makes an outstanding ground station.</p>
2144 </div>
2145 <div class="paragraph">
2146 <p>After the flight,
2147 you can use the radio link to
2148 extract the more detailed data logged in either
2149 TeleMetrum or TeleMini devices, or
2150 you can use a
2151 USB cable to plug into the flight computer board directly.
2152 A USB cable is also how you
2153 charge the Li-Po battery, so you&#8217;ll want one of those
2154 anyway. The same cable used by lots of digital
2155 cameras and other modern electronic stuff will work
2156 fine.</p>
2157 </div>
2158 <div class="paragraph">
2159 <p>If your rocket lands out of sight, you may enjoy
2160 having a hand-held GPS receiver, so that you can put
2161 in a way-point for the last reported rocket position
2162 before touch-down.  This makes looking for your rocket
2163 a lot like Geo-Caching&#8230;&#8203; just go to the way-point and
2164 look around starting from there.  AltosDroid on an
2165 Android device with GPS receiver works great for this,
2166 too!</p>
2167 </div>
2168 <div class="paragraph">
2169 <p>You may also enjoy having a ham radio “HT” that covers
2170 the 70cm band&#8230;&#8203; you can use that with your antenna to
2171 direction-find the rocket on the ground the same way
2172 you can use a Walston or Beeline tracker.  This can be
2173 handy if the rocket is hiding in sage brush or a tree,
2174 or if the last GPS position doesn&#8217;t get you close
2175 enough because the rocket dropped into a canyon, or
2176 the wind is blowing it across a dry lake bed, or
2177 something like that&#8230;&#8203;  Keith currently uses a Yaesu
2178 FT1D, Bdale has a Yaesu VX-7R, which is a nicer radio
2179 in most ways but doesn&#8217;t support APRS.</p>
2180 </div>
2181 <div class="paragraph">
2182 <p>So, to recap, on the ground the hardware you&#8217;ll need includes:</p>
2183 </div>
2184 <div class="olist arabic">
2185 <ol class="arabic">
2186 <li>
2187 <p>an antenna and feed-line or adapter</p>
2188 </li>
2189 <li>
2190 <p>a TeleDongle</p>
2191 </li>
2192 <li>
2193 <p>a notebook computer</p>
2194 </li>
2195 <li>
2196 <p>optionally, a hand-held GPS receiver</p>
2197 </li>
2198 <li>
2199 <p>optionally, an HT or receiver covering 435 MHz</p>
2200 </li>
2201 </ol>
2202 </div>
2203 <div class="paragraph">
2204 <p>The best hand-held commercial directional antennas we&#8217;ve found for radio
2205 direction finding rockets are from
2206 <a href="http://www.arrowantennas.com/">Arrow Antennas</a>.</p>
2207 </div>
2208 <div class="paragraph">
2209 <p>The 440-3 and 440-5 are both good choices for finding
2210 a TeleMetrum- or TeleMini- equipped rocket when used
2211 with a suitable 70cm HT.  TeleDongle and an SMA to BNC
2212 adapter fit perfectly between the driven element and
2213 reflector of Arrow antennas.</p>
2214 </div>
2215 </div>
2216 <div class="sect2">
2217 <h3 id="_data_analysis">11.4. Data Analysis</h3>
2218 <div class="paragraph">
2219 <p>Our software makes it easy to log the data from each
2220 flight, both the telemetry received during the flight
2221 itself, and the more complete data log recorded in the
2222 flash memory on the altimeter board.  Once this data
2223 is on your computer, our post-flight tools make it
2224 easy to quickly get to the numbers everyone wants,
2225 like apogee altitude, max acceleration, and max
2226 velocity.  You can also generate and view a standard
2227 set of plots showing the altitude, acceleration, and
2228 velocity of the rocket during flight.  And you can
2229 even export a flight log in a format usable with Google
2230 Maps and Google Earth for visualizing the flight path
2231 in two or three dimensions!</p>
2232 </div>
2233 <div class="paragraph">
2234 <p>Our ultimate goal is to emit a set of files for each
2235 flight that can be published as a web page per flight,
2236 or just viewed on your local disk with a web browser.</p>
2237 </div>
2238 </div>
2239 <div class="sect2">
2240 <h3 id="_future_plans">11.5. Future Plans</h3>
2241 <div class="paragraph">
2242 <p>We have designed and prototyped several “companion
2243 boards” that can attach to the companion connector on
2244 TeleMetrum, TeleMega and EasyMega flight computers to
2245 collect more data, provide more pyro channels, and so
2246 forth.  We do not yet know if or when any of these
2247 boards will be produced in enough quantity to sell.
2248 If you have specific interests for data collection or
2249 control of events in your rockets beyond the
2250 capabilities of our existing productions, please let
2251 us know!</p>
2252 </div>
2253 <div class="paragraph">
2254 <p>Because all of our work is open, both the hardware
2255 designs and the software, if you have some great idea
2256 for an addition to the current Altus Metrum family,
2257 feel free to dive in and help!  Or let us know what
2258 you&#8217;d like to see that we aren&#8217;t already working on,
2259 and maybe we&#8217;ll get excited about it too&#8230;&#8203;</p>
2260 </div>
2261 <div class="paragraph">
2262 <p>Watch our <a href="http://altusmetrum.org/">web site</a> for
2263 more news and information as our family of products
2264 evolves!</p>
2265 </div>
2266 </div>
2267 </div>
2268 </div>
2269 <div class="sect1">
2270 <h2 id="_altosui">12. AltosUI</h2>
2271 <div class="sectionbody">
2272 <div class="imageblock">
2273 <div class="content">
2274 <img src="altosui.png" alt="altosui" width="450">
2275 </div>
2276 <div class="title">Figure 9. AltosUI Main Window</div>
2277 </div>
2278 <div class="paragraph">
2279 <p>The AltosUI program provides a graphical user interface for
2280 interacting with the Altus Metrum product family. AltosUI can
2281 monitor telemetry data, configure devices and many other
2282 tasks. The primary interface window provides a selection of
2283 buttons, one for each major activity in the system.  This
2284 chapter is split into sections, each of which documents one of
2285 the tasks provided from the top-level toolbar.</p>
2286 </div>
2287 <div class="sect2">
2288 <h3 id="_monitor_flight">12.1. Monitor Flight</h3>
2289 <div class="paragraph">
2290 <p>Selecting this item brings up a dialog box listing all
2291 of the connected TeleDongle devices. When you choose
2292 one of these, AltosUI will create a window to display
2293 telemetry data as received by the selected TeleDongle
2294 device.</p>
2295 </div>
2296 <div class="imageblock">
2297 <div class="content">
2298 <img src="device-selection.png" alt="device selection" width="300">
2299 </div>
2300 <div class="title">Figure 10. Device Selection Dialog</div>
2301 </div>
2302 <div class="paragraph">
2303 <p>All telemetry data received are automatically recorded
2304 in suitable log files. The name of the files includes
2305 the current date and rocket serial and flight numbers.</p>
2306 </div>
2307 <div class="paragraph">
2308 <p>The radio frequency being monitored by the TeleDongle
2309 device is displayed at the top of the window. You can
2310 configure the frequency by clicking on the frequency
2311 box and selecting the desired frequency. AltosUI
2312 remembers the last frequency selected for each
2313 TeleDongle and selects that automatically the next
2314 time you use that device.</p>
2315 </div>
2316 <div class="paragraph">
2317 <p>Below the TeleDongle frequency selector, the window
2318 contains a few significant pieces of information about
2319 the altimeter providing the telemetry data stream:</p>
2320 </div>
2321 <div class="ulist">
2322 <ul>
2323 <li>
2324 <p>The configured call-sign</p>
2325 </li>
2326 <li>
2327 <p>The device serial number</p>
2328 </li>
2329 <li>
2330 <p>The flight number. Each altimeter remembers how
2331 many times it has flown.</p>
2332 </li>
2333 <li>
2334 <p>The rocket flight state. Each flight passes through
2335 several states including Pad, Boost, Fast, Coast,
2336 Drogue, Main and Landed.</p>
2337 </li>
2338 <li>
2339 <p>The Received Signal Strength Indicator value. This
2340 lets you know how strong a signal TeleDongle is
2341 receiving. At the default data rate, 38400 bps, in
2342 bench testing, the radio inside TeleDongle v0.2
2343 operates down to about -106dBm, while the v3 radio
2344 works down to about -111dBm.  Weaker signals, or an
2345 environment with radio noise may cause the data to
2346 not be received. The packet link uses error
2347 detection and correction techniques which prevent
2348 incorrect data from being reported.</p>
2349 </li>
2350 <li>
2351 <p>The age of the displayed data, in seconds since the
2352 last successfully received telemetry packet.  In
2353 normal operation this will stay in the low single
2354 digits.  If the number starts counting up, then you
2355 are no longer receiving data over the radio link
2356 from the flight computer.</p>
2357 </li>
2358 </ul>
2359 </div>
2360 <div class="paragraph">
2361 <p>Finally, the largest portion of the window contains a
2362 set of tabs, each of which contain some information
2363 about the rocket.  They&#8217;re arranged in 'flight order'
2364 so that as the flight progresses, the selected tab
2365 automatically switches to display data relevant to the
2366 current state of the flight. You can select other tabs
2367 at any time. The final 'table' tab displays all of the
2368 raw telemetry values in one place in a
2369 spreadsheet-like format.</p>
2370 </div>
2371 <div class="sect3">
2372 <h4 id="_launch_pad">12.1.1. Launch Pad</h4>
2373 <div class="imageblock">
2374 <div class="content">
2375 <img src="launch-pad.png" alt="launch pad" width="400">
2376 </div>
2377 <div class="title">Figure 11. Monitor Flight Launch Pad View</div>
2378 </div>
2379 <div class="paragraph">
2380 <p>The 'Launch Pad' tab shows information used to decide when the
2381 rocket is ready for flight. The first elements include red/green
2382 indicators, if any of these is red, you&#8217;ll want to evaluate
2383 whether the rocket is ready to launch:</p>
2384 </div>
2385 <div class="dlist">
2386 <dl>
2387 <dt class="hdlist1">Battery Voltage</dt>
2388 <dd>
2389 <p>This indicates whether the Li-Po battery powering the
2390 flight computer has sufficient charge to last for
2391 the duration of the flight. A value of more than
2392 3.8V is required for a 'GO' status.</p>
2393 </dd>
2394 <dt class="hdlist1">Apogee Igniter Voltage</dt>
2395 <dd>
2396 <p>This indicates whether the apogee
2397 igniter has continuity. If the igniter has a low
2398 resistance, then the voltage measured here will be close
2399 to the Li-Po battery voltage. A value greater than 3.2V is
2400 required for a 'GO' status.</p>
2401 </dd>
2402 <dt class="hdlist1">Main Igniter Voltage</dt>
2403 <dd>
2404 <p>This indicates whether the main
2405 igniter has continuity. If the igniter has a low
2406 resistance, then the voltage measured here will be close
2407 to the Li-Po battery voltage. A value greater than 3.2V is
2408 required for a 'GO' status.</p>
2409 </dd>
2410 <dt class="hdlist1">On-board Data Logging</dt>
2411 <dd>
2412 <p>This indicates whether there is space remaining
2413 on-board to store flight data for the upcoming
2414 flight. If you&#8217;ve downloaded data, but failed to erase
2415 flights, there may not be any space left. Most of our
2416 flight computers can store multiple flights, depending
2417 on the configured maximum flight log size. TeleMini
2418 v1.0 stores only a single flight, so it will need to
2419 be downloaded and erased after each flight to capture
2420 data. This only affects on-board flight logging; the
2421 altimeter will still transmit telemetry and fire
2422 ejection charges at the proper times even if the
2423 flight data storage is full.</p>
2424 </dd>
2425 <dt class="hdlist1">GPS Locked</dt>
2426 <dd>
2427 <p>For a TeleMetrum or TeleMega device, this indicates
2428 whether the GPS receiver is currently able to compute
2429 position information. GPS requires at least 4
2430 satellites to compute an accurate position.</p>
2431 </dd>
2432 <dt class="hdlist1">GPS Ready</dt>
2433 <dd>
2434 <p>For a TeleMetrum or TeleMega device, this indicates
2435 whether GPS has reported at least 10 consecutive
2436 positions without losing lock. This ensures that the
2437 GPS receiver has reliable reception from the
2438 satellites.</p>
2439 </dd>
2440 </dl>
2441 </div>
2442 <div class="paragraph">
2443 <p>The Launchpad tab also shows the computed launch pad
2444 position and altitude, averaging many reported
2445 positions to improve the accuracy of the fix.</p>
2446 </div>
2447 </div>
2448 <div class="sect3">
2449 <h4 id="_ascent">12.1.2. Ascent</h4>
2450 <div class="imageblock">
2451 <div class="content">
2452 <img src="ascent.png" alt="ascent" width="400">
2453 </div>
2454 <div class="title">Figure 12. Monitor Flight Ascent View</div>
2455 </div>
2456 <div class="paragraph">
2457 <p>This tab is shown during Boost, Fast and Coast
2458 phases. The information displayed here helps monitor the
2459 rocket as it heads towards apogee.</p>
2460 </div>
2461 <div class="paragraph">
2462 <p>The height, speed, acceleration and tilt are shown along
2463 with the maximum values for each of them. This allows you to
2464 quickly answer the most commonly asked questions you&#8217;ll hear
2465 during flight.</p>
2466 </div>
2467 <div class="paragraph">
2468 <p>The current latitude and longitude reported by the GPS are
2469 also shown. Note that under high acceleration, these values
2470 may not get updated as the GPS receiver loses position
2471 fix. Once the rocket starts coasting, the receiver should
2472 start reporting position again.</p>
2473 </div>
2474 <div class="paragraph">
2475 <p>Finally, the current igniter voltages are reported as in the
2476 Launch Pad tab. This can help diagnose deployment failures
2477 caused by wiring which comes loose under high acceleration.</p>
2478 </div>
2479 </div>
2480 <div class="sect3">
2481 <h4 id="_descent">12.1.3. Descent</h4>
2482 <div class="imageblock">
2483 <div class="content">
2484 <img src="descent.png" alt="descent" width="400">
2485 </div>
2486 <div class="title">Figure 13. Monitor Flight Descent View</div>
2487 </div>
2488 <div class="paragraph">
2489 <p>Once the rocket has reached apogee and (we hope)
2490 activated the apogee charge, attention switches to
2491 tracking the rocket on the way back to the ground, and
2492 for dual-deploy flights, waiting for the main charge
2493 to fire.</p>
2494 </div>
2495 <div class="paragraph">
2496 <p>To monitor whether the apogee charge operated
2497 correctly, the current descent rate is reported along
2498 with the current height. Good descent rates vary based
2499 on the choice of recovery components, but generally
2500 range from 15-30m/s on drogue and should be below
2501 10m/s when under the main parachute in a dual-deploy
2502 flight.</p>
2503 </div>
2504 <div class="paragraph">
2505 <p>With GPS-equipped flight computers, you can locate the
2506 rocket in the sky using the elevation and bearing
2507 information to figure out where to look. Elevation is
2508 in degrees above the horizon. Bearing is reported in
2509 degrees relative to true north. Range can help figure
2510 out how big the rocket will appear. Ground Distance
2511 shows how far it is to a point directly under the
2512 rocket and can help figure out where the rocket is
2513 likely to land. Note that all of these values are
2514 relative to the pad location. If the elevation is near
2515 90°, the rocket is over the pad, not over you.</p>
2516 </div>
2517 <div class="paragraph">
2518 <p>Finally, the igniter voltages are reported in this tab
2519 as well, both to monitor the main charge as well as to
2520 see what the status of the apogee charge is.  Note
2521 that some commercial e-matches are designed to retain
2522 continuity even after being fired, and will continue
2523 to show as green or return from red to green after
2524 firing.</p>
2525 </div>
2526 </div>
2527 <div class="sect3">
2528 <h4 id="_landed">12.1.4. Landed</h4>
2529 <div class="imageblock">
2530 <div class="content">
2531 <img src="landed.png" alt="landed" width="400">
2532 </div>
2533 <div class="title">Figure 14. Monitor Flight Landed View</div>
2534 </div>
2535 <div class="paragraph">
2536 <p>Once the rocket is on the ground, attention switches
2537 to recovery. While the radio signal is often lost once
2538 the rocket is on the ground, the last reported GPS
2539 position is generally within a short distance of the
2540 actual landing location.</p>
2541 </div>
2542 <div class="paragraph">
2543 <p>The last reported GPS position is reported both by
2544 latitude and longitude as well as a bearing and
2545 distance from the launch pad. The distance should give
2546 you a good idea of whether to walk or hitch a ride.
2547 Take the reported latitude and longitude and enter
2548 them into your hand-held GPS unit and have that
2549 compute a track to the landing location.</p>
2550 </div>
2551 <div class="paragraph">
2552 <p>Our flight computers will continue to transmit RDF
2553 tones after landing, allowing you to locate the rocket
2554 by following the radio signal if necessary. You may
2555 need to get away from the clutter of the flight line,
2556 or even get up on a hill (or your neighbor&#8217;s RV roof)
2557 to receive the RDF signal.</p>
2558 </div>
2559 <div class="paragraph">
2560 <p>The maximum height, speed and acceleration reported
2561 during the flight are displayed for your admiring
2562 observers.  The accuracy of these immediate values
2563 depends on the quality of your radio link and how many
2564 packets were received.  Recovering the on-board data
2565 after flight may yield more precise results.</p>
2566 </div>
2567 <div class="paragraph">
2568 <p>To get more detailed information about the flight, you
2569 can click on the 'Graph Flight' button which will
2570 bring up a graph window for the current flight.</p>
2571 </div>
2572 </div>
2573 <div class="sect3">
2574 <h4 id="_table">12.1.5. Table</h4>
2575 <div class="imageblock">
2576 <div class="content">
2577 <img src="table.png" alt="table" width="400">
2578 </div>
2579 <div class="title">Figure 15. Monitor Flight Table View</div>
2580 </div>
2581 <div class="paragraph">
2582 <p>The table view shows all of the data available from the
2583 flight computer. Probably the most useful data on
2584 this tab is the detailed GPS information, which includes
2585 horizontal dilution of precision information, and
2586 information about the signal being received from the satellites.</p>
2587 </div>
2588 </div>
2589 <div class="sect3">
2590 <h4 id="_site_map">12.1.6. Site Map</h4>
2591 <div class="imageblock">
2592 <div class="content">
2593 <img src="site-map.png" alt="site map" width="400">
2594 </div>
2595 <div class="title">Figure 16. Monitor Flight Site Map View</div>
2596 </div>
2597 <div class="paragraph">
2598 <p>When the TeleMetrum has a GPS fix, the Site Map tab
2599 will map the rocket&#8217;s position to make it easier for
2600 you to locate the rocket, both while it is in the air,
2601 and when it has landed. The rocket&#8217;s state is
2602 indicated by color: white for pad, red for boost, pink
2603 for fast, yellow for coast, light blue for drogue,
2604 dark blue for main, and black for landed.</p>
2605 </div>
2606 <div class="paragraph">
2607 <p>The map&#8217;s default scale is approximately 3m (10ft) per
2608 pixel. The map can be dragged using the left mouse
2609 button. The map will attempt to keep the rocket
2610 roughly centered while data is being received.</p>
2611 </div>
2612 <div class="paragraph">
2613 <p>You can adjust the style of map and the zoom level
2614 with buttons on the right side of the map window. You
2615 can draw a line on the map by moving the mouse over
2616 the map with a button other than the left one pressed,
2617 or by pressing the left button while also holding down
2618 the shift key. The length of the line in real-world
2619 units will be shown at the start of the line.</p>
2620 </div>
2621 <div class="paragraph">
2622 <p>Images are fetched automatically via the Google Maps
2623 Static API, and cached on disk for reuse. If map
2624 images cannot be downloaded, the rocket&#8217;s path will be
2625 traced on a dark gray background instead.</p>
2626 </div>
2627 <div class="paragraph">
2628 <p>You can pre-load images for your favorite launch sites
2629 before you leave home; check out <a href="#_load_maps">Load Maps</a>.</p>
2630 </div>
2631 </div>
2632 <div class="sect3">
2633 <h4 id="_igniter">12.1.7. Igniter</h4>
2634 <div class="imageblock">
2635 <div class="content">
2636 <img src="ignitor.png" alt="ignitor" width="400">
2637 </div>
2638 <div class="title">Figure 17. Monitor Flight Additional Igniter View</div>
2639 </div>
2640 <div class="paragraph">
2641 <p>TeleMega includes four additional programmable pyro
2642 channels. The Ignitor tab shows whether each of them has
2643 continuity. If an ignitor has a low resistance, then the
2644 voltage measured here will be close to the pyro battery
2645 voltage. A value greater than 3.2V is required for a 'GO'
2646 status.</p>
2647 </div>
2648 </div>
2649 </div>
2650 <div class="sect2">
2651 <h3 id="_save_flight_data">12.2. Save Flight Data</h3>
2652 <div class="paragraph">
2653 <p>The altimeter records flight data to its internal
2654 flash memory.
2655 Data logged on board is recorded at a much
2656 higher rate than the telemetry system can handle, and
2657 is not subject to radio drop-outs. As such, it
2658 provides a more complete and precise record of the
2659 flight.
2660 The 'Save Flight Data' button allows you to
2661 read the flash memory and write it to disk.</p>
2662 </div>
2663 <div class="paragraph">
2664 <p>Clicking on the 'Save Flight Data' button brings up a
2665 list of connected flight computers and TeleDongle
2666 devices. If you select a flight computer, the flight
2667 data will be downloaded from that device directly.
2668 If you select a TeleDongle device, flight data will be
2669 downloaded from a flight computer over radio link via
2670 the specified TeleDongle. See
2671 <a href="#_controlling_an_altimeter_over_the_radio_link">Controlling An Altimeter Over The Radio Link</a> for
2672 more information.</p>
2673 </div>
2674 <div class="paragraph">
2675 <p>After the device has been selected, a dialog showing
2676 the flight data saved in the device will be shown
2677 allowing you to select which flights to download and
2678 which to delete. With version 0.9 or newer firmware,
2679 you must erase flights in order for the space they
2680 consume to be reused by another flight. This prevents
2681 accidentally losing flight data if you neglect to
2682 download data before flying again. Note that if there
2683 is no more space available in the device, then no data
2684 will be recorded during the next flight.</p>
2685 </div>
2686 <div class="paragraph">
2687 <p>The file name for each flight log is computed
2688 automatically from the recorded flight date, altimeter
2689 serial number and flight number information.</p>
2690 </div>
2691 </div>
2692 <div class="sect2">
2693 <h3 id="_replay_flight">12.3. Replay Flight</h3>
2694 <div class="paragraph">
2695 <p>Select this button and you are prompted to select a flight
2696 record file, either a .telem file recording telemetry data or a
2697 .eeprom file containing flight data saved from the altimeter
2698 flash memory.</p>
2699 </div>
2700 <div class="paragraph">
2701 <p>Once a flight record is selected, the flight monitor interface
2702 is displayed and the flight is re-enacted in real
2703 time.
2704 Check
2705 <a href="#_monitor_flight">Monitor Flight</a> to learn how this window operates.</p>
2706 </div>
2707 </div>
2708 <div class="sect2">
2709 <h3 id="_graph_data">12.4. Graph Data</h3>
2710 <div class="paragraph">
2711 <p>Select this button and you are prompted to select a flight
2712 record file, either a .telem file recording telemetry data or a
2713 .eeprom file containing flight data saved from
2714 flash memory.</p>
2715 </div>
2716 <div class="paragraph">
2717 <p>Note that telemetry files will generally produce poor graphs
2718 due to the lower sampling rate and missed telemetry packets.
2719 Use saved flight data in .eeprom files for graphing where possible.</p>
2720 </div>
2721 <div class="paragraph">
2722 <p>Once a flight record is selected, a window with multiple tabs is
2723 opened.</p>
2724 </div>
2725 <div class="sect3">
2726 <h4 id="_flight_graph">12.4.1. Flight Graph</h4>
2727 <div class="imageblock">
2728 <div class="content">
2729 <img src="graph.png" alt="graph" width="400">
2730 </div>
2731 <div class="title">Figure 18. Flight Data Graph</div>
2732 </div>
2733 <div class="paragraph">
2734 <p>By default, the graph contains acceleration (blue),
2735 velocity (green) and altitude (red).</p>
2736 </div>
2737 <div class="paragraph">
2738 <p>The graph can be zoomed into a particular area by
2739 clicking and dragging down and to the right. Once
2740 zoomed, the graph can be reset by clicking and
2741 dragging up and to the left. Holding down control and
2742 clicking and dragging allows the graph to be panned.
2743 The right mouse button causes a pop-up menu to be
2744 displayed, giving you the option save or print the
2745 plot.</p>
2746 </div>
2747 </div>
2748 <div class="sect3">
2749 <h4 id="_configure_graph">12.4.2. Configure Graph</h4>
2750 <div class="imageblock">
2751 <div class="content">
2752 <img src="graph-configure.png" alt="graph configure" width="400">
2753 </div>
2754 <div class="title">Figure 19. Flight Graph Configuration</div>
2755 </div>
2756 <div class="paragraph">
2757 <p>This selects which graph elements to show, and, at the
2758 very bottom. It also lets you configure how
2759 the graph is drawn:</p>
2760 </div>
2761 <div class="ulist">
2762 <ul>
2763 <li>
2764 <p>Whether to use metric or imperial units</p>
2765 </li>
2766 <li>
2767 <p>Whether to show a marker at each data
2768 point. When displaying a small section of
2769 the graph, these can be useful to know what
2770 data values were recorded.</p>
2771 </li>
2772 <li>
2773 <p>How wide to draw the lines in the graph</p>
2774 </li>
2775 <li>
2776 <p>How to filter speed and acceleration data
2777 computed from barometric data. Flight
2778 computers with accelerometers never display
2779 computed acceleration data, and only use
2780 barometric data to compute speed during
2781 descent. Flight computers without
2782 accelerometers always compute both speed and
2783 acceleration from barometric data. A larger
2784 value smooths the data more.</p>
2785 </li>
2786 </ul>
2787 </div>
2788 </div>
2789 <div class="sect3">
2790 <h4 id="_flight_statistics">12.4.3. Flight Statistics</h4>
2791 <div class="imageblock">
2792 <div class="content">
2793 <img src="graph-stats.png" alt="graph stats" width="400">
2794 </div>
2795 <div class="title">Figure 20. Flight Statistics</div>
2796 </div>
2797 <div class="paragraph">
2798 <p>Shows overall data computed from the flight.</p>
2799 </div>
2800 </div>
2801 <div class="sect3">
2802 <h4 id="_map">12.4.4. Map</h4>
2803 <div class="imageblock">
2804 <div class="content">
2805 <img src="graph-map.png" alt="graph map" width="400">
2806 </div>
2807 <div class="title">Figure 21. Flight Map</div>
2808 </div>
2809 <div class="paragraph">
2810 <p>Shows a satellite image of the flight area
2811 overlaid with the path of the flight. The
2812 flight path will have different colored
2813 sections for each state of the flight (just
2814 like the Site Map in Monitor Flight mode):
2815 white for pad, red for boost, pink for fast,
2816 yellow for coast, light blue for drogue, dark
2817 blue for main, and black for landed.</p>
2818 </div>
2819 <div class="paragraph">
2820 <p>The red concentric circles mark the launch
2821 pad, the black concentric circles mark the
2822 landing location. Data for the point along the
2823 along the flight path nearest the cursor will
2824 be displayed at the bottom of the window. This
2825 data includes flight time (so you can
2826 correlate data in the graph window), latitude,
2827 longitude, height above ground and vertical
2828 speed. The selected point will be highlighted
2829 with concentric circles in the same color as
2830 the flight path at that point.</p>
2831 </div>
2832 </div>
2833 </div>
2834 <div class="sect2">
2835 <h3 id="_export_data">12.5. Export Data</h3>
2836 <div class="paragraph">
2837 <p>This tool takes the raw data files and makes them
2838 available for external analysis. When you select this
2839 button, you are prompted to select a flight data file,
2840 which can be either a .eeprom or .telem.  The .eeprom
2841 files contain higher resolution and more continuous
2842 data, while .telem files contain receiver signal
2843 strength information.  Next, a second dialog appears
2844 which is used to select where to write the resulting
2845 file.
2846 It has a selector to choose between CSV and KML
2847 file formats.</p>
2848 </div>
2849 <div class="sect3">
2850 <h4 id="_comma_separated_value_format">12.5.1. Comma Separated Value Format</h4>
2851 <div class="paragraph">
2852 <p>This is a text file containing the data in a form
2853 suitable for import into a spreadsheet or other
2854 external data analysis tool. The first few lines of
2855 the file contain the version and configuration
2856 information from the altimeter, then there is a single
2857 header line which labels all of the fields. All of
2858 these lines start with a '#' character which many
2859 tools can be configured to skip over.</p>
2860 </div>
2861 <div class="paragraph">
2862 <p>The remaining lines of the file contain the data, with
2863 each field separated by a comma and at least one
2864 space. All of the sensor values are converted to
2865 standard units, with the barometric data reported in
2866 both pressure, altitude and height above pad units.</p>
2867 </div>
2868 </div>
2869 <div class="sect3">
2870 <h4 id="_keyhole_markup_language_for_google_earth">12.5.2. Keyhole Markup Language (for Google Earth)</h4>
2871 <div class="paragraph">
2872 <p>This is the format used by Google Earth to provide an
2873 overlay within that application. With this, you can
2874 use Google Earth to see the whole flight path
2875 in 3D.</p>
2876 </div>
2877 </div>
2878 </div>
2879 <div class="sect2">
2880 <h3 id="_configure_altimeter">12.6. Configure Altimeter</h3>
2881 <div class="imageblock">
2882 <div class="content">
2883 <img src="configure-altimeter.png" alt="configure altimeter" width="350">
2884 </div>
2885 <div class="title">Figure 22. Altimeter Configuration</div>
2886 </div>
2887 <div class="paragraph">
2888 <p>Select this button and then select either an altimeter or
2889 TeleDongle Device from the list provided. Selecting a TeleDongle
2890 device will use the radio link to configure a remote
2891 altimeter.</p>
2892 </div>
2893 <div class="paragraph">
2894 <p>The first few lines of the dialog provide information about the
2895 connected device, including the product name,
2896 software version and hardware serial number. Below that are the
2897 individual configuration entries.</p>
2898 </div>
2899 <div class="paragraph">
2900 <p>At the bottom of the dialog, there are four buttons:</p>
2901 </div>
2902 <div class="dlist">
2903 <dl>
2904 <dt class="hdlist1">Save</dt>
2905 <dd>
2906 <p>This writes any changes to the configuration parameter
2907 block in flash memory. If you don&#8217;t press this button,
2908 any changes you make will be lost.</p>
2909 </dd>
2910 <dt class="hdlist1">Reset</dt>
2911 <dd>
2912 <p>This resets the dialog to the most recently saved
2913 values, erasing any changes you have made.</p>
2914 </dd>
2915 <dt class="hdlist1">Reboot</dt>
2916 <dd>
2917 <p>This reboots the device. Use this to switch from idle
2918 to pad mode by rebooting once the rocket is oriented
2919 for flight, or to confirm changes you think you saved
2920 are really saved.</p>
2921 </dd>
2922 <dt class="hdlist1">Close</dt>
2923 <dd>
2924 <p>This closes the dialog. Any unsaved changes will be
2925 lost.</p>
2926 </dd>
2927 </dl>
2928 </div>
2929 <div class="paragraph">
2930 <p>The rest of the dialog contains the parameters to be configured.</p>
2931 </div>
2932 <div class="sect3">
2933 <h4 id="_main_deploy_altitude">12.6.1. Main Deploy Altitude</h4>
2934 <div class="paragraph">
2935 <p>This sets the altitude (above the recorded pad
2936 altitude) at which the 'main' igniter will fire. The
2937 drop-down menu shows some common values, but you can
2938 edit the text directly and choose whatever you
2939 like. If the apogee charge fires below this altitude,
2940 then the main charge will fire two seconds after the
2941 apogee charge fires.</p>
2942 </div>
2943 </div>
2944 <div class="sect3">
2945 <h4 id="_apogee_delay">12.6.2. Apogee Delay</h4>
2946 <div class="paragraph">
2947 <p>When flying redundant electronics, it&#8217;s often
2948 important to ensure that multiple apogee charges don&#8217;t
2949 fire at precisely the same time, as that can over
2950 pressurize the apogee deployment bay and cause a
2951 structural failure of the air-frame. The Apogee Delay
2952 parameter tells the flight computer to fire the apogee
2953 charge a certain number of seconds after apogee has
2954 been detected.</p>
2955 </div>
2956 </div>
2957 <div class="sect3">
2958 <h4 id="_apogee_lockout">12.6.3. Apogee Lockout</h4>
2959 <div class="paragraph">
2960 <p>Apogee lockout is the number of seconds after launch
2961 where the flight computer will not fire the apogee
2962 charge, even if the rocket appears to be at
2963 apogee. This is often called 'Mach Delay', as it is
2964 intended to prevent a flight computer from
2965 unintentionally firing apogee charges due to the
2966 pressure spike that occurrs across a mach
2967 transition. Altus Metrum flight computers include a
2968 Kalman filter which is not fooled by this sharp
2969 pressure increase, and so this setting should be left
2970 at the default value of zero to disable it.</p>
2971 </div>
2972 <div class="admonitionblock warning">
2973 <table>
2974 <tr>
2975 <td class="icon">
2976 <img src="./images/icons/warning.svg" alt="Warning">
2977 </td>
2978 <td class="content">
2979 Firmware versions older than 1.8.6 have a
2980 bug which resets the time since launch to zero each
2981 time a motor starts burning. Update firmware to get
2982 the correct behavior.
2983 </td>
2984 </tr>
2985 </table>
2986 </div>
2987 </div>
2988 <div class="sect3">
2989 <h4 id="_frequency">12.6.4. Frequency</h4>
2990 <div class="paragraph">
2991 <p>This configures which of the frequencies to use for
2992 both telemetry and packet command mode. Note that if
2993 you set this value via packet command mode, the
2994 TeleDongle frequency will also be automatically
2995 reconfigured to match so that communication will
2996 continue afterwards.</p>
2997 </div>
2998 </div>
2999 <div class="sect3">
3000 <h4 id="_rf_calibration">12.6.5. RF Calibration</h4>
3001 <div class="paragraph">
3002 <p>The radios in every Altus Metrum device are calibrated
3003 at the factory to ensure that they transmit and
3004 receive on the specified frequency.  If you need to
3005 you can adjust the calibration by changing this value.
3006 Do not do this without understanding what the value
3007 means, read the appendix on calibration and/or the
3008 source code for more information.  To change a
3009 TeleDongle&#8217;s calibration, you must reprogram the unit
3010 completely.</p>
3011 </div>
3012 </div>
3013 <div class="sect3">
3014 <h4 id="_telemetryrdfaprs_enable">12.6.6. Telemetry/RDF/APRS Enable</h4>
3015 <div class="paragraph">
3016 <p>Enables the radio for transmission during
3017 flight. When disabled, the radio will not
3018 transmit anything during flight at all.</p>
3019 </div>
3020 </div>
3021 <div class="sect3">
3022 <h4 id="_limit_transmit_to_10mw">12.6.7. Limit transmit to 10mW</h4>
3023 <div class="paragraph">
3024 <p>Reduces transmit power to no more than 10mW. This is
3025 useful when operating under some UK radio regulations.</p>
3026 </div>
3027 </div>
3028 <div class="sect3">
3029 <h4 id="_telemetry_baud_rate">12.6.8. Telemetry baud rate</h4>
3030 <div class="paragraph">
3031 <p>This sets the modulation bit rate for data
3032 transmission for both telemetry and packet
3033 link mode. Lower bit rates will increase range
3034 while reducing the amount of data that can be
3035 sent and increasing battery consumption. All
3036 telemetry is done using a rate 1/2 constraint
3037 4 convolution code, so the actual data
3038 transmission rate is 1/2 of the modulation bit
3039 rate specified here.</p>
3040 </div>
3041 </div>
3042 <div class="sect3">
3043 <h4 id="_aprs_interval">12.6.9. APRS Interval</h4>
3044 <div class="paragraph">
3045 <p>How often to transmit GPS information via APRS
3046 (in seconds). When set to zero, APRS
3047 transmission is disabled.
3048 This option is
3049 available on TeleMetrum v2 or newer and TeleMega
3050 boards. TeleMetrum v1 boards cannot transmit
3051 APRS packets.
3052 Note that a single APRS packet
3053 takes nearly a full second to transmit, so
3054 enabling this option will prevent sending any
3055 other telemetry during that time.</p>
3056 </div>
3057 </div>
3058 <div class="sect3">
3059 <h4 id="_aprs_ssid">12.6.10. APRS SSID</h4>
3060 <div class="paragraph">
3061 <p>Which SSID to report in APRS packets. By
3062 default, this is set to the last digit of the
3063 serial number, but can be configured to any
3064 value from 0 to 9.</p>
3065 </div>
3066 </div>
3067 <div class="sect3">
3068 <h4 id="_aprs_format">12.6.11. APRS Format</h4>
3069 <div class="paragraph">
3070 <p>Whether to send APRS data in Compressed or
3071 Uncompressed format. Compressed format is
3072 smaller and more precise. Uncompressed
3073 format is older, but may work better with your
3074 device. The Kenwood TH-D72 only displays
3075 altitude information with Uncompressed
3076 format, while the Yaesu FT1D only displays
3077 altitude with Compressed format. Test before
3078 you fly to see which to use.</p>
3079 </div>
3080 </div>
3081 <div class="sect3">
3082 <h4 id="_aprs_offset">12.6.12. APRS Offset</h4>
3083 <div class="paragraph">
3084 <p>The delay from the top of the minute before sending
3085 the first APRS packet of the minute. Coordinating
3086 values for this parameter between multiple devices can
3087 allow a single receiver to reliably receive APRS
3088 packets from multiple devices. Note that this offset only
3089 takes effect while the GPS signal is locked so that the
3090 transmitting device knows the current time.</p>
3091 </div>
3092 </div>
3093 <div class="sect3">
3094 <h4 id="_callsign">12.6.13. Callsign</h4>
3095 <div class="paragraph">
3096 <p>This sets the call sign included in each
3097 telemetry packet. Set this as needed to
3098 conform to your local radio regulations.</p>
3099 </div>
3100 </div>
3101 <div class="sect3">
3102 <h4 id="_maximum_flight_log_size">12.6.14. Maximum Flight Log Size</h4>
3103 <div class="paragraph">
3104 <p>This sets the space (in kilobytes) allocated
3105 for each flight log. The available space will
3106 be divided into chunks of this size. A smaller
3107 value will allow more flights to be stored, a
3108 larger value will record data from longer
3109 flights.</p>
3110 </div>
3111 </div>
3112 <div class="sect3">
3113 <h4 id="_ignitor_firing_mode">12.6.15. Ignitor Firing Mode</h4>
3114 <div class="paragraph">
3115 <p>This configuration parameter allows the two standard ignitor
3116 channels (Apogee and Main) to be used in different
3117 configurations.</p>
3118 </div>
3119 <div class="dlist">
3120 <dl>
3121 <dt class="hdlist1">Dual Deploy</dt>
3122 <dd>
3123 <p>This is the usual mode of operation; the
3124 'apogee' channel is fired at apogee and the
3125 'main' channel at the height above ground
3126 specified by the 'Main Deploy Altitude' during
3127 descent.</p>
3128 </dd>
3129 <dt class="hdlist1">Redundant Apogee</dt>
3130 <dd>
3131 <p>This fires both channels at apogee, the
3132 'apogee' channel first followed after a two
3133 second delay by the 'main' channel.</p>
3134 </dd>
3135 <dt class="hdlist1">Redundant Main</dt>
3136 <dd>
3137 <p>This fires both channels at the height above
3138 ground specified by the Main Deploy Altitude
3139 setting during descent. The 'apogee' channel
3140 is fired first, followed after a two second
3141 delay by the 'main' channel.</p>
3142 </dd>
3143 <dt class="hdlist1">Separation &amp; Apogee</dt>
3144 <dd>
3145 <p>This fires the 'main' channel when the first motor
3146 burns out and fires the 'apogee' charge at apogee.</p>
3147 </dd>
3148 </dl>
3149 </div>
3150 </div>
3151 <div class="sect3">
3152 <h4 id="_pad_orientation">12.6.16. Pad Orientation</h4>
3153 <div class="paragraph">
3154 <p>Because they include accelerometers,
3155 TeleMetrum, TeleMega and EasyMega are
3156 sensitive to the orientation of the board. By
3157 default, they expect the antenna end to point
3158 forward. This parameter allows that default to
3159 be changed, permitting the board to be mounted
3160 with the antenna pointing aft instead.</p>
3161 </div>
3162 <div class="dlist">
3163 <dl>
3164 <dt class="hdlist1">Antenna Up</dt>
3165 <dd>
3166 <p>In this mode, the antenna (or beeper, for devices
3167 without an antenna) of the flight computer must point
3168 forward, in line with the expected flight path.</p>
3169 </dd>
3170 <dt class="hdlist1">Antenna Down</dt>
3171 <dd>
3172 <p>In this mode, the antenna (or beeper, for devices
3173 without an antenna) end of the flight computer must
3174 point aft, in line with the expected flight path.</p>
3175 </dd>
3176 </dl>
3177 </div>
3178 </div>
3179 <div class="sect3">
3180 <h4 id="_beeper_frequency">12.6.17. Beeper Frequency</h4>
3181 <div class="paragraph">
3182 <p>The beeper on all Altus Metrum flight
3183 computers works best at 4000Hz, however if you
3184 have more than one flight computer in a single
3185 airframe, having all of them sound at the same
3186 frequency can be confusing. This parameter
3187 lets you adjust the base beeper frequency
3188 value.</p>
3189 </div>
3190 </div>
3191 <div class="sect3">
3192 <h4 id="_logging_trigger_motion">12.6.18. Logging Trigger Motion</h4>
3193 <div class="paragraph">
3194 <p>This sets the amount of motion that TeleGPS
3195 needs to see before logging the new
3196 position. Motions smaller than this are
3197 skipped, which saves storage space.</p>
3198 </div>
3199 </div>
3200 <div class="sect3">
3201 <h4 id="_position_reporting_interval">12.6.19. Position Reporting Interval</h4>
3202 <div class="paragraph">
3203 <p>The interval between TeleGPS position reports,
3204 both over the air and in the log. Increase
3205 this to reduce the frequency of radio
3206 transmissions and the length of time available
3207 in the log.</p>
3208 </div>
3209 </div>
3210 <div class="sect3">
3211 <h4 id="_calibrate_accelerometer">12.6.20. Calibrate Accelerometer</h4>
3212 <div class="paragraph">
3213 <p>This opens a separate window to recalibrate the
3214 accelerometers. Follow the instructions, orienting the
3215 flight computer with the antenna end, or end opposite
3216 the screw terminals, in the case of EasyMega, first up
3217 and then down.</p>
3218 </div>
3219 <div class="paragraph">
3220 <p>When the calibration is complete, return to the
3221 Configure Altimeter window and save the new
3222 calibration values.</p>
3223 </div>
3224 </div>
3225 <div class="sect3">
3226 <h4 id="_configure_pyro_channels">12.6.21. Configure Pyro Channels</h4>
3227 <div class="imageblock">
3228 <div class="content">
3229 <img src="configure-pyro.png" alt="configure pyro" width="400">
3230 </div>
3231 <div class="title">Figure 23. Additional Pyro Channel Configuration</div>
3232 </div>
3233 <div class="paragraph">
3234 <p>This opens a separate window to configure the
3235 additional pyro channels available on TeleMega,
3236 EasyMega and EasyTimer.  One column is presented for
3237 each channel. Each row represents a single
3238 parameter, if enabled the parameter must meet
3239 the specified test for the pyro channel to be
3240 fired.</p>
3241 </div>
3242 <div class="paragraph">
3243 <p>Select conditions and set the related value;
3244 the pyro channel will be activated when <strong>all</strong>
3245 of the conditions are met. Each pyro channel
3246 has a separate set of configuration values, so
3247 you can use different values for the same
3248 condition with different channels.</p>
3249 </div>
3250 <div class="paragraph">
3251 <p>At the bottom of the window, the 'Pyro Firing
3252 Time' configuration sets the length of time
3253 (in seconds) which each of these pyro channels
3254 will fire for.</p>
3255 </div>
3256 <div class="paragraph">
3257 <p>Once you have selected the appropriate
3258 configuration for all of the necessary pyro
3259 channels, you can save the pyro configuration
3260 along with the rest of the flight computer
3261 configuration by pressing the 'Save' button in
3262 the main Configure Flight Computer window.</p>
3263 </div>
3264 <div class="dlist">
3265 <dl>
3266 <dt class="hdlist1">Vertical Acceleration</dt>
3267 <dd>
3268 <p>Select a value, and then choose whether
3269 acceleration away from the ground should be above or below that
3270 value. Acceleration is positive upwards, so accelerating towards the
3271 ground would produce negative numbers. Acceleration during descent is
3272 noisy and inaccurate, so be careful when using it during these phases
3273 of the flight.</p>
3274 </dd>
3275 <dt class="hdlist1">Ascent rate</dt>
3276 <dd>
3277 <p>Select a value, and then choose whether ascent rate
3278 should be above or below that value. Ascent rate is positive upwards,
3279 so moving towards the ground would produce negative numbers. Ascent
3280 rate during descent is a bit noisy and so be careful when using it
3281 during these phases of the flight.</p>
3282 </dd>
3283 <dt class="hdlist1">Height above pad</dt>
3284 <dd>
3285 <p>Select a value, and then choose whether the height
3286 above the launch pad should be above or below that value. Note that
3287 because EasyTimer has only a low-range accelerometer and no barometer,
3288 this value will not be very reliable on that device.</p>
3289 </dd>
3290 <dt class="hdlist1">Orientation</dt>
3291 <dd>
3292 <p>TeleMega, EasyMega and EasyTimer contain a 3-axis
3293 gyroscope and accelerometer which is used to compute the orientation
3294 of the rocket. A record of orientations over the last 0.64 seconds is
3295 kept and the largest value within this period is compared with the
3296 specified value. Note that the tilt angle is not the change in angle
3297 from the launch pad, but rather absolute relative to gravity—the
3298 3-axis accelerometer is used to compute the angle of the rocket on the
3299 launch pad and initialize the system.</p>
3300 </dd>
3301 </dl>
3302 </div>
3303 <div class="admonitionblock note">
3304 <table>
3305 <tr>
3306 <td class="icon">
3307 <img src="./images/icons/note.svg" alt="Note">
3308 </td>
3309 <td class="content">
3310 <div class="paragraph">
3311 <p>Because this value is computed by integrating
3312 rate gyros, it gets progressively less
3313 accurate as the flight goes on. It should have
3314 an accumulated error of less than 0.2°/second
3315 (after 10 seconds of flight, the error should
3316 be less than 2°).</p>
3317 </div>
3318 <div class="paragraph">
3319 <p>The usual use of the orientation configuration
3320 is to ensure that the rocket is traveling
3321 mostly upwards when deciding whether to ignite
3322 air starts or additional stages. For that,
3323 choose a reasonable maximum angle (like 20°)
3324 and set the motor igniter to require an angle
3325 of less than that value.</p>
3326 </div>
3327 </td>
3328 </tr>
3329 </table>
3330 </div>
3331 <div class="dlist">
3332 <dl>
3333 <dt class="hdlist1">Flight Time</dt>
3334 <dd>
3335 <p>Time since launch. Select a value and choose whether to
3336 activate the pyro channel before or after that amount of time.</p>
3337 </dd>
3338 </dl>
3339 </div>
3340 <div class="admonitionblock warning">
3341 <table>
3342 <tr>
3343 <td class="icon">
3344 <img src="./images/icons/warning.svg" alt="Warning">
3345 </td>
3346 <td class="content">
3347 Firmware versions older than 1.8.6 have a bug which resets the time
3348 since launch to zero each time a motor starts burning. Update firmware
3349 to get the correct behavior.
3350 </td>
3351 </tr>
3352 </table>
3353 </div>
3354 <div class="admonitionblock warning">
3355 <table>
3356 <tr>
3357 <td class="icon">
3358 <img src="./images/icons/warning.svg" alt="Warning">
3359 </td>
3360 <td class="content">
3361 Firmware versions older than 1.9.8 cannot use times longer
3362 than 327.67 seconds. Update firmware if you need a longer time.
3363 </td>
3364 </tr>
3365 </table>
3366 </div>
3367 <div class="dlist">
3368 <dl>
3369 <dt class="hdlist1">Ascending</dt>
3370 <dd>
3371 <p>A deprecated configuration value which was the same as
3372 setting Ascent rate &gt; 0. Existing configurations using this will be
3373 cleared and must be reconfigured by the user.</p>
3374 </dd>
3375 <dt class="hdlist1">Descending</dt>
3376 <dd>
3377 <p>A deprecated configuration value which was the same as
3378 setting Ascent rate &lt; 0. Existing configurations using this will be
3379 cleared and must be reconfigured by the user.</p>
3380 </dd>
3381 <dt class="hdlist1">After Motor</dt>
3382 <dd>
3383 <p>The flight software counts each time the rocket starts
3384 accelerating and then decelerating (presumably due to a motor or
3385 motors burning). Use this value for multi-staged or multi-airstart
3386 launches. As of version 1.8.6 firmware, this checks to make sure at
3387 least this many motors have burned. Before version 1.8.6, this checked
3388 to make sure that exactly this many motors had burned.</p>
3389 </dd>
3390 <dt class="hdlist1">Delay</dt>
3391 <dd>
3392 <p>Once the other parameters all become true, a timer is
3393 started for the specified amount of time. While the timer is running,
3394 the other parameters are checked repeatedly and if any of them become
3395 false, then the pyro channel is disabled and will not fire. If the
3396 timer expires and all of the other parameters have remained true for
3397 the entire time, then the pyro channel is fired.</p>
3398 </dd>
3399 </dl>
3400 </div>
3401 <div class="admonitionblock warning">
3402 <table>
3403 <tr>
3404 <td class="icon">
3405 <img src="./images/icons/warning.svg" alt="Warning">
3406 </td>
3407 <td class="content">
3408 Firmware versions older than 1.9.8 cannot use delays longer
3409 than 327.67 seconds. Update firmware if you need a longer delay.
3410 </td>
3411 </tr>
3412 </table>
3413 </div>
3414 <div class="dlist">
3415 <dl>
3416 <dt class="hdlist1">Flight State</dt>
3417 <dd>
3418 <p>The flight software tracks the flight
3419 through a sequence of states:</p>
3420 <div class="ulist">
3421 <ul>
3422 <li>
3423 <p>Boost. The motor has lit and the rocket is
3424 accelerating upwards. Ascent rate will be greater than zero.
3425 Vertical acceleration will be greater than zero.</p>
3426 </li>
3427 <li>
3428 <p>Fast. The motor has burned out and the
3429 rocket is decelerating, but it is going
3430 faster than 200m/s. Ascent rate will be greater than zero. Vertical
3431 acceleration will be less than zero.</p>
3432 </li>
3433 <li>
3434 <p>Coast. The rocket is still moving upwards
3435 and decelerating, but the Ascent rate is less
3436 than 200m/s. Ascent rate will greater than zero. Vertical
3437 acceleration will be less than zero.</p>
3438 </li>
3439 <li>
3440 <p>Drogue. The rocket has reached apogee and is heading back down, but
3441 is above the configured Main altitude. Ascent rate will be less
3442 than zero during this state. Vertical acceleration will be negative
3443 until the rocket reaches a terminal descent rate, at which point
3444 Vertical acceleration will be zero. Both Ascent rate and Vertical
3445 acceleration are very noisy in this state, so be careful when
3446 trying to use them to control pyro channels. This state selection
3447 is not available on EasyTimer.</p>
3448 </li>
3449 <li>
3450 <p>Main. The rocket is still descending, and
3451 is below the Main altitude. Ascent rate will be less than zero
3452 during this state. Vertical acceleration may be briefly less than
3453 zero as the rocket slows from drogue descent to main descent, but
3454 it will settle down to a zero value once the rocket has reached the
3455 terminal velocity under the main chute. Ascent rate and Vertical
3456 acceleration should be much less noisy once the main chute has
3457 deployed. This state selection is not available on EasyTimer.</p>
3458 </li>
3459 <li>
3460 <p>Landed. The rocket is no longer moving.</p>
3461 </li>
3462 </ul>
3463 </div>
3464 </dd>
3465 </dl>
3466 </div>
3467 <div class="paragraph">
3468 <p>You can select a state to limit when the pyro channel may activate;
3469 note that the check is based on when the rocket transitions <strong>into</strong> the
3470 state, and so checking for “greater than Boost” means that the rocket
3471 is currently in boost or some later state.</p>
3472 </div>
3473 <div class="paragraph">
3474 <p>When a motor burns out, the rocket enters either Fast or Coast state
3475 (depending on how fast it is moving). If the computer detects upwards
3476 acceleration again, it will move back to Boost state.</p>
3477 </div>
3478 </div>
3479 </div>
3480 <div class="sect2">
3481 <h3 id="_configure_altosui">12.7. Configure AltosUI</h3>
3482 <div class="imageblock">
3483 <div class="content">
3484 <img src="configure-altosui.png" alt="configure altosui" width="230">
3485 </div>
3486 <div class="title">Figure 24. Configure AltosUI Dialog</div>
3487 </div>
3488 <div class="paragraph">
3489 <p>This button presents a dialog so that you can
3490 configure the AltosUI global settings.</p>
3491 </div>
3492 <div class="sect3">
3493 <h4 id="_voice_settings">12.7.1. Voice Settings</h4>
3494 <div class="paragraph">
3495 <p>AltosUI provides voice announcements during
3496 flight so that you can keep your eyes on the
3497 sky and still get information about the
3498 current flight status. However, sometimes you
3499 don&#8217;t want to hear them.</p>
3500 </div>
3501 <div class="dlist">
3502 <dl>
3503 <dt class="hdlist1">Enable</dt>
3504 <dd>
3505 <p>Turns all voice announcements on and off</p>
3506 </dd>
3507 <dt class="hdlist1">Test Voice</dt>
3508 <dd>
3509 <p>Plays a short message allowing you to verify
3510 that the audio system is working and the volume settings
3511 are reasonable</p>
3512 </dd>
3513 </dl>
3514 </div>
3515 </div>
3516 <div class="sect3">
3517 <h4 id="_log_directory">12.7.2. Log Directory</h4>
3518 <div class="paragraph">
3519 <p>AltosUI logs all telemetry data and saves all
3520 flash data to this directory. This
3521 directory is also used as the staring point
3522 when selecting data files for display or
3523 export.</p>
3524 </div>
3525 <div class="paragraph">
3526 <p>Click on the directory name to bring up a
3527 directory choosing dialog, select a new
3528 directory and click 'Select Directory' to
3529 change where AltosUI reads and writes data
3530 files.</p>
3531 </div>
3532 </div>
3533 <div class="sect3">
3534 <h4 id="_callsign_2">12.7.3. Callsign</h4>
3535 <div class="paragraph">
3536 <p>This value is transmitted in each command
3537 packet sent from TeleDongle and received from
3538 an altimeter.  It is not used in telemetry
3539 mode, as the callsign configured in the
3540 altimeter board is included in all telemetry
3541 packets.  Configure this with the AltosUI
3542 operators call sign as needed to comply with
3543 your local radio regulations.</p>
3544 </div>
3545 <div class="paragraph">
3546 <p>Note that to successfully command a flight
3547 computer over the radio (to configure the
3548 altimeter, monitor idle, or fire pyro
3549 charges), the callsign configured here must
3550 exactly match the callsign configured in the
3551 flight computer.  This matching is case
3552 sensitive.</p>
3553 </div>
3554 </div>
3555 <div class="sect3">
3556 <h4 id="_imperial_units">12.7.4. Imperial Units</h4>
3557 <div class="paragraph">
3558 <p>This switches between metric units (meters)
3559 and imperial units (feet and miles). This
3560 affects the display of values use during
3561 flight monitoring, configuration, data
3562 graphing and all of the voice
3563 announcements. It does not change the units
3564 used when exporting to CSV files, those are
3565 always produced in metric units.</p>
3566 </div>
3567 </div>
3568 <div class="sect3">
3569 <h4 id="_serial_debug">12.7.5. Serial Debug</h4>
3570 <div class="paragraph">
3571 <p>This causes all communication with a connected
3572 device to be dumped to the console from which
3573 AltosUI was started. If you&#8217;ve started it from
3574 an icon or menu entry, the output will simply
3575 be discarded. This mode can be useful to debug
3576 various serial communication issues.</p>
3577 </div>
3578 </div>
3579 <div class="sect3">
3580 <h4 id="_font_size">12.7.6. Font size</h4>
3581 <div class="paragraph">
3582 <p>Selects the set of fonts used in the flight
3583 monitor window. Choose between the small,
3584 medium and large sets.</p>
3585 </div>
3586 </div>
3587 <div class="sect3">
3588 <h4 id="_look_feel">12.7.7. Look &amp; feel</h4>
3589 <div class="paragraph">
3590 <p>Switches between the available Java user
3591 interface appearances. The default selection
3592 is supposed to match the native window system
3593 appearance for the target platform.</p>
3594 </div>
3595 </div>
3596 <div class="sect3">
3597 <h4 id="_menu_position">12.7.8. Menu position</h4>
3598 <div class="paragraph">
3599 <p>Selects the initial position for the main
3600 AltosUI window that includes all of the
3601 command buttons.</p>
3602 </div>
3603 </div>
3604 <div class="sect3">
3605 <h4 id="_map_cache_size">12.7.9. Map Cache Size</h4>
3606 <div class="paragraph">
3607 <p>Sets the number of map 'tiles' kept in memory
3608 while the application is running. More tiles
3609 consume more memory, but will make panning
3610 around the map faster.</p>
3611 </div>
3612 </div>
3613 <div class="sect3">
3614 <h4 id="_manage_frequencies">12.7.10. Manage Frequencies</h4>
3615 <div class="paragraph">
3616 <p>This brings up a dialog where you can
3617 configure the set of frequencies shown in the
3618 various frequency menus. You can add as many
3619 as you like, or even reconfigure the default
3620 set. Changing this list does not affect the
3621 frequency settings of any devices, it only
3622 changes the set of frequencies shown in the
3623 menus.</p>
3624 </div>
3625 </div>
3626 </div>
3627 <div class="sect2">
3628 <h3 id="_configure_groundstation">12.8. Configure Groundstation</h3>
3629 <div class="imageblock">
3630 <div class="content">
3631 <img src="configure-groundstation.png" alt="configure groundstation" width="300">
3632 </div>
3633 <div class="title">Figure 25. Configure Groundstation Dialog</div>
3634 </div>
3635 <div class="paragraph">
3636 <p>Select this button and then select a TeleDongle or
3637 TeleBT Device from the list provided.</p>
3638 </div>
3639 <div class="paragraph">
3640 <p>The first few lines of the dialog provide information
3641 about the connected device, including the product
3642 name, software version and hardware serial
3643 number. Below that are the individual configuration
3644 entries.</p>
3645 </div>
3646 <div class="paragraph">
3647 <p>Note that TeleDongle and TeleBT don&#8217;t save any
3648 configuration data, the settings here are recorded on
3649 the local machine in the Java preferences
3650 database. Moving the device to another machine, or
3651 using a different user account on the same machine
3652 will cause settings made here to have no effect.</p>
3653 </div>
3654 <div class="paragraph">
3655 <p>At the bottom of the dialog, there are three
3656 buttons:</p>
3657 </div>
3658 <div class="dlist">
3659 <dl>
3660 <dt class="hdlist1">Save</dt>
3661 <dd>
3662 <p>This writes any changes to the local Java
3663 preferences file. If you don&#8217;t press this
3664 button, any changes you make will be lost.</p>
3665 </dd>
3666 <dt class="hdlist1">Reset</dt>
3667 <dd>
3668 <p>This resets the dialog to the most recently
3669 saved values, erasing any changes you have
3670 made.</p>
3671 </dd>
3672 <dt class="hdlist1">Close</dt>
3673 <dd>
3674 <p>This closes the dialog. Any unsaved changes
3675 will be lost.</p>
3676 </dd>
3677 </dl>
3678 </div>
3679 <div class="paragraph">
3680 <p>The rest of the dialog contains the parameters
3681 to be configured.</p>
3682 </div>
3683 <div class="sect3">
3684 <h4 id="_frequency_2">12.8.1. Frequency</h4>
3685 <div class="paragraph">
3686 <p>This configures the frequency to use for both
3687 telemetry and packet command mode. Set this
3688 before starting any operation involving packet
3689 command mode so that it will use the right
3690 frequency. Telemetry monitoring mode also
3691 provides a menu to change the frequency, and
3692 that menu also sets the same Java preference
3693 value used here.</p>
3694 </div>
3695 </div>
3696 <div class="sect3">
3697 <h4 id="_rf_calibration_2">12.8.2. RF Calibration</h4>
3698 <div class="paragraph">
3699 <p>The radios in every Altus Metrum device are
3700 calibrated at the factory to ensure that they
3701 transmit and receive on the specified
3702 frequency.  To change a TeleDongle or TeleBT&#8217;s
3703 calibration, you must reprogram the unit
3704 completely, so this entry simply shows the
3705 current value and doesn&#8217;t allow any changes.</p>
3706 </div>
3707 </div>
3708 <div class="sect3">
3709 <h4 id="_telemetry_rate">12.8.3. Telemetry Rate</h4>
3710 <div class="paragraph">
3711 <p>This lets you match the telemetry and packet
3712 link rate from the transmitter. If they don&#8217;t
3713 match, the device won&#8217;t receive any data.</p>
3714 </div>
3715 </div>
3716 </div>
3717 <div class="sect2">
3718 <h3 id="_flash_image">12.9. Flash Image</h3>
3719 <div class="paragraph">
3720 <p>This reprograms Altus Metrum devices with new
3721 firmware.
3722 TeleMetrum v1.x, TeleDongle v0.2, TeleMini v1.0
3723 and TeleBT v1.0 are all reprogrammed by using another
3724 similar unit as a programming dongle (pair
3725 programming).
3726 TeleMega, EasyMega, TeleMetrum v2 or newer,
3727 EasyMini, EasyTimer, TeleBT v3 or newer and TeleDongle v3
3728 or newer are all
3729 programmed directly
3730 over USB (self programming). Please read
3731 the directions for flashing devices in
3732 <a href="#_updating_device_firmware">Updating Device Firmware</a>.</p>
3733 </div>
3734 </div>
3735 <div class="sect2">
3736 <h3 id="_fire_igniter">12.10. Fire Igniter</h3>
3737 <div class="imageblock">
3738 <div class="content">
3739 <img src="fire-igniter.png" alt="fire igniter" width="120">
3740 </div>
3741 <div class="title">Figure 26. Fire Igniter Window</div>
3742 </div>
3743 <div class="paragraph">
3744 <p>This activates the igniter circuits in the flight
3745 computer to help test recovery systems
3746 deployment.
3747 Because this command can operate over the
3748 Packet Command Link, you can prepare the rocket as for
3749 flight and then test the recovery system without
3750 needing to snake wires inside the air-frame.</p>
3751 </div>
3752 <div class="paragraph">
3753 <p>Selecting the 'Fire Igniter' button brings up the
3754 usual device selection dialog. Pick the desired
3755 device. This brings up another window which shows the
3756 current continuity test status for all of the pyro
3757 channels.</p>
3758 </div>
3759 <div class="paragraph">
3760 <p>Next, select the desired igniter to fire. This will
3761 enable the 'Arm' button.</p>
3762 </div>
3763 <div class="paragraph">
3764 <p>Select the 'Arm' button. This enables the 'Fire'
3765 button. The word 'Arm' is replaced by a countdown
3766 timer indicating that you have 10 seconds to press the
3767 'Fire' button or the system will deactivate, at which
3768 point you start over again at selecting the desired
3769 igniter.</p>
3770 </div>
3771 </div>
3772 <div class="sect2">
3773 <h3 id="_scan_channels">12.11. Scan Channels</h3>
3774 <div class="imageblock">
3775 <div class="content">
3776 <img src="scan-channels.png" alt="scan channels" width="300">
3777 </div>
3778 <div class="title">Figure 27. Scan Channels Window</div>
3779 </div>
3780 <div class="paragraph">
3781 <p>This listens for telemetry packets on all of the
3782 configured frequencies, displaying information about
3783 each device it receives a packet from. You can select
3784 which of the baud rates and telemetry formats should
3785 be tried; by default, it only listens at 38400 baud
3786 with the standard telemetry format used in v1.0 and
3787 later firmware.</p>
3788 </div>
3789 </div>
3790 <div class="sect2">
3791 <h3 id="_load_maps">12.12. Load Maps</h3>
3792 <div class="imageblock">
3793 <div class="content">
3794 <img src="load-maps.png" alt="load maps" width="500">
3795 </div>
3796 <div class="title">Figure 28. Load Maps Window</div>
3797 </div>
3798 <div class="paragraph">
3799 <p>Before heading out to a new launch site, you can use
3800 this to load satellite images in case you don&#8217;t have
3801 internet connectivity at the site.  Try not to wait
3802 until the last minute, though, particularly if you&#8217;re
3803 heading to a major launch.  If too many people are
3804 all trying to download map data at once, Google may
3805 limit access until the next day.</p>
3806 </div>
3807 <div class="paragraph">
3808 <p>There&#8217;s a drop-down menu of launch sites we know
3809 about; if your favorites aren&#8217;t there, please let us
3810 know the lat/lon and name of the site. The contents of
3811 this list are actually downloaded from our server at
3812 run-time, so as new sites are sent in, they&#8217;ll get
3813 automatically added to this list.  If the launch site
3814 isn&#8217;t in the list, you can manually enter the lat/lon
3815 values</p>
3816 </div>
3817 <div class="paragraph">
3818 <p>There are four different kinds of maps you can view;
3819 you can select which to download by selecting as many
3820 as you like from the available types:</p>
3821 </div>
3822 <div class="dlist">
3823 <dl>
3824 <dt class="hdlist1">Hybrid</dt>
3825 <dd>
3826 <p>A combination of satellite imagery and road data. This
3827 is the default view.</p>
3828 </dd>
3829 <dt class="hdlist1">Satellite</dt>
3830 <dd>
3831 <p>Just the satellite imagery without any annotation.</p>
3832 </dd>
3833 <dt class="hdlist1">Roadmap</dt>
3834 <dd>
3835 <p>Roads, political boundaries and a few geographic
3836 features.</p>
3837 </dd>
3838 <dt class="hdlist1">Terrain</dt>
3839 <dd>
3840 <p>Contour intervals and shading that show hills and
3841 valleys.</p>
3842 </dd>
3843 </dl>
3844 </div>
3845 <div class="paragraph">
3846 <p>You can specify the range of zoom levels to download;
3847 smaller numbers show more area with less
3848 resolution. The default level, 0, shows about
3849 3m/pixel. One zoom level change doubles or halves that
3850 number. Larger zoom levels show more detail, smaller
3851 zoom levels less.</p>
3852 </div>
3853 <div class="paragraph">
3854 <p>The Map Radius value sets how large an area around the
3855 center point to download. Select a value large enough
3856 to cover any plausible flight from that site. Be aware
3857 that loading a large area with a high maximum zoom
3858 level can attempt to download a lot of data. Loading
3859 hybrid maps with a 10km radius at a minimum zoom of -2
3860 and a maximum zoom of 2 consumes about 120MB of
3861 space. Terrain and road maps consume about 1/10 as
3862 much space as satellite or hybrid maps.</p>
3863 </div>
3864 <div class="paragraph">
3865 <p>Clicking the 'Load Map' button will fetch images from
3866 Google Maps; note that Google limits how many images
3867 you can fetch at once, so if you load more than one
3868 launch site, you may get some gray areas in the map
3869 which indicate that Google is tired of sending data to
3870 you. Try again later.</p>
3871 </div>
3872 </div>
3873 <div class="sect2">
3874 <h3 id="_monitor_idle">12.13. Monitor Idle</h3>
3875 <div class="imageblock">
3876 <div class="content">
3877 <img src="monitor-idle.png" alt="monitor idle" width="500">
3878 </div>
3879 <div class="title">Figure 29. Monitor Idle Window</div>
3880 </div>
3881 <div class="paragraph">
3882 <p>This brings up a dialog similar to the Monitor Flight
3883 UI, except it works with the altimeter in “idle” mode
3884 by sending query commands to discover the current
3885 state rather than listening for telemetry
3886 packets. Because this uses command mode, it needs to
3887 have the TeleDongle and flight computer callsigns
3888 match exactly. If you can receive telemetry, but
3889 cannot manage to run Monitor Idle, then it&#8217;s very
3890 likely that your callsigns are different in some way.</p>
3891 </div>
3892 <div class="paragraph">
3893 <p>You can change the frequency and callsign used to
3894 communicate with the flight computer; they must both
3895 match the configuration in the flight computer
3896 exactly.</p>
3897 </div>
3898 </div>
3899 </div>
3900 </div>
3901 <div class="sect1">
3902 <h2 id="_altosdroid">13. AltosDroid</h2>
3903 <div class="sectionbody">
3904 <div class="paragraph">
3905 <p>AltosDroid provides the same flight monitoring capabilities as
3906 AltosUI, but runs on Android devices. AltosDroid is designed
3907 to connect to a TeleBT receiver over Bluetooth™ and (on
3908 Android devices supporting USB On-the-go) TeleDongle and
3909 TeleBT devices over USB. AltosDroid monitors telemetry data,
3910 logging it to internal storage in the Android device, and
3911 presents that data in a UI similar to the 'Monitor Flight'
3912 window in AltosUI.</p>
3913 </div>
3914 <div class="paragraph">
3915 <p>This manual will explain how to configure AltosDroid, connect
3916 to TeleBT or TeleDongle, operate the flight monitoring
3917 interface and describe what the displayed data means.</p>
3918 </div>
3919 <div class="sect2">
3920 <h3 id="_installing_altosdroid">13.1. Installing AltosDroid</h3>
3921 <div class="paragraph">
3922 <p>AltosDroid is available from the Google Play store. To
3923 install it on your Android device, open the Google
3924 Play Store application and search for
3925 “altosdroid”. Make sure you don&#8217;t have a space between
3926 “altos” and “droid” or you probably won&#8217;t find what
3927 you want. That should bring you to the right page from
3928 which you can download and install the application.</p>
3929 </div>
3930 </div>
3931 <div class="sect2">
3932 <h3 id="_charging_telebt_battery">13.2. Charging TeleBT Battery</h3>
3933 <div class="paragraph">
3934 <p>Before using TeleBT with AltosDroid, make sure the
3935 internal TeleBT battery is charged.  To do this,
3936 attach a micro USB cable from a computer or other USB
3937 power source to TeleBT.  A dual LED on the circuit
3938 board should illuminate, showing red while the battery
3939 is charging, green when charging is completed, and
3940 both red and green on at the same time if there is a
3941 battery fault.</p>
3942 </div>
3943 </div>
3944 <div class="sect2">
3945 <h3 id="_connecting_to_telebt_over_bluetooth">13.3. Connecting to TeleBT over Bluetooth™</h3>
3946 <div class="paragraph">
3947 <p>Note that when turning TeleBT on, you may see a brief LED
3948 flash, but there will be no "activity" indicated until you
3949 pair with the device from AltosDroid.</p>
3950 </div>
3951 <div class="paragraph">
3952 <p>Press the Android 'Menu' button or soft-key to see the
3953 configuration options available. Select the 'Connect a
3954 device' option and then the 'Scan for devices' entry
3955 at the bottom to look for your TeleBT device. Select
3956 your device, and when it asks for the code, enter
3957 '1234'.</p>
3958 </div>
3959 <div class="paragraph">
3960 <p>Subsequent connections will not require you to enter
3961 that code, and your 'paired' device will appear in the
3962 list without scanning.</p>
3963 </div>
3964 </div>
3965 <div class="sect2">
3966 <h3 id="_connecting_to_teledongle_or_telebt_over_usb">13.4. Connecting to TeleDongle or TeleBT over USB</h3>
3967 <div class="paragraph">
3968 <p>Get a special USB On-the-go adapter cable. These
3969 cables have a USB micro-B male connector on one end
3970 and a standard A female connector on the other
3971 end. Plug in your TeleDongle or TeleBT device to the
3972 adapter cable and the adapter cable into your phone
3973 and AltosDroid should automatically start up. If it
3974 doesn&#8217;t, the most likely reason is that your Android
3975 device doesn&#8217;t support USB On-the-go.</p>
3976 </div>
3977 </div>
3978 <div class="sect2">
3979 <h3 id="_altosdroid_menu">13.5. AltosDroid Menu</h3>
3980 <div class="paragraph">
3981 <p>The main AltosDroid menu has a selection of operation
3982 and configuration options.</p>
3983 </div>
3984 <div class="dlist">
3985 <dl>
3986 <dt class="hdlist1">Connect a device</dt>
3987 <dd>
3988 <p>Offers a menu of available TeleBT devices, and an
3989 option to scan for additional devices.</p>
3990 </dd>
3991 <dt class="hdlist1">Disconnect device</dt>
3992 <dd>
3993 <p>Disconnects the current TeleBT or TeleDongle
3994 device. You can reconnect TeleBT over bluetooth by
3995 using Connect a Device. You can reconnect a USB device
3996 by unplugging it and then plugging it back in.</p>
3997 </dd>
3998 <dt class="hdlist1">Select radio frequency</dt>
3999 <dd>
4000 <p>This selects which frequency to listen on by bringing
4001 up a menu of pre-set radio frequencies. Pick the one
4002 which matches your altimeter.</p>
4003 </dd>
4004 <dt class="hdlist1">Select Tracker</dt>
4005 <dd>
4006 <p>Switches the information displays to show data for a
4007 different transmitting device. The map will always
4008 show all of the devices in view. Trackers are shown
4009 and selected by serial number, so make sure you note
4010 the serial number of devices in each airframe.</p>
4011 </dd>
4012 <dt class="hdlist1">Delete Track</dt>
4013 <dd>
4014 <p>Deletes all information about a transmitting device.</p>
4015 </dd>
4016 <dt class="hdlist1">Setup</dt>
4017 <dd>
4018 <p>Offers additional configuration operations. See
4019 <a href="#_setup">Setup</a>.</p>
4020 </dd>
4021 <dt class="hdlist1">Idle Mode</dt>
4022 <dd>
4023 <p>Communicate with an altimeter in Idle mode. See <a href="#_idle_mode">Idle Mode</a></p>
4024 </dd>
4025 <dt class="hdlist1">Quit</dt>
4026 <dd>
4027 <p>Shuts down AltosDroid.</p>
4028 </dd>
4029 </dl>
4030 </div>
4031 </div>
4032 <div class="sect2">
4033 <h3 id="_setup">13.6. Setup</h3>
4034 <div class="dlist">
4035 <dl>
4036 <dt class="hdlist1">Telemetry Rate</dt>
4037 <dd>
4038 <p>Altus Metrum transmitters can be configured to operate
4039 at lower data rates to improve transmission range. If
4040 you have configured your device to do this, this menu
4041 item allows you to change the receiver to match.</p>
4042 </dd>
4043 <dt class="hdlist1">Units</dt>
4044 <dd>
4045 <p>Selects which units used to report values.</p>
4046 </dd>
4047 <dt class="hdlist1">Map Type</dt>
4048 <dd>
4049 <p>Displays a menu of map types and lets you select
4050 one. Hybrid maps include satellite images with a
4051 roadmap overlaid. Satellite maps dispense with the
4052 roadmap overlay. Roadmap shows just the roads. Terrain
4053 includes roads along with shadows indicating changes
4054 in elevation, and other geographical features.</p>
4055 </dd>
4056 <dt class="hdlist1">Map Source</dt>
4057 <dd>
4058 <p>Select between online and offline maps. Online maps
4059 will show a 'move to current position' icon in the
4060 upper right corner, while offline maps will have
4061 copyright information all over the map. Otherwise,
4062 they&#8217;re pretty similar.</p>
4063 </dd>
4064 <dt class="hdlist1">Preload Maps</dt>
4065 <dd>
4066 <p>Brings up a dialog allowing you to download offline
4067 map tiles so that you can have maps available even if
4068 you have no network connectivity at the launch site.</p>
4069 </dd>
4070 <dt class="hdlist1">Manage Frequencies</dt>
4071 <dd>
4072 <p>This presents a dialog containing the current list of
4073 frequencies that will be show in the 'Select radio
4074 frequency' menu. You can change the label for existing
4075 frequencies, delete or add new frequencies.</p>
4076 </dd>
4077 </dl>
4078 </div>
4079 </div>
4080 <div class="sect2">
4081 <h3 id="_idle_mode">13.7. Idle Mode</h3>
4082 <div class="dlist">
4083 <dl>
4084 <dt class="hdlist1">Callsign</dt>
4085 <dd>
4086 <p>Lets you configure the callsign used by AltosDroid to
4087 communicate with the flight computer. The callsign on
4088 the two devices must match or the communication will
4089 fail. This provides a modest amount of protection
4090 against accidentally controlling another persons
4091 flight computer.</p>
4092 </dd>
4093 <dt class="hdlist1">Monitor</dt>
4094 <dd>
4095 <p>This provides similar information to monitoring the
4096 telemetry stream from a flight computer in flight
4097 mode. The title of the application will change to
4098 include (idle) so you can tell this mode is active.</p>
4099 </dd>
4100 <dt class="hdlist1">Reboot</dt>
4101 <dd>
4102 <p>Remotely reboots the flight computer. This is useful
4103 when the flight computers turned on while the airframe
4104 is horizontal and you want to restart the flight
4105 computers in pad mode after raising the airframe to
4106 vertical.</p>
4107 </dd>
4108 <dt class="hdlist1">Fire Igniters</dt>
4109 <dd>
4110 <p>Remotely control igniters for ground testing recovery
4111 systems.</p>
4112 </dd>
4113 </dl>
4114 </div>
4115 </div>
4116 <div class="sect2">
4117 <h3 id="_altosdroid_flight_monitoring">13.8. AltosDroid Flight Monitoring</h3>
4118 <div class="paragraph">
4119 <p>AltosDroid is designed to mimic the AltosUI flight
4120 monitoring display, providing separate tabs for each
4121 stage of your rocket flight along with a tab
4122 containing a map of the local area with icons marking
4123 the current location of the altimeter and the Android
4124 device.</p>
4125 </div>
4126 </div>
4127 <div class="sect2">
4128 <h3 id="_pad">13.9. Pad</h3>
4129 <div class="paragraph">
4130 <p>The 'Pad' tab shows information used to decide when
4131 the rocket is ready for flight. The first elements
4132 include red/green indicators, if any of these is red,
4133 you&#8217;ll want to evaluate whether the rocket is ready to
4134 launch.</p>
4135 </div>
4136 <div class="paragraph">
4137 <p>When the pad tab is selected, the voice responses will
4138 include status changes to the igniters and GPS
4139 reception, letting you know if the rocket is still
4140 ready for launch.</p>
4141 </div>
4142 <div class="dlist">
4143 <dl>
4144 <dt class="hdlist1">Battery</dt>
4145 <dd>
4146 <p>This indicates whether the Li-Po battery powering the
4147 transmitter has sufficient charge to last for the
4148 duration of the flight. A value of more than 3.8V is
4149 required for a 'GO' status.</p>
4150 </dd>
4151 <dt class="hdlist1">Receiver Battery</dt>
4152 <dd>
4153 <p>This indicates whether the Li-Po battery powering the
4154 TeleBT has sufficient charge to last for the duration
4155 of the flight. A value of more than 3.8V is required
4156 for a 'GO' status.</p>
4157 </dd>
4158 <dt class="hdlist1">Data Logging</dt>
4159 <dd>
4160 <p>This indicates whether there is space remaining
4161 on-board to store flight data for the upcoming
4162 flight. If you&#8217;ve downloaded data, but failed to erase
4163 flights, there may not be any space left. TeleMetrum
4164 and TeleMega can store multiple flights, depending on
4165 the configured maximum flight log size. TeleGPS logs
4166 data continuously. TeleMini v1.0 stores only a single
4167 flight, so it will need to be downloaded and erased
4168 after each flight to capture data. This only affects
4169 on-board flight logging; the altimeter will still
4170 transmit telemetry and fire ejection charges at the
4171 proper times.</p>
4172 </dd>
4173 <dt class="hdlist1">GPS Locked</dt>
4174 <dd>
4175 <p>For a TeleMetrum or TeleMega device, this indicates
4176 whether the GPS receiver is currently able to compute
4177 position information. GPS requires at least 4
4178 satellites to compute an accurate position.</p>
4179 </dd>
4180 <dt class="hdlist1">GPS Ready</dt>
4181 <dd>
4182 <p>For a TeleMetrum or TeleMega device, this indicates
4183 whether GPS has reported at least 10 consecutive
4184 positions without losing lock. This ensures that the
4185 GPS receiver has reliable reception from the
4186 satellites.</p>
4187 </dd>
4188 <dt class="hdlist1">Apogee Igniter</dt>
4189 <dd>
4190 <p>This indicates whether the apogee igniter has
4191 continuity. If the igniter has a low resistance, then
4192 the voltage measured here will be close to the Li-Po
4193 battery voltage. A value greater than 3.2V is required
4194 for a 'GO' status.</p>
4195 </dd>
4196 <dt class="hdlist1">Main Igniter</dt>
4197 <dd>
4198 <p>This indicates whether the main igniter has
4199 continuity. If the igniter has a low resistance, then
4200 the voltage measured here will be close to the Li-Po
4201 battery voltage. A value greater than 3.2V is required
4202 for a 'GO' status.</p>
4203 </dd>
4204 <dt class="hdlist1">Igniter A-D</dt>
4205 <dd>
4206 <p>This indicates whether the indicated additional pyro
4207 channel igniter has continuity. If the igniter has a
4208 low resistance, then the voltage measured here will be
4209 close to the Li-Po battery voltage. A value greater
4210 than 3.2V is required for a 'GO' status.</p>
4211 </dd>
4212 </dl>
4213 </div>
4214 <div class="paragraph">
4215 <p>The Pad tab also shows the location of the Android
4216 device.</p>
4217 </div>
4218 </div>
4219 <div class="sect2">
4220 <h3 id="_flight">13.10. Flight</h3>
4221 <div class="paragraph">
4222 <p>The 'Flight' tab shows information used to evaluate
4223 and spot a rocket while in flight. It displays speed
4224 and height data to monitor the health of the rocket,
4225 along with elevation, range and bearing to help locate
4226 the rocket in the sky.</p>
4227 </div>
4228 <div class="paragraph">
4229 <p>While the Flight tab is displayed, the voice
4230 announcements will include current speed, height,
4231 elevation and bearing information.</p>
4232 </div>
4233 <div class="dlist">
4234 <dl>
4235 <dt class="hdlist1">Speed</dt>
4236 <dd>
4237 <p>Shows current vertical speed. During descent, the
4238 speed values are averaged over a fairly long time to
4239 try and make them steadier.</p>
4240 </dd>
4241 <dt class="hdlist1">Height</dt>
4242 <dd>
4243 <p>Shows the current height above the launch pad.</p>
4244 </dd>
4245 <dt class="hdlist1">Max Speed</dt>
4246 <dd>
4247 <p>Shows the maximum vertical speed seen during the
4248 flight.</p>
4249 </dd>
4250 <dt class="hdlist1">Max Height</dt>
4251 <dd>
4252 <p>Shows the maximum height above launch pad.</p>
4253 </dd>
4254 <dt class="hdlist1">Elevation</dt>
4255 <dd>
4256 <p>This is the angle above the horizon from the android
4257 devices current position.</p>
4258 </dd>
4259 <dt class="hdlist1">Range</dt>
4260 <dd>
4261 <p>The total distance from the android device to the
4262 rocket, including both ground distance and difference
4263 in altitude. Use this to gauge how large the rocket is
4264 likely to appear in the sky.</p>
4265 </dd>
4266 <dt class="hdlist1">Bearing</dt>
4267 <dd>
4268 <p>This is the azimuth from true north for the rocket
4269 from the android device. Use this in combination with
4270 the Elevation value to help locate the rocket in the
4271 sky, or at least to help point the antenna in the
4272 general direction. This is provided in both degrees
4273 and a compass point (like West South West). You&#8217;ll
4274 want to know which direction is true north before
4275 launching your rocket.</p>
4276 </dd>
4277 <dt class="hdlist1">Ground Distance</dt>
4278 <dd>
4279 <p>This shows the distance across the ground to the
4280 lat/lon where the rocket is located. Use this to
4281 estimate what is currently under the rocket.</p>
4282 </dd>
4283 <dt class="hdlist1">Latitude/Longitude</dt>
4284 <dd>
4285 <p>Displays the last known location of the rocket.</p>
4286 </dd>
4287 <dt class="hdlist1">Apogee Igniter</dt>
4288 <dd>
4289 <p>This indicates whether the apogee igniter has
4290 continuity. If the igniter has a low resistance, then
4291 the voltage measured here will be close to the Li-Po
4292 battery voltage. A value greater than 3.2V is required
4293 for a 'GO' status.</p>
4294 </dd>
4295 <dt class="hdlist1">Main Igniter</dt>
4296 <dd>
4297 <p>This indicates whether the main igniter has
4298 continuity. If the igniter has a low resistance, then
4299 the voltage measured here will be close to the Li-Po
4300 battery voltage. A value greater than 3.2V is required
4301 for a 'GO' status.</p>
4302 </dd>
4303 </dl>
4304 </div>
4305 </div>
4306 <div class="sect2">
4307 <h3 id="_recover">13.11. Recover</h3>
4308 <div class="paragraph">
4309 <p>The 'Recover' tab shows information used while
4310 recovering the rocket on the ground after flight.</p>
4311 </div>
4312 <div class="paragraph">
4313 <p>While the Recover tab is displayed, the voice
4314 announcements will include distance along with either
4315 bearing or direction, depending on whether you are
4316 moving.</p>
4317 </div>
4318 <div class="dlist">
4319 <dl>
4320 <dt class="hdlist1">Bearing</dt>
4321 <dd>
4322 <p>This is the azimuth from true north for the rocket
4323 from the android device. Use this in combination with
4324 the Elevation value to help locate the rocket in the
4325 sky, or at least to help point the antenna in the
4326 general direction. This is provided in both degrees
4327 and a compass point (like West South West). You&#8217;ll
4328 want to know which direction is true north before
4329 launching your rocket.</p>
4330 </dd>
4331 <dt class="hdlist1">Direction</dt>
4332 <dd>
4333 <p>When you are in motion, this provides the angle from
4334 your current direction of motion towards the rocket.</p>
4335 </dd>
4336 <dt class="hdlist1">Distance</dt>
4337 <dd>
4338 <p>Distance over the ground to the rocket.</p>
4339 </dd>
4340 <dt class="hdlist1">Tar Lat/Tar Lon</dt>
4341 <dd>
4342 <p>Displays the last known location of the rocket.</p>
4343 </dd>
4344 <dt class="hdlist1">My Lat/My Lon</dt>
4345 <dd>
4346 <p>Displays the location of the Android device.</p>
4347 </dd>
4348 <dt class="hdlist1">Max Height</dt>
4349 <dd>
4350 <p>Shows the maximum height above launch pad seen during
4351 the flight.</p>
4352 </dd>
4353 <dt class="hdlist1">Max Speed</dt>
4354 <dd>
4355 <p>Shows the maximum vertical speed seen during the
4356 flight.</p>
4357 </dd>
4358 <dt class="hdlist1">Max Accel</dt>
4359 <dd>
4360 <p>Shows the maximum vertical acceleration seen during
4361 the flight.</p>
4362 </dd>
4363 </dl>
4364 </div>
4365 </div>
4366 <div class="sect2">
4367 <h3 id="_map_2">13.12. Map</h3>
4368 <div class="paragraph">
4369 <p>The 'Map' tab shows a map of the area around the
4370 rocket being tracked along with information needed to
4371 recover it.</p>
4372 </div>
4373 <div class="paragraph">
4374 <p>On the map itself, icons showing the location of the
4375 android device along with the last known location of
4376 each tracker. A blue line is drawn from the android
4377 device location to the currently selected tracker.</p>
4378 </div>
4379 <div class="paragraph">
4380 <p>Below the map, the distance and either bearing or
4381 direction along with the lat/lon of the target and the
4382 android device are shown</p>
4383 </div>
4384 <div class="paragraph">
4385 <p>The Map tab provides the same voice announcements as
4386 the Recover tab.</p>
4387 </div>
4388 </div>
4389 <div class="sect2">
4390 <h3 id="_downloading_flight_logs">13.13. Downloading Flight Logs</h3>
4391 <div class="paragraph">
4392 <p>AltosDroid always saves every bit of telemetry data it
4393 receives. To download that to a computer for use with
4394 AltosUI, remove the SD card from your Android device,
4395 or connect your device to your computer&#8217;s USB port and
4396 browse the files on that device. You will find
4397 '.telem' files in the TeleMetrum directory that will
4398 work with AltosUI directly.</p>
4399 </div>
4400 </div>
4401 </div>
4402 </div>
4403 <div class="sect1">
4404 <h2 id="_system_operation">Appendix A: System Operation</h2>
4405 <div class="sectionbody">
4406 <div class="sect2">
4407 <h3 id="_firmware_modes">A.1. Firmware Modes</h3>
4408 <div class="paragraph">
4409 <p>The AltOS firmware build for the altimeters has two
4410 fundamental modes, “idle” and “flight”.  Which of these modes
4411 the firmware operates in is determined at start up
4412 time.
4413 For
4414 TeleMetrum, TeleMega, EasyMega and EasyTimer, which have accelerometers, the mode is
4415 controlled by the orientation of the
4416 rocket (well, actually the board, of course&#8230;&#8203;) at the time
4417 power is switched on.  If the rocket is “nose up”, then
4418 the flight computer assumes it&#8217;s on a rail or rod being prepared for
4419 launch, so the firmware chooses flight mode.  However, if the
4420 rocket is more or less horizontal, the firmware instead enters
4421 idle mode.
4422 Since
4423 EasyMini doesn&#8217;t
4424 have an
4425 accelerometer we can use to determine orientation, “idle” mode
4426 is selected if the board is connected via USB to a computer,
4427 otherwise the board enters “flight” mode.
4428 TeleMini
4429 selects “idle” mode if it receives a command packet
4430 within the
4431 first five seconds of operation.</p>
4432 </div>
4433 <div class="paragraph">
4434 <p>At power on, the altimeter will beep out the battery voltage
4435 to the nearest tenth of a volt.  Each digit is represented by
4436 a sequence of short “dit” beeps, with a pause between
4437 digits. A zero digit is represented with one long “dah”
4438 beep. Then there will be a short pause while the altimeter
4439 completes initialization and self test, and decides which mode
4440 to enter next.</p>
4441 </div>
4442 <div class="paragraph">
4443 <p>In flight or “pad” mode, the altimeter engages the flight
4444 state machine, goes into transmit-only mode to send telemetry,
4445 and waits for launch to be detected.  Flight mode is indicated
4446 by an “di-dah-dah-dit” (“P” for pad) on the beeper or lights,
4447 followed by beeps or flashes indicating the state of the
4448 pyrotechnic igniter continuity.  One beep/flash indicates
4449 apogee continuity, two beeps/flashes indicate main continuity,
4450 three beeps/flashes indicate both apogee and main continuity,
4451 and one longer “brap” sound which is made by rapidly
4452 alternating between two tones indicates no continuity.  For a
4453 dual deploy flight, make sure you&#8217;re getting three beeps or
4454 flashes before launching!  For apogee-only or motor eject
4455 flights, do what makes sense.</p>
4456 </div>
4457 <div class="paragraph">
4458 <p>If idle mode is entered, you will hear an audible “di-dit” or
4459 see two short flashes (“I” for idle), and the flight state
4460 machine is disengaged, thus no ejection charges will fire.
4461 The altimeters also listen for the radio link when in idle
4462 mode for requests sent via TeleDongle.  Commands can be issued
4463 in idle mode over either USB or the radio link
4464 equivalently.
4465 TeleMini only has the radio link.
4466 Idle mode is useful for configuring the altimeter, for
4467 extracting data from the on-board storage chip after
4468 flight, and for ground testing pyro charges.</p>
4469 </div>
4470 <div class="paragraph">
4471 <p>In “Idle” and “Pad” modes, once the mode indication
4472 beeps/flashes and continuity indication has been sent, if
4473 there is no space available to log the flight in on-board
4474 memory, the flight computer will emit a warbling tone (much
4475 slower than the “no continuity tone”)</p>
4476 </div>
4477 <div class="paragraph">
4478 <p>See <a href="#_understanding_beeps">Understanding Beeps</a> for a summary of all of
4479 the audio signals used.</p>
4480 </div>
4481 <div class="paragraph">
4482 <p>Once landed, the flight computer will signal that by emitting
4483 the “Landed” sound described above, after which it will beep
4484 out the apogee height (in meters). Each digit is represented
4485 by a sequence of short “dit” beeps, with a pause between
4486 digits. A zero digit is represented with one long “dah”
4487 beep. The flight computer will continue to report landed mode
4488 and beep out the maximum height until turned off.</p>
4489 </div>
4490 <div class="paragraph">
4491 <p>One “neat trick” of particular value when TeleMetrum, TeleMega
4492 or EasyMega are used with
4493 very large air-frames, is that you can power the board up while the
4494 rocket is horizontal, such that it comes up in idle mode.  Then you can
4495 raise the air-frame to launch position, and issue a 'reset' command
4496 via TeleDongle over the radio link to cause the altimeter to reboot and
4497 come up in flight mode.  This is much safer than standing on the top
4498 step of a rickety step-ladder or hanging off the side of a launch
4499 tower with a screw-driver trying to turn on your avionics before
4500 installing igniters!</p>
4501 </div>
4502 <div class="paragraph">
4503 <p>TeleMini is configured solely via the radio link. Of course, that
4504 means you need to know the TeleMini radio configuration values
4505 or you won&#8217;t be able to communicate with it. For situations
4506 when you don&#8217;t have the radio configuration values,
4507 TeleMini v1.0
4508 offers an 'emergency recovery' mode. In this mode,
4509 TeleMini v1.0 is
4510 configured as follows:</p>
4511 </div>
4512 <div class="ulist">
4513 <ul>
4514 <li>
4515 <p>Sets the radio frequency to 434.550MHz</p>
4516 </li>
4517 <li>
4518 <p>Sets the radio calibration back to the factory value.</p>
4519 </li>
4520 <li>
4521 <p>Sets the callsign to N0CALL</p>
4522 </li>
4523 <li>
4524 <p>Does not go to 'pad' mode after five seconds.</p>
4525 </li>
4526 </ul>
4527 </div>
4528 <div class="paragraph">
4529 <p>To get into 'emergency recovery' mode, first find the row of
4530 four small holes opposite the switch wiring. Using a short
4531 piece of small gauge wire, connect the outer two holes
4532 together, then power TeleMini up. Once the red LED is lit,
4533 disconnect the wire and the board should signal that it&#8217;s in
4534 'idle' mode after the initial five second startup
4535 period.</p>
4536 </div>
4537 </div>
4538 <div class="sect2">
4539 <h3 id="_gps">A.2. GPS</h3>
4540 <div class="paragraph">
4541 <p>TeleMetrum and TeleMega include a complete GPS receiver.  A
4542 complete explanation of how GPS works is beyond the scope of
4543 this manual, but the bottom line is that the GPS receiver
4544 needs to lock onto at least four satellites to obtain a solid
4545 3 dimensional position fix and know what time it is.</p>
4546 </div>
4547 <div class="paragraph">
4548 <p>The flight computers provide backup power to the GPS chip any time a
4549 battery is connected.  This allows the receiver to “warm start” on
4550 the launch rail much faster than if every power-on were a GPS
4551 “cold start”.  In typical operations, powering up
4552 on the flight line in idle mode while performing final air-frame
4553 preparation will be sufficient to allow the GPS receiver to cold
4554 start and acquire lock.  Then the board can be powered down during
4555 RSO review and installation on a launch rod or rail.  When the board
4556 is turned back on, the GPS system should lock very quickly, typically
4557 long before igniter installation and return to the flight line are
4558 complete.</p>
4559 </div>
4560 </div>
4561 <div class="sect2">
4562 <h3 id="_controlling_an_altimeter_over_the_radio_link">A.3. Controlling An Altimeter Over The Radio Link</h3>
4563 <div class="paragraph">
4564 <p>One of the unique features of the Altus Metrum system is the
4565 ability to create a two way command link between TeleDongle
4566 and an altimeter using the digital radio transceivers
4567 built into each device. This allows you to interact with the
4568 altimeter from afar, as if it were directly connected to the
4569 computer.</p>
4570 </div>
4571 <div class="paragraph">
4572 <p>Any operation which can be performed with a flight computer can
4573 either be done with the device directly connected to the
4574 computer via the USB cable, or through the radio
4575 link. TeleMini doesn&#8217;t provide a USB connector and so it is
4576 always communicated with over radio.  Select the appropriate
4577 TeleDongle device when the list of devices is presented and
4578 AltosUI will interact with an altimeter over the radio link.</p>
4579 </div>
4580 <div class="paragraph">
4581 <p>One oddity in the current interface is how AltosUI selects the
4582 frequency for radio communications. Instead of providing
4583 an interface to specifically configure the frequency, it uses
4584 whatever frequency was most recently selected for the target
4585 TeleDongle device in Monitor Flight mode. If you haven&#8217;t ever
4586 used that mode with the TeleDongle in question, select the
4587 Monitor Flight button from the top level UI, and pick the
4588 appropriate TeleDongle device.  Once the flight monitoring
4589 window is open, select the desired frequency and then close it
4590 down again. All radio communications will now use that frequency.</p>
4591 </div>
4592 <div class="ulist">
4593 <ul>
4594 <li>
4595 <p>Save Flight Data—Recover flight data from the
4596 rocket without opening it up.</p>
4597 </li>
4598 <li>
4599 <p>Configure altimeter apogee delays, main deploy
4600 heights and additional pyro event conditions to
4601 respond to changing launch conditions. You can also
4602 'reboot' the altimeter. Use this to remotely enable
4603 the flight computer by turning TeleMetrum or
4604 TeleMega on in “idle” mode, then once the air-frame
4605 is oriented for launch, you can reboot the
4606 altimeter and have it restart in pad mode without
4607 having to climb the scary ladder.</p>
4608 </li>
4609 <li>
4610 <p>Fire Igniters—Test your deployment charges without snaking
4611 wires out through holes in the air-frame. Simply assemble the
4612 rocket as if for flight with the apogee and main charges
4613 loaded, then remotely command the altimeter to fire the
4614 igniters.</p>
4615 </li>
4616 </ul>
4617 </div>
4618 <div class="paragraph">
4619 <p>Operation over the radio link for configuring an
4620 altimeter, ground testing igniters, and so forth uses
4621 the same RF frequencies as flight telemetry.  To
4622 configure the desired TeleDongle frequency, select the
4623 monitor flight tab, then use the frequency selector
4624 and close the window before performing other desired
4625 radio operations.</p>
4626 </div>
4627 <div class="paragraph">
4628 <p>The flight computers only enable radio commanding in
4629 'idle' mode.  TeleMetrum and TeleMega use the
4630 accelerometer to detect which orientation they start
4631 up in, so make sure you have the flight computer lying
4632 horizontally when you turn it on. Otherwise, it will
4633 start in 'pad' mode ready for flight, and will not be
4634 listening for command packets from TeleDongle.</p>
4635 </div>
4636 <div class="paragraph">
4637 <p>TeleMini listens for a command packet for five seconds
4638 after first being turned on, if it doesn&#8217;t hear
4639 anything, it enters 'pad' mode, ready for flight and
4640 will no longer listen for command packets. The easiest
4641 way to connect to TeleMini is to initiate the command
4642 and select the TeleDongle device. At this point, the
4643 TeleDongle will be attempting to communicate with the
4644 TeleMini. Now turn TeleMini on, and it should
4645 immediately start communicating with the TeleDongle
4646 and the desired operation can be performed.</p>
4647 </div>
4648 <div class="paragraph">
4649 <p>You can monitor the operation of the radio link by watching the
4650 lights on the devices. The red LED will flash each time a packet
4651 is transmitted, while the green LED will light up on TeleDongle when
4652 it is waiting to receive a packet from the altimeter.</p>
4653 </div>
4654 </div>
4655 <div class="sect2">
4656 <h3 id="_ground_testing">A.4. Ground Testing</h3>
4657 <div class="paragraph">
4658 <p>An important aspect of preparing a rocket using electronic deployment
4659 for flight is ground testing the recovery system.
4660 Thanks
4661 to the bi-directional radio link central to the Altus Metrum system,
4662 this can be accomplished in a TeleMega, TeleMetrum or TeleMini equipped rocket
4663 with less work than you may be accustomed to with other systems.  It
4664 can even be fun!</p>
4665 </div>
4666 <div class="paragraph">
4667 <p>Just prep the rocket for flight, then power up the altimeter
4668 in “idle”
4669 mode (placing air-frame horizontal for TeleMetrum or TeleMega, or
4670 selecting the Configure Altimeter tab for TeleMini).
4671 This will cause
4672 the firmware to go into “idle” mode, in which the normal flight
4673 state machine is disabled and charges will not fire without
4674 manual command.
4675 You can now command the altimeter to fire the apogee
4676 or main charges from a safe distance using your
4677 computer and the Fire Igniter tab to complete ejection testing.</p>
4678 </div>
4679 </div>
4680 <div class="sect2">
4681 <h3 id="_radio_link">A.5. Radio Link</h3>
4682 <div class="paragraph">
4683 <p>TeleMetrum, TeleMini and TeleMega all incorporate an
4684 RF transceiver, but it&#8217;s not a full duplex system;
4685 each end can only be transmitting or receiving at any
4686 given moment. So we had to decide how to manage the
4687 link.</p>
4688 </div>
4689 <div class="paragraph">
4690 <p>By design, the altimeter firmware listens for the
4691 radio link when it&#8217;s in “idle mode”, which allows us
4692 to use the radio link to configure the rocket, do
4693 things like ejection tests, and extract data after a
4694 flight without having to crack open the air-frame.
4695 However, when the board is in “flight mode”, the
4696 altimeter only transmits and doesn&#8217;t listen at all.
4697 That&#8217;s because we want to put ultimate priority on
4698 event detection and getting telemetry out of the
4699 rocket through the radio in case the rocket crashes
4700 and we aren&#8217;t able to extract data later.</p>
4701 </div>
4702 <div class="paragraph">
4703 <p>We don&#8217;t generally use a 'normal packet radio' mode
4704 like APRS because they&#8217;re just too inefficient.  The
4705 GFSK modulation we use is FSK with the base-band
4706 pulses passed through a Gaussian filter before they go
4707 into the modulator to limit the transmitted bandwidth.
4708 When combined with forward error correction and
4709 interleaving, this allows us to have a very robust
4710 19.2 kilobit data link with only 10-40 milliwatts of
4711 transmit power, a whip antenna in the rocket, and a
4712 hand-held Yagi on the ground.  We&#8217;ve had flights to
4713 above 21k feet AGL with great reception, and
4714 calculations suggest we should be good to well over
4715 40k feet AGL with a 5-element yagi on the ground with
4716 our 10mW units and over 100k feet AGL with the 40mW
4717 devices.  We hope to fly boards to higher altitudes
4718 over time, and would of course appreciate customer
4719 feedback on performance in higher altitude flights!</p>
4720 </div>
4721 </div>
4722 <div class="sect2">
4723 <h3 id="_aprs">A.6. APRS</h3>
4724 <div class="paragraph">
4725 <p>TeleMetrum v2 and newer and TeleMega can send APRS if desired, and the
4726 interval between APRS packets can be configured. As
4727 each APRS packet takes a full second to transmit, we
4728 recommend an interval of at least 5 seconds to avoid
4729 consuming too much battery power or radio channel
4730 bandwidth. You can configure the time within each
4731 minute that APRS transmits by changing the APRS offset
4732 value. When the GPS signal is locked and knows the
4733 current time, the APRS offset selects the time with
4734 each minute for the first APRS transmission;
4735 subsequent transmissions occur each APRS interval
4736 seconds thereafter.  You can configure the APRS
4737 interval and APRS offset using AltosUI; that
4738 process is described in <a href="#_configure_altimeter">Configure Altimeter</a>.</p>
4739 </div>
4740 <div class="paragraph">
4741 <p>AltOS supports both compressed and uncompressed APRS
4742 position report data formats. The compressed format
4743 provides for higher position precision and shorter
4744 packets than the uncompressed APRS format. We&#8217;ve found
4745 some older APRS receivers that do not handle the
4746 compressed format. The Kenwood TH-72A requires the use
4747 of uncompressed format to display altitude information
4748 correctly. The Yaesu FT1D requires the use of
4749 compressed format to display altitude information.</p>
4750 </div>
4751 <div class="paragraph">
4752 <p>APRS packets include an SSID (Secondary Station Identifier)
4753 field that allows one operator to have multiple
4754 transmitters. AltOS allows you to set this to a single digit
4755 from 0 to 9, allowing you to fly multiple transmitters at the
4756 same time while keeping the identify of each one separate in
4757 the receiver. By default, the SSID is set to the last digit of
4758 the device serial number.</p>
4759 </div>
4760 <div class="paragraph">
4761 <p>The APRS packet format includes a comment field that
4762 can have arbitrary text in it. AltOS uses this to send
4763 status information as shown in the following table.</p>
4764 </div>
4765 <table class="tableblock frame-all grid-all stretch">
4766 <caption class="title">Table 10. Altus Metrum APRS Comments</caption>
4767 <colgroup>
4768 <col style="width: 20%;">
4769 <col style="width: 20%;">
4770 <col style="width: 60%;">
4771 </colgroup>
4772 <thead>
4773 <tr>
4774 <th class="tableblock halign-left valign-top">Field</th>
4775 <th class="tableblock halign-left valign-top">Example</th>
4776 <th class="tableblock halign-left valign-top">Description</th>
4777 </tr>
4778 </thead>
4779 <tbody>
4780 <tr>
4781 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
4782 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
4783 <td class="tableblock halign-left valign-top"><p class="tableblock">GPS Status U for unlocked, L for locked</p></td>
4784 </tr>
4785 <tr>
4786 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
4787 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4788 <td class="tableblock halign-left valign-top"><p class="tableblock">Number of Satellites in View</p></td>
4789 </tr>
4790 <tr>
4791 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
4792 <td class="tableblock halign-left valign-top"><p class="tableblock">B4.0</p></td>
4793 <td class="tableblock halign-left valign-top"><p class="tableblock">Altimeter Battery Voltage</p></td>
4794 </tr>
4795 <tr>
4796 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4797 <td class="tableblock halign-left valign-top"><p class="tableblock">A3.7</p></td>
4798 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee Igniter Voltage</p></td>
4799 </tr>
4800 <tr>
4801 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
4802 <td class="tableblock halign-left valign-top"><p class="tableblock">M3.7</p></td>
4803 <td class="tableblock halign-left valign-top"><p class="tableblock">Main Igniter Voltage</p></td>
4804 </tr>
4805 <tr>
4806 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4807 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4808 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4809 </tr>
4810 <tr>
4811 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4812 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4813 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4814 </tr>
4815 </tbody>
4816 </table>
4817 <div class="paragraph">
4818 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4819 satellites in view, a primary battery at 4.0V, and
4820 apogee and main igniters both at 3.7V from device 1286.</p>
4821 </div>
4822 <div class="literalblock">
4823 <div class="content">
4824 <pre>L6 B4.0 A3.7 M3.7 1286</pre>
4825 </div>
4826 </div>
4827 <div class="paragraph">
4828 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4829 satellites in view and a primary battery at 4.0V from device 1876.</p>
4830 </div>
4831 <div class="literalblock">
4832 <div class="content">
4833 <pre>L6 B4.0 1876</pre>
4834 </div>
4835 </div>
4836 <div class="paragraph">
4837 <p>Make sure your primary battery is above 3.8V
4838 any connected igniters are above 3.5V
4839 and GPS is locked with at least 5 or 6 satellites in
4840 view before flying. If GPS is switching between L and
4841 U regularly, then it doesn&#8217;t have a good lock and you
4842 should wait until it becomes stable.</p>
4843 </div>
4844 <div class="paragraph">
4845 <p>If the GPS receiver loses lock, the APRS data
4846 transmitted will contain the last position for which
4847 GPS lock was available. You can tell that this has
4848 happened by noticing that the GPS status character
4849 switches from 'L' to 'U'. Before GPS has locked, APRS
4850 will transmit zero for latitude, longitude and
4851 altitude.</p>
4852 </div>
4853 </div>
4854 <div class="sect2">
4855 <h3 id="_configurable_parameters">A.7. Configurable Parameters</h3>
4856 <div class="paragraph">
4857 <p>Configuring an Altus Metrum altimeter for flight is
4858 very simple.  Even on our baro-only TeleMini and
4859 EasyMini boards, the use of a Kalman filter means
4860 there is no need to set a “mach delay”.  All of the
4861 configurable parameters can be set using AltosUI. Read
4862 <a href="#_configure_altimeter">Configure Altimeter</a> for more information.</p>
4863 </div>
4864 </div>
4865 </div>
4866 </div>
4867 <div class="sect1">
4868 <h2 id="_example_pyro_channel_configurations">Appendix B: Example Pyro Channel Configurations</h2>
4869 <div class="sectionbody">
4870 <div class="paragraph">
4871 <p>Programming configurable pyro channels on Altus Metrum products that
4872 include them isn&#8217;t difficult, but in an attempt to aid understanding
4873 of the configuration interface and help "keep simple things simple",
4874 we offer the following examples of the simplest configurations for
4875 common situations, along with some hints on avoiding unexpected
4876 results.</p>
4877 </div>
4878 <div class="paragraph">
4879 <p>The rich set of conditions provided can be used to configure almost
4880 any pyro event you can imagine, for a wide variety of objectives.
4881 But don&#8217;t be fooled!  Typical events need only one or a few simple
4882 conditions to be configured for success.  A key thing to remember is
4883 that <strong>all</strong> configured conditions must be true to allow a pyro channel
4884 to fire.  Trying to include too many conditions often results in
4885 conflicting rules that never allow a channel to fire.  The most
4886 important advice we can offer is, therefore, to try and find the
4887 simplest set of conditions that will do what you need for a given
4888 project.</p>
4889 </div>
4890 <div class="sect2">
4891 <h3 id="_two_stage_flights">B.1. Two-Stage Flights</h3>
4892 <div class="paragraph">
4893 <p>Successful completion of a two-stage flight often involves
4894 programming of two events.  The first is firing a separation
4895 charge, the second is igniting the sustainer&#8217;s (primary)
4896 motor.</p>
4897 </div>
4898 <div class="paragraph">
4899 <p>Separation charges are best fired as soon as possible after
4900 the previous stage has completed providing acceleration, to
4901 minimize drag of the sustainer&#8217;s coast phase before ignition.
4902 Recovery, whether the remainder of the flight is nominal or
4903 not, usually works best when the states are separated.  So,
4904 the "best" way to configure a pyro channel for a separation
4905 charge is to just set "after motor number".  For a 2-stage
4906 project, set this to "1".  This will cause the pyro channel
4907 to fire as soon as the firmware&#8217;s flight state machine
4908 determines the first motor has burned out.</p>
4909 </div>
4910 <div class="paragraph">
4911 <p>Safe ignition of a sustainer (primary) motor requires that
4912 it happen after the previous stage burns out, while the
4913 airframe remains mostly vertical, and typically after the
4914 sustainer has coasted away from the booster a bit.  A good
4915 starting point is thus "after motor number" set the same as
4916 the separation charge, which is "1" for a 2-stage rocket.
4917 Then "angle from vertical less than" set to some
4918 reasonably vertical amount, perhaps 20 degrees.  Then "delay
4919 after other conditions" set for the desired duration of coast.
4920 Use simulations to figure out what a reasonable value here is,
4921 but for typical high power rocketry sport flights that aren&#8217;t
4922 trying to set records, something like 2 seconds is usually a
4923 good place to start.</p>
4924 </div>
4925 </div>
4926 <div class="sect2">
4927 <h3 id="_triggered_clusters_and_air_starts">B.2. Triggered Clusters and Air Starts</h3>
4928 <div class="paragraph">
4929 <p>When an airframe has a cluster of motors, one of which is
4930 "primary" and centered, surrounding by a ring of "secondary"
4931 motors, you may want to use the launch control system to                        fire the primary motor and use onboard electronics to light
4932 the rest of the cluster as soon as launch is detected.  This
4933 is particularly true if the primary motor is significantly
4934 different in geometry and may take longer to come up to
4935 pressure than the secondary motors.  In this case, a simple
4936 configuration to light secondary motors is is "time since
4937 boost greater than" enabled and set to "0".  There&#8217;s
4938 really no point in setting an angle limit since no time has
4939 transpired for the airframe to change orientation.</p>
4940 </div>
4941 <div class="paragraph">
4942 <p>Air starts can use the same simple configuration, but with
4943 the time set to a non-zero value.  However, if air starts
4944 are going to light after the airframe leaves the launch rail
4945 or tower, add an "angle from vertical less than"
4946 condition just you would for a 2-stage sustainer to stay safe.</p>
4947 </div>
4948 </div>
4949 <div class="sect2">
4950 <h3 id="_redundant_apogee">B.3. Redundant Apogee</h3>
4951 <div class="paragraph">
4952 <p>When flying a board like TeleMega or EasyMega, it&#8217;s easy to
4953 configure a programmable channel to fire a redundant apogee
4954 charge.  This is of course not <strong>fully</strong> redundant, since it&#8217;s
4955 always possible that the board itself or its battery could
4956 the the failure source, but far more often, pyro events fail
4957 due to broken wires, bad connectors, or bad e-matches&#8230;&#8203; so
4958 firing two charges from one board can add useful redundancy.</p>
4959 </div>
4960 <div class="paragraph">
4961 <p>The simplest configuration for redundant apogee is "flight
4962 state after" set to "drogue", and then "delay after other
4963 conditions" set to a second or two.</p>
4964 </div>
4965 </div>
4966 <div class="sect2">
4967 <h3 id="_redundant_main">B.4. Redundant Main</h3>
4968 <div class="paragraph">
4969 <p>Similarly to apogee, configuring a redundant main charge can
4970 provide useful redundancy.  What we want is to configure an
4971 altitude for deployment lower than the primary main deploy
4972 altitude, and then ensure we only trigger on that condition
4973 while descending.</p>
4974 </div>
4975 <div class="paragraph">
4976 <p>The simplest configuration for redundant main is "flight
4977 state after" set to "drogue", which will ensure we&#8217;re in to
4978 the descent phase, then "height less than" set to a number
4979 lower than you&#8217;ve chosen for the primary main channel
4980 deployment height.</p>
4981 </div>
4982 </div>
4983 <div class="sect2">
4984 <h3 id="_apogee_above_baro_sensor_limit">B.5. Apogee Above Baro Sensor Limit</h3>
4985 <div class="paragraph">
4986 <p>A question we&#8217;ve seen increasingly often is "How does the
4987 Telemega/Easymega detect apogee for flights above 100,000
4988 feet?"  Flights above that height are a bit outside
4989 our original design envelope, but can be made to work&#8230;&#8203;
4990 This is <strong>not</strong> a simple flight, and the configuration for it
4991 is also not simple, but we think including this information
4992 is important for anyone contemplating such a project with our
4993 electronics!</p>
4994 </div>
4995 <div class="paragraph">
4996 <p>Our flight computers use a Kalman sensor-fusing filter to
4997 estimate the flight state, which consists of three values:</p>
4998 </div>
4999 <div class="olist arabic">
5000 <ol class="arabic">
5001 <li>
5002 <p>Height above ground</p>
5003 </li>
5004 <li>
5005 <p>Vertical speed</p>
5006 </li>
5007 <li>
5008 <p>Vertical acceleration</p>
5009 </li>
5010 </ol>
5011 </div>
5012 <div class="paragraph">
5013 <p>Apogee is assumed to be where vertical speed crosses zero.</p>
5014 </div>
5015 <div class="paragraph">
5016 <p>Below 30km altitude (about 100k'), we use both the barometer
5017 and the accelerometer to update the flight state, along with
5018 a basic Newtonian model of motion. That works well, pegging
5019 apogee within a few sensor samples essentially every time.</p>
5020 </div>
5021 <div class="paragraph">
5022 <p>Above 30km, the barometric sensor doesn&#8217;t provide useful data,
5023 so we can&#8217;t use it to update the flight state. Instead, the
5024 Kalman filter falls back to a single sensor mode, using only
5025 the accelerometer.</p>
5026 </div>
5027 <div class="paragraph">
5028 <p>At all altitudes, we de-sense the barometric data when we
5029 estimate the speed is near or above mach as the sensor is
5030 often subjected to significant transients, which would
5031 otherwise push the flight state estimates too fast and could
5032 trigger a false apogee event.</p>
5033 </div>
5034 <div class="paragraph">
5035 <p>That means the filter is no longer getting the benefit of two
5036 sensors, and relies on just the accelerometer. The trouble
5037 with accelerometers is they&#8217;re measuring the derivative of
5038 speed, so you have to integrate their values to compute speed.
5039 Any offset error in acceleration measurement gets constantly
5040 added to that speed.</p>
5041 </div>
5042 <div class="paragraph">
5043 <p>In addition, we assume the axial acceleration is actually
5044 vertical acceleration; our tilt measurements have enough
5045 integration error during coast that we can&#8217;t usefully use
5046 that to get vertical acceleration. Because we don&#8217;t live in
5047 an inertial frame, that means we&#8217;re mis-computing the total
5048 acceleration acting on the airframe as we have to add gravity
5049 into the mix, and simply adding that to the axial acceleration
5050 value doesn&#8217;t generate the right value.</p>
5051 </div>
5052 <div class="paragraph">
5053 <p>The effect of this is to under-estimate apogee when you base
5054 the computation purely on acceleration as the rocket flies a
5055 parabolic path.</p>
5056 </div>
5057 <div class="paragraph">
5058 <p>For flights <strong>near</strong> 100k', all of this works pretty well -
5059 you&#8217;ve got the flight state estimates adjusted using the
5060 barometric sensor up to 30km, then you&#8217;re flying on inertial
5061 data to apogee.</p>
5062 </div>
5063 <div class="paragraph">
5064 <p>For flights well above 100k', it&#8217;s not great; you&#8217;re usually
5065 going fast enough through 100k' that the baro sensor is still
5066 de-sensed through the end of its useful range, so the flight
5067 state estimates are not as close. After that, as you&#8217;re flying
5068 purely on accelerometer data, there&#8217;s no way to re-correct the
5069 state, so the apogee estimates can be off by quite a bit.</p>
5070 </div>
5071 <div class="paragraph">
5072 <p>In the worst cases we have seen, the baro sensor data was
5073 wildly incorrect above mach due to poor static port design,
5074 leaving the state estimate of speed across the 30km boundary
5075 way off and causing the apogee detection to happen far from
5076 the correct time.</p>
5077 </div>
5078 <div class="paragraph">
5079 <p>The good news is that correctly determining apogee is not
5080 really all that important at high altitudes; there&#8217;s so little
5081 density that a drogue will have almost no drag anyways.  Data
5082 from customer flights shows a very parabolic path down to
5083 about 50-60k feet, even with a recovery system deployed.</p>
5084 </div>
5085 <div class="paragraph">
5086 <p>So, what we recommend is to set up two apogee plans:</p>
5087 </div>
5088 <div class="olist arabic">
5089 <ol class="arabic">
5090 <li>
5091 <p>Use the built-in apogee detection, but add a
5092 significant delay (as much as 30 seconds). This
5093 will probably fire near enough to apogee to not
5094 have a significant impact on the maximum height
5095 achieved.</p>
5096 </li>
5097 <li>
5098 <p>Add a back-up apogee which fires after apogee
5099 <strong>when the height is below about 20-25km</strong>. This
5100 way, if the flight isn&#8217;t nominal, and the sustainer
5101 ends up reaching apogee in dense air, you aren&#8217;t
5102 hoping the chutes come out before it gets going
5103 too fast. And, you get a second pyro channel firing
5104 at that altitude even if it reached a higher
5105 altitude before.</p>
5106 </li>
5107 </ol>
5108 </div>
5109 <div class="paragraph">
5110 <p>You can wire these two pyro channels to the same pyro device;
5111 you just need to make sure they&#8217;re wired + to + and - to -
5112 (the manual shows which screw terminals are which).</p>
5113 </div>
5114 <div class="paragraph">
5115 <p>The bottom line is that flights to altitudes modestly above
5116 the range of the baro sensor with Altus Metrum products can
5117 be accomplished safely, but flying "way high" (like 300k')
5118 demands a deployment mechanism which doesn&#8217;t solely rely on
5119 altimeters (like ours) which are designed for modest altitude
5120 rocketry.  Flights to those altitudes also probably need
5121 active stabilization to make sure they follow the prescribed
5122 trajectory and stay inside their waiver.</p>
5123 </div>
5124 </div>
5125 </div>
5126 </div>
5127 <div class="sect1">
5128 <h2 id="_handling_precautions">Appendix C: Handling Precautions</h2>
5129 <div class="sectionbody">
5130 <div class="paragraph">
5131 <p>All Altus Metrum products are sophisticated electronic devices.
5132 When handled gently and properly installed in an air-frame, they
5133 will deliver impressive results.  However, as with all electronic
5134 devices, there are some precautions you must take.</p>
5135 </div>
5136 <div class="admonitionblock warning">
5137 <table>
5138 <tr>
5139 <td class="icon">
5140 <img src="./images/icons/warning.svg" alt="Warning">
5141 </td>
5142 <td class="content">
5143 The Lithium Polymer rechargeable batteries have an
5144 extraordinary power density.  This is great because we can fly with
5145 much less battery mass than if we used alkaline batteries or previous
5146 generation rechargeable batteries&#8230;&#8203; but if they are punctured
5147 or their leads are allowed to short, they can and will release their
5148 energy very rapidly!
5149 Thus we recommend that you take some care when handling our batteries
5150 and consider giving them some extra protection in your air-frame.  We
5151 often wrap them in suitable scraps of closed-cell packing foam before
5152 strapping them down, for example.
5153 </td>
5154 </tr>
5155 </table>
5156 </div>
5157 <div class="paragraph">
5158 <p>The barometric sensors used on all of our flight computers are
5159 sensitive to sunlight.  In normal mounting situations, the baro sensor
5160 and all of the other surface mount components
5161 are “down” towards whatever the underlying mounting surface is, so
5162 this is not normally a problem.  Please consider this when designing an
5163 installation in an air-frame with a see-through plastic payload bay.  It
5164 is particularly important to
5165 consider this with TeleMini v1.0, both because the baro sensor is on the
5166 “top” of the board, and because many model rockets with payload bays
5167 use clear plastic for the payload bay!  Replacing these with an opaque
5168 cardboard tube, painting them, or wrapping them with a layer of masking
5169 tape are all reasonable approaches to keep the sensor out of direct
5170 sunlight.</p>
5171 </div>
5172 <div class="paragraph">
5173 <p>The barometric sensor sampling port must be able to “breathe”,
5174 both by not being covered by foam or tape or other materials that might
5175 directly block the hole on the top of the sensor, and also by having a
5176 suitable static vent to outside air.</p>
5177 </div>
5178 <div class="paragraph">
5179 <p>As with all other rocketry electronics, Altus Metrum altimeters must
5180 be protected from exposure to corrosive motor exhaust and ejection
5181 charge gasses.</p>
5182 </div>
5183 </div>
5184 </div>
5185 <div class="sect1">
5186 <h2 id="_updating_device_firmware">Appendix D: Updating Device Firmware</h2>
5187 <div class="sectionbody">
5188 <div class="paragraph">
5189 <p>TeleMega, TeleMetrum v2 and newer, EasyMega, EasyMini and TeleDongle v3
5190 are all
5191 programmed directly over their USB connectors (self
5192 programming).
5193 TeleMetrum v1, TeleMini v1.0 and TeleDongle v0.2 are
5194 all programmed by using another device as a programmer (pair
5195 programming). It&#8217;s important to recognize which kind of devices
5196 you have before trying to reprogram them.</p>
5197 </div>
5198 <div class="paragraph">
5199 <p>TeleMini v3 can be updated directly over USB, but has no USB connector
5200 on the board.  Instead, the USB signals are present on a row of 6
5201 holes adjacent to the copyright assertion in the silk screen.  Thus,
5202 updating firmware on TeleMini v3 requires making up a special cable,
5203 after which you can treat it just like TeleMetrum or TeleMega.  Many
5204 USB cables seem to follow the color code of red is +5V, black is GND,
5205 green is USB +, and white is USB -.  On TeleMini v3, pin 3 which has
5206 a square copper pad is ground, pin 1 is USB -, and pin 2 is USB +.</p>
5207 </div>
5208 <div class="paragraph">
5209 <p>You may wish to begin by ensuring you have current firmware
5210 images.  These are distributed as part of the AltOS software
5211 bundle that also includes the AltosUI ground station program.
5212 Newer ground station versions typically work fine with older
5213 firmware versions, so you don&#8217;t need to update your devices
5214 just to try out new software features.  You can always
5215 download the most recent version from
5216 <a href="http://www.altusmetrum.org/AltOS/" class="bare">http://www.altusmetrum.org/AltOS/</a></p>
5217 </div>
5218 <div class="sect2">
5219 <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>
5220 <div class="paragraph">
5221 <p>Self-programmable devices are reprogrammed by
5222 connecting them to your computer over USB.</p>
5223 </div>
5224 <div class="olist arabic">
5225 <ol class="arabic">
5226 <li>
5227 <p>Attach a battery if necessary and power switch to
5228 the target device. Power up the device.</p>
5229 </li>
5230 <li>
5231 <p>Using a Micro USB cable, connect the target device to your
5232 computer&#8217;s USB socket.  If the target is a TeleMini v3,
5233 make up and attach a special USB cable.</p>
5234 </li>
5235 <li>
5236 <p>Run AltosUI, and select 'Flash Image' from the File menu.</p>
5237 </li>
5238 <li>
5239 <p>Select the target device in the Device Selection dialog.</p>
5240 </li>
5241 <li>
5242 <p>Select the image you want to flash to the device,
5243 which should have a name in the form
5244 &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx,
5245 such as EasyMini-v1.0-1.6.0.ihx.</p>
5246 </li>
5247 <li>
5248 <p>Make sure the configuration parameters are
5249 reasonable looking. If the serial number and/or RF
5250 configuration values aren&#8217;t right, you&#8217;ll need to
5251 change them.</p>
5252 </li>
5253 <li>
5254 <p>Hit the 'OK' button and the software should proceed
5255 to flash the device with new firmware, showing a
5256 progress bar.</p>
5257 </li>
5258 <li>
5259 <p>Verify that the device is working by using the
5260 'Configure Altimeter' or 'Configure Groundstation'
5261 item to check over the configuration.</p>
5262 </li>
5263 </ol>
5264 </div>
5265 <div class="sect3">
5266 <h4 id="_recovering_from_self_flashing_failure">D.1.1. Recovering From Self-Flashing Failure</h4>
5267 <div class="paragraph">
5268 <p>If the firmware loading fails, it can leave the device
5269 unable to boot. Not to worry, you can force the device to
5270 start the boot loader instead, which will let you try to
5271 flash the device again.</p>
5272 </div>
5273 <div class="paragraph">
5274 <p>On each device, connecting two pins from one of the exposed
5275 connectors will force the boot loader to start, even if the
5276 regular operating system has been corrupted in some way.</p>
5277 </div>
5278 <div class="dlist">
5279 <dl>
5280 <dt class="hdlist1">TeleMega</dt>
5281 <dd>
5282 <p>Connect pin 6 and pin 1 of the companion
5283 connector. Pin 1 can be identified by the square pad
5284 around it, and then the pins count sequentially across
5285 the board. Be very careful to <strong>not</strong> short pin 8 to
5286 anything as that is connected directly to the
5287 battery. Pin 7 carries 3.3V and the board will crash
5288 if that is connected to pin 1, but shouldn&#8217;t damage
5289 the board.</p>
5290 </dd>
5291 <dt class="hdlist1">EasyMega</dt>
5292 <dd>
5293 <p>Connect pin 6 and pin 1 of the companion
5294 connector. Pin 1 can be identified by the square pad
5295 around it, and then the pins count sequentially across
5296 the board. Be very careful to <strong>not</strong> short pin 8 to
5297 anything as that is connected directly to the
5298 battery. Pin 7 carries 3.3V and the board will crash
5299 if that is connected to pin 1, but shouldn&#8217;t damage
5300 the board.</p>
5301 </dd>
5302 <dt class="hdlist1">EasyTimer</dt>
5303 <dd>
5304 <p>Connect pin 5 and pin 1 of the debug connector, which
5305 is the six holes next to the beeper. Pin 1 can be
5306 identified by the square pad around it, and then the
5307 pins count sequentially across the board, making Pin 5
5308 the one on the other end of the row.</p>
5309 </dd>
5310 <dt class="hdlist1">TeleMetrum v2 and newer</dt>
5311 <dd>
5312 <p>Connect pin 6 and pin 1 of the companion
5313 connector. Pin 1 can be identified by the square pad
5314 around it, and then the pins count sequentially across
5315 the board. Be very careful to <strong>not</strong> short pin 8 to
5316 anything as that is connected directly to the
5317 battery. Pin 7 carries 3.3V and the board will crash
5318 if that is connected to pin 1, but shouldn&#8217;t damage
5319 the board.</p>
5320 </dd>
5321 <dt class="hdlist1">EasyMini</dt>
5322 <dd>
5323 <p>Connect pin 6 and pin 1 of the debug connector, which
5324 is the six holes next to the beeper. Pin 1 can be
5325 identified by the square pad around it, and then the
5326 pins count sequentially across the board, making Pin 6
5327 the one on the other end of the row.</p>
5328 </dd>
5329 <dt class="hdlist1">TeleGPS v1</dt>
5330 <dd>
5331 <p>Connect pin 32 on the CPU to ground.  Pin 32 is the
5332 right-most pin on the bottom edge of the CPU when the
5333 board is oriented with the USB and battery connectors
5334 to the right.</p>
5335 </dd>
5336 <dt class="hdlist1">TeleGPS v2</dt>
5337 <dd>
5338 <p>Connect together pins 1 and 5 of the Debug connector.
5339 Pin 1 is the pin with the square pad around the hole.</p>
5340 </dd>
5341 <dt class="hdlist1">TeleDongle v3</dt>
5342 <dd>
5343 <p>Connect pin 32 on the CPU to ground. Pin 32 is closest
5344 to the USB wires on the row of pins towards the center
5345 of the board. Ground is available on the capacitor
5346 next to it, on the end towards the USB wires.</p>
5347 </dd>
5348 <dt class="hdlist1">TeleBT v3</dt>
5349 <dd>
5350 <p>Connect pin 4 on the CPU to 3.3V, which can be done by
5351 connecting pin 1 to pin 4.  Pin 1 is the left pin on
5352 the lower edge of the chip when the unit is oriented
5353 such that the SMA is at the top.</p>
5354 </dd>
5355 <dt class="hdlist1">TeleBT v4</dt>
5356 <dd>
5357 <p>Connect pin 30 on the CPU to ground. Pin 30 is the 6th
5358 pin from the right on the top when the unit is oriented
5359 such that the SMA is at the top.</p>
5360 </dd>
5361 </dl>
5362 </div>
5363 <div class="paragraph">
5364 <p>Once you&#8217;ve located the right pins:</p>
5365 </div>
5366 <div class="olist arabic">
5367 <ol class="arabic">
5368 <li>
5369 <p>Turn the altimeter power off.</p>
5370 </li>
5371 <li>
5372 <p>Connect a battery.</p>
5373 </li>
5374 <li>
5375 <p>Connect the indicated terminals together with a
5376 short piece of wire. Take care not to accidentally
5377 connect anything else.</p>
5378 </li>
5379 <li>
5380 <p>Connect USB</p>
5381 </li>
5382 <li>
5383 <p>Turn the board power on.</p>
5384 </li>
5385 </ol>
5386 </div>
5387 <div class="paragraph">
5388 <p>The board should now be visible over USB as
5389 'AltosFlash' and be ready to receive firmware.  Once
5390 the board has been powered up, you can remove the
5391 piece of wire.</p>
5392 </div>
5393 </div>
5394 </div>
5395 <div class="sect2">
5396 <h3 id="_pair_programming">D.2. Pair Programming</h3>
5397 <div class="paragraph">
5398 <p>The big concept to understand is that you have to use
5399 a TeleMetrum v1.0, TeleBT v1.0 or TeleDongle v0.2 as a
5400 programmer to update a pair programmed device. Due to
5401 limited memory resources in the cc1111, we don&#8217;t
5402 support programming directly over USB for these
5403 devices.</p>
5404 </div>
5405 <div class="paragraph">
5406 <p>If you need to update the firmware on a TeleDongle
5407 v0.2, we recommend updating the altimeter first,
5408 before updating TeleDongle.  However, note that
5409 TeleDongle rarely need to be updated.  Any firmware
5410 version 1.0.1 or later will work, version 1.2.1 may
5411 have improved receiver performance slightly.</p>
5412 </div>
5413 <div class="sect3">
5414 <h4 id="_updating_telemetrum_v1_x_firmware">D.2.1. Updating TeleMetrum v1.x Firmware</h4>
5415 <div class="olist arabic">
5416 <ol class="arabic">
5417 <li>
5418 <p>Find the 'programming cable' that you got as
5419 part of the starter kit, that has a red
5420 8-pin MicroMaTch connector on one end and a
5421 red 4-pin MicroMaTch connector on the other
5422 end.</p>
5423 </li>
5424 <li>
5425 <p>Take the 2 screws out of the TeleDongle v0.2
5426 or TeleBT v1.0 case to get access to the
5427 circuit board.</p>
5428 </li>
5429 <li>
5430 <p>Plug the 8-pin end of the programming cable
5431 to the matching connector on the TeleDongle
5432 v0.2 or TeleBT v1.0, and the 4-pin end to
5433 the matching connector on the TeleMetrum.
5434 Note that each MicroMaTch connector has an
5435 alignment pin that goes through a hole in
5436 the PC board when you have the cable
5437 oriented correctly.</p>
5438 </li>
5439 <li>
5440 <p>Attach a battery to the TeleMetrum board.</p>
5441 </li>
5442 <li>
5443 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5444 your computer&#8217;s USB port, and power up the
5445 TeleMetrum.</p>
5446 </li>
5447 <li>
5448 <p>Run AltosUI, and select 'Flash Image' from
5449 the File menu.</p>
5450 </li>
5451 <li>
5452 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5453 device from the list, identifying it as the
5454 programming device.</p>
5455 </li>
5456 <li>
5457 <p>Select the image you want put on the
5458 TeleMetrum, which should have a name in the
5459 form telemetrum-v1.2-1.0.0.ihx.  It should
5460 be visible in the default directory, if not
5461 you may have to poke around your system to
5462 find it.</p>
5463 </li>
5464 <li>
5465 <p>Make sure the configuration parameters are
5466 reasonable looking. If the serial number
5467 and/or RF configuration values aren&#8217;t right,
5468 you&#8217;ll need to change them.</p>
5469 </li>
5470 <li>
5471 <p>Hit the 'OK' button and the software should
5472 proceed to flash the TeleMetrum with new
5473 firmware, showing a progress bar.</p>
5474 </li>
5475 <li>
5476 <p>Confirm that the TeleMetrum board seems to
5477 have updated OK, which you can do by
5478 plugging in to it over USB and using a
5479 terminal program to connect to the board and
5480 issue the 'v' command to check the version,
5481 etc.</p>
5482 </li>
5483 </ol>
5484 </div>
5485 <div class="paragraph">
5486 <p>If something goes wrong, give it another try.</p>
5487 </div>
5488 </div>
5489 <div class="sect3">
5490 <h4 id="_updating_telemini_v1_0_firmware">D.2.2. Updating TeleMini v1.0 Firmware</h4>
5491 <div class="paragraph">
5492 <p>You&#8217;ll need a special 'programming cable' to
5493 reprogram the TeleMini v1.0.  You can make your own
5494 using an 8-pin MicroMaTch connector on one end
5495 and a set of four pins on the other.</p>
5496 </div>
5497 <div class="olist arabic">
5498 <ol class="arabic">
5499 <li>
5500 <p>Take the 2 screws out of the TeleDongle v0.2
5501 or TeleBT v1.0 case to get access to the
5502 circuit board.</p>
5503 </li>
5504 <li>
5505 <p>Plug the 8-pin end of the programming cable
5506 to the matching connector on the TeleDongle
5507 v0.2 or TeleBT v1.0, and the 4-pins into the
5508 holes in the TeleMini v1.0 circuit board.  Note
5509 that the MicroMaTch connector has an
5510 alignment pin that goes through a hole in
5511 the PC board when you have the cable
5512 oriented correctly, and that pin 1 on the
5513 TeleMini v1.0 board is marked with a square pad
5514 while the other pins have round pads.</p>
5515 </li>
5516 <li>
5517 <p>Attach a battery to the TeleMini v1.0 board.</p>
5518 </li>
5519 <li>
5520 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5521 your computer&#8217;s USB port, and power up the
5522 TeleMini v1.0</p>
5523 </li>
5524 <li>
5525 <p>Run AltosUI, and select 'Flash Image' from
5526 the File menu.</p>
5527 </li>
5528 <li>
5529 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5530 device from the list, identifying it as the
5531 programming device.</p>
5532 </li>
5533 <li>
5534 <p>Select the image you want put on the
5535 TeleMini v1.0, which should have a name in the
5536 form telemini-v1.0-1.0.0.ihx.  It should be
5537 visible in the default directory, if not you
5538 may have to poke around your system to find
5539 it.</p>
5540 </li>
5541 <li>
5542 <p>Make sure the configuration parameters are
5543 reasonable looking. If the serial number
5544 and/or RF configuration values aren&#8217;t right,
5545 you&#8217;ll need to change them.</p>
5546 </li>
5547 <li>
5548 <p>Hit the 'OK' button and the software should
5549 proceed to flash the TeleMini v1.0 with new
5550 firmware, showing a progress bar.</p>
5551 </li>
5552 <li>
5553 <p>Confirm that the TeleMini v1.0 board seems to
5554 have updated OK, which you can do by
5555 configuring it over the radio link through
5556 the TeleDongle, or letting it come up in
5557 “flight” mode and listening for telemetry.</p>
5558 </li>
5559 </ol>
5560 </div>
5561 <div class="paragraph">
5562 <p>If something goes wrong, give it another try.</p>
5563 </div>
5564 </div>
5565 <div class="sect3">
5566 <h4 id="_updating_teledongle_v0_2_firmware">D.2.3. Updating TeleDongle v0.2 Firmware</h4>
5567 <div class="paragraph">
5568 <p>Updating TeleDongle v0.2 firmware is just like
5569 updating TeleMetrum v1.x or TeleMini v1.0 firmware, but you
5570 use either a TeleMetrum v1.x, TeleDongle v0.2 or
5571 TeleBT v1.0 as the programmer.</p>
5572 </div>
5573 <div class="olist arabic">
5574 <ol class="arabic">
5575 <li>
5576 <p>Find the 'programming cable' that you got as part of
5577 the starter kit, that has a red 8-pin MicroMaTch
5578 connector on one end and a red 4-pin MicroMaTch
5579 connector on the other end.</p>
5580 </li>
5581 <li>
5582 <p>Find the USB cable that you got as part of the
5583 starter kit, and plug the “mini” end in to the
5584 mating connector on TeleMetrum v1.x, TeleDongle v0.2
5585 or TeleBT v1.0.</p>
5586 </li>
5587 <li>
5588 <p>Take the 2 screws out of the TeleDongle v0.2 or
5589 TeleBT v1.0 case to get access to the circuit board.</p>
5590 </li>
5591 <li>
5592 <p>Plug the 8-pin end of the programming cable to the
5593 matching connector on the programmer, and the 4-pin
5594 end to the matching connector on the TeleDongle
5595 v0.2.  Note that each MicroMaTch connector has an
5596 alignment pin that goes through a hole in the PC
5597 board when you have the cable oriented correctly.</p>
5598 </li>
5599 <li>
5600 <p>Attach a battery to the TeleMetrum v1.x board if
5601 you&#8217;re using one.</p>
5602 </li>
5603 <li>
5604 <p>Plug both the programmer and the TeleDongle into
5605 your computer&#8217;s USB ports, and power up the
5606 programmer.</p>
5607 </li>
5608 <li>
5609 <p>Run AltosUI, and select 'Flash Image' from the File
5610 menu.</p>
5611 </li>
5612 <li>
5613 <p>Pick the programmer device from the list,
5614 identifying it as the programming device.</p>
5615 </li>
5616 <li>
5617 <p>Select the image you want put on the TeleDongle
5618 v0.2, which should have a name in the form
5619 teledongle-v0.2-1.0.0.ihx.  It should be visible in
5620 the default directory, if not you may have to poke
5621 around your system to find it.</p>
5622 </li>
5623 <li>
5624 <p>Make sure the configuration parameters are
5625 reasonable looking. If the serial number and/or RF
5626 configuration values aren&#8217;t right, you&#8217;ll need to
5627 change them.  The TeleDongle v0.2 serial number is
5628 on the “bottom” of the circuit board, and can
5629 usually be read through the translucent blue plastic
5630 case without needing to remove the board from the
5631 case.</p>
5632 </li>
5633 <li>
5634 <p>Hit the 'OK' button and the software should proceed
5635 to flash the TeleDongle v0.2 with new firmware,
5636 showing a progress bar.</p>
5637 </li>
5638 <li>
5639 <p>Confirm that the TeleDongle v0.2 board seems to have
5640 updated OK, which you can do by plugging in to it
5641 over USB and using a terminal program to connect to
5642 the board and issue the 'v' command to check the
5643 version, etc.  Once you&#8217;re happy, remove the
5644 programming cable and put the cover back on the
5645 TeleDongle v0.2.</p>
5646 </li>
5647 </ol>
5648 </div>
5649 <div class="paragraph">
5650 <p>If something goes wrong, give it another try.</p>
5651 </div>
5652 <div class="paragraph">
5653 <p>Be careful removing the programming cable from the
5654 locking 8-pin connector on TeleMetrum.  You&#8217;ll need a
5655 fingernail or perhaps a thin screwdriver or knife
5656 blade to gently pry the locking ears out slightly to
5657 extract the connector.  We used a locking connector on
5658 TeleMetrum to help ensure that the cabling to
5659 companion boards used in a rocket don&#8217;t ever come
5660 loose accidentally in flight.</p>
5661 </div>
5662 </div>
5663 </div>
5664 </div>
5665 </div>
5666 <div class="sect1">
5667 <h2 id="_frequency_calibration">Appendix E: Frequency Calibration</h2>
5668 <div class="sectionbody">
5669 <div class="paragraph">
5670 <p>All products that have radio interfaces require calibration of the radio
5671 frequency.  Normally, this calibration is done once during the production
5672 process and the resulting cal value is saved into non-volatile memory.  The
5673 procedure decribed here should only be used outside of the factory if you
5674 are really convinced the radio calibration is bad, and you have access to
5675 the required tools to do the calibration.</p>
5676 </div>
5677 <div class="paragraph">
5678 <p>Because this procedure is only rarely needed in the field, we have not
5679 written any fancy user interface for doing it .. some interaction with
5680 and careful typing in a command-like style interface are required!</p>
5681 </div>
5682 <div class="sect2">
5683 <h3 id="_background_information">E.1. Background Information</h3>
5684 <div class="paragraph">
5685 <p>The radio system on each board uses a quartz crystal to control
5686 a frequency synthesizer that can be programmed to a range of operating
5687 frequencies.  While these crystals are very stable, they have an accuracy
5688 specification that means once the base frequency they set is multiplied up
5689 to the typical operating range of our products, any variation also gets
5690 multiplied.  The objective of the calibration process is, indirectly, to
5691 measure the actual operating frequency of the crystal and adjust the way
5692 the frequency synthesizer is programmed to account for this variation.</p>
5693 </div>
5694 <div class="paragraph">
5695 <p>The frequency may shift a few tens of Hz over the full operating temperature
5696 range, and it may also shift a bit over time as the crystal ages.  But once
5697 properly calibrated, none of those changes are likely to ever cause any
5698 operational problem, as the shift in operating frequency due to these factors
5699 is tiny compared to the bandwidth of our transmitted signal.</p>
5700 </div>
5701 </div>
5702 <div class="sect2">
5703 <h3 id="_required_equipment">E.2. Required Equipment</h3>
5704 <div class="paragraph">
5705 <p>The calibration process requires the ability to precisely measure the actual
5706 frequency of a steady CW carrier on or about the intended operating frequency
5707 in the vicinity of 435 MHz.</p>
5708 </div>
5709 <div class="paragraph">
5710 <p>In production, we use an HP 5385A that is locked to a 10 MHz reference that
5711 is in turn locked to GPS, which provides a highly accurate calibration.  Any
5712 reasonably accurate frequency counter is likely to be sufficient.</p>
5713 </div>
5714 <div class="paragraph">
5715 <p>You also need a computer with terminal program and USB cable to attach to
5716 the board in question, along with a battery and power switch suitable for
5717 powering the board up.</p>
5718 </div>
5719 </div>
5720 <div class="sect2">
5721 <h3 id="_rf_calibration_procedure">E.3. RF Calibration Procedure</h3>
5722 <div class="paragraph">
5723 <p>Using the terminal program, connect to the board over USB.  You will find
5724 that you are now interacting with a command interpreter on the board.  Using
5725 '?' will show the available commands.  Of interest for this process are the
5726 'C' command which turns on a steady transmitted carrier on the currently
5727 selected operating frequency, and the 'c' subcommands that allow interaction
5728 with the saved configuration.</p>
5729 </div>
5730 <div class="paragraph">
5731 <p>Use the 'c s' command to discover and note the current radio calibration
5732 value, and the operating frequency the board is configured for in kHz.</p>
5733 </div>
5734 <div class="paragraph">
5735 <p>Set up your frequency counter with a suitable antenna near the board&#8217;s
5736 antenna and use the 'C' command to turn on a steady carrier.  Let the
5737 frequency stabilize, and note what it is to as many digits as are steady
5738 on your counter&#8217;s display.</p>
5739 </div>
5740 <div class="paragraph">
5741 <p>To calculate the new calibration value, the equation is:</p>
5742 </div>
5743 <div class="olist arabic">
5744 <ol class="arabic">
5745 <li>
5746 <p>(intended_frequency / measured_frequency) * current_cal_value</p>
5747 </li>
5748 </ol>
5749 </div>
5750 <div class="paragraph">
5751 <p>Set the new calibration value using 'c f &lt;value&gt;', then use 'c w' to save
5752 that cal value into non-volatile memory.  You can use the 'C' command again
5753 to confirm the operating frequency is now within a few 10&#8217;s of Hz of the
5754 intended operating frequency.</p>
5755 </div>
5756 </div>
5757 </div>
5758 </div>
5759 <div class="sect1">
5760 <h2 id="_flight_data_recording">Appendix F: Flight Data Recording</h2>
5761 <div class="sectionbody">
5762 <div class="paragraph">
5763 <p>Each flight computer logs data at 100 samples per second
5764 during ascent and 10 samples per second during
5765 descent, except for TeleMini v1.0, which records ascent at 10 samples
5766 per second and descent at 1 sample per second.
5767 Data are logged to
5768 an on-board flash memory part, which can be partitioned into
5769 several equal-sized blocks, one for each flight.</p>
5770 </div>
5771 <table class="tableblock frame-all grid-all stretch">
5772 <caption class="title">Table 11. Data Storage on Altus Metrum altimeters</caption>
5773 <colgroup>
5774 <col style="width: 25%;">
5775 <col style="width: 25%;">
5776 <col style="width: 25%;">
5777 <col style="width: 25%;">
5778 </colgroup>
5779 <thead>
5780 <tr>
5781 <th class="tableblock halign-left valign-top">Device</th>
5782 <th class="tableblock halign-left valign-top">Bytes per Sample</th>
5783 <th class="tableblock halign-left valign-top">Total Storage</th>
5784 <th class="tableblock halign-left valign-top">Minutes at Full Rate</th>
5785 </tr>
5786 </thead>
5787 <tbody>
5788 <tr>
5789 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5790 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5791 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5792 <td class="tableblock halign-left valign-top"><p class="tableblock">20</p></td>
5793 </tr>
5794 <tr>
5795 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1 v1.2</p></td>
5796 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5797 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5798 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5799 </tr>
5800 <tr>
5801 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5802 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5803 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5804 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5805 </tr>
5806 <tr>
5807 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5808 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5809 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5810 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5811 </tr>
5812 <tr>
5813 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5814 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
5815 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5816 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
5817 </tr>
5818 <tr>
5819 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5820 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5821 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5822 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
5823 </tr>
5824 <tr>
5825 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
5826 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5827 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5828 <td class="tableblock halign-left valign-top"><p class="tableblock">10</p></td>
5829 </tr>
5830 <tr>
5831 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
5832 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5833 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5834 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5835 </tr>
5836 <tr>
5837 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
5838 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5839 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5840 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5841 </tr>
5842 </tbody>
5843 </table>
5844 <div class="paragraph">
5845 <p>The on-board flash is partitioned into separate flight logs,
5846 each of a fixed maximum size. Increase the maximum size of
5847 each log and you reduce the number of flights that can be
5848 stored. Decrease the size and you can store more flights.</p>
5849 </div>
5850 <div class="paragraph">
5851 <p>Configuration data is also stored in the flash memory on
5852 TeleMetrum v1.x,
5853 TeleMini v3.0 and
5854 EasyMini.
5855 This consumes 64kB
5856 of flash space.  This configuration space is not available
5857 for storing flight log data.</p>
5858 </div>
5859 <div class="paragraph">
5860 <p>TeleMetrum v2 or newer, TeleMega and EasyMega
5861 store configuration data in a bit of eeprom available within
5862 the processor chip, leaving that space available in flash for
5863 more flight data.</p>
5864 </div>
5865 <div class="paragraph">
5866 <p>To compute the amount of space needed for a single flight, you
5867 can multiply the expected ascent time (in seconds) by 100
5868 times bytes-per-sample, multiply the expected descent time (in
5869 seconds) by 10 times the bytes per sample and add the two
5870 together. That will slightly under-estimate the storage (in
5871 bytes) needed for the flight.
5872 For instance, a TeleMetrum v2 or newer flight spending
5873 20 seconds in ascent and 150 seconds in descent will take
5874 about (20 * 1600) + (150 * 160) = 56000 bytes of storage. You
5875 could store dozens of these flights in the on-board flash.</p>
5876 </div>
5877 <div class="paragraph">
5878 <p>The default size allows for several flights on each flight
5879 computer, except for TeleMini v1.0, which
5880 only holds data for a single flight.
5881 You can adjust the size.</p>
5882 </div>
5883 <div class="paragraph">
5884 <p>Altus Metrum flight computers will not overwrite existing
5885 flight data, so be sure to download flight data and erase it
5886 from the flight computer before it fills up. The flight
5887 computer will still successfully control the flight even if it
5888 cannot log data, so the only thing you will lose is the data.</p>
5889 </div>
5890 </div>
5891 </div>
5892 <div class="sect1">
5893 <h2 id="_altus_metrum_hardware_specifications">Appendix G: Altus Metrum Hardware Specifications</h2>
5894 <div class="sectionbody">
5895 <div class="paragraph">
5896 <p>Here&#8217;s the full set of Altus Metrum products, both in
5897 production and retired.</p>
5898 </div>
5899 <table class="tableblock frame-all grid-all stretch">
5900 <caption class="title">Table 12. Altus Metrum Flight Computer Electronics</caption>
5901 <colgroup>
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 <col style="width: 12.5%;">
5909 <col style="width: 12.5%;">
5910 </colgroup>
5911 <thead>
5912 <tr>
5913 <th class="tableblock halign-left valign-top">Device</th>
5914 <th class="tableblock halign-left valign-top">Barometer</th>
5915 <th class="tableblock halign-left valign-top">Z-axis accel</th>
5916 <th class="tableblock halign-left valign-top">GPS</th>
5917 <th class="tableblock halign-left valign-top">3D sensors</th>
5918 <th class="tableblock halign-left valign-top">Storage</th>
5919 <th class="tableblock halign-left valign-top">RF Output</th>
5920 <th class="tableblock halign-left valign-top">Battery</th>
5921 </tr>
5922 </thead>
5923 <tbody>
5924 <tr>
5925 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5926 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5927 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5928 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5929 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5930 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5931 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5932 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5933 </tr>
5934 <tr>
5935 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1</p></td>
5936 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5937 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5938 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5939 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5940 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5941 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5942 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5943 </tr>
5944 <tr>
5945 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.2</p></td>
5946 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5947 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL78 70g</p></td>
5948 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5949 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5950 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5951 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5952 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5953 </tr>
5954 <tr>
5955 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5956 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5957 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
5958 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
5959 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5960 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5961 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5962 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5963 </tr>
5964 <tr>
5965 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5966 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5967 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5968 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
5969 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5970 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5971 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5972 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5973 </tr>
5974 <tr>
5975 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v4.0</p></td>
5976 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5977 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5978 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8C</p></td>
5979 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5980 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5981 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5982 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5983 </tr>
5984 <tr>
5985 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5986 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</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">-</p></td>
5989 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5990 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5991 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5992 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5993 </tr>
5994 <tr>
5995 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5996 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</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">-</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">512kB</p></td>
6001 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6002 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6003 </tr>
6004 <tr>
6005 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini v1.0-v3.0</p></td>
6006 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6007 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6008 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6009 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6010 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
6011 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6012 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6013 </tr>
6014 <tr>
6015 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v1.0</p></td>
6016 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6017 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6018 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6019 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6020 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6021 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6022 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6023 </tr>
6024 <tr>
6025 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v2.0</p></td>
6026 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6027 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6028 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6029 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6030 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6031 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6032 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6033 </tr>
6034 <tr>
6035 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v3.0</p></td>
6036 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6037 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6038 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6039 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6040 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6041 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6042 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6043 </tr>
6044 <tr>
6045 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v4.0</p></td>
6046 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6047 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6048 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6049 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6050 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6051 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6052 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6053 </tr>
6054 <tr>
6055 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v5.0</p></td>
6056 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6057 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6058 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6059 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 MMC5983</p></td>
6060 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6061 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6062 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6063 </tr>
6064 <tr>
6065 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v6.0</p></td>
6066 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6067 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6068 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6069 <td class="tableblock halign-left valign-top"><p class="tableblock">BMI088 MMC5983</p></td>
6070 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6071 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6072 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6073 </tr>
6074 <tr>
6075 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v1.0</p></td>
6076 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6077 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</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">MPU6000 HMC5883</p></td>
6080 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6081 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6082 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6083 </tr>
6084 <tr>
6085 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v2.0</p></td>
6086 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6087 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6088 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6089 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6090 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6091 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6092 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6093 </tr>
6094 <tr>
6095 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer v1.0</p></td>
6096 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6097 <td class="tableblock halign-left valign-top"><p class="tableblock">16g</p></td>
6098 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6099 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6100 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6101 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6102 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6103 </tr>
6104 <tr>
6105 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor v3.0</p></td>
6106 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6107 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6108 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6109 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6110 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6111 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6112 <td class="tableblock halign-left valign-top"><p class="tableblock">6.5-15V</p></td>
6113 </tr>
6114 </tbody>
6115 </table>
6116 <div style="page-break-after: always;"></div>
6117 <table class="tableblock frame-all grid-all stretch">
6118 <caption class="title">Table 13. Altus Metrum Flight Computer Mechanical Components</caption>
6119 <colgroup>
6120 <col style="width: 16.6666%;">
6121 <col style="width: 16.6666%;">
6122 <col style="width: 16.6666%;">
6123 <col style="width: 16.6666%;">
6124 <col style="width: 16.6666%;">
6125 <col style="width: 16.667%;">
6126 </colgroup>
6127 <thead>
6128 <tr>
6129 <th class="tableblock halign-left valign-top">Device</th>
6130 <th class="tableblock halign-left valign-top">Connectors</th>
6131 <th class="tableblock halign-left valign-top">Screw Terminals</th>
6132 <th class="tableblock halign-left valign-top">Width</th>
6133 <th class="tableblock halign-left valign-top">Length</th>
6134 <th class="tableblock halign-left valign-top">Tube Size</th>
6135 </tr>
6136 </thead>
6137 <tbody>
6138 <tr>
6139 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum</p></td>
6140 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6141 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Switch</p></td>
6142 <td class="tableblock halign-left valign-top"><p class="tableblock">1 inch (2.54cm)</p></td>
6143 <td class="tableblock halign-left valign-top"><p class="tableblock">2 ¾ inch (6.99cm)</p></td>
6144 <td class="tableblock halign-left valign-top"><p class="tableblock">29mm coupler</p></td>
6145 </tr>
6146 <tr>
6147 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
6148 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Battery</p></td>
6149 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro</p></td>
6150 <td class="tableblock halign-left valign-top"><p class="tableblock">½ inch (1.27cm)</p></td>
6151 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6152 <td class="tableblock halign-left valign-top"><p class="tableblock">18mm coupler</p></td>
6153 </tr>
6154 <tr>
6155 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v2.0</p></td>
6156 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug USB Battery</p></td>
6157 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery Switch</p></td>
6158 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6159 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6160 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6161 </tr>
6162 <tr>
6163 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
6164 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6165 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery</p></td>
6166 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6167 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6168 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6169 </tr>
6170 <tr>
6171 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
6172 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6173 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6174 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6175 <td class="tableblock halign-left valign-top"><p class="tableblock">3¼ inch (8.26cm)</p></td>
6176 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6177 </tr>
6178 <tr>
6179 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
6180 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug Companion USB Battery</p></td>
6181 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6182 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6183 <td class="tableblock halign-left valign-top"><p class="tableblock">2¼ inch (5.62cm)</p></td>
6184 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6185 </tr>
6186 <tr>
6187 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer</p></td>
6188 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6189 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro A Pyro B Battery</p></td>
6190 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6191 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6192 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6193 </tr>
6194 <tr>
6195 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor</p></td>
6196 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB</p></td>
6197 <td class="tableblock halign-left valign-top"><p class="tableblock">+5V Pres GND Switch Battery</p></td>
6198 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6199 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6200 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6201 </tr>
6202 </tbody>
6203 </table>
6204 </div>
6205 </div>
6206 <div class="sect1">
6207 <h2 id="_release_notes">Appendix H: Release Notes</h2>
6208 <div class="sectionbody">
6209 <div class="sect2">
6210 <h3 id="_release_notes_for_version_1_9_16">H.1. Release Notes for Version 1.9.16</h3>
6211 <div class="paragraph">
6212 <p>Version 1.9.16</p>
6213 </div>
6214 <div class="sect3">
6215 <h4 id="_altos">H.1.1. AltOS</h4>
6216 <div class="ulist">
6217 <ul>
6218 <li>
6219 <p>Add TeleGPS v3.0 support</p>
6220 </li>
6221 </ul>
6222 </div>
6223 </div>
6224 <div class="sect3">
6225 <h4 id="_altosui_telegps_application">H.1.2. AltosUI &amp; TeleGPS application</h4>
6226 <div class="ulist">
6227 <ul>
6228 <li>
6229 <p>Add TeleGPS v3.0 support</p>
6230 </li>
6231 </ul>
6232 </div>
6233 <div style="page-break-after: always;"></div>
6234 </div>
6235 </div>
6236 <div class="sect2">
6237 <h3 id="_release_notes_for_version_1_9_15">H.2. Release Notes for Version 1.9.15</h3>
6238 <div class="paragraph">
6239 <p>Version 1.9.15</p>
6240 </div>
6241 <div class="sect3">
6242 <h4 id="_altos_2">H.2.1. AltOS</h4>
6243 <div class="ulist">
6244 <ul>
6245 <li>
6246 <p>Add TeleMega v6.0 support</p>
6247 </li>
6248 <li>
6249 <p>Add TeleMetrum v4.0 support</p>
6250 </li>
6251 <li>
6252 <p>Fix sign of IMU values for TeleMega v5 boards in the
6253 'across' axis. This affects IMU acceleration and gyro reports
6254 for that axis, but has no effect on in-flight operation of
6255 the tilt computation.</p>
6256 </li>
6257 </ul>
6258 </div>
6259 <div style="page-break-after: always;"></div>
6260 </div>
6261 </div>
6262 <div class="sect2">
6263 <h3 id="_release_notes_for_version_1_9_14">H.3. Release Notes for Version 1.9.14</h3>
6264 <div class="paragraph">
6265 <p>Version 1.9.14</p>
6266 </div>
6267 <div class="sect3">
6268 <h4 id="_altos_3">H.3.1. AltOS</h4>
6269 <div class="ulist">
6270 <ul>
6271 <li>
6272 <p>Fix 1.9.13 regression in TeleLCO startup sequence that
6273 detects available TeleFire units.</p>
6274 </li>
6275 </ul>
6276 </div>
6277 <div style="page-break-after: always;"></div>
6278 </div>
6279 </div>
6280 <div class="sect2">
6281 <h3 id="_release_notes_for_version_1_9_13">H.4. Release Notes for Version 1.9.13</h3>
6282 <div class="paragraph">
6283 <p>Version 1.9.13</p>
6284 </div>
6285 <div class="sect3">
6286 <h4 id="_altos_4">H.4.1. AltOS</h4>
6287 <div class="ulist">
6288 <ul>
6289 <li>
6290 <p>Add option to beep max height in feet after landing</p>
6291 </li>
6292 <li>
6293 <p>Fix APRS reports to be sent at the correct time and spacing.</p>
6294 </li>
6295 <li>
6296 <p>Fix possible barometric sensor communication failure when
6297 the CPU is busy talking to the radio at the same time. This
6298 would cause loss of telemetry and failure to track the state
6299 of the rocket during flight. This was aggrevated by the APRS
6300 reports getting sent more often than they should.</p>
6301 </li>
6302 <li>
6303 <p>Change EasyMotor v3 code to base logging on motor pressure
6304 rather than the accelerometer. This allows use of EasyMotor
6305 v3 in a static test stand.</p>
6306 </li>
6307 </ul>
6308 </div>
6309 </div>
6310 <div class="sect3">
6311 <h4 id="_altosui_2">H.4.2. AltosUI</h4>
6312 <div class="ulist">
6313 <ul>
6314 <li>
6315 <p>Add support for configuring the units used to report height
6316 after landing on the beeper.</p>
6317 </li>
6318 </ul>
6319 </div>
6320 <div style="page-break-after: always;"></div>
6321 </div>
6322 </div>
6323 <div class="sect2">
6324 <h3 id="_release_notes_for_version_1_9_12">H.5. Release Notes for Version 1.9.12</h3>
6325 <div class="paragraph">
6326 <p>Version 1.9.12</p>
6327 </div>
6328 <div class="sect3">
6329 <h4 id="_altos_5">H.5.1. AltOS</h4>
6330 <div class="ulist">
6331 <ul>
6332 <li>
6333 <p>Add EasyMini v3.0 and EasyMotor v3.0 support</p>
6334 </li>
6335 <li>
6336 <p>Fix TeleMetrum v2.0 configuration. Saving config would
6337 crash the board.</p>
6338 </li>
6339 </ul>
6340 </div>
6341 </div>
6342 <div class="sect3">
6343 <h4 id="_altosui_3">H.5.2. AltosUI</h4>
6344 <div class="ulist">
6345 <ul>
6346 <li>
6347 <p>Add EasyMotor log parsing and graphing.</p>
6348 </li>
6349 </ul>
6350 </div>
6351 <div style="page-break-after: always;"></div>
6352 </div>
6353 </div>
6354 <div class="sect2">
6355 <h3 id="_release_notes_for_version_1_9_11">H.6. Release Notes for Version 1.9.11</h3>
6356 <div class="paragraph">
6357 <p>Version 1.9.11</p>
6358 </div>
6359 <div class="sect3">
6360 <h4 id="_altos_6">H.6.1. AltOS</h4>
6361 <div class="ulist">
6362 <ul>
6363 <li>
6364 <p>Make Apogee Delay work again.</p>
6365 </li>
6366 <li>
6367 <p>Allow TX power to be limited to 10mW for compliance with
6368 some uses under UK regulations.</p>
6369 </li>
6370 <li>
6371 <p>Fix numerous minor issues with 16- vs 32- bit time values.</p>
6372 </li>
6373 </ul>
6374 </div>
6375 </div>
6376 <div class="sect3">
6377 <h4 id="_altosui_4">H.6.2. AltosUI</h4>
6378 <div class="ulist">
6379 <ul>
6380 <li>
6381 <p>Support M1-based Macs, follow AdoptOpenJDK to Adoptium</p>
6382 </li>
6383 </ul>
6384 </div>
6385 </div>
6386 <div class="sect3">
6387 <h4 id="_altosdroid_2">H.6.3. AltosDroid</h4>
6388 <div class="ulist">
6389 <ul>
6390 <li>
6391 <p>Handle Bluetooth permissions reliably.</p>
6392 </li>
6393 <li>
6394 <p>Fix some screen rotation bugs.</p>
6395 </li>
6396 </ul>
6397 </div>
6398 <div style="page-break-after: always;"></div>
6399 </div>
6400 </div>
6401 <div class="sect2">
6402 <h3 id="_release_notes_for_version_1_9_10">H.7. Release Notes for Version 1.9.10</h3>
6403 <div class="paragraph">
6404 <p>Version 1.9.10</p>
6405 </div>
6406 <div class="paragraph">
6407 <p>This release contains a couple of bug fixes for ground station software.</p>
6408 </div>
6409 <div class="sect3">
6410 <h4 id="_altosui_5">H.7.1. AltosUI</h4>
6411 <div class="ulist">
6412 <ul>
6413 <li>
6414 <p>Rework the windows DLL build to make AltosUI run on more
6415 instances of Windows 10.</p>
6416 </li>
6417 </ul>
6418 </div>
6419 </div>
6420 <div class="sect3">
6421 <h4 id="_altosdroid_3">H.7.2. AltosDroid</h4>
6422 <div class="ulist">
6423 <ul>
6424 <li>
6425 <p>Adapt to Android security changes which prevent AltosDroid
6426 from storing flights in
6427 /storage/emulated/0/AltusMetrum. Now, flights are stored in
6428 /storage/emulated/0/media/org.altusmetrum.AltosDroid/AltusMetrum
6429 instead.  Also, AltosDroid will display an error message if
6430 flight data cannot be logged.</p>
6431 </li>
6432 </ul>
6433 </div>
6434 <div style="page-break-after: always;"></div>
6435 </div>
6436 </div>
6437 <div class="sect2">
6438 <h3 id="_release_notes_for_version_1_9_9">H.8. Release Notes for Version 1.9.9</h3>
6439 <div class="paragraph">
6440 <p>Version 1.9.9</p>
6441 </div>
6442 <div class="paragraph">
6443 <p>This release contains a critical bug fix for a problem
6444 introduced in version 1.9.8 for TeleMega and EasyMega
6445 boards. This problem occurs when using the stored
6446 configuration from 1.9.7 or earlier.</p>
6447 </div>
6448 <div class="paragraph">
6449 <p>If you are running 1.9.8 or are upgrading from 1.9.8 on any
6450 version of TeleMega or EasyMega, you must reconfigure all pyro
6451 channels, recalibrate accelerometers, reset the APRS interval,
6452 adjust the beep tone and reset the pyro time.</p>
6453 </div>
6454 <div class="sect3">
6455 <h4 id="_altos_7">H.8.1. AltOS</h4>
6456 <div class="ulist">
6457 <ul>
6458 <li>
6459 <p>Fix EasyMega and TeleMega upgrade process from 1.9.7 or
6460 earlier.  1.9.8 introduced larger delay values, which
6461 required modifying the configuration in-place, and the 1.9.8
6462 version had a flaw which broke the pyro channel config and
6463 all of the config values beyond that in memory, including
6464 APRS interval, IMU accel calibation, beep tone and pyro
6465 time.</p>
6466 </li>
6467 <li>
6468 <p>Fix TeleMega v5.0 mag sensor driver. This driver was quite
6469 broken due to developing it in the presence of the magnetic
6470 beeper on the board. Because of that beeper, the values this
6471 sensor records are not accurate. Fortunately, they are not
6472 used for controlling the flight.</p>
6473 </li>
6474 </ul>
6475 </div>
6476 </div>
6477 <div class="sect3">
6478 <h4 id="_altosui_6">H.8.2. AltosUI</h4>
6479 <div class="ulist">
6480 <ul>
6481 <li>
6482 <p>Parse TeleMega v5.0 log files. A missing check in the code
6483 meant that the TeleMega v5.0 log files would cause an error
6484 when attempting to load them. Logs saved with AltosUI
6485 1.9.8 were not affected, only the presentation of the data
6486 was broken.</p>
6487 </li>
6488 </ul>
6489 </div>
6490 <div style="page-break-after: always;"></div>
6491 </div>
6492 </div>
6493 <div class="sect2">
6494 <h3 id="_release_notes_for_version_1_9_8">H.9. Release Notes for Version 1.9.8</h3>
6495 <div class="paragraph">
6496 <p>Version 1.9.8</p>
6497 </div>
6498 <div class="sect3">
6499 <h4 id="_altos_8">H.9.1. AltOS</h4>
6500 <div class="ulist">
6501 <ul>
6502 <li>
6503 <p>Add support for TeleMega v5.0</p>
6504 </li>
6505 <li>
6506 <p>Extend extra pyro channel times to support delay &gt; 327 seconds</p>
6507 </li>
6508 </ul>
6509 </div>
6510 </div>
6511 <div class="sect3">
6512 <h4 id="_altosui_7">H.9.2. AltosUI</h4>
6513 <div class="ulist">
6514 <ul>
6515 <li>
6516 <p>Support ARM devices in Linux binary release</p>
6517 </li>
6518 <li>
6519 <p>Add support for TeleMega v5.0</p>
6520 </li>
6521 </ul>
6522 </div>
6523 </div>
6524 <div class="sect3">
6525 <h4 id="_altosdroid_4">H.9.3. AltosDroid</h4>
6526 <div class="ulist">
6527 <ul>
6528 <li>
6529 <p>Show tilt angle in pad and flight tabs</p>
6530 </li>
6531 <li>
6532 <p>Show altitude as well as height (useful for TeleGPS)</p>
6533 </li>
6534 <li>
6535 <p>Support devices without GPS receivers</p>
6536 </li>
6537 </ul>
6538 </div>
6539 </div>
6540 <div class="sect3">
6541 <h4 id="_micropeak_gui">H.9.4. MicroPeak GUI</h4>
6542 <div class="ulist">
6543 <ul>
6544 <li>
6545 <p>Show error dialog if device open fails</p>
6546 </li>
6547 </ul>
6548 </div>
6549 <div style="page-break-after: always;"></div>
6550 </div>
6551 </div>
6552 <div class="sect2">
6553 <h3 id="_release_notes_for_version_1_9_7">H.10. Release Notes for Version 1.9.7</h3>
6554 <div class="paragraph">
6555 <p>Version 1.9.7</p>
6556 </div>
6557 <div class="sect3">
6558 <h4 id="_altos_9">H.10.1. AltOS</h4>
6559 <div class="ulist">
6560 <ul>
6561 <li>
6562 <p>Fix TeleGPS logging so that new data are appended to an existing log correctly</p>
6563 </li>
6564 </ul>
6565 </div>
6566 </div>
6567 <div class="sect3">
6568 <h4 id="_altosui_8">H.10.2. AltosUI</h4>
6569 <div class="ulist">
6570 <ul>
6571 <li>
6572 <p>Support Mac OS X 11 (Big Sur)</p>
6573 </li>
6574 <li>
6575 <p>Support Monitor Idle on Easy Timer</p>
6576 </li>
6577 <li>
6578 <p>Fix TeleMega v4.0 and TeleMetrum v3.0 configuration in Antenna Down mode</p>
6579 </li>
6580 <li>
6581 <p>Show launch sites in Load Maps view</p>
6582 </li>
6583 <li>
6584 <p>Add IMU header names to CSV files</p>
6585 </li>
6586 <li>
6587 <p>Clean up TeleGPS log corruption due to firmware bugs during firmware update</p>
6588 </li>
6589 </ul>
6590 </div>
6591 </div>
6592 <div class="sect3">
6593 <h4 id="_altosdroid_5">H.10.3. AltosDroid</h4>
6594 <div class="ulist">
6595 <ul>
6596 <li>
6597 <p>Support older devices back to Android version 5.1</p>
6598 </li>
6599 <li>
6600 <p>Fix a number of issues that could result in app crashes</p>
6601 </li>
6602 </ul>
6603 </div>
6604 <div style="page-break-after: always;"></div>
6605 </div>
6606 </div>
6607 <div class="sect2">
6608 <h3 id="_release_notes_for_version_1_9_6">H.11. Release Notes for Version 1.9.6</h3>
6609 <div class="paragraph">
6610 <p>Version 1.9.6</p>
6611 </div>
6612 <div class="sect3">
6613 <h4 id="_altos_10">H.11.1. AltOS</h4>
6614 <div class="ulist">
6615 <ul>
6616 <li>
6617 <p>Fix EasyTimer bug where it might mis-detect boost (either
6618 detect it early or not at all) due to small errors in
6619 accelerometer calibration leading to large accumulated error
6620 in speed.</p>
6621 </li>
6622 <li>
6623 <p>Adjust self-test of new 9-axis IMU (BMX-160) so that it
6624 doesn&#8217;t think the part has a failure when tested sitting
6625 horizontally.</p>
6626 </li>
6627 </ul>
6628 </div>
6629 <div style="page-break-after: always;"></div>
6630 </div>
6631 </div>
6632 <div class="sect2">
6633 <h3 id="_release_notes_for_version_1_9_5">H.12. Release Notes for Version 1.9.5</h3>
6634 <div class="paragraph">
6635 <p>Version 1.9.5</p>
6636 </div>
6637 <div class="sect3">
6638 <h4 id="_altos_11">H.12.1. AltOS</h4>
6639 <div class="ulist">
6640 <ul>
6641 <li>
6642 <p>Add Booster mode for all dual-deploy altimeters. Select
6643 "Separation &amp; Apogee" mode in AltosUI to fire the 'main'
6644 channel at first motor burnout and the 'apogee' channel at
6645 apogee.</p>
6646 </li>
6647 <li>
6648 <p>Improve reliability of stm32l firmware under heavy
6649 load. This was found using Monitor Idle on TeleMega with all
6650 flash slots full of data which would occasionally lock up.</p>
6651 </li>
6652 <li>
6653 <p>Fix orientation label in AltosUI for devices with
6654 radios. This makes the orientation say 'Antenna up' and
6655 'Antenna Down' for TeleMetrum and TeleMega again.</p>
6656 </li>
6657 <li>
6658 <p>Fix log data for pyro channels which were inhibited (often
6659 because of a tilt limit). They used to report 'fired' as
6660 soon as they were inhibited, which was misleading. Now they
6661 never report as having been fired.</p>
6662 </li>
6663 <li>
6664 <p>Allow Igniter Test to fire each igniter more than once.</p>
6665 </li>
6666 </ul>
6667 </div>
6668 </div>
6669 <div class="sect3">
6670 <h4 id="_altosui_9">H.12.2. AltosUI</h4>
6671 <div class="ulist">
6672 <ul>
6673 <li>
6674 <p>Improve performance of Monitor Idle mode by sending less data for each
6675 update.</p>
6676 </li>
6677 <li>
6678 <p>Improve Mac OS X install scripts so that they work on
6679 Catalina. This involves sending the user to get Java from
6680 the AdoptOpenJDK project which provides a version that works
6681 with Java applications.</p>
6682 </li>
6683 <li>
6684 <p>Make larger dialogs scrollable for use on smaller screens.</p>
6685 </li>
6686 <li>
6687 <p>Fix troubles re-flashing EasyMega boards running older
6688 firmware.</p>
6689 </li>
6690 <li>
6691 <p>Add TeleMetrum v3.0 firmware to the Windows
6692 AltosUI packages.</p>
6693 </li>
6694 </ul>
6695 </div>
6696 <div style="page-break-after: always;"></div>
6697 </div>
6698 </div>
6699 <div class="sect2">
6700 <h3 id="_release_notes_for_version_1_9_4">H.13. Release Notes for Version 1.9.4</h3>
6701 <div class="paragraph">
6702 <p>Version 1.9.4</p>
6703 </div>
6704 <div class="sect3">
6705 <h4 id="_altos_12">H.13.1. AltOS</h4>
6706 <div class="ulist">
6707 <ul>
6708 <li>
6709 <p>Fixed firmware for TeleDongle v3.0 and TeleBT v4.0. Version 1.9.3 bricked those
6710 devices requiring them to be opened up to get them working again.</p>
6711 </li>
6712 <li>
6713 <p>Fixed firmware for EasyMini v1.0. Changes in the storage
6714 code caused it to use significantly more RAM which made the
6715 interrupt stack smash into other data structures and cause
6716 the device to panic at startup time.</p>
6717 </li>
6718 </ul>
6719 </div>
6720 </div>
6721 <div class="sect3">
6722 <h4 id="_altosui_10">H.13.2. AltosUI</h4>
6723 <div class="ulist">
6724 <ul>
6725 <li>
6726 <p>Add TeleMetrum v3.0 firmware to the Linux and Mac OSX
6727 AltosUI packages.</p>
6728 </li>
6729 </ul>
6730 </div>
6731 <div style="page-break-after: always;"></div>
6732 </div>
6733 </div>
6734 <div class="sect2">
6735 <h3 id="_release_notes_for_version_1_9_3">H.14. Release Notes for Version 1.9.3</h3>
6736 <div class="paragraph">
6737 <p>Version 1.9.3</p>
6738 </div>
6739 <div class="sect3">
6740 <h4 id="_altos_13">H.14.1. AltOS</h4>
6741 <div class="ulist">
6742 <ul>
6743 <li>
6744 <p>Add APRS offset. Allows multiple APRS transmitters to coordinate when
6745 transmission occurs to allow them to share a frequency.</p>
6746 </li>
6747 <li>
6748 <p>Fix max log size. Flight computer storage is erased in 64kB chunks. Adjust max
6749 log size to be a multiple of this size.</p>
6750 </li>
6751 <li>
6752 <p>Check flight erasing more carefully. Handle interrupting erasing in the
6753 middle.</p>
6754 </li>
6755 <li>
6756 <p>Add EasyTimer support.</p>
6757 </li>
6758 </ul>
6759 </div>
6760 </div>
6761 <div class="sect3">
6762 <h4 id="_altosui_telegps_micropeak">H.14.2. AltosUI, TeleGPS, MicroPeak</h4>
6763 <div class="ulist">
6764 <ul>
6765 <li>
6766 <p>Add configuration support for APRS offset.</p>
6767 </li>
6768 <li>
6769 <p>Adjust flight log sizes to be a multiple of the flight
6770 computer erase block size.</p>
6771 </li>
6772 <li>
6773 <p>Report barometric pad altitude in Pad tab for TeleMini.</p>
6774 </li>
6775 </ul>
6776 </div>
6777 <div style="page-break-after: always;"></div>
6778 </div>
6779 </div>
6780 <div class="sect2">
6781 <h3 id="_release_notes_for_version_1_9_2">H.15. Release Notes for Version 1.9.2</h3>
6782 <div class="paragraph">
6783 <p>Version 1.9.2</p>
6784 </div>
6785 <div class="sect3">
6786 <h4 id="_altos_14">H.15.1. AltOS</h4>
6787 <div class="ulist">
6788 <ul>
6789 <li>
6790 <p>Add support for TeleMega v4.0</p>
6791 </li>
6792 <li>
6793 <p>Fix time wrapping issue with TeleLCO and TeleFire</p>
6794 </li>
6795 </ul>
6796 </div>
6797 </div>
6798 <div class="sect3">
6799 <h4 id="_altosui_telegps_micropeak_2">H.15.2. AltosUI, TeleGPS, MicroPeak</h4>
6800 <div class="ulist">
6801 <ul>
6802 <li>
6803 <p>Add column in AltosUI for IMU data from TeleMega and EasyMega</p>
6804 </li>
6805 </ul>
6806 </div>
6807 </div>
6808 <div class="sect3">
6809 <h4 id="_altosdroid_6">H.15.3. AltosDroid</h4>
6810 <div class="ulist">
6811 <ul>
6812 <li>
6813 <p>Allow sorting of trackers by call, serial, frequency or age</p>
6814 </li>
6815 <li>
6816 <p>Offer selection of font sizes</p>
6817 </li>
6818 <li>
6819 <p>Various bug fixes for older Android versions</p>
6820 </li>
6821 </ul>
6822 </div>
6823 <div style="page-break-after: always;"></div>
6824 </div>
6825 </div>
6826 <div class="sect2">
6827 <h3 id="_release_notes_for_version_1_9_1">H.16. Release Notes for Version 1.9.1</h3>
6828 <div class="paragraph">
6829 <p>Version 1.9.1</p>
6830 </div>
6831 <div class="sect3">
6832 <h4 id="_altos_15">H.16.1. AltOS</h4>
6833 <div class="ulist">
6834 <ul>
6835 <li>
6836 <p>Add support for TeleMetrum v3.0</p>
6837 </li>
6838 <li>
6839 <p>Fix accel cal value when changing EasyMega v2.0 pad orientation</p>
6840 </li>
6841 <li>
6842 <p>Correct EasyMega v2.0 magnetometer data axes</p>
6843 </li>
6844 <li>
6845 <p>Fix EasyMega v2.0 idle monitor display of IMU data</p>
6846 </li>
6847 <li>
6848 <p>Report all sensor failures at power-up time.</p>
6849 </li>
6850 </ul>
6851 </div>
6852 </div>
6853 <div class="sect3">
6854 <h4 id="_altosui_telegps_micropeak_3">H.16.2. AltosUI, TeleGPS, MicroPeak</h4>
6855 <div class="ulist">
6856 <ul>
6857 <li>
6858 <p>Display error message when attempting to graph unknown format file.</p>
6859 </li>
6860 <li>
6861 <p>Make it possible to disable APRS once enabled.</p>
6862 </li>
6863 <li>
6864 <p>Display some data for point near cursor in map tab.</p>
6865 </li>
6866 <li>
6867 <p>Support upgrading devices from pre-1.8 firmware</p>
6868 </li>
6869 <li>
6870 <p>Wait for Windows to prepare new devices during firmware
6871 upgrade. This should avoid the “COMxx: open failed” message.</p>
6872 </li>
6873 </ul>
6874 </div>
6875 <div style="page-break-after: always;"></div>
6876 </div>
6877 </div>
6878 <div class="sect2">
6879 <h3 id="_release_notes_for_version_1_9">H.17. Release Notes for Version 1.9</h3>
6880 <div class="paragraph">
6881 <p>Version 1.9</p>
6882 </div>
6883 <div class="sect3">
6884 <h4 id="_altos_16">H.17.1. AltOS</h4>
6885 <div class="ulist">
6886 <ul>
6887 <li>
6888 <p>Add support for EasyMega v2.0</p>
6889 </li>
6890 <li>
6891 <p>Replace C library for ARM devices</p>
6892 </li>
6893 <li>
6894 <p>Remove support for 8051-based devices and SDCC compiler</p>
6895 </li>
6896 </ul>
6897 </div>
6898 </div>
6899 <div class="sect3">
6900 <h4 id="_altosui_telegps_micropeak_4">H.17.2. AltosUI, TeleGPS, MicroPeak</h4>
6901 <div class="ulist">
6902 <ul>
6903 <li>
6904 <p>Select ROM images based on product name when reflashing</p>
6905 </li>
6906 <li>
6907 <p>Fix TeleGPS v2 battery voltage display</p>
6908 </li>
6909 </ul>
6910 </div>
6911 <div style="page-break-after: always;"></div>
6912 </div>
6913 </div>
6914 <div class="sect2">
6915 <h3 id="_release_notes_for_version_1_8_7">H.18. Release Notes for Version 1.8.7</h3>
6916 <div class="paragraph">
6917 <p>Version 1.8.7</p>
6918 </div>
6919 <div class="sect3">
6920 <h4 id="_altos_17">H.18.1. AltOS</h4>
6921 <div class="ulist">
6922 <ul>
6923 <li>
6924 <p>Include TeleMega v3.0 firmware</p>
6925 </li>
6926 </ul>
6927 </div>
6928 </div>
6929 <div class="sect3">
6930 <h4 id="_altosui_telegps_micropeak_5">H.18.2. AltosUI, TeleGPS, MicroPeak</h4>
6931 <div class="ulist">
6932 <ul>
6933 <li>
6934 <p>Poll for new devices while Device dialog is displayed</p>
6935 </li>
6936 <li>
6937 <p>Wait for device to re-appear when flashing new firmware</p>
6938 </li>
6939 <li>
6940 <p>Fetch correct TeleBT v4.0 RF calibration values from web
6941 site when reflashing.</p>
6942 </li>
6943 <li>
6944 <p>Change gyro headings in .csv files from x/y/z to
6945 roll/pitch/yaw</p>
6946 </li>
6947 <li>
6948 <p>Add documentation about Packet Link mode</p>
6949 </li>
6950 <li>
6951 <p>Add documentation about forcing TeleMini RF parameters to
6952 known values.</p>
6953 </li>
6954 <li>
6955 <p>Create a proxy server for Google Maps to re-enable map
6956 images</p>
6957 </li>
6958 <li>
6959 <p>Fix Java version info in all distributed jar files so that
6960 applications will run with standard Mac OS X Java.</p>
6961 </li>
6962 <li>
6963 <p>Replace JavaApplicationStub for Mac OS X so that
6964 applications will run with Oracle Java.</p>
6965 </li>
6966 </ul>
6967 </div>
6968 <div style="page-break-after: always;"></div>
6969 </div>
6970 </div>
6971 <div class="sect2">
6972 <h3 id="_release_notes_for_version_1_8_6">H.19. Release Notes for Version 1.8.6</h3>
6973 <div class="paragraph">
6974 <p>Version 1.8.6</p>
6975 </div>
6976 <div class="sect3">
6977 <h4 id="_altos_18">H.19.1. AltOS</h4>
6978 <div class="ulist">
6979 <ul>
6980 <li>
6981 <p>Use maximum of 64 previous tilt values in pyro tilt tests</p>
6982 </li>
6983 <li>
6984 <p>Eliminate 100m height requirement for coast detection</p>
6985 </li>
6986 <li>
6987 <p>Change After Motor pyro check to be &gt;= instead of ==</p>
6988 </li>
6989 <li>
6990 <p>Change Time since Boost to be Time since launch.</p>
6991 </li>
6992 </ul>
6993 </div>
6994 </div>
6995 <div class="sect3">
6996 <h4 id="_altosui_telegps">H.19.2. AltosUI, TeleGPS</h4>
6997 <div class="ulist">
6998 <ul>
6999 <li>
7000 <p>Clarify pyro test phrasing</p>
7001 </li>
7002 <li>
7003 <p>Remove ascending/descending from pyro config UI</p>
7004 </li>
7005 <li>
7006 <p>Fix accel calibration in Antenna Down mode</p>
7007 </li>
7008 <li>
7009 <p>Add mag sensor reporting for TeleMega v3 idle monitoring.</p>
7010 </li>
7011 <li>
7012 <p>Fix radio parameter saving at 2400 bps telmetry rate.</p>
7013 </li>
7014 </ul>
7015 </div>
7016 </div>
7017 <div class="sect3">
7018 <h4 id="_micropeak">H.19.3. MicroPeak</h4>
7019 <div class="ulist">
7020 <ul>
7021 <li>
7022 <p>Report altimeter-recorded maximum height value</p>
7023 </li>
7024 </ul>
7025 </div>
7026 <div style="page-break-after: always;"></div>
7027 </div>
7028 </div>
7029 <div class="sect2">
7030 <h3 id="_release_notes_for_version_1_8_5">H.20. Release Notes for Version 1.8.5</h3>
7031 <div class="paragraph">
7032 <p>Version 1.8.5 includes fixes to the ground software support
7033 for TeleBT v4, along with a few other minor updates.</p>
7034 </div>
7035 <div class="sect3">
7036 <h4 id="_altos_19">H.20.1. AltOS</h4>
7037 <div class="ulist">
7038 <ul>
7039 <li>
7040 <p>Fix startup beeps that indicate sensor failures.</p>
7041 </li>
7042 </ul>
7043 </div>
7044 </div>
7045 <div class="sect3">
7046 <h4 id="_altosui_telegps_2">H.20.2. AltosUI, TeleGPS</h4>
7047 <div class="ulist">
7048 <ul>
7049 <li>
7050 <p>When updating device firmware, make sure selected firmware
7051 matches target device.</p>
7052 </li>
7053 <li>
7054 <p>Correct Bluetooth device matching when looking for TeleBT
7055 devices.</p>
7056 </li>
7057 </ul>
7058 </div>
7059 <div style="page-break-after: always;"></div>
7060 </div>
7061 </div>
7062 <div class="sect2">
7063 <h3 id="_release_notes_for_version_1_8_4">H.21. Release Notes for Version 1.8.4</h3>
7064 <div class="paragraph">
7065 <p>Version 1.8.4 includes support for EasyMini version 2.0</p>
7066 </div>
7067 <div class="sect3">
7068 <h4 id="_altos_20">H.21.1. AltOS</h4>
7069 <div class="ulist">
7070 <ul>
7071 <li>
7072 <p>Support for EasyMini version 2.0 hardware.</p>
7073 </li>
7074 </ul>
7075 </div>
7076 <div style="page-break-after: always;"></div>
7077 </div>
7078 </div>
7079 <div class="sect2">
7080 <h3 id="_release_notes_for_version_1_8_3">H.22. Release Notes for Version 1.8.3</h3>
7081 <div class="paragraph">
7082 <p>Version 1.8.3 includes support for TeleMega version 3.0 along
7083 with two important flight computer fixes. This version also
7084 changes KML export data to make Tripoli Record reporting
7085 better and some updates to graph presentation and data
7086 downloading.</p>
7087 </div>
7088 <div class="sect3">
7089 <h4 id="_altos_21">H.22.1. AltOS</h4>
7090 <div class="sect4">
7091 <h5 id="_altos_new_features">AltOS New Features</h5>
7092 <div class="ulist">
7093 <ul>
7094 <li>
7095 <p>Support for TeleMega version 3.0 hardware.</p>
7096 </li>
7097 </ul>
7098 </div>
7099 </div>
7100 <div class="sect4">
7101 <h5 id="_altos_bug_fixes">AltOS Bug Fixes</h5>
7102 <div class="ulist">
7103 <ul>
7104 <li>
7105 <p>Ground testing EasyMega and TeleMega additional pyro
7106 channels could result in a sticky 'fired' status which would
7107 prevent these channels from firing on future flights.</p>
7108 </li>
7109 <li>
7110 <p>Corrupted flight log records could prevent future flights
7111 from capturing log data.</p>
7112 </li>
7113 <li>
7114 <p>Fixed saving of pyro configuration that ended with
7115 'Descending'.</p>
7116 </li>
7117 </ul>
7118 </div>
7119 </div>
7120 </div>
7121 <div class="sect3">
7122 <h4 id="_altosui_and_telegps_applications">H.22.2. AltosUI and TeleGPS Applications</h4>
7123 <div class="sect4">
7124 <h5 id="_altosui_new_features">AltosUI New Features</h5>
7125 <div class="ulist">
7126 <ul>
7127 <li>
7128 <p>Support for TeleMega version 3.0.</p>
7129 </li>
7130 <li>
7131 <p>Graph lines have improved appearance to make them easier to
7132 distinguish. Markers may be placed at data points to show
7133 captured recorded data values.</p>
7134 </li>
7135 <li>
7136 <p>Graphing offers the ability to adjust the smoothing of
7137 computed speed and acceleration data.</p>
7138 </li>
7139 <li>
7140 <p>The download dialog now offers to graph new flights, checks
7141 for existing files to avoid overwriting data and reports if
7142 there are checksum errors in the downloaded data.</p>
7143 </li>
7144 </ul>
7145 </div>
7146 </div>
7147 <div class="sect4">
7148 <h5 id="_altosuitelegps_bug_fixes">AltosUI/TeleGPS Bug Fixes</h5>
7149 <div class="ulist">
7150 <ul>
7151 <li>
7152 <p>Restore TeleGPS tracking behavior.</p>
7153 </li>
7154 <li>
7155 <p>Display flight computer call sign and serial number in
7156 Monitor Idle mode instead of ground station values.</p>
7157 </li>
7158 </ul>
7159 </div>
7160 </div>
7161 <div class="sect4">
7162 <h5 id="_altosui_and_telegps_changes">AltosUI and TeleGPS Changes</h5>
7163 <div class="ulist">
7164 <ul>
7165 <li>
7166 <p>KML export now reports both barometric and GPS altitude data
7167 to make it more useful for Tripoli record reporting.</p>
7168 </li>
7169 <li>
7170 <p>CSV export now includes TeleMega/EasyMega pyro voltages and
7171 tilt angle.</p>
7172 </li>
7173 </ul>
7174 </div>
7175 <div style="page-break-after: always;"></div>
7176 </div>
7177 </div>
7178 </div>
7179 <div class="sect2">
7180 <h3 id="_release_notes_for_version_1_8_2">H.23. Release Notes for Version 1.8.2</h3>
7181 <div class="paragraph">
7182 <p>Version 1.8.2 includes support for TeleGPS version 2.0 along
7183 with accelerometer recalibration support in AltosUI.</p>
7184 </div>
7185 <div class="paragraph">
7186 <p>1.8.2 also contains a couple of minor fixes for AltosUI when
7187 analyzing saved data files.</p>
7188 </div>
7189 <div class="sect3">
7190 <h4 id="_altos_22">H.23.1. AltOS</h4>
7191 <div class="paragraph">
7192 <p>AltOS New Features</p>
7193 </div>
7194 <div class="ulist">
7195 <ul>
7196 <li>
7197 <p>Support for TeleGPS version 2.0 hardware.</p>
7198 </li>
7199 </ul>
7200 </div>
7201 </div>
7202 <div class="sect3">
7203 <h4 id="_altosui_and_telegps_applications_2">H.23.2. AltosUI and TeleGPS Applications</h4>
7204 <div class="paragraph">
7205 <p>AltosUI and TeleGPS New Features</p>
7206 </div>
7207 <div class="ulist">
7208 <ul>
7209 <li>
7210 <p>Support for TeleGPS version 2.0.</p>
7211 </li>
7212 <li>
7213 <p>Accelerometer re-calibration user interface.</p>
7214 </li>
7215 </ul>
7216 </div>
7217 <div class="paragraph">
7218 <p>AltosUI and TeleGPS Bug Fixes</p>
7219 </div>
7220 <div class="ulist">
7221 <ul>
7222 <li>
7223 <p>Prevent some crashes when reading older saved flight data
7224 for graphing or KML export.</p>
7225 </li>
7226 </ul>
7227 </div>
7228 <div style="page-break-after: always;"></div>
7229 </div>
7230 </div>
7231 <div class="sect2">
7232 <h3 id="_release_notes_for_version_1_8_1">H.24. Release Notes for Version 1.8.1</h3>
7233 <div class="paragraph">
7234 <p>Version 1.8.1 includes an important bug fix for Apogee Lockout
7235 operation in all flight computers. Anyone using this option
7236 must update firmware.</p>
7237 </div>
7238 <div class="paragraph">
7239 <p>This release also contains a change in how flight computers
7240 with accelerometers deal with speeds around and above Mach
7241 1. In previous versions, the flight computer would completely
7242 disregard the barometric sensor above 330m/s (around Mach
7243 1). Now, the data from the barometric sensor is reduced in
7244 effect without ever going away entirely. This prevents early
7245 drogue deployment for flights which spend considerable time
7246 above Mach 1.</p>
7247 </div>
7248 <div class="paragraph">
7249 <p>1.8.1 also contains a couple of minor fixes for AltosUI when
7250 analyzing saved data files.</p>
7251 </div>
7252 <div class="sect3">
7253 <h4 id="_altos_23">H.24.1. AltOS</h4>
7254 <div class="paragraph">
7255 <p>AltOS Bug Fixes</p>
7256 </div>
7257 <div class="ulist">
7258 <ul>
7259 <li>
7260 <p>Handle time value wrapping in Apogee Lockout
7261 correctly. Without this, apogee lockout would sometimes
7262 prevent any drogue charge from firing.</p>
7263 </li>
7264 <li>
7265 <p>Change Kalman filter on flight computers with accelerometer
7266 to continue using the barometric sensor even at high speeds
7267 to avoid unintentional drogue deployment during
7268 deceleration.</p>
7269 </li>
7270 </ul>
7271 </div>
7272 </div>
7273 <div class="sect3">
7274 <h4 id="_altosui_and_telegps_applications_3">H.24.2. AltosUI and TeleGPS Applications</h4>
7275 <div class="paragraph">
7276 <p>AltosUI New Features</p>
7277 </div>
7278 <div class="ulist">
7279 <ul>
7280 <li>
7281 <p>Add new 'Huge' font size to make text even bigger on high
7282 resolution monitors.</p>
7283 </li>
7284 </ul>
7285 </div>
7286 <div class="paragraph">
7287 <p>AltosUI Bug Fixes</p>
7288 </div>
7289 <div class="ulist">
7290 <ul>
7291 <li>
7292 <p>Prevent some crashes when reading older saved flight data
7293 for graphing or KML export.</p>
7294 </li>
7295 <li>
7296 <p>Load frequency preference at startup. The loading code was
7297 broken, so you&#8217;d see only the default frequencies.</p>
7298 </li>
7299 </ul>
7300 </div>
7301 <div style="page-break-after: always;"></div>
7302 </div>
7303 </div>
7304 <div class="sect2">
7305 <h3 id="_release_notes_for_version_1_8">H.25. Release Notes for Version 1.8</h3>
7306 <div class="paragraph">
7307 <p>Version 1.8 includes support for our new TeleBT v4.0 ground
7308 station, updates for data analysis in our ground station
7309 software and bug fixes in in the flight software for all our
7310 boards and ground station interfaces.</p>
7311 </div>
7312 <div class="sect3">
7313 <h4 id="_altos_24">H.25.1. AltOS</h4>
7314 <div class="paragraph">
7315 <p>AltOS New Features</p>
7316 </div>
7317 <div class="ulist">
7318 <ul>
7319 <li>
7320 <p>Add support for TeleBT v4.0 boards.</p>
7321 </li>
7322 </ul>
7323 </div>
7324 </div>
7325 <div class="sect3">
7326 <h4 id="_altosui_and_telegps_applications_4">H.25.2. AltosUI and TeleGPS Applications</h4>
7327 <div class="paragraph">
7328 <p>AltosUI New Features</p>
7329 </div>
7330 <div class="ulist">
7331 <ul>
7332 <li>
7333 <p>Add support for TeleBT v4.0 hardware</p>
7334 </li>
7335 <li>
7336 <p>Rewrite graphing and export functions. This code now handles
7337 each data series separately so that graphs are drawn
7338 correctly. Smoothing now uses a filter that looks both
7339 forward and backwards in time to make computed speed and
7340 acceleration data more accurate.</p>
7341 </li>
7342 </ul>
7343 </div>
7344 <div class="paragraph">
7345 <p>AltosUI Bug Fixes</p>
7346 </div>
7347 <div class="ulist">
7348 <ul>
7349 <li>
7350 <p>Correct axis labeling of magnetic sensor in TeleMega and
7351 EasyMega. The Y and Z axes were flipped.</p>
7352 </li>
7353 </ul>
7354 </div>
7355 <div style="page-break-after: always;"></div>
7356 </div>
7357 </div>
7358 <div class="sect2">
7359 <h3 id="_release_notes_for_version_1_7">H.26. Release Notes for Version 1.7</h3>
7360 <div class="paragraph">
7361 <p>Version 1.7 includes support for our new TeleMini v3.0
7362 flight computer and bug fixes in in the flight software for all our boards
7363 and ground station interfaces.</p>
7364 </div>
7365 <div class="sect3">
7366 <h4 id="_altos_25">H.26.1. AltOS</h4>
7367 <div class="paragraph">
7368 <p>AltOS New Features</p>
7369 </div>
7370 <div class="ulist">
7371 <ul>
7372 <li>
7373 <p>Add support for TeleMini v3.0 boards.</p>
7374 </li>
7375 </ul>
7376 </div>
7377 <div class="paragraph">
7378 <p>AltOS Fixes</p>
7379 </div>
7380 <div class="ulist">
7381 <ul>
7382 <li>
7383 <p>Fix interrupt priorities on STM32L processors. Run timer
7384 interrupt at lowest priority so that device interrupts get
7385 serviced first.</p>
7386 </li>
7387 </ul>
7388 </div>
7389 </div>
7390 <div class="sect3">
7391 <h4 id="_altosui_and_telegps_applications_5">H.26.2. AltosUI and TeleGPS Applications</h4>
7392 <div class="paragraph">
7393 <p>AltosUI New Features</p>
7394 </div>
7395 <div class="ulist">
7396 <ul>
7397 <li>
7398 <p>Add support for TeleMini v3.0 hardware</p>
7399 </li>
7400 </ul>
7401 </div>
7402 <div style="page-break-after: always;"></div>
7403 </div>
7404 </div>
7405 <div class="sect2">
7406 <h3 id="_release_notes_for_version_1_6_8">H.27. Release Notes for Version 1.6.8</h3>
7407 <div class="paragraph">
7408 <p>Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where
7409 the device could stop logging data and transmitting
7410 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7411 v2.0 users should update their flight firmware.</p>
7412 </div>
7413 <div class="sect3">
7414 <h4 id="_altos_26">H.27.1. AltOS</h4>
7415 <div class="paragraph">
7416 <p>AltOS fixes:</p>
7417 </div>
7418 <div class="ulist">
7419 <ul>
7420 <li>
7421 <p>Fix STM32L DMA driver to work around STM32L SoC DMA priority
7422 issue t lock-up in the logging or radio code, either of
7423 which could stop data logging and telemetry.</p>
7424 </li>
7425 <li>
7426 <p>Avoid having TeleBT battery status values smash telemetry
7427 packet data by holding a lock during both operations.</p>
7428 </li>
7429 <li>
7430 <p>Don&#8217;t start reporting 'flight 0' when the log fills in
7431 flight.</p>
7432 </li>
7433 </ul>
7434 </div>
7435 <div class="paragraph">
7436 <p>AltOS changes:</p>
7437 </div>
7438 <div class="ulist">
7439 <ul>
7440 <li>
7441 <p>Flash LEDS on all products briefly during power up so that
7442 they can be tested during production.</p>
7443 </li>
7444 </ul>
7445 </div>
7446 </div>
7447 <div class="sect3">
7448 <h4 id="_altosui_telegps_and_altosdroid_applications">H.27.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7449 <div class="paragraph">
7450 <p>AltosUI fixes:</p>
7451 </div>
7452 <div class="ulist">
7453 <ul>
7454 <li>
7455 <p>Re-enable go/no-go entries after they&#8217;ve been disabled due
7456 to lack of data. If telemetry information is delayed when
7457 the Ui starts up, sometimes important fields would get
7458 disabled to never re-appear.</p>
7459 </li>
7460 <li>
7461 <p>Deal with ground station failure better during Configure
7462 Ground Station operation by cleaning up pending operations.</p>
7463 </li>
7464 </ul>
7465 </div>
7466 <div style="page-break-after: always;"></div>
7467 </div>
7468 </div>
7469 <div class="sect2">
7470 <h3 id="_release_notes_for_version_1_6_5">H.28. Release Notes for Version 1.6.5</h3>
7471 <div class="paragraph">
7472 <p>Version 1.6.5 fixes a TeleMega and TeleMetrum v2.0 bug where
7473 the device would often stop logging data and transmitting
7474 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7475 v2.0 users should update their flight firmware.</p>
7476 </div>
7477 <div class="sect3">
7478 <h4 id="_altos_27">H.28.1. AltOS</h4>
7479 <div class="paragraph">
7480 <p>AltOS fixes:</p>
7481 </div>
7482 <div class="ulist">
7483 <ul>
7484 <li>
7485 <p>Fix STM32L SPI driver to prevent lock-up in the logging or
7486 radio code, either of which could stop data logging and
7487 telemetry. Found and characterized by Chuck Haskin, who also
7488 tested the new firmware before release.</p>
7489 </li>
7490 </ul>
7491 </div>
7492 </div>
7493 <div class="sect3">
7494 <h4 id="_altosui_telegps_and_altosdroid_applications_2">H.28.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7495 <div class="paragraph">
7496 <p>AltosUI fixes:</p>
7497 </div>
7498 <div class="ulist">
7499 <ul>
7500 <li>
7501 <p>Deliver firmward for TeleMega v2.0 and TeleBT v3.0 with
7502 Windows package.</p>
7503 </li>
7504 </ul>
7505 </div>
7506 <div style="page-break-after: always;"></div>
7507 </div>
7508 </div>
7509 <div class="sect2">
7510 <h3 id="_release_notes_for_version_1_6_4">H.29. Release Notes for Version 1.6.4</h3>
7511 <div class="paragraph">
7512 <p>Version 1.6.4 fixes a bluetooth communication problem with
7513 TeleBT v1.0 devices, along with some altosui and altosdroid
7514 minor nits. It also now ships firmware for some newer devices.</p>
7515 </div>
7516 <div class="sect3">
7517 <h4 id="_altos_28">H.29.1. AltOS</h4>
7518 <div class="paragraph">
7519 <p>AltOS fixes:</p>
7520 </div>
7521 <div class="ulist">
7522 <ul>
7523 <li>
7524 <p>Fix hardware flow control on TeleBT v1.0. Hardware RTS/CTS
7525 doesn&#8217;t seem to work, switch from using the hardware to
7526 driving these pins with software.</p>
7527 </li>
7528 <li>
7529 <p>Fix ARM USB drivers to deal with OS restarts. Needed to
7530 reset all USB-related state when the USB bus is reset. These
7531 fixes affect all STM32L, STM32F0 and LPC11U14 based devices.</p>
7532 </li>
7533 </ul>
7534 </div>
7535 </div>
7536 <div class="sect3">
7537 <h4 id="_altosui_telegps_and_altosdroid_applications_3">H.29.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7538 <div class="paragraph">
7539 <p>AltosUI, TeleGPS and AltosDroid New Features:</p>
7540 </div>
7541 <div class="ulist">
7542 <ul>
7543 <li>
7544 <p>Automatically switch from meters or feet to kilometers or
7545 miles for distance units.</p>
7546 </li>
7547 <li>
7548 <p>Add Monitor Idle mode to TeleGPS application.</p>
7549 </li>
7550 </ul>
7551 </div>
7552 <div class="paragraph">
7553 <p>AltosUI, TeleGPS and AltosDroid Fixes:</p>
7554 </div>
7555 <div class="ulist">
7556 <ul>
7557 <li>
7558 <p>Abort map preloading when the preload map dialog is closed.</p>
7559 </li>
7560 <li>
7561 <p>In AltosDroid, Don&#8217;t reconnect to last device if the user
7562 had disconnected it the last time the application was
7563 active.</p>
7564 </li>
7565 </ul>
7566 </div>
7567 </div>
7568 <div class="sect3">
7569 <h4 id="_documentation">H.29.3. Documentation</h4>
7570 <div class="ulist">
7571 <ul>
7572 <li>
7573 <p>Mention TeleMega v2.0 in hardware specs table.</p>
7574 </li>
7575 <li>
7576 <p>Document TeleGPS RF output in telegps manual.</p>
7577 </li>
7578 </ul>
7579 </div>
7580 <div style="page-break-after: always;"></div>
7581 </div>
7582 </div>
7583 <div class="sect2">
7584 <h3 id="_release_notes_for_version_1_6_3">H.30. Release Notes for Version 1.6.3</h3>
7585 <div class="paragraph">
7586 <p>Version 1.6.3 adds idle mode to AltosDroid and has bug fixes
7587 for our host software on desktops, laptops an android devices
7588 along with BlueTooth support for Windows.</p>
7589 </div>
7590 <div class="sect3">
7591 <h4 id="_altos_29">H.30.1. AltOS</h4>
7592 <div class="paragraph">
7593 <p>AltOS fixes:</p>
7594 </div>
7595 <div class="ulist">
7596 <ul>
7597 <li>
7598 <p>Fix hardware flow control on TeleBT v3.0. RTS/CTS is
7599 wired backwards on this board, switch from using the
7600 hardware to driving these pins with software.</p>
7601 </li>
7602 </ul>
7603 </div>
7604 </div>
7605 <div class="sect3">
7606 <h4 id="_altosui_and_telegps_applications_6">H.30.2. AltosUI and TeleGPS Applications</h4>
7607 <div class="paragraph">
7608 <p>AltosUI and TeleGPS New Features:</p>
7609 </div>
7610 <div class="ulist">
7611 <ul>
7612 <li>
7613 <p>Add BlueTooth support for Windows operating system. This
7614 supports connections to TeleBT over BlueTooth rather than
7615 just USB.</p>
7616 </li>
7617 </ul>
7618 </div>
7619 <div class="paragraph">
7620 <p>AltosUI and TeleGPS Fixes:</p>
7621 </div>
7622 <div class="ulist">
7623 <ul>
7624 <li>
7625 <p>Change Java detection and install on Windows. Detection is
7626 now done by looking for the 'javaw.exe' program, and
7627 installation by opening a browser on the java.com web site.</p>
7628 </li>
7629 <li>
7630 <p>Delay polling while the Fire Igniters is visible to allow
7631 for TeleMega to report back complete status over the radio.</p>
7632 </li>
7633 <li>
7634 <p>Disallow changing RF calibration numbers in the
7635 configuration UI. There&#8217;s no good reason to change this from
7636 the field, and recovering is really hard if you haven&#8217;t
7637 written down the right number.</p>
7638 </li>
7639 <li>
7640 <p>Fix USB device discovery on Mac OS X El Capitan. This makes
7641 the connected Altus Metrum USB devices appear again.</p>
7642 </li>
7643 <li>
7644 <p>Fix acceleration data presented in MonitorIdle mode for
7645 TeleMetrum v2.0 flight computers.</p>
7646 </li>
7647 </ul>
7648 </div>
7649 </div>
7650 <div class="sect3">
7651 <h4 id="_altosdroid_7">H.30.3. AltosDroid</h4>
7652 <div class="paragraph">
7653 <p>AltosDroid new features:</p>
7654 </div>
7655 <div class="ulist">
7656 <ul>
7657 <li>
7658 <p>Monitor Idle mode. Check state of flight computer while in
7659 idle mode over the radio link</p>
7660 </li>
7661 <li>
7662 <p>Fire Igniters. Remotely fire ignires for recovery system
7663 ground tests.</p>
7664 </li>
7665 <li>
7666 <p>Remote reboot. Cause the flight computer to reboot over the
7667 radio link. This provides a method for switching the flight
7668 computer from idle to flight mode without needing to reach
7669 the power switch.</p>
7670 </li>
7671 <li>
7672 <p>Configurable frequency menu. Change the set of available
7673 frequencies and provide more descriptive names.</p>
7674 </li>
7675 </ul>
7676 </div>
7677 <div class="paragraph">
7678 <p>AltosDroid bug fixes:</p>
7679 </div>
7680 <div class="ulist">
7681 <ul>
7682 <li>
7683 <p>Don&#8217;t set target location if GPS hasn&#8217;t locked yet.</p>
7684 </li>
7685 <li>
7686 <p>Fix saving target states so they can be reloaded when the
7687 application restarts. When the application is shut down and
7688 restarted, all previous target state information will be
7689 restored (including GPS position if available).</p>
7690 </li>
7691 <li>
7692 <p>Fix crash on some Android devices for offline maps when
7693 changing the map scale or location.</p>
7694 </li>
7695 <li>
7696 <p>Don&#8217;t require USB OTG support. This kept the latest
7697 AltosDroid from being offered on devices without USB device
7698 support, although it can work without that just fine using
7699 BlueTooth.</p>
7700 </li>
7701 <li>
7702 <p>Don&#8217;t require bluetooth to be enabled. This allows the
7703 application to operate with USB devices or just show old
7704 data without turning on the bluetooth radio.</p>
7705 </li>
7706 <li>
7707 <p>Recover old tracker positions when restarting
7708 application. This finally allows you to safely stop and
7709 restart the application without losing the last known
7710 location of any tracker.</p>
7711 </li>
7712 </ul>
7713 </div>
7714 </div>
7715 <div class="sect3">
7716 <h4 id="_documentation_2">H.30.4. Documentation</h4>
7717 <div class="ulist">
7718 <ul>
7719 <li>
7720 <p>Document TeleMega and EasyMega additional pyro channel
7721 continuity audio alert pattern.</p>
7722 </li>
7723 </ul>
7724 </div>
7725 <div style="page-break-after: always;"></div>
7726 </div>
7727 </div>
7728 <div class="sect2">
7729 <h3 id="_release_notes_for_version_1_6_2">H.31. Release Notes for Version 1.6.2</h3>
7730 <div class="paragraph">
7731 <p>Version 1.6.2 includes support for our updated TeleMega v2.0
7732 product and bug fixes in in the flight software for all our boards
7733 and ground station interfaces.</p>
7734 </div>
7735 <div class="sect3">
7736 <h4 id="_altos_30">H.31.1. AltOS</h4>
7737 <div class="paragraph">
7738 <p>AltOS New Features:</p>
7739 </div>
7740 <div class="ulist">
7741 <ul>
7742 <li>
7743 <p>Add support for TeleMega v2.0 boards.</p>
7744 </li>
7745 <li>
7746 <p>Add PWM servo driver. There&#8217;s no higher level code using
7747 this yet, but the driver allows testing of the TeleMega v2.0
7748 servo output connector.</p>
7749 </li>
7750 </ul>
7751 </div>
7752 <div class="paragraph">
7753 <p>AltOS Fixes:</p>
7754 </div>
7755 <div class="ulist">
7756 <ul>
7757 <li>
7758 <p>Slow down telemetry packets to allow receiver to keep
7759 up.</p>
7760 </li>
7761 </ul>
7762 </div>
7763 </div>
7764 <div class="sect3">
7765 <h4 id="_altosui_and_telegps_applications_7">H.31.2. AltosUI and TeleGPS Applications</h4>
7766 <div class="paragraph">
7767 <p>AltosUI and TeleGPS Fixes:</p>
7768 </div>
7769 <div class="ulist">
7770 <ul>
7771 <li>
7772 <p>Fix post-flight orientation computation when processing
7773 TeleMega and EasyMega eeprom data files.</p>
7774 </li>
7775 <li>
7776 <p>Capture complete eeprom data even when there are invalid
7777 entries in the data. This keeps reading eeprom contents and
7778 writing the associated .eeprom file when an error is detected.</p>
7779 </li>
7780 </ul>
7781 </div>
7782 </div>
7783 <div class="sect3">
7784 <h4 id="_documentation_3">H.31.3. Documentation</h4>
7785 <div class="paragraph">
7786 <p>We spent a bunch of time trying to improve our documentation</p>
7787 </div>
7788 <div class="ulist">
7789 <ul>
7790 <li>
7791 <p>HTML versions now have a table of contents on the left side.</p>
7792 </li>
7793 <li>
7794 <p>EasyMini now has its own shorter manual.</p>
7795 </li>
7796 <li>
7797 <p>Provide links between sections in each document.</p>
7798 </li>
7799 <li>
7800 <p>Lots of minor rewriting and restructuring to avoid
7801 duplication of information</p>
7802 </li>
7803 </ul>
7804 </div>
7805 <div style="page-break-after: always;"></div>
7806 </div>
7807 </div>
7808 <div class="sect2">
7809 <h3 id="_release_notes_for_version_1_6_1">H.32. Release Notes for Version 1.6.1</h3>
7810 <div class="paragraph">
7811 <p>Version 1.6.1 includes support for our updated TeleBT v3.0
7812 product and bug fixes in in the flight software for all our boards
7813 and ground station interfaces.</p>
7814 </div>
7815 <div class="sect3">
7816 <h4 id="_altos_31">H.32.1. AltOS</h4>
7817 <div class="paragraph">
7818 <p>AltOS New Features:</p>
7819 </div>
7820 <div class="ulist">
7821 <ul>
7822 <li>
7823 <p>Add support for TeleBT v3.0 boards.</p>
7824 </li>
7825 <li>
7826 <p>Add support for uncompressed APRS data, providing support
7827 for older APRS receivers. Uncompressed APRS data is less
7828 precise, takes more bandwidth and doesn&#8217;t have integrated
7829 altitude data.</p>
7830 </li>
7831 </ul>
7832 </div>
7833 <div class="paragraph">
7834 <p>AltOS Fixes:</p>
7835 </div>
7836 <div class="ulist">
7837 <ul>
7838 <li>
7839 <p>Make TeleDongle and TeleBT more tolerant of data rate
7840 variations from transmitting devices.</p>
7841 </li>
7842 </ul>
7843 </div>
7844 </div>
7845 <div class="sect3">
7846 <h4 id="_altosui_and_telegps_applications_8">H.32.2. AltosUI and TeleGPS Applications</h4>
7847 <div class="paragraph">
7848 <p>AltosUI and TeleGPS New Features:</p>
7849 </div>
7850 <div class="ulist">
7851 <ul>
7852 <li>
7853 <p>Add map to Monitor Idle display. It&#8217;s nice to be able to
7854 verify that maps are working, instead of needing to use
7855 Monitor Flight.</p>
7856 </li>
7857 </ul>
7858 </div>
7859 <div class="paragraph">
7860 <p>AltosUI and TeleGPS Fixes:</p>
7861 </div>
7862 <div class="ulist">
7863 <ul>
7864 <li>
7865 <p>Fix frequency configuration to round values instead of
7866 truncate them, avoiding a common 1kHz error in the setting.</p>
7867 </li>
7868 <li>
7869 <p>Turn the Windows stub into a more useful program that can
7870 launch the application with parameters so that file manager
7871 icons work more reliably.</p>
7872 </li>
7873 <li>
7874 <p>Force KML export to use a C locale so that numbers are
7875 formatted with '.' instead of ',' for a decimal separator in
7876 non-US locales.</p>
7877 </li>
7878 <li>
7879 <p>Preload map tiles based on distance rather than number of
7880 tiles; this means you get the same resolution covering the
7881 entire area, rather than having high resolution near the
7882 center and low resolution further away.</p>
7883 </li>
7884 <li>
7885 <p>Allow configuration of frequency and callsign in Monitor
7886 Idle mode.</p>
7887 </li>
7888 <li>
7889 <p>Fix layout weirdness when resizing windows on
7890 Windows. Windows shouldn&#8217;t have giant blank spaces around
7891 the useful content anymore.</p>
7892 </li>
7893 <li>
7894 <p>Fix layout weirdness when resizing windows on
7895 Windows. Windows shouldn&#8217;t have giant blank spaces around
7896 the useful content anymore.</p>
7897 </li>
7898 <li>
7899 <p>Use a longer filter for descent speed values. This should
7900 provide something more useful on the display, although it
7901 will take longer to respond to changes now.</p>
7902 </li>
7903 <li>
7904 <p>Make Replay Flight run in realtime again. It had been set to
7905 run at 10x speed by mistake.</p>
7906 </li>
7907 </ul>
7908 </div>
7909 </div>
7910 <div class="sect3">
7911 <h4 id="_altosdroid_8">H.32.3. AltosDroid</h4>
7912 <div class="paragraph">
7913 <p>AltosDroid New Features:</p>
7914 </div>
7915 <div class="ulist">
7916 <ul>
7917 <li>
7918 <p>Add offline map support using mapping code from AltosUI.</p>
7919 </li>
7920 <li>
7921 <p>Support TeleDongle (and TeleBT via USB) on devices
7922 supporting USB On-The-Go.</p>
7923 </li>
7924 <li>
7925 <p>Display additional TeleMega pyro channel status in Pad tab.</p>
7926 </li>
7927 <li>
7928 <p>Switch between metric and imperial units.</p>
7929 </li>
7930 <li>
7931 <p>Monitor TeleBT battery voltage.</p>
7932 </li>
7933 <li>
7934 <p>Track multiple devices at the same time, selecting between
7935 them with a menu or using the map.</p>
7936 </li>
7937 <li>
7938 <p>Add hybrid, satellite and terrain map types.</p>
7939 </li>
7940 </ul>
7941 </div>
7942 <div class="paragraph">
7943 <p>AltosDroid Fixes:</p>
7944 </div>
7945 <div class="ulist">
7946 <ul>
7947 <li>
7948 <p>Use standard Android display conventions so that a menu
7949 button is available in the application title bar.</p>
7950 </li>
7951 <li>
7952 <p>Adjust layout to work on large and small screens; shrinking
7953 the go/no-go lights in smaller environments to try and make
7954 everything visible.</p>
7955 </li>
7956 <li>
7957 <p>Make voice announcements depend on current tab.</p>
7958 </li>
7959 <li>
7960 <p>Compute adjustment to current travel direction while in
7961 motion towards rocket.</p>
7962 </li>
7963 </ul>
7964 </div>
7965 <div style="page-break-after: always;"></div>
7966 </div>
7967 </div>
7968 <div class="sect2">
7969 <h3 id="_release_notes_for_version_1_6">H.33. Release Notes for Version 1.6</h3>
7970 <div class="paragraph">
7971 <p>Version 1.6 includes support for our updated TeleDongle v3.0
7972 product and bug fixes in in the flight software for all our boards
7973 and ground station interfaces.</p>
7974 </div>
7975 <div class="sect3">
7976 <h4 id="_altos_32">H.33.1. AltOS</h4>
7977 <div class="paragraph">
7978 <p>AltOS New Features</p>
7979 </div>
7980 <div class="ulist">
7981 <ul>
7982 <li>
7983 <p>Add support for TeleDongle v3.0 boards.</p>
7984 </li>
7985 </ul>
7986 </div>
7987 <div class="paragraph">
7988 <p>AltOS Fixes</p>
7989 </div>
7990 <div class="ulist">
7991 <ul>
7992 <li>
7993 <p>Don&#8217;t beep out the continuity twice by accident in idle mode.
7994 If the battery voltage report takes longer than the initialiation
7995 sequence, the igniter continuity would get reported twice.</p>
7996 </li>
7997 <li>
7998 <p>Record all 32 bits of gyro calibration data in TeleMega and
7999 EasyMega log files. This fixes computation of the gyro rates
8000 in AltosUI.</p>
8001 </li>
8002 <li>
8003 <p>Change TeleDongle LED usage. Green LED flashes when valid
8004 packet is received. Red LED flashes when invalid packet is
8005 received.</p>
8006 </li>
8007 <li>
8008 <p>Replace LPC11U14 SPI driver with non-interrupt version. The
8009 interrupt code would occasionally wedge on long transfers
8010 if interrupts were blocked for too long. This affects all
8011 released TeleGPS products; if you have a TeleGPS device,
8012 you&#8217;ll want to reflash the firmware.</p>
8013 </li>
8014 </ul>
8015 </div>
8016 </div>
8017 <div class="sect3">
8018 <h4 id="_altosui_and_telegps_applications_9">H.33.2. AltosUI and TeleGPS Applications</h4>
8019 <div class="paragraph">
8020 <p>AltosUI and TeleGPS New Features</p>
8021 </div>
8022 <div class="ulist">
8023 <ul>
8024 <li>
8025 <p>Compute tilt angle from TeleMega and EasyMega log
8026 files. This duplicates the quaternion-based angle tracking
8027 code from the flight firmware inside the ground station
8028 software so that post-flight analysis can include evaluation
8029 of the tilt angle.</p>
8030 </li>
8031 <li>
8032 <p>Shows the tool button window when starting with a data file
8033 specified. This means that opening a data file from the file
8034 manager will now bring up the main window to let you operate
8035 the whole application.</p>
8036 </li>
8037 </ul>
8038 </div>
8039 <div class="paragraph">
8040 <p>AltosUI Fixes</p>
8041 </div>
8042 <div class="ulist">
8043 <ul>
8044 <li>
8045 <p>Show the 'Connecting' dialog when using Monitor Idle. Lets
8046 you cancel the Monitor Idle startup when connecting over the
8047 radio link.</p>
8048 </li>
8049 <li>
8050 <p>Make 'Monitor Idle' work for TeleGPS devices when connected
8051 over USB. It&#8217;s nice for testing without needing to broadcast
8052 over the radio.</p>
8053 </li>
8054 <li>
8055 <p>Use different Windows API to discover USB devices. This
8056 works better on my Windows 7 box, and will be used if the
8057 older API fails to provide the necessary information.</p>
8058 </li>
8059 <li>
8060 <p>Look in more places in the registry to try and identify the
8061 installed Java version on Windows. If you install the
8062 default 32-bit version of Windows on a 64-bit OS, the Java
8063 registry information is hiding \SOFTWARE\Wow6432Node for
8064 some reason.</p>
8065 </li>
8066 <li>
8067 <p>Fix file association on Windows by searching for the
8068 javaw.exe program instead of assuming it is in
8069 %SYSTEMROOT%. This makes double-clicking on Altus Metrum
8070 data files in the file manager work correctly.</p>
8071 </li>
8072 <li>
8073 <p>When replaying a file, put 'done' in the Age field when we
8074 reach the end of the file, instead of continuing to count forever.</p>
8075 </li>
8076 <li>
8077 <p>In the Scan Channels code, wait for five seconds if we see
8078 any packet. This is needed because AltOS now sends the
8079 callsign, serial number and flight number only once every
8080 five seconds these days.</p>
8081 </li>
8082 <li>
8083 <p>In the Scan Channels code, reset pending flight state
8084 information each time we change channels. This avoids having
8085 flight computers appear on multiple frequencies by accident.</p>
8086 </li>
8087 </ul>
8088 </div>
8089 <div style="page-break-after: always;"></div>
8090 </div>
8091 </div>
8092 <div class="sect2">
8093 <h3 id="_release_notes_for_version_1_5">H.34. Release Notes for Version 1.5</h3>
8094 <div class="paragraph">
8095 <p>Version 1.5 is a major release. It includes support for our new
8096 EasyMega product, new features and bug fixes in in the flight
8097 software for all our boards and the AltosUI ground station</p>
8098 </div>
8099 <div class="sect3">
8100 <h4 id="_altos_33">H.34.1. AltOS</h4>
8101 <div class="paragraph">
8102 <p>AltOS New Features</p>
8103 </div>
8104 <div class="ulist">
8105 <ul>
8106 <li>
8107 <p>Add support for EasyMega boards.</p>
8108 </li>
8109 <li>
8110 <p>Make the APRS SSID be configurable. This lets you track
8111 different rockets on the same receiver without getting
8112 things mixed up.</p>
8113 </li>
8114 <li>
8115 <p>Report extra pyro channel continuity state on EasyMega and
8116 TeleMega via the beeper. This lets you easily verify flight
8117 readiness on these boards after powering up the electronics
8118 on the rail.</p>
8119 </li>
8120 <li>
8121 <p>Add lower telemetry data rates (2400 and 9600 bps) to
8122 increase telemetry radio range. This reduces the amount of
8123 data received as well as increasing battery consumption in
8124 the transmitter.</p>
8125 </li>
8126 <li>
8127 <p>Change TeleGPS to have only a single log, and append new
8128 data to it rather than using seperate per-flight logs. This
8129 avoids accidentally filling up log storage by turning
8130 TeleGPS on/off several times.</p>
8131 </li>
8132 </ul>
8133 </div>
8134 <div class="paragraph">
8135 <p>AltOS Fixes</p>
8136 </div>
8137 <div class="ulist">
8138 <ul>
8139 <li>
8140 <p>Increase the maximum range for altitude values from +/-32767m
8141 to +/-2147483647m, allowing the flight computers to function
8142 correctly above the 32km level.</p>
8143 </li>
8144 <li>
8145 <p>Continuously test pyro firing conditions during delay stage,
8146 inhibiting the pyro channel if the test fails. This prevents
8147 firing pyro charges where the conditions were good before
8148 the delay, but become bad before the delay expires.</p>
8149 </li>
8150 <li>
8151 <p>Allow negative numbers in pyro configuration values. This
8152 lets you specify things like descending speed or
8153 deceleration.</p>
8154 </li>
8155 </ul>
8156 </div>
8157 </div>
8158 <div class="sect3">
8159 <h4 id="_altosui_and_telegps_applications_10">H.34.2. AltosUI and TeleGPS Applications</h4>
8160 <div class="paragraph">
8161 <p>AltosUI and TeleGPS New Features</p>
8162 </div>
8163 <div class="ulist">
8164 <ul>
8165 <li>
8166 <p>Support telemetry baud rate selection. Adds menus to
8167 the flight monitoring and configuration for baud rate
8168 selection.</p>
8169 </li>
8170 <li>
8171 <p>Support APRS SSID configuration.</p>
8172 </li>
8173 <li>
8174 <p>Integrate with file managers. This provides icons for all of
8175 our file types and associates our application with the files
8176 so that using a file manager to open a AltOS data file
8177 results in launching our application.</p>
8178 </li>
8179 </ul>
8180 </div>
8181 <div class="paragraph">
8182 <p>AltosUI Fixes</p>
8183 </div>
8184 <div class="ulist">
8185 <ul>
8186 <li>
8187 <p>Make the 'Graph' button on the landed tab work again.</p>
8188 </li>
8189 <li>
8190 <p>Make tests for Java on Windows a bit smarter, and also
8191 provide the user with the option to skip installing Java for
8192 cases where we just can&#8217;t figure out what version is installed.</p>
8193 </li>
8194 </ul>
8195 </div>
8196 <div style="page-break-after: always;"></div>
8197 </div>
8198 </div>
8199 <div class="sect2">
8200 <h3 id="_release_notes_for_version_1_4_2">H.35. Release Notes for Version 1.4.2</h3>
8201 <div class="paragraph">
8202 <p>Version 1.4.2 is a minor release. It fixes Java-related install issues on
8203 Windows</p>
8204 </div>
8205 <div class="sect3">
8206 <h4 id="_altosui_and_telegps_applications_11">H.35.1. AltosUI and TeleGPS Applications</h4>
8207 <div class="paragraph">
8208 <p>Windows Install Fixes</p>
8209 </div>
8210 <div class="ulist">
8211 <ul>
8212 <li>
8213 <p>Checks for Java installation data in more registry locations.</p>
8214 </li>
8215 <li>
8216 <p>Allows user to bypass Java installation in case the
8217 detection fails.</p>
8218 </li>
8219 </ul>
8220 </div>
8221 <div style="page-break-after: always;"></div>
8222 </div>
8223 </div>
8224 <div class="sect2">
8225 <h3 id="_release_notes_for_version_1_4_1">H.36. Release Notes for Version 1.4.1</h3>
8226 <div class="paragraph">
8227 <p>Version 1.4.1 is a minor release. It fixes install issues on
8228 Windows and provides the missing TeleMetrum V2.0 firmware. There
8229 aren&#8217;t any changes to the firmware or host applications at
8230 all. All Windows users will want to upgrade to get the signed
8231 driver, but Mac and Linux users who do not need the TeleMetrum
8232 V2.0 firmware image will not need to upgrade.</p>
8233 </div>
8234 <div class="sect3">
8235 <h4 id="_altosui_and_telegps_applications_12">H.36.1. AltosUI and TeleGPS Applications:</h4>
8236 <div class="paragraph">
8237 <p>Windows Install Fixes</p>
8238 </div>
8239 <div class="ulist">
8240 <ul>
8241 <li>
8242 <p>Provide signed Windows driver files. This should avoid any need to
8243 disable driver signature checking on Windows 7 or 8.</p>
8244 </li>
8245 <li>
8246 <p>Fix Java version detection and download. Previously, the
8247 installer would only look for Java 6 or 7 and insist on
8248 downloading its own Java bits if there was something else
8249 installed. Furthermore, the 64-bit Java link provided didn&#8217;t
8250 work for anyone other than Keith, making it impossible to
8251 install AltOS on any machine with Java SE 8 installed.</p>
8252 </li>
8253 </ul>
8254 </div>
8255 <div class="paragraph">
8256 <p>Other Fixes</p>
8257 </div>
8258 <div class="ulist">
8259 <ul>
8260 <li>
8261 <p>Include 1.4 firmware for TeleMetrum V2.0. None of the
8262 installers shipped this file. Now it&#8217;s included in the AltOS
8263 packages for Linux, Mac and Windows.</p>
8264 </li>
8265 <li>
8266 <p>Include Google Application Key for map downloading. The 1.4
8267 release didn&#8217;t have this key in the released version of the
8268 software, making map downloading fail for most people.</p>
8269 </li>
8270 </ul>
8271 </div>
8272 <div style="page-break-after: always;"></div>
8273 </div>
8274 </div>
8275 <div class="sect2">
8276 <h3 id="_release_notes_for_version_1_4">H.37. Release Notes for Version 1.4</h3>
8277 <div class="paragraph">
8278 <p>Version 1.4 is a major release. It includes support for our new
8279 TeleGPS product, new features and bug fixes in in the flight
8280 software for all our boards and the AltosUI ground station</p>
8281 </div>
8282 <div class="sect3">
8283 <h4 id="_altos_34">H.37.1. AltOS</h4>
8284 <div class="paragraph">
8285 <p>AltOS new features:</p>
8286 </div>
8287 <div class="ulist">
8288 <ul>
8289 <li>
8290 <p>Add support for TeleGPS boards.</p>
8291 </li>
8292 <li>
8293 <p>Make the beeper tone configurable, making it
8294 possible to distinguish between two Altus Metrum
8295 products in the same ebay.</p>
8296 </li>
8297 <li>
8298 <p>Make the firing time for extra pyro channels
8299 configurable, allowing longer (or shorter) than the
8300 default 50ms.  Only relevant for TeleMega at this
8301 time.</p>
8302 </li>
8303 </ul>
8304 </div>
8305 <div class="paragraph">
8306 <p>AltOS fixes:</p>
8307 </div>
8308 <div class="ulist">
8309 <ul>
8310 <li>
8311 <p>Replace the 'dit dit dit' tones at startup with the
8312 current battery voltage, measured in tenths of a
8313 volt. This lets you check the battery voltage
8314 without needing telemetry, which is especially
8315 useful on EasyMini.</p>
8316 </li>
8317 <li>
8318 <p>Change state beeping to "Farnsworth spacing", which
8319 means they&#8217;re quite a bit faster than before, and so
8320 they take less time to send.</p>
8321 </li>
8322 <li>
8323 <p>Fix bug preventing the selection of the 'Flight
8324 State After' mode in pyro configuration.</p>
8325 </li>
8326 <li>
8327 <p>Fix bug where erasing flights would reset the flight
8328 number to 2 on TeleMega and TeleMetrum v2.</p>
8329 </li>
8330 <li>
8331 <p>Fix u-Blox GPS driver to mark course and speed data
8332 as being present.</p>
8333 </li>
8334 </ul>
8335 </div>
8336 </div>
8337 <div class="sect3">
8338 <h4 id="_altosui_application">H.37.2. AltosUI Application</h4>
8339 <div class="paragraph">
8340 <p>AltosUI new features:</p>
8341 </div>
8342 <div class="ulist">
8343 <ul>
8344 <li>
8345 <p>Add zooming and new content types (terrain and road
8346 maps) to map view. Change map storage format from
8347 PNG to Jpeg, which saves a huge amount of disk
8348 space. You will need to re-download all of your
8349 pre-loaded map images.</p>
8350 </li>
8351 <li>
8352 <p>Add a distance measuring device to the maps
8353 view. Select this by using any button other than the
8354 left one, or by pressing shift or control on the
8355 keyboard while using the left button.</p>
8356 </li>
8357 <li>
8358 <p>Add new 'Ignitor' tab to the flight monitor display
8359 for TeleMega&#8217;s extra ignitors.</p>
8360 </li>
8361 <li>
8362 <p>Add additional ignitor firing marks and voltages to
8363 the graph so you can see when the ignitors fired,
8364 along with the ignitor voltages.</p>
8365 </li>
8366 <li>
8367 <p>Add GPS course, ground speed and climb rate as
8368 optional graph elements.</p>
8369 </li>
8370 </ul>
8371 </div>
8372 <div class="paragraph">
8373 <p>AltosUI fixes:</p>
8374 </div>
8375 <div class="ulist">
8376 <ul>
8377 <li>
8378 <p>When flashing new firmware, re-try opening the
8379 device as sometimes it takes a while for the
8380 underlying operating system to recognize that the
8381 device has rebooted in preparation for the flashing
8382 operation.</p>
8383 </li>
8384 <li>
8385 <p>Hide Tilt Angle in ascent tab for devices that don&#8217;t
8386 have a gyro.</p>
8387 </li>
8388 <li>
8389 <p>Increase the width of data lines in the graphs to
8390 make them easier to read.</p>
8391 </li>
8392 <li>
8393 <p>Filter out speed and acceleration spikes caused by
8394 ejection charge firing when computing the maximum
8395 values. This provides a more accurate reading of
8396 those maximums.</p>
8397 </li>
8398 <li>
8399 <p>Fix EasyMini voltage displays. Early EasyMini
8400 prototypes used a 3.0V regulator, and AltosUI still
8401 used that value as the basis of the
8402 computation. Production EasyMini boards have always
8403 shipped with a 3.3V regulator. Also, purple EasyMini
8404 boards sensed the battery voltage past the blocking
8405 diode, resulting in a drop of about 150mV from the
8406 true battery voltage. Compensate for that when
8407 displaying the value.</p>
8408 </li>
8409 <li>
8410 <p>Display error message when trying to configure
8411 maximum flight log size while the flight computer
8412 still has flight data stored.</p>
8413 </li>
8414 <li>
8415 <p>Handle TeleMetrum and TeleMini eeprom files
8416 generated with pre-1.0 firmware. Those ancient
8417 versions didn&#8217;t report the log format, so just use
8418 the product name instead.</p>
8419 </li>
8420 </ul>
8421 </div>
8422 </div>
8423 <div class="sect3">
8424 <h4 id="_telegps_application">H.37.3. TeleGPS Application</h4>
8425 <div class="ulist">
8426 <ul>
8427 <li>
8428 <p>New application designed for use with TeleGPS boards.</p>
8429 </li>
8430 <li>
8431 <p>Shares code with AltosUI, mostly just trimmed down
8432 to focus on TeleGPS-related functions.</p>
8433 </li>
8434 </ul>
8435 </div>
8436 </div>
8437 <div class="sect3">
8438 <h4 id="_documentation_4">H.37.4. Documentation</h4>
8439 <div class="paragraph">
8440 <p>Documentation changes:</p>
8441 </div>
8442 <div class="ulist">
8443 <ul>
8444 <li>
8445 <p>Re-create the drill template images; they should
8446 print correctly from Firefox at least. Ship these as
8447 individual PDF files so they&#8217;re easy to print.</p>
8448 </li>
8449 <li>
8450 <p>Add a description of the 'Apogee Lockout' setting,
8451 which prevents the apogee charge from firing for a
8452 configurable amount of time after boost.</p>
8453 </li>
8454 </ul>
8455 </div>
8456 <div style="page-break-after: always;"></div>
8457 </div>
8458 </div>
8459 <div class="sect2">
8460 <h3 id="_release_notes_for_version_1_3_2">H.38. Release Notes for Version 1.3.2</h3>
8461 <div class="paragraph">
8462 <p>Version 1.3.2 is a minor release. It includes small bug fixes for
8463 the TeleMega flight software and AltosUI ground station</p>
8464 </div>
8465 <div class="sect3">
8466 <h4 id="_altos_35">H.38.1. AltOS</h4>
8467 <div class="paragraph">
8468 <p>AltOS fixes:</p>
8469 </div>
8470 <div class="ulist">
8471 <ul>
8472 <li>
8473 <p>On TeleMega, limit number of logged GPS status
8474 information to 12 satellites. That&#8217;s all there is
8475 room for in the log structure.</p>
8476 </li>
8477 <li>
8478 <p>Improve APRS behavior. Remembers last known GPS
8479 position and keeps sending that if we lose GPS
8480 lock. Marks locked/unlocked by sending L/U in the
8481 APRS comment field along with the number of sats in
8482 view and voltages.</p>
8483 </li>
8484 </ul>
8485 </div>
8486 </div>
8487 <div class="sect3">
8488 <h4 id="_altosui_application_2">H.38.2. AltosUI Application</h4>
8489 <div class="paragraph">
8490 <p>AltosUI fixes:</p>
8491 </div>
8492 <div class="ulist">
8493 <ul>
8494 <li>
8495 <p>If the TeleMega flight firmware reports that it has
8496 logged information about more than 12 satellites,
8497 don&#8217;t believe it as the log only holds 12 satellite
8498 records.</p>
8499 </li>
8500 <li>
8501 <p>Track the maximum height as computed from GPS
8502 altitude data and report that in the flight summary
8503 data.</p>
8504 </li>
8505 <li>
8506 <p>Use letters (A, B, C, D) for alternate pyro channel
8507 names instead of numbers (0, 1, 2, 3) in the Fire
8508 Igniter dialog.</p>
8509 </li>
8510 </ul>
8511 </div>
8512 <div style="page-break-after: always;"></div>
8513 </div>
8514 </div>
8515 <div class="sect2">
8516 <h3 id="_release_notes_for_version_1_3_1">H.39. Release Notes for Version 1.3.1</h3>
8517 <div class="paragraph">
8518 <p>Version 1.3.1 is a minor release. It improves support for
8519 TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8520 </div>
8521 <div class="sect3">
8522 <h4 id="_altos_36">H.39.1. AltOS</h4>
8523 <div class="paragraph">
8524 <p>AltOS new features:</p>
8525 </div>
8526 <div class="ulist">
8527 <ul>
8528 <li>
8529 <p>Improved APRS mode. Now uses compressed position
8530 format for smaller data size, improved precision and
8531 to include altitude data as well as latitude and
8532 longitude. Also added battery and pyro voltage
8533 reports in the APRS comment field so you can confirm
8534 that the unit is ready for launch.</p>
8535 </li>
8536 </ul>
8537 </div>
8538 <div class="paragraph">
8539 <p>AltOS fixes:</p>
8540 </div>
8541 <div class="ulist">
8542 <ul>
8543 <li>
8544 <p>Improve sensor boot code. If sensors fail to
8545 self-test, the device will still boot up and check
8546 for pad/idle modes. If in idle mode, the device will
8547 warn the user with a distinct beep, if in Pad mode,
8548 the unit will operate as best it can. Also, the
8549 Z-axis accelerometer now uses the factory
8550 calibration values instead of re-calibrating on the
8551 pad each time. This avoids accidental boost detect
8552 when moving the device around while in Pad mode.</p>
8553 </li>
8554 <li>
8555 <p>Fix antenna-down mode accelerometer
8556 configuration. Antenna down mode wasn&#8217;t working
8557 because the accelerometer calibration values were
8558 getting re-computed incorrectly in inverted mode.</p>
8559 </li>
8560 </ul>
8561 </div>
8562 </div>
8563 <div class="sect3">
8564 <h4 id="_altosui_application_3">H.39.2. AltosUI Application</h4>
8565 <div class="paragraph">
8566 <p>AltosUI new features:</p>
8567 </div>
8568 <div class="ulist">
8569 <ul>
8570 <li>
8571 <p>Display additional TeleMega sensor values in real
8572 units. Make all of these values available for
8573 plotting. Display TeleMega orientation value in the
8574 Ascent and Table tabs.</p>
8575 </li>
8576 <li>
8577 <p>Support additional TeleMega pyro channels in the
8578 Fire Igniter dialog. This lets you do remote testing
8579 of all of the channels, rather than just Apogee and
8580 Main.</p>
8581 </li>
8582 </ul>
8583 </div>
8584 <div class="paragraph">
8585 <p>AltosUI fixes:</p>
8586 </div>
8587 <div class="ulist">
8588 <ul>
8589 <li>
8590 <p>Limit data rate when downloading satellite images
8591 from Google to make sure we stay within their limits
8592 so that all of the map tiles download successfully.</p>
8593 </li>
8594 </ul>
8595 </div>
8596 <div style="page-break-after: always;"></div>
8597 </div>
8598 </div>
8599 <div class="sect2">
8600 <h3 id="_release_notes_for_version_1_3">H.40. Release Notes for Version 1.3</h3>
8601 <div class="paragraph">
8602 <p>Version 1.3 is a major release. It adds support for TeleMega,
8603 TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8604 </div>
8605 <div class="sect3">
8606 <h4 id="_altos_37">H.40.1. AltOS</h4>
8607 <div class="paragraph">
8608 <p>AltOS new features:</p>
8609 </div>
8610 <div class="ulist">
8611 <ul>
8612 <li>
8613 <p>Add STM32L processor support. This includes
8614 enhancements to the scheduler to support products
8615 with many threads.</p>
8616 </li>
8617 <li>
8618 <p>Add NXP LPC11U14 processor support.</p>
8619 </li>
8620 <li>
8621 <p>Support additional pyro channels. These are
8622 configurable through the UI to handle air starts,
8623 staging, additional recovery events and external
8624 devices such as cameras.</p>
8625 </li>
8626 <li>
8627 <p>Add 3-axis gyro support for orientation
8628 tracking. This integrates the gyros to compute the
8629 angle from vertical during flight, allowing the
8630 additional pyro events to be controlled by this
8631 value.</p>
8632 </li>
8633 <li>
8634 <p>Many more device drivers, including u-Blox Max 7Q
8635 GPS, Freescale MMA6555 digital single-axis
8636 accelerometer, Invensense MPU6000 3-axis
8637 accelerometer + 3 axis gyro, Honeywell HMC5883
8638 3-axis magnetic sensor and the TI CC1120 and CC115L
8639 digital FM transceivers</p>
8640 </li>
8641 </ul>
8642 </div>
8643 </div>
8644 <div class="sect3">
8645 <h4 id="_altosui_application_4">H.40.2. AltosUI Application</h4>
8646 <div class="paragraph">
8647 <p>AltosUI new features:</p>
8648 </div>
8649 <div class="ulist">
8650 <ul>
8651 <li>
8652 <p>Support TeleMega, TeleMetrum v2.0, TeleMini v2.0 and
8653 EasyMini telemetry and log formats.</p>
8654 </li>
8655 </ul>
8656 </div>
8657 <div class="paragraph">
8658 <p>AltosUI fixes:</p>
8659 </div>
8660 <div class="ulist">
8661 <ul>
8662 <li>
8663 <p>Use preferred units for main deployment height
8664 configuration, instead of always doing configuration in
8665 meters.
8666 == MicroPeak Application</p>
8667 </li>
8668 <li>
8669 <p>Add 'Download' button to menu bar.</p>
8670 </li>
8671 <li>
8672 <p>Save the last log directory and offer that as the
8673 default for new downloads</p>
8674 </li>
8675 </ul>
8676 </div>
8677 <div style="page-break-after: always;"></div>
8678 </div>
8679 </div>
8680 <div class="sect2">
8681 <h3 id="_release_notes_for_version_1_2_1">H.41. Release Notes for Version 1.2.1</h3>
8682 <div class="paragraph">
8683 <p>Version 1.2.1 is a minor release. It adds support for TeleBT and
8684 the AltosDroid application, provides several new features in
8685 AltosUI and fixes some bugs in the AltOS firmware.</p>
8686 </div>
8687 <div class="sect3">
8688 <h4 id="_altos_38">H.41.1. AltOS</h4>
8689 <div class="paragraph">
8690 <p>AltOS new features:</p>
8691 </div>
8692 <div class="ulist">
8693 <ul>
8694 <li>
8695 <p>Add support for TeleBT</p>
8696 </li>
8697 </ul>
8698 </div>
8699 <div class="paragraph">
8700 <p>AltOS fixes:</p>
8701 </div>
8702 <div class="ulist">
8703 <ul>
8704 <li>
8705 <p>In TeleMini recovery mode (when booted with the
8706 outer two debug pins connected together), the radio
8707 parameters are also set back to defaults
8708 (434.550MHz, N0CALL, factory radio cal).</p>
8709 </li>
8710 <li>
8711 <p>Correct Kalman filter model error covariance
8712 matrix. The values used previously assumed
8713 continuous measurements instead of discrete
8714 measurements.</p>
8715 </li>
8716 <li>
8717 <p>Fix some bugs in the USB driver for TeleMetrum and
8718 TeleDongle that affected Windows users.</p>
8719 </li>
8720 <li>
8721 <p>Adjusted the automatic gain control parameters that
8722 affect receive performance for TeleDongle. Field
8723 tests indicate that this may improve receive
8724 performance somewhat.</p>
8725 </li>
8726 </ul>
8727 </div>
8728 </div>
8729 <div class="sect3">
8730 <h4 id="_altosui_application_5">H.41.2. AltosUI Application</h4>
8731 <div class="paragraph">
8732 <p>AltosUI application new features:</p>
8733 </div>
8734 <div class="ulist">
8735 <ul>
8736 <li>
8737 <p>Make the initial position of the AltosUI top level
8738 window configurable. Along with this change, the
8739 other windows will pop up at 'sensible' places now,
8740 instead of on top of one another.</p>
8741 </li>
8742 <li>
8743 <p>Add GPS data and a map to the graph window. This
8744 lets you see a complete summary of the flight
8745 without needing to 'replay' the whole thing.</p>
8746 </li>
8747 </ul>
8748 </div>
8749 <div class="paragraph">
8750 <p>AltosUI application fixes:</p>
8751 </div>
8752 <div class="ulist">
8753 <ul>
8754 <li>
8755 <p>Handle missing GPS lock in 'Descent'
8756 tab. Previously, if the GPS position of the pad was
8757 unknown, an exception would be raised, breaking the
8758 Descent tab contents.</p>
8759 </li>
8760 <li>
8761 <p>Improve the graph, adding tool-tips to show values
8762 near the cursor and making the displayed set of
8763 values configurable, adding all of the flight data
8764 as options while leaving the default settings alone
8765 so that the graph starts by showing height, speed
8766 and acceleration.</p>
8767 </li>
8768 <li>
8769 <p>Add callsign to Monitor idle window and connecting
8770 dialogs. This makes it clear which callsign is being
8771 used so that the operator will be aware that it must
8772 match the flight computer value or no communication
8773 will work.</p>
8774 </li>
8775 <li>
8776 <p>When downloading flight data, display the block
8777 number so that the user has some sense of
8778 progress. Unfortunately, we don&#8217;t know how many
8779 blocks will need to be downloaded, but at least it
8780 isn&#8217;t just sitting there doing nothing for a long
8781 time.</p>
8782 </li>
8783 </ul>
8784 </div>
8785 </div>
8786 <div class="sect3">
8787 <h4 id="_altosdroid_9">H.41.3. AltosDroid</h4>
8788 <div class="ulist">
8789 <ul>
8790 <li>
8791 <p>First version of this application</p>
8792 </li>
8793 </ul>
8794 </div>
8795 <div style="page-break-after: always;"></div>
8796 </div>
8797 </div>
8798 <div class="sect2">
8799 <h3 id="_release_notes_for_version_1_2">H.42. Release Notes for Version 1.2</h3>
8800 <div class="paragraph">
8801 <p>Version 1.2 is a major release. It adds support for MicroPeak
8802 and the MicroPeak USB adapter.</p>
8803 </div>
8804 <div class="sect3">
8805 <h4 id="_altos_39">H.42.1. AltOS</h4>
8806 <div class="paragraph">
8807 <p>AltOS New Features:</p>
8808 </div>
8809 <div class="ulist">
8810 <ul>
8811 <li>
8812 <p>Add MicroPeak support. This includes support for the
8813 ATtiny85 processor and adaptations to the core code
8814 to allow for devices too small to run the
8815 multi-tasking scheduler.</p>
8816 </li>
8817 </ul>
8818 </div>
8819 </div>
8820 <div class="sect3">
8821 <h4 id="_altosui_and_micropeak_application">H.42.2. AltosUI and MicroPeak Application</h4>
8822 <div class="paragraph">
8823 <p>New Features:</p>
8824 </div>
8825 <div class="ulist">
8826 <ul>
8827 <li>
8828 <p>Added MicroPeak application</p>
8829 </li>
8830 </ul>
8831 </div>
8832 <div class="paragraph">
8833 <p>AltosUI and MicroPeak fixes:</p>
8834 </div>
8835 <div class="ulist">
8836 <ul>
8837 <li>
8838 <p>Distribute Mac OS X packages in disk image ('.dmg')
8839 format to greatly simplify installation.</p>
8840 </li>
8841 <li>
8842 <p>Provide version numbers for the shared Java
8843 libraries to ensure that upgrades work properly, and
8844 to allow for multiple Altus Metrum software packages
8845 to be installed in the same directory at the same
8846 time.</p>
8847 </li>
8848 </ul>
8849 </div>
8850 <div style="page-break-after: always;"></div>
8851 </div>
8852 </div>
8853 <div class="sect2">
8854 <h3 id="_release_notes_for_version_1_1">H.43. Release Notes for Version 1.1</h3>
8855 <div class="paragraph">
8856 <p>Version 1.1.1 is a bug-fix release. It fixes a couple of bugs
8857 in AltosUI and one firmware bug that affects TeleMetrum
8858 version 1.0 boards. Thanks to Bob Brown for help diagnosing
8859 the Google Earth file export issue, and for suggesting the
8860 addition of the Ground Distance value in the Descent tab.</p>
8861 </div>
8862 <div class="sect3">
8863 <h4 id="_altos_40">H.43.1. AltOS</h4>
8864 <div class="paragraph">
8865 <p>AltOS fixes:</p>
8866 </div>
8867 <div class="ulist">
8868 <ul>
8869 <li>
8870 <p>TeleMetrum v1.0 boards use the AT45DB081D flash
8871 memory part to store flight data, which is different
8872 from later TeleMetrum boards. The AltOS v1.1 driver
8873 for this chip couldn&#8217;t erase memory, leaving it
8874 impossible to delete flight data or update
8875 configuration values. This bug doesn&#8217;t affect newer
8876 TeleMetrum boards, and it doesn&#8217;t affect the safety
8877 of rockets flying version 1.1 firmware.</p>
8878 </li>
8879 </ul>
8880 </div>
8881 </div>
8882 <div class="sect3">
8883 <h4 id="_altosui_11">H.43.2. AltosUI</h4>
8884 <div class="paragraph">
8885 <p>AltosUI new features:</p>
8886 </div>
8887 <div class="ulist">
8888 <ul>
8889 <li>
8890 <p>The “Descent” tab displays the range to the rocket,
8891 which is a combination of the over-the-ground
8892 distance to the rockets current latitude/longitude
8893 and the height of the rocket. As such, it&#8217;s useful
8894 for knowing how far away the rocket is, but
8895 difficult to use when estimating where the rocket
8896 might eventually land. A new “Ground Distance” field
8897 has been added which displays the distance to a spot
8898 right underneath the rocket.</p>
8899 </li>
8900 </ul>
8901 </div>
8902 <div class="paragraph">
8903 <p>AltosUI fixes:</p>
8904 </div>
8905 <div class="ulist">
8906 <ul>
8907 <li>
8908 <p>Creating a Google Earth file (KML) from on-board
8909 flight data (EEPROM) would generate an empty
8910 file. The code responsible for reading the EEPROM
8911 file wasn&#8217;t ever setting the GPS valid bits, and so
8912 the KML export code thought there was no GPS data in
8913 the file.</p>
8914 </li>
8915 <li>
8916 <p>The “Landed” tab was displaying all values in metric
8917 units, even when AltosUI was configured to display
8918 imperial units. Somehow I just missed this tab when
8919 doing the units stuff.</p>
8920 </li>
8921 <li>
8922 <p>Sensor data wasn&#8217;t being displayed for TeleMini
8923 flight computers in Monitor Idle mode, including
8924 things like battery voltage. The code that picked
8925 which kinds of data to fetch from the flight
8926 computer was missing a check for TeleMini when
8927 deciding whether to fetch the analog sensor data.</p>
8928 </li>
8929 </ul>
8930 </div>
8931 <div style="page-break-after: always;"></div>
8932 </div>
8933 </div>
8934 <div class="sect2">
8935 <h3 id="_release_notes_for_version_1_1_2">H.44. Release Notes for Version 1.1</h3>
8936 <div class="paragraph">
8937 <p>Version 1.1 is a minor release. It provides a few new features
8938 in AltosUI and the AltOS firmware and fixes bugs.</p>
8939 </div>
8940 <div class="sect3">
8941 <h4 id="_altos_41">H.44.1. AltOS</h4>
8942 <div class="paragraph">
8943 <p>AltOS Firmware New Features:</p>
8944 </div>
8945 <div class="ulist">
8946 <ul>
8947 <li>
8948 <p>Add apogee-lockout value. Overrides the apogee
8949 detection logic to prevent incorrect apogee charge
8950 firing.</p>
8951 </li>
8952 <li>
8953 <p>Force the radio frequency to 434.550MHz when the
8954 debug clock pin is connected to ground at boot
8955 time. This provides a way to talk to a TeleMini
8956 which is configured to some unknown frequency.</p>
8957 </li>
8958 <li>
8959 <p>Provide RSSI values for Monitor Idle mode. This
8960 makes it easy to check radio range without needing
8961 to go to flight mode.</p>
8962 </li>
8963 </ul>
8964 </div>
8965 <div class="paragraph">
8966 <p>AltOS Fixes:</p>
8967 </div>
8968 <div class="ulist">
8969 <ul>
8970 <li>
8971 <p>Fix a bug where the data reported in telemetry
8972 packets was from 320ms ago.</p>
8973 </li>
8974 <li>
8975 <p>Fix a bug which caused the old received telemetry
8976 packets to be retransmitted over the USB link when
8977 the radio was turned off and back on.</p>
8978 </li>
8979 </ul>
8980 </div>
8981 </div>
8982 <div class="sect3">
8983 <h4 id="_altosui_12">H.44.2. AltosUI</h4>
8984 <div class="paragraph">
8985 <p>AltosUI New Features:</p>
8986 </div>
8987 <div class="ulist">
8988 <ul>
8989 <li>
8990 <p>Make the look-n-feel configurable, providing a choice from
8991 the available options.</p>
8992 </li>
8993 <li>
8994 <p>Add an 'Age' element to mark how long since a
8995 telemetry packet has been received. Useful to
8996 quickly gauge whether communications with the rocket
8997 are still active.</p>
8998 </li>
8999 <li>
9000 <p>Add 'Configure Ground Station' dialog to set the
9001 radio frequency used by a particular TeleDongle
9002 without having to go through the flight monitor UI.</p>
9003 </li>
9004 <li>
9005 <p>Add configuration for the new apogee-lockout
9006 value. A menu provides a list of reasonable values,
9007 or the value can be set by hand.</p>
9008 </li>
9009 <li>
9010 <p>Add Imperial units mode to present data in feet
9011 instead of meters.</p>
9012 </li>
9013 </ul>
9014 </div>
9015 <div class="paragraph">
9016 <p>AltosUI Fixes:</p>
9017 </div>
9018 <div class="ulist">
9019 <ul>
9020 <li>
9021 <p>Fix a bug that caused GPS ready to happen too
9022 quickly. The software was using every telemetry
9023 packet to signal new GPS data, which caused GPS
9024 ready to be signalled after 10 packets instead of 10
9025 GPS updates.</p>
9026 </li>
9027 <li>
9028 <p>Fix Google Earth data export to work with recent
9029 versions. The google earth file loading code got a
9030 lot pickier, requiring some minor white space
9031 changes in the export code.</p>
9032 </li>
9033 <li>
9034 <p>Changed how flight data are downloaded. Now there&#8217;s
9035 an initial dialog asking which flights to download,
9036 and after that finishes, a second dialog comes up
9037 asking which flights to delete.</p>
9038 </li>
9039 <li>
9040 <p>Re-compute time spent in each state for the flight
9041 graph; this figures out the actual boost and landing
9042 times instead of using the conservative values
9043 provide by the flight electronics. This improves the
9044 accuracy of the boost acceleration and main descent
9045 rate computations.</p>
9046 </li>
9047 <li>
9048 <p>Make AltosUI run on Mac OS Lion. The default Java
9049 heap space was dramatically reduced for this release
9050 causing much of the UI to fail randomly. This most
9051 often affected the satellite mapping download and
9052 displays.</p>
9053 </li>
9054 <li>
9055 <p>Change how data are displayed in the 'table' tab of
9056 the flight monitoring window. This eliminates
9057 entries duplicated from the header and adds both
9058 current altitude and pad altitude, which are useful
9059 in 'Monitor Idle' mode.</p>
9060 </li>
9061 </ul>
9062 </div>
9063 <div style="page-break-after: always;"></div>
9064 </div>
9065 </div>
9066 <div class="sect2">
9067 <h3 id="_release_notes_for_version_1_0_1">H.45. Release Notes for Version 1.0.1</h3>
9068 <div class="paragraph">
9069 <p>Version 1.0.1 is a major release, adding support for the
9070 TeleMini device and lots of new AltosUI features</p>
9071 </div>
9072 <div class="sect3">
9073 <h4 id="_altos_42">H.45.1. AltOS</h4>
9074 <div class="paragraph">
9075 <p>AltOS New Features</p>
9076 </div>
9077 <div class="ulist">
9078 <ul>
9079 <li>
9080 <p>Add TeleMini v1.0 support.</p>
9081 </li>
9082 <li>
9083 <p>Support operation of TeleMetrum with the antenna pointing
9084 aft. Previous firmware versions required the antenna to be
9085 pointing upwards, now there is a configuration option
9086 allowing the antenna to point aft, to aid installation in
9087 some airframes.</p>
9088 </li>
9089 <li>
9090 <p>Ability to disable telemetry. For airframes where an antenna
9091 just isn&#8217;t possible, or where radio transmissions might
9092 cause trouble with other electronics, there&#8217;s a
9093 configuration option to disable all telemetry. Note that the
9094 board will still enable the radio link in idle mode.</p>
9095 </li>
9096 <li>
9097 <p>Arbitrary frequency selection. The radios in Altus Metrum
9098 devices can be programmed to a wide range of frequencies, so
9099 instead of limiting devices to 10 pre-selected 'channels',
9100 the new firmware allows the user to choose any frequency in
9101 the 70cm band. Note that the RF matching circuit on the
9102 boards is tuned for around 435MHz, so frequencies far from
9103 that may reduce the available range.</p>
9104 </li>
9105 </ul>
9106 </div>
9107 <div class="paragraph">
9108 <p>AltOS Fixes</p>
9109 </div>
9110 <div class="ulist">
9111 <ul>
9112 <li>
9113 <p>Change telemetry to be encoded in multiple 32-byte
9114 packets. This enables support for TeleMini and other devices
9115 without requiring further updates to the TeleDongle
9116 firmware.</p>
9117 </li>
9118 <li>
9119 <p>Kalman-filter based flight-tracking. The model based sensor
9120 fusion approach of a Kalman filter means that AltOS now
9121 computes apogee much more accurately than before, generally
9122 within a fraction of a second. In addition, this approach
9123 allows the baro-only TeleMini device to correctly identify
9124 Mach transitions, avoiding the error-prone selection of a
9125 Mach delay.</p>
9126 </li>
9127 </ul>
9128 </div>
9129 </div>
9130 <div class="sect3">
9131 <h4 id="_altosui_application_6">H.45.2. AltosUI Application</h4>
9132 <div class="paragraph">
9133 <p>AltosUI New Features</p>
9134 </div>
9135 <div class="ulist">
9136 <ul>
9137 <li>
9138 <p>Add main/apogee voltage graphs to the data
9139 plot. This provides a visual indication if the
9140 igniters fail before being fired.</p>
9141 </li>
9142 <li>
9143 <p>Scan for altimeter devices by watching the defined
9144 telemetry frequencies. This avoids the problem of
9145 remembering what frequency a device was configured
9146 to use, which is especially important with TeleMini
9147 which does not include a USB connection.</p>
9148 </li>
9149 <li>
9150 <p>Monitor altimeter state in "Idle" mode. This
9151 provides much of the information presented in the
9152 "Pad" dialog from the Monitor Flight command,
9153 monitoring the igniters, battery and GPS status
9154 withing requiring the flight computer to be armed
9155 and ready for flight.</p>
9156 </li>
9157 <li>
9158 <p>Pre-load map images from home. For those launch
9159 sites which don&#8217;t provide free Wi-Fi, this allows
9160 you to download the necessary satellite images
9161 given the location of the launch site. A list of
9162 known launch sites is maintained at altusmetrum.org
9163 which AltosUI downloads to populate a menu; if
9164 you&#8217;ve got a launch site not on that list, please
9165 send the name of it, latitude and longitude along
9166 with a link to the web site of the controlling club
9167 to the altusmetrum mailing list.</p>
9168 </li>
9169 <li>
9170 <p>Flight statistics are now displayed in the Graph
9171 data window. These include max height/speed/accel,
9172 average descent rates and a few other bits of
9173 information. The Graph Data window can now be
9174 reached from the 'Landed' tab in the Monitor Flight
9175 window so you can immediately see the results of a
9176 flight.</p>
9177 </li>
9178 </ul>
9179 </div>
9180 <div class="paragraph">
9181 <p>AltosUI Changes</p>
9182 </div>
9183 <div class="ulist">
9184 <ul>
9185 <li>
9186 <p>Wait for altimeter when using packet mode. Instead
9187 of quicly timing out when trying to initialize a
9188 packet mode configuration connection, AltosUI now
9189 waits indefinitely for the remote device to appear,
9190 providing a cancel button should the user get
9191 bored. This is necessary as the TeleMini can only be
9192 placed in "Idle" mode if AltosUI is polling it.</p>
9193 </li>
9194 </ul>
9195 </div>
9196 <div style="page-break-after: always;"></div>
9197 </div>
9198 </div>
9199 <div class="sect2">
9200 <h3 id="_release_notes_for_version_0_9_2">H.46. Release Notes for Version 0.9.2</h3>
9201 <div class="paragraph">
9202 <p>Version 0.9.2 is an AltosUI bug-fix release, with no firmware
9203 changes.</p>
9204 </div>
9205 <div class="sect3">
9206 <h4 id="_altosui_13">H.46.1. AltosUI</h4>
9207 <div class="paragraph">
9208 <p>AltosUI fixes:</p>
9209 </div>
9210 <div class="ulist">
9211 <ul>
9212 <li>
9213 <p>Fix plotting problems due to missing file in the Mac
9214 OS install image.</p>
9215 </li>
9216 <li>
9217 <p>Always read whole eeprom blocks, mark empty records
9218 invalid, display parsing errors to user.</p>
9219 </li>
9220 <li>
9221 <p>Add software version to Configure AltosUI dialog</p>
9222 </li>
9223 </ul>
9224 </div>
9225 <div style="page-break-after: always;"></div>
9226 </div>
9227 </div>
9228 <div class="sect2">
9229 <h3 id="_release_notes_for_version_0_9">H.47. Release Notes for Version 0.9</h3>
9230 <div class="paragraph">
9231 <p>Version 0.9 adds a few new firmware features and accompanying
9232 AltosUI changes, along with new hardware support.</p>
9233 </div>
9234 <div class="sect3">
9235 <h4 id="_altos_43">H.47.1. AltOS</h4>
9236 <div class="ulist">
9237 <ul>
9238 <li>
9239 <p>Support for TeleMetrum v1.1 hardware. Sources for the flash
9240 memory part used in v1.0 dried up, so v1.1 uses a different
9241 part which required a new driver and support for explicit
9242 flight log erasing.</p>
9243 </li>
9244 <li>
9245 <p>Multiple flight log support. This stores more than one
9246 flight log in the on-board flash memory. It also requires
9247 the user to explicitly erase flights so that you won&#8217;t lose
9248 flight logs just because you fly the same board twice in one
9249 day.</p>
9250 </li>
9251 <li>
9252 <p>Telemetry support for devices with serial number &gt;= 256.
9253 Previous versions used a telemetry packet format that
9254 provided only 8 bits for the device serial number. This
9255 change requires that both ends of the telemetry link be
9256 running the 0.9 firmware or they will not communicate.</p>
9257 </li>
9258 </ul>
9259 </div>
9260 </div>
9261 <div class="sect3">
9262 <h4 id="_altosui_application_7">H.47.2. AltosUI Application</h4>
9263 <div class="ulist">
9264 <ul>
9265 <li>
9266 <p>Support for telemetry format changes.</p>
9267 </li>
9268 <li>
9269 <p>Support for multiple flight logs.</p>
9270 </li>
9271 </ul>
9272 </div>
9273 <div style="page-break-after: always;"></div>
9274 </div>
9275 </div>
9276 <div class="sect2">
9277 <h3 id="_release_notes_for_version_0_8">H.48. Release Notes for Version 0.8</h3>
9278 <div class="paragraph">
9279 <p>Version 0.8 offers a major upgrade in the AltosUI
9280 interface.</p>
9281 </div>
9282 <div class="sect3">
9283 <h4 id="_altosui_application_8">H.48.1. AltosUI Application:</h4>
9284 <div class="ulist">
9285 <ul>
9286 <li>
9287 <p>Post-flight graphing tool. This lets you explore the
9288 behaviour of your rocket after flight with a scroll-able and
9289 zoom-able chart showing the altitude, speed and acceleration
9290 of the airframe along with events recorded by the flight
9291 computer. You can export graphs to PNG files, or print them
9292 directly.</p>
9293 </li>
9294 <li>
9295 <p>Real-time moving map which overlays the in-progress flight
9296 on satellite imagery fetched from Google Maps. This lets you
9297 see in pictures where your rocket has landed, allowing you
9298 to plan recovery activities more accurately.</p>
9299 </li>
9300 <li>
9301 <p>Wireless recovery system testing. Prep your rocket for
9302 flight and test fire the deployment charges to make sure
9303 things work as expected. All without threading wires through
9304 holes in your airframe.</p>
9305 </li>
9306 <li>
9307 <p>Optimized flight status displays. Each flight state now has
9308 it&#8217;s own custom 'tab' in the flight monitoring window so you
9309 can focus on the most important details. Pre-flight, the
9310 system shows a set of red/green status indicators for
9311 battery voltage, apogee/main igniter continutity and GPS
9312 reception. Wait until they&#8217;re all green and your rocket is
9313 ready for flight. There are also tabs for ascent, descent
9314 and landing along with the original tabular view of the
9315 data.</p>
9316 </li>
9317 <li>
9318 <p>Monitor multiple flights simultaneously. If you have more
9319 than one TeleDongle, you can monitor a flight with each one
9320 on the same computer.</p>
9321 </li>
9322 <li>
9323 <p>Automatic flight monitoring at startup. Plug TeleDongle into
9324 the machine before starting AltosUI and it will
9325 automatically connect to it and prepare to monitor a flight.</p>
9326 </li>
9327 <li>
9328 <p>Exports Google Earth flight tracks. Using the Keyhole Markup
9329 Language (.kml) file format, this provides a 3D view of your
9330 rocket flight through the Google Earth program.</p>
9331 </li>
9332 </ul>
9333 </div>
9334 <div style="page-break-after: always;"></div>
9335 </div>
9336 </div>
9337 <div class="sect2">
9338 <h3 id="_release_notes_for_version_0_7_1">H.49. Release Notes for Version 0.7.1</h3>
9339 <div class="paragraph">
9340 <p>Version 0.7.1 is the first release containing our new
9341 cross-platform Java-based user interface.</p>
9342 </div>
9343 <div class="sect3">
9344 <h4 id="_altosui_application_9">H.49.1. AltosUI Application</h4>
9345 <div class="ulist">
9346 <ul>
9347 <li>
9348 <p>Receive and log telemetry from a connected TeleDongle
9349 device. All data received is saved to log files named with
9350 the current date and the connected rocket serial and flight
9351 numbers. There is no mode in which telemetry data will not
9352 be saved.</p>
9353 </li>
9354 <li>
9355 <p>Download logged data from TeleMetrum devices, either through
9356 a direct USB connection or over the air through a TeleDongle
9357 device.</p>
9358 </li>
9359 <li>
9360 <p>Configure a TeleMetrum device, setting the radio channel,
9361 callsign, apogee delay and main deploy height. This can be
9362 done through either a USB connection or over a radio link
9363 via a TeleDongle device.</p>
9364 </li>
9365 <li>
9366 <p>Replay a flight in real-time. This takes a saved telemetry
9367 log or eeprom download and replays it through the user
9368 interface so you can relive your favorite rocket flights.</p>
9369 </li>
9370 <li>
9371 <p>Reprogram Altus Metrum devices. Using an Altus Metrum device
9372 connected via USB, another Altus Metrum device can be
9373 reprogrammed using the supplied programming cable between
9374 the two devices.</p>
9375 </li>
9376 <li>
9377 <p>Export Flight data to a comma-separated-values file. This
9378 takes either telemetry or on-board flight data and generates
9379 data suitable for use in external applications. All data is
9380 exported using standard units so that no device-specific
9381 knowledge is needed to handle the data.</p>
9382 </li>
9383 <li>
9384 <p>Speak to you during the flight. Instead of spending the
9385 flight hunched over your laptop looking at the screen, enjoy
9386 the view while the computer tells you what’s going on up
9387 there. During ascent, you hear the current flight state and
9388 altitude information. During descent, you get azimuth,
9389 elevation and range information to try and help you find
9390 your rocket in the air. Once on the ground, the direction
9391 and distance are reported.</p>
9392 </li>
9393 </ul>
9394 </div>
9395 </div>
9396 </div>
9397 </div>
9398 </div>
9399 </div>
9400 <div id="footer">
9401 <div id="footer-text">
9402 Version v1.9.16<br>
9403 Last updated 2023-04-28 00:05:59 -0600
9404 </div>
9405 </div>
9406 </body>
9407 </html>