a7409278c6f5dca145cc99f8073ff3e66cd65711
[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.20">
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.17,</span>
24 <span id="revdate">30 Aug 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_17">H.1. Release Notes for Version 1.9.17</a></li>
188 <li><a href="#_release_notes_for_version_1_9_16">H.2. Release Notes for Version 1.9.16</a></li>
189 <li><a href="#_release_notes_for_version_1_9_15">H.3. Release Notes for Version 1.9.15</a></li>
190 <li><a href="#_release_notes_for_version_1_9_14">H.4. Release Notes for Version 1.9.14</a></li>
191 <li><a href="#_release_notes_for_version_1_9_13">H.5. Release Notes for Version 1.9.13</a></li>
192 <li><a href="#_release_notes_for_version_1_9_12">H.6. Release Notes for Version 1.9.12</a></li>
193 <li><a href="#_release_notes_for_version_1_9_11">H.7. Release Notes for Version 1.9.11</a></li>
194 <li><a href="#_release_notes_for_version_1_9_10">H.8. Release Notes for Version 1.9.10</a></li>
195 <li><a href="#_release_notes_for_version_1_9_9">H.9. Release Notes for Version 1.9.9</a></li>
196 <li><a href="#_release_notes_for_version_1_9_8">H.10. Release Notes for Version 1.9.8</a></li>
197 <li><a href="#_release_notes_for_version_1_9_7">H.11. Release Notes for Version 1.9.7</a></li>
198 <li><a href="#_release_notes_for_version_1_9_6">H.12. Release Notes for Version 1.9.6</a></li>
199 <li><a href="#_release_notes_for_version_1_9_5">H.13. Release Notes for Version 1.9.5</a></li>
200 <li><a href="#_release_notes_for_version_1_9_4">H.14. Release Notes for Version 1.9.4</a></li>
201 <li><a href="#_release_notes_for_version_1_9_3">H.15. Release Notes for Version 1.9.3</a></li>
202 <li><a href="#_release_notes_for_version_1_9_2">H.16. Release Notes for Version 1.9.2</a></li>
203 <li><a href="#_release_notes_for_version_1_9_1">H.17. Release Notes for Version 1.9.1</a></li>
204 <li><a href="#_release_notes_for_version_1_9">H.18. Release Notes for Version 1.9</a></li>
205 <li><a href="#_release_notes_for_version_1_8_7">H.19. Release Notes for Version 1.8.7</a></li>
206 <li><a href="#_release_notes_for_version_1_8_6">H.20. Release Notes for Version 1.8.6</a></li>
207 <li><a href="#_release_notes_for_version_1_8_5">H.21. Release Notes for Version 1.8.5</a></li>
208 <li><a href="#_release_notes_for_version_1_8_4">H.22. Release Notes for Version 1.8.4</a></li>
209 <li><a href="#_release_notes_for_version_1_8_3">H.23. Release Notes for Version 1.8.3</a></li>
210 <li><a href="#_release_notes_for_version_1_8_2">H.24. Release Notes for Version 1.8.2</a></li>
211 <li><a href="#_release_notes_for_version_1_8_1">H.25. Release Notes for Version 1.8.1</a></li>
212 <li><a href="#_release_notes_for_version_1_8">H.26. Release Notes for Version 1.8</a></li>
213 <li><a href="#_release_notes_for_version_1_7">H.27. Release Notes for Version 1.7</a></li>
214 <li><a href="#_release_notes_for_version_1_6_8">H.28. Release Notes for Version 1.6.8</a></li>
215 <li><a href="#_release_notes_for_version_1_6_5">H.29. Release Notes for Version 1.6.5</a></li>
216 <li><a href="#_release_notes_for_version_1_6_4">H.30. Release Notes for Version 1.6.4</a></li>
217 <li><a href="#_release_notes_for_version_1_6_3">H.31. Release Notes for Version 1.6.3</a></li>
218 <li><a href="#_release_notes_for_version_1_6_2">H.32. Release Notes for Version 1.6.2</a></li>
219 <li><a href="#_release_notes_for_version_1_6_1">H.33. Release Notes for Version 1.6.1</a></li>
220 <li><a href="#_release_notes_for_version_1_6">H.34. Release Notes for Version 1.6</a></li>
221 <li><a href="#_release_notes_for_version_1_5">H.35. Release Notes for Version 1.5</a></li>
222 <li><a href="#_release_notes_for_version_1_4_2">H.36. Release Notes for Version 1.4.2</a></li>
223 <li><a href="#_release_notes_for_version_1_4_1">H.37. Release Notes for Version 1.4.1</a></li>
224 <li><a href="#_release_notes_for_version_1_4">H.38. Release Notes for Version 1.4</a></li>
225 <li><a href="#_release_notes_for_version_1_3_2">H.39. Release Notes for Version 1.3.2</a></li>
226 <li><a href="#_release_notes_for_version_1_3_1">H.40. Release Notes for Version 1.3.1</a></li>
227 <li><a href="#_release_notes_for_version_1_3">H.41. Release Notes for Version 1.3</a></li>
228 <li><a href="#_release_notes_for_version_1_2_1">H.42. Release Notes for Version 1.2.1</a></li>
229 <li><a href="#_release_notes_for_version_1_2">H.43. Release Notes for Version 1.2</a></li>
230 <li><a href="#_release_notes_for_version_1_1">H.44. Release Notes for Version 1.1</a></li>
231 <li><a href="#_release_notes_for_version_1_1_2">H.45. Release Notes for Version 1.1</a></li>
232 <li><a href="#_release_notes_for_version_1_0_1">H.46. Release Notes for Version 1.0.1</a></li>
233 <li><a href="#_release_notes_for_version_0_9_2">H.47. Release Notes for Version 0.9.2</a></li>
234 <li><a href="#_release_notes_for_version_0_9">H.48. Release Notes for Version 0.9</a></li>
235 <li><a href="#_release_notes_for_version_0_8">H.49. Release Notes for Version 0.8</a></li>
236 <li><a href="#_release_notes_for_version_0_7_1">H.50. Release Notes for Version 0.7.1</a></li>
237 </ul>
238 </li>
239 </ul>
240 </div>
241 </div>
242 <div id="content">
243 <div id="preamble">
244 <div class="sectionbody">
245 <div id="logo" class="imageblock">
246 <div class="content">
247 <a class="image" href="https://altusmetrum.org"><img src="altusmetrum-oneline.svg" alt="Altus Metrum"></a>
248 </div>
249 </div>
250 </div>
251 </div>
252 <div class="sect1">
253 <h2 id="_license">License</h2>
254 <div class="sectionbody">
255 <div class="paragraph">
256 <p>Copyright © 2023 Bdale Garbee and Keith Packard</p>
257 </div>
258 <div class="paragraph">
259 <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>
260 </div>
261 </div>
262 </div>
263 <div class="sect1">
264 <h2 id="_acknowledgments">Acknowledgments</h2>
265 <div class="sectionbody">
266 <div class="paragraph">
267 <p>Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing “The
268 Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
269 Kit” which formed the basis of the original Getting Started chapter
270 in this manual.  Bob was one of our first customers for a production
271 TeleMetrum, and his continued enthusiasm and contributions
272 are immensely gratifying and highly appreciated!</p>
273 </div>
274 <div class="paragraph">
275 <p>And thanks to Anthony (AJ) Towns for major contributions including
276 the AltosUI graphing and site map code and associated documentation.
277 Free software means that our customers and friends can become our
278 collaborators, and we certainly appreciate this level of
279 contribution!</p>
280 </div>
281 <div class="paragraph">
282 <p>Have fun using these products, and we hope to meet all of you
283 out on the rocket flight line somewhere.</p>
284 </div>
285 <div class="verseblock">
286 <pre class="content">Bdale Garbee, KB0G
287 NAR #87103, TRA #12201</pre>
288 </div>
289 <div class="verseblock">
290 <pre class="content">Keith Packard, K7WQ
291 NAR #88757, TRA #12200</pre>
292 </div>
293 </div>
294 </div>
295 <div class="sect1">
296 <h2 id="_introduction_and_overview">1. Introduction and Overview</h2>
297 <div class="sectionbody">
298 <div class="paragraph">
299 <p>Welcome to the Altus Metrum community!  Our circuits and software reflect
300 our passion for both hobby rocketry and Free Software.  We hope their
301 capabilities and performance will delight you in every way, but by
302 releasing all of our hardware and software designs under open licenses,
303 we also hope to empower you to take as active a role in our collective
304 future as you wish!</p>
305 </div>
306 <div class="paragraph">
307 <p>Our goal is to include in this document all of the information required
308 to successfully configure and use Altus Metrum products.  But
309 documentation is a lot like software in that it can contain "bugs",
310 and can probably always be improved!  If you have questions that
311 aren&#8217;t answered in this manual, or just need a little help figuring
312 things out, we strongly suggest joining the Altus Metrum user email
313 list, which you can do by visiting
314 <a href="https://lists.gag.com/mailman/listinfo/altusmetrum" class="bare">https://lists.gag.com/mailman/listinfo/altusmetrum</a>.  There&#8217;s a lot
315 of useful information in the mailing list archives!</p>
316 </div>
317 <div class="paragraph">
318 <p>The first device created for our community was TeleMetrum, a dual
319 deploy altimeter with fully integrated GPS and radio telemetry
320 as standard features, and a “companion interface” that will
321 support optional capabilities in the future. The later versions
322 of TeleMetrum, v2 and newer, have all of the same features but with
323 improved sensors and radio to offer increased performance.</p>
324 </div>
325 <div class="paragraph">
326 <p>Our second device was TeleMini, a dual deploy altimeter with
327 radio telemetry and radio direction finding. The first version
328 of this device was only 13mm by 38mm (½ inch by 1½ inches) and
329 could fit easily in an 18mm air-frame. The latest version, v3.0,
330 includes a beeper, higher power radio, extended on-board
331 flight logging and an improved barometric sensor.</p>
332 </div>
333 <div class="paragraph">
334 <p>TeleMega is our most sophisticated device, including six pyro
335 channels (four of which are fully programmable), integrated GPS,
336 integrated gyroscopes for staging/air-start inhibit and high
337 performance telemetry.</p>
338 </div>
339 <div class="paragraph">
340 <p>EasyMini is a dual-deploy altimeter with logging and built-in
341 USB data download.</p>
342 </div>
343 <div class="paragraph">
344 <p>EasyMega is essentially a TeleMega board with the GPS receiver
345 and telemetry transmitter removed. It offers the same 6 pyro
346 channels and integrated gyroscopes for staging/air-start inhibit.</p>
347 </div>
348 <div class="paragraph">
349 <p>TeleDongle v0.2 was our first ground station, providing a USB to RF
350 interfaces for communicating with the altimeters. Combined with
351 your choice of antenna and notebook computer, TeleDongle and our
352 associated user interface software form a complete ground
353 station capable of logging and displaying in-flight telemetry,
354 aiding rocket recovery, then processing and archiving flight
355 data for analysis and review. The latest version, TeleDongle
356 v3, has all new electronics with a higher performance radio
357 for improved range.</p>
358 </div>
359 <div class="paragraph">
360 <p>For a slightly more portable ground station experience that also
361 provides direct rocket recovery support, TeleBT offers flight
362 monitoring and data logging using a  Bluetooth™ connection between
363 the receiver and an Android device that has the AltosDroid
364 application installed from the Google Play store.</p>
365 </div>
366 <div class="paragraph">
367 <p>More products will be added to the Altus Metrum family over time, and
368 we currently envision that this will be a single, comprehensive manual
369 for the entire product family.</p>
370 </div>
371 </div>
372 </div>
373 <div class="sect1">
374 <h2 id="_getting_started">2. Getting Started</h2>
375 <div class="sectionbody">
376 <div class="paragraph">
377 <p>The first thing to do after you open the box is to hook up a
378 battery and charge it if necessary.</p>
379 </div>
380 <div class="sect2">
381 <h3 id="_batteries">2.1. Batteries</h3>
382 <div class="paragraph">
383 <p>For TeleMetrum, TeleMega and EasyMega, the battery can be charged by plugging it into the
384 corresponding socket of the device and then using the USB
385 cable to plug the flight computer into your computer&#8217;s USB socket. The
386 on-board circuitry will charge the battery whenever it is plugged
387 in, because the on-off switch does NOT control the
388 charging circuitry.
389 The Lithium Polymer
390 EasyTimer,
391 TeleMini and
392 EasyMini battery can be charged by disconnecting it
393 from the board and plugging it into a standalone
394 battery charger such as <a href="http://altusmetrum.org/LipoCharger">LipoCharger</a>, and
395 connecting that via a USB cable to a laptop or other
396 USB power source.</p>
397 </div>
398 <div class="paragraph">
399 <p>You can also choose to use another battery with
400 EasyTimer and
401 EasyMini, anything supplying between 4 and 12 volts should
402 work fine (like a standard 9V battery), but if you are planning
403 to fire pyro charges, ground testing is required to verify that
404 the battery supplies enough current to fire your chosen e-matches.</p>
405 </div>
406 <div class="admonitionblock note">
407 <table>
408 <tr>
409 <td class="icon">
410 <img src="./images/icons/note.svg" alt="Note">
411 </td>
412 <td class="content">
413 <div class="paragraph">
414 <p>On TeleMetrum v1 boards, when the GPS chip is initially
415 searching for satellites, TeleMetrum will consume more current
416 than it pulls from the USB port, so the battery must be
417 attached in order to get satellite lock.  Once GPS is locked,
418 the current consumption goes back down enough to enable charging
419 while running. So it&#8217;s a good idea to fully charge the battery
420 as your first item of business so there is no issue getting and
421 maintaining satellite lock.  The yellow charge indicator led
422 will go out when the battery is nearly full and the charger goes
423 to trickle charge. It can take several hours to fully recharge a
424 deeply discharged battery.</p>
425 </div>
426 <div class="paragraph">
427 <p>TeleMetrum v2 or newer, TeleMega and EasyMega use a
428 higher power battery charger, allowing them to charge
429 the battery while running the board at maximum
430 power. When the battery is charging, or when the board
431 is consuming a lot of power, the red LED will be
432 lit. When the battery is fully charged, the green LED
433 will be lit. When the battery is damaged or missing,
434 both LEDs will be lit, which appears yellow.</p>
435 </div>
436 </td>
437 </tr>
438 </table>
439 </div>
440 </div>
441 <div class="sect2">
442 <h3 id="_ground_station_hardware">2.2. Ground Station Hardware</h3>
443 <div class="paragraph">
444 <p>There are two ground stations available, the TeleDongle USB to
445 RF interface and the TeleBT Bluetooth/USB to RF interface.  If
446 you plug either of these in to your Mac or Linux computer it should
447 “just work”, showing up as a serial port device.  Windows systems need
448 driver information that is part of the AltOS download to know that the
449 existing USB modem driver will work.  We therefore recommend installing
450 our software before plugging in TeleDongle if you are using a Windows
451 computer.  If you are using an older version of Linux and are having
452 problems, try moving to a fresher kernel (2.6.33 or
453 newer).</p>
454 </div>
455 </div>
456 <div class="sect2">
457 <h3 id="_linuxmacwindows_ground_station_software">2.3. Linux/Mac/Windows Ground Station Software</h3>
458 <div class="paragraph">
459 <p>Next you should obtain and install the AltOS software.
460 The AltOS distribution includes the AltosUI ground
461 station program, current firmware images for all of
462 the hardware, and a number of standalone utilities
463 that are rarely needed.  Pre-built binary packages are
464 available for Linux, Microsoft Windows, Mac OSX. Full
465 source code and build instructions are also
466 available. The latest version may always be downloaded
467 from <a href="http://altusmetrum.org/AltOS" class="bare">http://altusmetrum.org/AltOS</a></p>
468 </div>
469 </div>
470 <div class="sect2">
471 <h3 id="_android_ground_station_software">2.4. Android Ground Station Software</h3>
472 <div class="paragraph">
473 <p>TeleBT can also connect to an Android device over
474 BlueTooth or USB. The
475 <a href="https://play.google.com/store/apps/details?id=org.altusmetrum.AltosDroid">AltosDroid
476 Android application</a> is available from the
477 <a href="https://play.google.com">Google Play system</a>.</p>
478 </div>
479 <div class="paragraph">
480 <p>You don&#8217;t need a data plan to use AltosDroid, but
481 without network access, you&#8217;ll want to download
482 offline map data before wandering away from the
483 network.</p>
484 </div>
485 </div>
486 </div>
487 </div>
488 <div class="sect1">
489 <h2 id="_using_altus_metrum_hardware">3. Using Altus Metrum Hardware</h2>
490 <div class="sectionbody">
491 <div class="paragraph">
492 <p>Here are general instructions for hooking up an Altus Metrum
493 flight computer. Instructions specific to each model will be
494 found in the section devoted to that model below.</p>
495 </div>
496 <div class="sect2">
497 <h3 id="_wiring_and_electrical_interference">3.1. Wiring and Electrical Interference</h3>
498 <div class="paragraph">
499 <p>To prevent electrical interference from affecting the
500 operation of the flight computer, it&#8217;s important to always
501 twist pairs of wires connected to the board. Twist the switch
502 leads, the pyro leads and the battery leads. This reduces
503 interference through a mechanism called common mode rejection.</p>
504 </div>
505 </div>
506 <div class="sect2">
507 <h3 id="_hooking_up_lithium_polymer_batteries">3.2. Hooking Up Lithium Polymer Batteries</h3>
508 <div class="paragraph">
509 <p>All Altus Metrum flight computers have a two pin JST PH
510 series connector to connect up a single-cell Lithium Polymer
511 cell (3.7V nominal). You can purchase matching batteries
512 from the Altus Metrum store, or other vendors, or you can
513 make your own. Pin 1 of the connector is positive, pin 2 is
514 negative. Spark Fun sells a cable with the connector
515 attached, which they call a
516 <a href="https://www.sparkfun.com/products/9914">JST Jumper 2 Wire Assembly</a></p>
517 </div>
518 <div class="admonitionblock warning">
519 <table>
520 <tr>
521 <td class="icon">
522 <img src="./images/icons/warning.svg" alt="Warning">
523 </td>
524 <td class="content">
525 Many RC vendors also sell lithium polymer batteries with
526 this same connector. All that we have found use the opposite
527 polarity, and if you use them that way, you will damage or
528 destroy the flight computer.
529 </td>
530 </tr>
531 </table>
532 </div>
533 </div>
534 <div class="sect2">
535 <h3 id="_hooking_up_pyro_charges">3.3. Hooking Up Pyro Charges</h3>
536 <div class="paragraph">
537 <p>Altus Metrum flight computers always have two screws for
538 each pyro charge. This means you shouldn&#8217;t need to put two
539 wires into a screw terminal or connect leads from pyro
540 charges together externally.</p>
541 </div>
542 <div class="paragraph">
543 <p>On the flight computer, one lead from each charge is hooked
544 to the positive battery terminal through the power switch.
545 The other lead is connected through the pyro circuit, which
546 is connected to the negative battery terminal when the pyro
547 circuit is fired.</p>
548 </div>
549 </div>
550 <div class="sect2">
551 <h3 id="_hooking_up_a_power_switch">3.4. Hooking Up a Power Switch</h3>
552 <div class="paragraph">
553 <p>Altus Metrum flight computers need an external power switch
554 to turn them on. This disconnects both the computer and the
555 pyro charges from the battery, preventing the charges from
556 firing when in the Off position. The switch is in-line with
557 the positive battery terminal.</p>
558 </div>
559 </div>
560 <div class="sect2">
561 <h3 id="_understanding_beeps">3.5. Understanding Beeps</h3>
562 <div class="paragraph">
563 <p>Altus Metrum flight computers include a beeper to
564 provide information about the state of the system.
565 TeleMini doesn&#8217;t have room for a beeper, so instead it
566 uses an LED, which works the same, except for every
567 beep is replaced with the flash of the LED.</p>
568 </div>
569 <div class="paragraph">
570 <p>Here&#8217;s a short summary of all of the modes and the
571 beeping
572 (or flashing, in the case of TeleMini v1)
573 that accompanies each mode. In the description of the
574 beeping pattern, “dit” means a short beep while "dah"
575 means a long beep (three times as long). “Brap” means
576 a long dissonant tone.</p>
577 </div>
578 <table class="tableblock frame-all grid-all stretch">
579 <caption class="title">Table 1. AltOS Modes</caption>
580 <colgroup>
581 <col style="width: 16.6666%;">
582 <col style="width: 16.6666%;">
583 <col style="width: 33.3333%;">
584 <col style="width: 33.3335%;">
585 </colgroup>
586 <tbody>
587 <tr>
588 <td class="tableblock halign-left valign-top"><p class="tableblock">Mode Name</p></td>
589 <td class="tableblock halign-left valign-top"><p class="tableblock">Abbreviation</p></td>
590 <td class="tableblock halign-left valign-top"><p class="tableblock">Beeps</p></td>
591 <td class="tableblock halign-left valign-top"><p class="tableblock">Description</p></td>
592 </tr>
593 <tr>
594 <td class="tableblock halign-left valign-top"><p class="tableblock">Startup</p></td>
595 <td class="tableblock halign-left valign-top"><p class="tableblock">S</p></td>
596 <td class="tableblock halign-left valign-top"><p class="tableblock">battery voltage in decivolts</p></td>
597 <td class="tableblock halign-left valign-top"><p class="tableblock">Calibrating sensors, detecting orientation.</p></td>
598 </tr>
599 <tr>
600 <td class="tableblock halign-left valign-top"><p class="tableblock">Idle</p></td>
601 <td class="tableblock halign-left valign-top"><p class="tableblock">I</p></td>
602 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
603 <td class="tableblock halign-left valign-top"><p class="tableblock">Ready to accept commands over USB
604 or radio link.</p></td>
605 </tr>
606 <tr>
607 <td class="tableblock halign-left valign-top"><p class="tableblock">Pad</p></td>
608 <td class="tableblock halign-left valign-top"><p class="tableblock">P</p></td>
609 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dah dit</p></td>
610 <td class="tableblock halign-left valign-top"><p class="tableblock">Waiting for launch. Not listening for commands.</p></td>
611 </tr>
612 <tr>
613 <td class="tableblock halign-left valign-top"><p class="tableblock">Boost</p></td>
614 <td class="tableblock halign-left valign-top"><p class="tableblock">B</p></td>
615 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dit</p></td>
616 <td class="tableblock halign-left valign-top"><p class="tableblock">Accelerating upwards.</p></td>
617 </tr>
618 <tr>
619 <td class="tableblock halign-left valign-top"><p class="tableblock">Fast</p></td>
620 <td class="tableblock halign-left valign-top"><p class="tableblock">F</p></td>
621 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dah dit</p></td>
622 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, but moving faster than 200m/s.</p></td>
623 </tr>
624 <tr>
625 <td class="tableblock halign-left valign-top"><p class="tableblock">Coast</p></td>
626 <td class="tableblock halign-left valign-top"><p class="tableblock">C</p></td>
627 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dah dit</p></td>
628 <td class="tableblock halign-left valign-top"><p class="tableblock">Decelerating, moving slower than 200m/s</p></td>
629 </tr>
630 <tr>
631 <td class="tableblock halign-left valign-top"><p class="tableblock">Drogue</p></td>
632 <td class="tableblock halign-left valign-top"><p class="tableblock">D</p></td>
633 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit</p></td>
634 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending after apogee. Above main height.</p></td>
635 </tr>
636 <tr>
637 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
638 <td class="tableblock halign-left valign-top"><p class="tableblock">M</p></td>
639 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dah</p></td>
640 <td class="tableblock halign-left valign-top"><p class="tableblock">Descending. Below main height.</p></td>
641 </tr>
642 <tr>
643 <td class="tableblock halign-left valign-top"><p class="tableblock">Landed</p></td>
644 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
645 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dah dit dit</p></td>
646 <td class="tableblock halign-left valign-top"><p class="tableblock">Stable altitude for at least ten seconds.</p></td>
647 </tr>
648 <tr>
649 <td class="tableblock halign-left valign-top"><p class="tableblock">Sensor error</p></td>
650 <td class="tableblock halign-left valign-top"><p class="tableblock">X</p></td>
651 <td class="tableblock halign-left valign-top"><p class="tableblock">dah dit dit dah</p></td>
652 <td class="tableblock halign-left valign-top"><p class="tableblock">Error detected during sensor calibration.</p></td>
653 </tr>
654 </tbody>
655 </table>
656 <div class="paragraph">
657 <p>Here&#8217;s a summary of all of the Pad and Idle mode
658 indications. In Idle mode, you&#8217;ll hear one of these
659 just once after the two short dits indicating idle
660 mode. In Pad mode, after the dit dah dah dit
661 indicating Pad mode, you&#8217;ll hear these once every five
662 seconds.</p>
663 </div>
664 <table class="tableblock frame-all grid-all stretch">
665 <caption class="title">Table 2. Pad/Idle Indications</caption>
666 <colgroup>
667 <col style="width: 20%;">
668 <col style="width: 20%;">
669 <col style="width: 60%;">
670 </colgroup>
671 <thead>
672 <tr>
673 <th class="tableblock halign-left valign-top">Name</th>
674 <th class="tableblock halign-left valign-top">Beeps</th>
675 <th class="tableblock halign-left valign-top">Description</th>
676 </tr>
677 </thead>
678 <tbody>
679 <tr>
680 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
681 <td class="tableblock halign-left valign-top"><p class="tableblock">brap</p></td>
682 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
683 </tr>
684 <tr>
685 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
686 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
687 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
688 </tr>
689 <tr>
690 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
691 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
692 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
693 </tr>
694 <tr>
695 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
696 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
697 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
698 </tr>
699 <tr>
700 <td class="tableblock halign-left valign-top"><p class="tableblock">Storage Full</p></td>
701 <td class="tableblock halign-left valign-top"><p class="tableblock">warble</p></td>
702 <td class="tableblock halign-left valign-top"><p class="tableblock">On-board data logging storage is full. This will
703 not prevent the flight computer from safely
704 controlling the flight or transmitting telemetry
705 signals, but no record of the flight will be
706 stored in on-board flash.</p></td>
707 </tr>
708 <tr>
709 <td class="tableblock halign-left valign-top"><p class="tableblock">Additional Igniters</p></td>
710 <td class="tableblock halign-left valign-top"><p class="tableblock">four very short beeps</p></td>
711 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity indication for the additional pyro
712 channels on TeleMega, EasyMega and EasyTimer. One high tone for
713 no continuity, one low tone for continuity. On TeleMega and EasyMegay, these are
714 produced after the continuity indicators for the two
715 primary igniter channels.</p></td>
716 </tr>
717 </tbody>
718 </table>
719 <div class="paragraph">
720 <p>For devices with a radio transmitter, in addition to
721 the digital and APRS telemetry signals, you can also
722 receive audio tones with a standard amateur
723 70cm FM receiver. While on the pad, you will hear
724 igniter status once every five seconds.</p>
725 </div>
726 <table class="tableblock frame-all grid-all stretch">
727 <caption class="title">Table 3. Pad Radio Indications</caption>
728 <colgroup>
729 <col style="width: 20%;">
730 <col style="width: 20%;">
731 <col style="width: 60%;">
732 </colgroup>
733 <thead>
734 <tr>
735 <th class="tableblock halign-left valign-top">Name</th>
736 <th class="tableblock halign-left valign-top">Beeps</th>
737 <th class="tableblock halign-left valign-top">Description</th>
738 </tr>
739 </thead>
740 <tbody>
741 <tr>
742 <td class="tableblock halign-left valign-top"><p class="tableblock">Neither</p></td>
743 <td class="tableblock halign-left valign-top"><p class="tableblock">½ second tone</p></td>
744 <td class="tableblock halign-left valign-top"><p class="tableblock">No continuity detected on either apogee or main igniters.</p></td>
745 </tr>
746 <tr>
747 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee</p></td>
748 <td class="tableblock halign-left valign-top"><p class="tableblock">dit</p></td>
749 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on apogee igniter.</p></td>
750 </tr>
751 <tr>
752 <td class="tableblock halign-left valign-top"><p class="tableblock">Main</p></td>
753 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit</p></td>
754 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected only on main igniter.</p></td>
755 </tr>
756 <tr>
757 <td class="tableblock halign-left valign-top"><p class="tableblock">Both</p></td>
758 <td class="tableblock halign-left valign-top"><p class="tableblock">dit dit dit</p></td>
759 <td class="tableblock halign-left valign-top"><p class="tableblock">Continuity detected on both igniters.</p></td>
760 </tr>
761 </tbody>
762 </table>
763 <div class="paragraph">
764 <p>During ascent, the tones will be muted to allow the
765 telemetry data to consume the full radio bandwidth.</p>
766 </div>
767 <div class="paragraph">
768 <p>During descent and after landing, a ½ second tone will
769 be transmitted every five seconds. This can be used to
770 find the rocket using RDF techniques when the signal
771 is too weak to receive GPS information via telemetry
772 or APRS.</p>
773 </div>
774 </div>
775 <div class="sect2">
776 <h3 id="_turning_on_the_power">3.6. Turning On the Power</h3>
777 <div class="paragraph">
778 <p>Connect a battery and power switch and turn the switch
779 to "on". The flight computer will signal power on by
780 reporting the battery voltage and then perform an internal self
781 test and sensor calibration.</p>
782 </div>
783 <div class="paragraph">
784 <p>Once the self test and calibration are complete, there
785 are two modes that an Altus Metrum flight computer can
786 operate in:</p>
787 </div>
788 <div class="dlist">
789 <dl>
790 <dt class="hdlist1">Flight/Pad</dt>
791 <dd>
792 <p>The flight computer is waiting to detect
793 launch and then fly the rocket. In this mode, the USB
794 link is
795 disabled, and the radio goes into transmit-only mode.
796 The only way to get out of this
797 mode is to power the flight computer down. See below for how to get the flight
798 computer to come up in Flight/Pad mode at power on.</p>
799 </dd>
800 <dt class="hdlist1">Idle</dt>
801 <dd>
802 <p>The flight computer is ready to communicate over USB
803 and in packet mode over the radio.
804 You can configure
805 the flight computer, download data or display
806 the current state. See below for how to get the flight
807 computer to come up in Idle mode at power on.</p>
808 </dd>
809 </dl>
810 </div>
811 <div class="paragraph">
812 <p>For flight computers with accelerometers (TeleMetrum,
813 EasyMega, TeleMega and EasyTimer), the mode is selected by the
814 orientation of the board during the self test
815 interval. If the board is pointing upwards as if ready
816 to fly, it will enter Flight/Pad mode. Otherwise, it will
817 enter Idle mode.</p>
818 </div>
819 <div class="paragraph">
820 <p>For EasyMini, if the USB cable is connected to a
821 computer, it will enter Idle mode. Otherwise, it will
822 enter Flight/Pad mode.</p>
823 </div>
824 <div class="paragraph">
825 <p>For TeleMini v1.0, if a packet link is waiting to
826 connect when the device is powered on, it will enter
827 Idle mode, otherwise it will enter Flight/Pad mode.</p>
828 </div>
829 <div class="paragraph">
830 <p>You can see in <a href="#_understanding_beeps">Understanding Beeps</a>
831 how to tell which mode the flight computer is in.</p>
832 </div>
833 </div>
834 <div class="sect2">
835 <h3 id="_using_an_external_active_switch_circuit">3.7. Using an External Active Switch Circuit</h3>
836 <div class="paragraph">
837 <p>You can use an active switch circuit, such as the
838 Featherweight Magnetic Switch, with any Altus Metrum
839 flight computer. These require three connections, one to
840 the battery, one to the positive power input on the flight
841 computer and one to ground. Find instructions on how to
842 hook these up for each flight computer below. Then follow
843 the instructions that come with your active switch to
844 connect it up.</p>
845 </div>
846 </div>
847 <div class="sect2">
848 <h3 id="_using_a_separate_pyro_battery">3.8. Using a Separate Pyro Battery</h3>
849 <div class="paragraph">
850 <p>As mentioned above in <a href="#_hooking_up_pyro_charges">Hooking Up Pyro Charges</a>, one
851 lead for each of the pyro charges is connected through
852 the power switch directly to the positive battery
853 terminal. The other lead is connected to the pyro
854 circuit, which connects it to the negative battery
855 terminal when the pyro circuit is fired. The pyro
856 circuit on all of the flight computers is designed to
857 handle up to 16V.</p>
858 </div>
859 <div class="paragraph">
860 <p>To use a separate pyro battery, connect the negative pyro
861 battery terminal to the flight computer ground terminal,
862 the the switched positive battery terminal to the igniter
863 and the other
864 igniter lead to the negative pyro terminal on the flight
865 computer. When the pyro channel fires, it will complete the
866 circuit between the negative pyro terminal and the ground
867 terminal, firing the igniter. Specific instructions on how
868 to hook this up for each flight computer will be found
869 in the section below for that flight computer.</p>
870 </div>
871 <div class="paragraph">
872 <p>Note that you must include a switch in the positive lead of
873 the pyro battery for safety, as the on-board power switch
874 circuit on our product only controls current flow from the
875 the primary or system battery!</p>
876 </div>
877 </div>
878 <div class="sect2">
879 <h3 id="_using_a_different_kind_of_battery">3.9. Using a Different Kind of Battery</h3>
880 <div class="paragraph">
881 <p>EasyMini
882 and EasyTimer are
883 designed to use either a
884 lithium polymer battery or any other battery producing
885 between 4 and 12 volts, such as a rectangular 9V
886 battery.</p>
887 </div>
888 <div class="admonitionblock warning">
889 <table>
890 <tr>
891 <td class="icon">
892 <img src="./images/icons/warning.svg" alt="Warning">
893 </td>
894 <td class="content">
895 TeleMini,
896 TeleMega, EasyMega and TeleMetrum are only designed to
897 operate off a single-cell Lithium Polymer battery and
898 cannot be used with any other kind. Connecting a
899 different kind of battery to any of these will destroy
900 the board.
901 </td>
902 </tr>
903 </table>
904 </div>
905 </div>
906 <div class="sect2">
907 <h3 id="_using_packet_link_mode">3.10. Using Packet Link Mode</h3>
908 <div class="paragraph">
909 <p>All AltusMetrum flight computers that have a radio can
910 communicate with the ground station software for
911 configuration and other operations using the Packet
912 Link mode. This uses radio communication instead of a
913 USB cable. To set this up, the ground station software
914 must be configured to the correct data rate, frequency
915 and callsign.</p>
916 </div>
917 <div class="paragraph">
918 <p>You can monitor Packet Link mode from TeleBT or
919 TeleDongle by watching the LEDs. Each time the device
920 transmits, the red LED will flash. When the link is
921 busy, or when the link is not working, the device will
922 transmit 10 times per second, so the LED will flash
923 rapidly. When the link is working and there is no data
924 to send, the link will flash once per second, and the
925 LED will flash more slowly.</p>
926 </div>
927 </div>
928 </div>
929 </div>
930 <div class="sect1">
931 <h2 id="_telemetrum">4. TeleMetrum</h2>
932 <div class="sectionbody">
933 <div class="imageblock">
934 <div class="content">
935 <img src="telemetrum-v2.0-th.jpg" alt="telemetrum v2.0 th" width="400">
936 </div>
937 <div class="title">Figure 1. TeleMetrum v2 Board</div>
938 </div>
939 <div class="imageblock">
940 <div class="content">
941 <img src="telemetrum-v1.1-thside.jpg" alt="telemetrum v1.1 thside" width="400">
942 </div>
943 <div class="title">Figure 2. TeleMetrum v1 Board</div>
944 </div>
945 <div class="paragraph">
946 <p>TeleMetrum is a 1 inch by 2¾ inch circuit board.  It was designed to
947 fit inside coupler for 29mm air-frame tubing, but using it in a tube that
948 small in diameter may require some creativity in mounting and wiring
949 to succeed!  The presence of an accelerometer means TeleMetrum should
950 be aligned along the flight axis of the airframe, and by default the ¼
951 wave UHF wire antenna should be on the nose-cone end of the board.  The
952 antenna wire is about 7 inches long, and wiring for a power switch and
953 the e-matches for apogee and main ejection charges depart from the
954 fin can end of the board, meaning an ideal “simple” avionics
955 bay for TeleMetrum should have at least 10 inches of interior length.</p>
956 </div>
957 <div class="paragraph">
958 <p>There are two generations of the TeleMetrum design. The
959 major changes after v1 generation are:</p>
960 </div>
961 <div class="ulist">
962 <ul>
963 <li>
964 <p>uBlox GPS chip certified for altitude records</p>
965 </li>
966 <li>
967 <p>Higher power radio (40mW vs 10mW)</p>
968 </li>
969 <li>
970 <p>APRS support</p>
971 </li>
972 </ul>
973 </div>
974 <div class="paragraph">
975 <p>Otherwise, they&#8217;re the same size, with mounting holes and
976 screw terminals in the same position.</p>
977 </div>
978 <div class="sect2">
979 <h3 id="_telemetrum_screw_terminals">4.1. TeleMetrum Screw Terminals</h3>
980 <div class="paragraph">
981 <p>TeleMetrum has six screw terminals on the end of the board
982 opposite the telemetry antenna. Two are for the power
983 switch, and two each for the apogee and main igniter
984 circuits. Using the picture above and starting from the top,
985 the terminals are as follows:</p>
986 </div>
987 <table class="tableblock frame-all grid-all stretch">
988 <caption class="title">Table 4. TeleMetrum Screw Terminals</caption>
989 <colgroup>
990 <col style="width: 13.3333%;">
991 <col style="width: 20%;">
992 <col style="width: 66.6667%;">
993 </colgroup>
994 <thead>
995 <tr>
996 <th class="tableblock halign-left valign-top">Terminal #</th>
997 <th class="tableblock halign-left valign-top">Terminal Name</th>
998 <th class="tableblock halign-left valign-top">Description</th>
999 </tr>
1000 </thead>
1001 <tbody>
1002 <tr>
1003 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1004 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1005 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1006 </tr>
1007 <tr>
1008 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1009 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1010 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1011 </tr>
1012 <tr>
1013 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1014 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1015 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1016 </tr>
1017 <tr>
1018 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1019 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1020 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1021 </tr>
1022 <tr>
1023 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
1024 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1025 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1026 </tr>
1027 <tr>
1028 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
1029 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1030 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1031 </tr>
1032 </tbody>
1033 </table>
1034 </div>
1035 <div class="sect2">
1036 <h3 id="_using_a_separate_pyro_battery_with_telemetrum">4.2. Using a Separate Pyro Battery with TeleMetrum</h3>
1037 <div class="paragraph">
1038 <p>As described above, using an external pyro battery involves
1039 connecting the negative battery terminal to the flight
1040 computer ground, connecting the positive battery terminal to
1041 one of the igniter leads and connecting the other igniter
1042 lead to the per-channel pyro circuit connection.</p>
1043 </div>
1044 <div class="paragraph">
1045 <p>To connect the negative battery terminal to the TeleMetrum
1046 ground, insert a small piece of wire, 24 to 28 gauge
1047 stranded, into the GND hole just above the screw terminal
1048 strip and solder it in place.</p>
1049 </div>
1050 <div class="paragraph">
1051 <p>Connecting the switched positive battery terminal to the pyro
1052 charges must be done separate from TeleMetrum, by soldering
1053 them together or using some other connector. Note that you
1054 must include a switch in the positive lead from the pyro
1055 battery for safety!</p>
1056 </div>
1057 <div class="paragraph">
1058 <p>The other lead from each pyro charge is then inserted into
1059 the appropriate per-pyro channel screw terminal (terminal 4
1060 for the Main charge, terminal 6 for the Apogee charge).</p>
1061 </div>
1062 </div>
1063 <div class="sect2">
1064 <h3 id="_using_an_active_switch_with_telemetrum">4.3. Using an Active Switch with TeleMetrum</h3>
1065 <div class="paragraph">
1066 <p>As explained above, an external active switch requires three
1067 connections, one to the positive battery terminal, one to
1068 the flight computer positive input and one to ground.</p>
1069 </div>
1070 <div class="paragraph">
1071 <p>The positive battery terminal is available on screw terminal
1072 2, the positive flight computer input is on terminal 1. To
1073 hook a lead to ground, solder a piece of wire, 24 to 28
1074 gauge stranded, to the GND hole just above terminal 1.</p>
1075 </div>
1076 </div>
1077 </div>
1078 </div>
1079 <div class="sect1">
1080 <h2 id="_telemini">5. TeleMini</h2>
1081 <div class="sectionbody">
1082 <div class="imageblock">
1083 <div class="content">
1084 <img src="telemini-v3.0-top.jpg" alt="telemini v3.0 top" width="400">
1085 </div>
1086 <div class="title">Figure 3. TeleMini v3 Board</div>
1087 </div>
1088 <div class="imageblock">
1089 <div class="content">
1090 <img src="telemini-v3.0-bottom.jpg" alt="telemini v3.0 bottom" width="400">
1091 </div>
1092 </div>
1093 <div class="paragraph">
1094 <p>TeleMini v3 is 0.5 inches by 1.67 inches.  It was
1095 designed to fit inside an 18mm air-frame tube, but using it in
1096 a tube that small in diameter may require some creativity in
1097 mounting and wiring to succeed!  Since there is no
1098 accelerometer, TeleMini can be mounted in any convenient
1099 orientation.  The default ¼ wave UHF wire antenna attached to
1100 the center of one end of the board is about 7 inches long. Screw
1101 terminals for the power switch are located in the
1102 middle of the board. Screw terminals for the e-matches for
1103 apogee and main ejection charges depart from the other end of
1104 the board, meaning an ideal “simple” avionics bay for TeleMini
1105 should have at least 9 inches of interior length.</p>
1106 </div>
1107 <div class="sect2">
1108 <h3 id="_telemini_v3_screw_terminals">5.1. TeleMini v3 Screw Terminals</h3>
1109 <div class="paragraph">
1110 <p>TeleMini v3 has four screw terminals on the end of the
1111 board opposite the telemetry antenna. Two are for the apogee
1112 and two are for main igniter circuits. Another two
1113 screw terminals are located in the middle of the board
1114 for the power switch.  Using the
1115 picture above and starting from the top for the pyro terminals
1116 and from the left for the power switch terminals, the
1117 connections are as follows:</p>
1118 </div>
1119 <table class="tableblock frame-all grid-all stretch">
1120 <caption class="title">Table 5. TeleMini v3 Screw Terminals</caption>
1121 <colgroup>
1122 <col style="width: 13.3333%;">
1123 <col style="width: 20%;">
1124 <col style="width: 66.6667%;">
1125 </colgroup>
1126 <thead>
1127 <tr>
1128 <th class="tableblock halign-left valign-top">Terminal #</th>
1129 <th class="tableblock halign-left valign-top">Terminal Name</th>
1130 <th class="tableblock halign-left valign-top">Description</th>
1131 </tr>
1132 </thead>
1133 <tbody>
1134 <tr>
1135 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
1136 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1137 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1138 </tr>
1139 <tr>
1140 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
1141 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1142 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1143 </tr>
1144 <tr>
1145 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
1146 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1147 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1148 </tr>
1149 <tr>
1150 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
1151 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1152 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1153 </tr>
1154 <tr>
1155 <td class="tableblock halign-left valign-top"><p class="tableblock">Left</p></td>
1156 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1157 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1158 </tr>
1159 <tr>
1160 <td class="tableblock halign-left valign-top"><p class="tableblock">Right</p></td>
1161 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1162 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1163 </tr>
1164 </tbody>
1165 </table>
1166 </div>
1167 <div class="sect2">
1168 <h3 id="_using_a_separate_pyro_battery_with_telemini_v3">5.2. Using a Separate Pyro Battery with TeleMini v3</h3>
1169 <div class="paragraph">
1170 <p>As described above, using an external pyro battery involves
1171 connecting the negative battery terminal to the flight
1172 computer ground, connecting the switched positive battery
1173 terminal to one of the igniter leads and connecting the other
1174 igniter lead to the per-channel pyro circuit connection.
1175 Because there is no solid ground connection to use on
1176 TeleMini, this is not recommended.</p>
1177 </div>
1178 <div class="paragraph">
1179 <p>The only available ground connection on TeleMini v3 are
1180 the two mounting holes next to the telemetry
1181 antenna. Somehow connect a small piece of wire to one of
1182 those holes and hook it to the negative pyro battery terminal.</p>
1183 </div>
1184 <div class="paragraph">
1185 <p>Connecting the positive battery terminal to the pyro
1186 charges must be done separate from TeleMini v3, by soldering
1187 them together or using some other connector.  Note that you
1188 must include a switch in the pyro battery positive lead for
1189 safety!</p>
1190 </div>
1191 <div class="paragraph">
1192 <p>The other lead from each pyro charge is then inserted into
1193 the appropriate per-pyro channel screw terminal (terminal 3 for the
1194 Main charge, terminal 1 for the Apogee charge).</p>
1195 </div>
1196 </div>
1197 <div class="sect2">
1198 <h3 id="_using_an_active_switch_with_telemini_v3">5.3. Using an Active Switch with TeleMini v3</h3>
1199 <div class="paragraph">
1200 <p>As explained above, an external active switch requires three
1201 connections, one to the positive battery terminal, one to
1202 the flight computer positive input and one to ground. Again,
1203 because TeleMini doesn&#8217;t have any good ground connection,
1204 this is not recommended.</p>
1205 </div>
1206 <div class="paragraph">
1207 <p>The positive battery terminal is available on the Right
1208 power switch wire, the positive flight computer input is on
1209 the left power switch wire. Hook a lead to either of the
1210 mounting holes for a ground connection.</p>
1211 </div>
1212 </div>
1213 <div class="sect2">
1214 <h3 id="_using_packet_link_mode_with_telemini">5.4. Using Packet Link Mode with TeleMini</h3>
1215 <div class="paragraph">
1216 <p>After TeleMini powers up, it will check to see if some
1217 device is attempting to communicate with it using
1218 Packet Link Mode. If so, it will switch to idle mode
1219 and start communicating. To switch to flight mode,
1220 reboot the device either over the radio link or by
1221 powering it off and back on.</p>
1222 </div>
1223 <div class="paragraph">
1224 <p>If no ground station is attempting to communicate
1225 using Packet Link Mode, TeleMini will enter pad mode
1226 and prepare for flight.</p>
1227 </div>
1228 <div class="paragraph">
1229 <p>The sequence of operations to use Packet Link Mode
1230 with TeleMini is:</p>
1231 </div>
1232 <div class="olist arabic">
1233 <ol class="arabic">
1234 <li>
1235 <p>Configure the ground station data rate, frequency
1236 and callsign to match the TeleMini settings.</p>
1237 </li>
1238 <li>
1239 <p>Start Packet Link Mode in the ground station by
1240 selecting the desired operation (Safe Flight Data,
1241 Configure Altimeter, Fire Igniter or Monitor
1242 Idle). Select the TeleBT or TeleDongle device. The
1243 red LED should begin flashing rapidly.</p>
1244 </li>
1245 <li>
1246 <p>Turn on TeleMini. You should see the red LED flash
1247 very rapidly during the initial communication burst,
1248 but it should then slow down when the link is idle.</p>
1249 </li>
1250 </ol>
1251 </div>
1252 <div class="paragraph">
1253 <p>Once TeleMini is in Idle mode, it will stay in that
1254 mode until rebooted. That means you can stop one
1255 Packet Link operation, wait a while and start another
1256 Packet Link operation.</p>
1257 </div>
1258 </div>
1259 <div class="sect2">
1260 <h3 id="_forcing_telemini_radio_parameters_to_known_defaults">5.5. Forcing TeleMini radio parameters to known defaults</h3>
1261 <div class="paragraph">
1262 <p>If you don&#8217;t know what the TeleMini frequency and
1263 callsign settings are, you can temporarily force it
1264 back to the original default values (frequency
1265 434.550MHz, callsign N0CALL) by connecting a wire
1266 between hole 3 and hole 6 on the debug connector. Hole
1267 3 has the square pad around it, hole 6 is the one
1268 nearest the MS5607 baro sensor, which is a rectangular
1269 component with a metal cap that has two holes in it.</p>
1270 </div>
1271 <div class="paragraph">
1272 <p>Once TeleMini has been powered up with this wire
1273 connected, the wire may be removed. The radio
1274 parameters will stay set to these default values until
1275 changed by the user or when the device is rebooted.</p>
1276 </div>
1277 </div>
1278 <div class="sect2">
1279 <h3 id="_telemini_v1">5.6. TeleMini v1</h3>
1280 <div class="paragraph">
1281 <p>TeleMini v1 is the earlier version of this product. It
1282 has a lower-power radio, less storage, no beeper and
1283 soldered-in wires instead of screw terminals for the
1284 power switch.</p>
1285 </div>
1286 <div class="imageblock">
1287 <div class="content">
1288 <img src="telemini-v1-top.jpg" alt="telemini v1 top" width="400">
1289 </div>
1290 <div class="title">Figure 4. TeleMini v1 Board</div>
1291 </div>
1292 </div>
1293 </div>
1294 </div>
1295 <div class="sect1">
1296 <h2 id="_easymini">6. EasyMini</h2>
1297 <div class="sectionbody">
1298 <div class="imageblock">
1299 <div class="content">
1300 <img src="easymini-top.jpg" alt="easymini top" width="400">
1301 </div>
1302 <div class="title">Figure 5. EasyMini Board</div>
1303 </div>
1304 <div class="paragraph">
1305 <p>EasyMini is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1306 designed to fit in a 24mm coupler tube.</p>
1307 </div>
1308 <div class="paragraph">
1309 <p>You usually don&#8217;t need to configure EasyMini at all; it&#8217;s set
1310 up to do dual-deployment with an event at apogee to separate
1311 the airframe and deploy a drogue and another event at 250m
1312 (820ft) to deploy the main. Install EasyMini in your airframe,
1313 hook up a battery, igniters and a power switch and you&#8217;re
1314 ready to fly.</p>
1315 </div>
1316 <div class="sect2">
1317 <h3 id="_easymini_screw_terminals">6.1. EasyMini Screw Terminals</h3>
1318 <div class="paragraph">
1319 <p>EasyMini has two sets of four screw terminals near one end of the
1320 board. Using the picture
1321 above, the top four have connections for the main pyro
1322 circuit and an external battery and the bottom four have
1323 connections for the apogee pyro circuit and the power
1324 switch. Counting from the left, the connections are as follows:</p>
1325 </div>
1326 <table class="tableblock frame-all grid-all stretch">
1327 <caption class="title">Table 6. EasyMini Screw Terminals</caption>
1328 <colgroup>
1329 <col style="width: 13.3333%;">
1330 <col style="width: 20%;">
1331 <col style="width: 66.6667%;">
1332 </colgroup>
1333 <thead>
1334 <tr>
1335 <th class="tableblock halign-left valign-top">Terminal #</th>
1336 <th class="tableblock halign-left valign-top">Terminal Name</th>
1337 <th class="tableblock halign-left valign-top">Description</th>
1338 </tr>
1339 </thead>
1340 <tbody>
1341 <tr>
1342 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1343 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1344 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1345 </tr>
1346 <tr>
1347 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1348 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1349 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1350 </tr>
1351 <tr>
1352 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1353 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1354 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1355 </tr>
1356 <tr>
1357 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1358 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1359 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1360 </tr>
1361 <tr>
1362 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1363 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1364 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1365 </tr>
1366 <tr>
1367 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1368 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1369 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1370 </tr>
1371 <tr>
1372 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1373 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1374 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1375 </tr>
1376 <tr>
1377 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1378 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1379 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1380 </tr>
1381 </tbody>
1382 </table>
1383 </div>
1384 <div class="sect2">
1385 <h3 id="_connecting_a_battery_to_easymini">6.2. Connecting A Battery To EasyMini</h3>
1386 <div class="paragraph">
1387 <p>There are two possible battery connections on
1388 EasyMini. You can use either method; both feed
1389 through the power switch terminals.</p>
1390 </div>
1391 <div class="paragraph">
1392 <p>One battery connection is the standard Altus Metrum
1393 white JST plug. This mates with single-cell Lithium
1394 Polymer batteries sold by Altus Metrum.</p>
1395 </div>
1396 <div class="paragraph">
1397 <p>The other is a pair of screw terminals marked 'Battery
1398 +' and 'Battery -'. Connect a battery from 4 to 12
1399 volts to these terminals, being careful to match polarity.</p>
1400 </div>
1401 </div>
1402 <div class="sect2">
1403 <h3 id="_charging_lithium_batteries">6.3. Charging Lithium Batteries</h3>
1404 <div class="paragraph">
1405 <p>Because EasyMini allows for batteries other than the
1406 standard Altus Metrum Lithium Polymer cells, it cannot
1407 incorporate a battery charger circuit. Therefore, when
1408 using a Litium Polymer cell, you&#8217;ll need an external
1409 charger. These are available from Altus Metrum, or
1410 from Spark Fun.</p>
1411 </div>
1412 </div>
1413 <div class="sect2">
1414 <h3 id="_using_a_separate_pyro_battery_with_easymini">6.4. Using a Separate Pyro Battery with EasyMini</h3>
1415 <div class="paragraph">
1416 <p>As described above, using an external pyro battery involves
1417 connecting the negative battery terminal to the flight
1418 computer ground, connecting the positive battery terminal to
1419 one of the igniter leads and connecting the other igniter
1420 lead to the per-channel pyro circuit connection.</p>
1421 </div>
1422 <div class="paragraph">
1423 <p>To connect the negative pyro battery terminal to EasyMini
1424 ground, connect it to the negative external battery
1425 connection, top terminal 4.</p>
1426 </div>
1427 <div class="paragraph">
1428 <p>Connecting the switched positive battery terminal to the pyro
1429 charges must be done separate from EasyMini, by soldering
1430 them together or using some other connector.  Note that for
1431 safety, you must put a switch between the pyro battery and
1432 the rest of the circuit!</p>
1433 </div>
1434 <div class="paragraph">
1435 <p>The other lead from each pyro charge is then inserted into
1436 the appropriate per-pyro channel screw terminal (top
1437 terminal 1 for the Main charge, bottom terminal 1 for the
1438 Apogee charge).</p>
1439 </div>
1440 </div>
1441 <div class="sect2">
1442 <h3 id="_using_an_active_switch_with_easymini">6.5. Using an Active Switch with EasyMini</h3>
1443 <div class="paragraph">
1444 <p>As explained above, an external active switch requires three
1445 connections, one to the positive battery terminal, one to
1446 the flight computer positive input and one to ground. Use
1447 the negative external battery connection, top terminal 4 for
1448 ground.</p>
1449 </div>
1450 <div class="paragraph">
1451 <p>The positive battery terminal is available on bottom
1452 terminal 4, the positive flight computer input is on the
1453 bottom terminal 3.</p>
1454 </div>
1455 </div>
1456 </div>
1457 </div>
1458 <div class="sect1">
1459 <h2 id="_telemega">7. TeleMega</h2>
1460 <div class="sectionbody">
1461 <div class="imageblock">
1462 <div class="content">
1463 <img src="telemega-v1.0-top.jpg" alt="telemega v1.0 top" width="400">
1464 </div>
1465 <div class="title">Figure 6. TeleMega Board</div>
1466 </div>
1467 <div class="paragraph">
1468 <p>TeleMega is a 1¼ inch by 3¼ inch circuit board. It was
1469 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1470 TeleMega has an accelerometer and so it must be mounted so that
1471 the board is aligned with the flight axis. It can be mounted
1472 either antenna up or down.</p>
1473 </div>
1474 <div class="paragraph">
1475 <p>TeleMega v2.0 has a few minor changes from v1.0:</p>
1476 </div>
1477 <div class="ulist">
1478 <ul>
1479 <li>
1480 <p>Companion connector matches EasyMega functions</p>
1481 </li>
1482 <li>
1483 <p>Serial port connector replaced with servo connector with
1484 support for up to 4 PWM channels.</p>
1485 </li>
1486 <li>
1487 <p>Radio switched from cc1120 to cc1200.</p>
1488 </li>
1489 </ul>
1490 </div>
1491 <div class="paragraph">
1492 <p>None of these affect operation using the stock firmware, but
1493 they do mean that the device needs different firmware to
1494 operate correctly, so make sure you load the right firmware
1495 when reflashing the device.</p>
1496 </div>
1497 <div class="sect2">
1498 <h3 id="_telemega_screw_terminals">7.1. TeleMega Screw Terminals</h3>
1499 <div class="paragraph">
1500 <p>TeleMega has two sets of nine screw terminals on the end of
1501 the board opposite the telemetry antenna. They are as follows:</p>
1502 </div>
1503 <table class="tableblock frame-all grid-all stretch">
1504 <caption class="title">Table 7. TeleMega Screw Terminals</caption>
1505 <colgroup>
1506 <col style="width: 13.3333%;">
1507 <col style="width: 20%;">
1508 <col style="width: 66.6667%;">
1509 </colgroup>
1510 <thead>
1511 <tr>
1512 <th class="tableblock halign-left valign-top">Terminal #</th>
1513 <th class="tableblock halign-left valign-top">Terminal Name</th>
1514 <th class="tableblock halign-left valign-top">Description</th>
1515 </tr>
1516 </thead>
1517 <tbody>
1518 <tr>
1519 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1520 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1521 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1522 </tr>
1523 <tr>
1524 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1525 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1526 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1527 </tr>
1528 <tr>
1529 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1530 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1531 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1532 </tr>
1533 <tr>
1534 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1535 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1536 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1537 </tr>
1538 <tr>
1539 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1540 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1541 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1542 </tr>
1543 <tr>
1544 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1545 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1546 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1547 </tr>
1548 <tr>
1549 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1550 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1551 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1552 </tr>
1553 <tr>
1554 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1555 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1556 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1557 </tr>
1558 <tr>
1559 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1560 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1561 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1562 </tr>
1563 <tr>
1564 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1565 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1566 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1567 </tr>
1568 <tr>
1569 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1570 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1571 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1572 </tr>
1573 <tr>
1574 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1575 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1576 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1577 </tr>
1578 <tr>
1579 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1580 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1581 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1582 </tr>
1583 <tr>
1584 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1585 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1586 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1587 </tr>
1588 <tr>
1589 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1590 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1591 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1592 </tr>
1593 <tr>
1594 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1595 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1596 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1597 </tr>
1598 <tr>
1599 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1600 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1601 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1602 </tr>
1603 <tr>
1604 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1605 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1606 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1607 </tr>
1608 </tbody>
1609 </table>
1610 </div>
1611 <div class="sect2">
1612 <h3 id="_using_a_separate_pyro_battery_with_telemega">7.2. Using a Separate Pyro Battery with TeleMega</h3>
1613 <div class="paragraph">
1614 <p>TeleMega provides explicit support for an external pyro
1615 battery. All that is required is to remove the jumper
1616 between the lipo terminal (Bottom 3) and the pyro terminal
1617 (Bottom 2). Then hook the negative pyro battery terminal to
1618 ground (Bottom 1) and the switched positive pyro battery to
1619 the pyro battery input (Bottom 2). Note that you must include
1620 a switch between the pyro battery and the board for safety,
1621 as the on-board power switch circuit only supports the primary
1622 battery!  You can then use the existing pyro screw
1623 terminals to hook up all of the pyro charges.</p>
1624 </div>
1625 </div>
1626 <div class="sect2">
1627 <h3 id="_using_only_one_battery_with_telemega">7.3. Using Only One Battery With TeleMega</h3>
1628 <div class="paragraph">
1629 <p>Because TeleMega has built-in support for a separate pyro
1630 battery, if you want to fly with just one battery running
1631 both the computer and firing the charges, you need to
1632 connect the flight computer battery to the pyro
1633 circuit. TeleMega has two screw terminals for this—hook a
1634 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1635 (Bottom 2).</p>
1636 </div>
1637 </div>
1638 <div class="sect2">
1639 <h3 id="_using_an_active_switch_with_telemega">7.4. Using an Active Switch with TeleMega</h3>
1640 <div class="paragraph">
1641 <p>As explained above, an external active switch requires three
1642 connections, one to the positive battery terminal, one to
1643 the flight computer positive input and one to ground.</p>
1644 </div>
1645 <div class="paragraph">
1646 <p>The positive battery terminal is available on Top terminal
1647 1, the positive flight computer input is on Top terminal
1648 2. Ground is on Top terminal 3.</p>
1649 </div>
1650 </div>
1651 </div>
1652 </div>
1653 <div class="sect1">
1654 <h2 id="_easymega">8. EasyMega</h2>
1655 <div class="sectionbody">
1656 <div class="imageblock">
1657 <div class="content">
1658 <img src="easymega-v1.0-top.jpg" alt="easymega v1.0 top" width="400">
1659 </div>
1660 <div class="title">Figure 7. EasyMega Board</div>
1661 </div>
1662 <div class="paragraph">
1663 <p>EasyMega is a 1¼ inch by 2¼ inch circuit board. It was
1664 designed to easily fit in a 38mm coupler. Like TeleMetrum,
1665 EasyMega has an accelerometer and so it must be mounted so that
1666 the board is aligned with the flight axis. It can be mounted
1667 either antenna up or down.</p>
1668 </div>
1669 <div class="sect2">
1670 <h3 id="_easymega_screw_terminals">8.1. EasyMega Screw Terminals</h3>
1671 <div class="paragraph">
1672 <p>EasyMega has two sets of nine screw terminals on the end of
1673 the board opposite the telemetry antenna. They are as follows:</p>
1674 </div>
1675 <table class="tableblock frame-all grid-all stretch">
1676 <caption class="title">Table 8. EasyMega Screw Terminals</caption>
1677 <colgroup>
1678 <col style="width: 13.3333%;">
1679 <col style="width: 20%;">
1680 <col style="width: 66.6667%;">
1681 </colgroup>
1682 <thead>
1683 <tr>
1684 <th class="tableblock halign-left valign-top">Terminal #</th>
1685 <th class="tableblock halign-left valign-top">Terminal Name</th>
1686 <th class="tableblock halign-left valign-top">Description</th>
1687 </tr>
1688 </thead>
1689 <tbody>
1690 <tr>
1691 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1692 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1693 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1694 </tr>
1695 <tr>
1696 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1697 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1698 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1699 </tr>
1700 <tr>
1701 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1702 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1703 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for use with external active switch</p></td>
1704 </tr>
1705 <tr>
1706 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1707 <td class="tableblock halign-left valign-top"><p class="tableblock">Main -</p></td>
1708 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel connection to pyro circuit</p></td>
1709 </tr>
1710 <tr>
1711 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 5</p></td>
1712 <td class="tableblock halign-left valign-top"><p class="tableblock">Main +</p></td>
1713 <td class="tableblock halign-left valign-top"><p class="tableblock">Main pyro channel common connection to battery +</p></td>
1714 </tr>
1715 <tr>
1716 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 6</p></td>
1717 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee -</p></td>
1718 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel connection to pyro circuit</p></td>
1719 </tr>
1720 <tr>
1721 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 7</p></td>
1722 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee +</p></td>
1723 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro channel common connection to battery +</p></td>
1724 </tr>
1725 <tr>
1726 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 8</p></td>
1727 <td class="tableblock halign-left valign-top"><p class="tableblock">D -</p></td>
1728 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel connection to pyro circuit</p></td>
1729 </tr>
1730 <tr>
1731 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 9</p></td>
1732 <td class="tableblock halign-left valign-top"><p class="tableblock">D +</p></td>
1733 <td class="tableblock halign-left valign-top"><p class="tableblock">D pyro channel common connection to battery +</p></td>
1734 </tr>
1735 <tr>
1736 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1737 <td class="tableblock halign-left valign-top"><p class="tableblock">GND</p></td>
1738 <td class="tableblock halign-left valign-top"><p class="tableblock">Ground connection for negative pyro battery terminal</p></td>
1739 </tr>
1740 <tr>
1741 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1742 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro</p></td>
1743 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive pyro battery terminal</p></td>
1744 </tr>
1745 <tr>
1746 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1747 <td class="tableblock halign-left valign-top"><p class="tableblock">Lipo</p></td>
1748 <td class="tableblock halign-left valign-top"><p class="tableblock">Power switch output. Use to connect main battery to pyro battery input</p></td>
1749 </tr>
1750 <tr>
1751 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1752 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1753 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel connection to pyro circuit</p></td>
1754 </tr>
1755 <tr>
1756 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 5</p></td>
1757 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1758 <td class="tableblock halign-left valign-top"><p class="tableblock">A pyro channel common connection to battery +</p></td>
1759 </tr>
1760 <tr>
1761 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 6</p></td>
1762 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1763 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel connection to pyro circuit</p></td>
1764 </tr>
1765 <tr>
1766 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 7</p></td>
1767 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1768 <td class="tableblock halign-left valign-top"><p class="tableblock">B pyro channel common connection to battery +</p></td>
1769 </tr>
1770 <tr>
1771 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 8</p></td>
1772 <td class="tableblock halign-left valign-top"><p class="tableblock">C -</p></td>
1773 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel connection to pyro circuit</p></td>
1774 </tr>
1775 <tr>
1776 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 9</p></td>
1777 <td class="tableblock halign-left valign-top"><p class="tableblock">C +</p></td>
1778 <td class="tableblock halign-left valign-top"><p class="tableblock">C pyro channel common connection to battery +</p></td>
1779 </tr>
1780 </tbody>
1781 </table>
1782 </div>
1783 <div class="sect2">
1784 <h3 id="_using_a_separate_pyro_battery_with_easymega">8.2. Using a Separate Pyro Battery with EasyMega</h3>
1785 <div class="paragraph">
1786 <p>EasyMega provides explicit support for an external pyro
1787 battery. All that is required is to remove the jumper
1788 between the lipo terminal (Bottom 3) and the pyro terminal
1789 (Bottom 2). Then hook the negative pyro battery terminal to
1790 ground (Bottom 1) and the switched positive pyro battery to
1791 the pyro battery input (Bottom 2). Note that you must include
1792 a switch between the pyro battery and the board for safety,
1793 as the on-board power switch circuit only supports the primary
1794 battery!  You can then use the existing pyro screw
1795 terminals to hook up all of the pyro charges.</p>
1796 </div>
1797 </div>
1798 <div class="sect2">
1799 <h3 id="_using_only_one_battery_with_easymega">8.3. Using Only One Battery With EasyMega</h3>
1800 <div class="paragraph">
1801 <p>Because EasyMega has built-in support for a separate pyro
1802 battery, if you want to fly with just one battery running
1803 both the computer and firing the charges, you need to
1804 connect the flight computer battery to the pyro
1805 circuit. EasyMega has two screw terminals for this—hook a
1806 wire from the Lipo terminal (Bottom 3) to the Pyro terminal
1807 (Bottom 2).</p>
1808 </div>
1809 </div>
1810 <div class="sect2">
1811 <h3 id="_using_an_active_switch_with_easymega">8.4. Using an Active Switch with EasyMega</h3>
1812 <div class="paragraph">
1813 <p>As explained above, an external active switch requires three
1814 connections, one to the positive battery terminal, one to
1815 the flight computer positive input and one to ground.</p>
1816 </div>
1817 <div class="paragraph">
1818 <p>The positive battery terminal is available on Top terminal
1819 1, the positive flight computer input is on Top terminal
1820 2. Ground is on Top terminal 3.</p>
1821 </div>
1822 </div>
1823 </div>
1824 </div>
1825 <div class="sect1">
1826 <h2 id="_easytimer">9. EasyTimer</h2>
1827 <div class="sectionbody">
1828 <div class="imageblock">
1829 <div class="content">
1830 <img src="easytimer.jpg" alt="easytimer" width="400">
1831 </div>
1832 <div class="title">Figure 8. EasyTimer Board</div>
1833 </div>
1834 <div class="paragraph">
1835 <p>EasyTimer is built on a 0.8 inch by 1½ inch circuit board. It&#8217;s
1836 designed to fit in a 24mm coupler tube.</p>
1837 </div>
1838 <div class="paragraph">
1839 <p>EasyTimer is designed to control events during ascent. It has
1840 an accelerometer and gyroscope that can measure acceleration
1841 and rotation and compute speed and tilt angle. EasyTimer has
1842 two pyro channels which can be configured to fire at various
1843 points during flight. Because EasyTimer has no barometric
1844 sensor, it cannot be used to fire recovery charges at apogee
1845 or during descent. EasyTimer is configured using the AltosUI
1846 application which is available for Linux, Mac OS X and Windows.</p>
1847 </div>
1848 <div class="sect2">
1849 <h3 id="_easytimer_screw_terminals">9.1. EasyTimer Screw Terminals</h3>
1850 <div class="paragraph">
1851 <p>EasyTimer has two sets of four screw terminals near
1852 one end of the board. Using the picture above, the top
1853 four have connections for pyro channel B and an
1854 external battery and the bottom four have connections
1855 for pyro circuit A and the power switch. Counting from
1856 the left, the connections are as follows:</p>
1857 </div>
1858 <table class="tableblock frame-all grid-all stretch">
1859 <caption class="title">Table 9. EasyTimer Screw Terminals</caption>
1860 <colgroup>
1861 <col style="width: 13.3333%;">
1862 <col style="width: 20%;">
1863 <col style="width: 66.6667%;">
1864 </colgroup>
1865 <thead>
1866 <tr>
1867 <th class="tableblock halign-left valign-top">Terminal #</th>
1868 <th class="tableblock halign-left valign-top">Terminal Name</th>
1869 <th class="tableblock halign-left valign-top">Description</th>
1870 </tr>
1871 </thead>
1872 <tbody>
1873 <tr>
1874 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 1</p></td>
1875 <td class="tableblock halign-left valign-top"><p class="tableblock">B -</p></td>
1876 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B connection to pyro circuit</p></td>
1877 </tr>
1878 <tr>
1879 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 2</p></td>
1880 <td class="tableblock halign-left valign-top"><p class="tableblock">B +</p></td>
1881 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel B common connection to battery +</p></td>
1882 </tr>
1883 <tr>
1884 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 3</p></td>
1885 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery +</p></td>
1886 <td class="tableblock halign-left valign-top"><p class="tableblock">Positive external battery terminal</p></td>
1887 </tr>
1888 <tr>
1889 <td class="tableblock halign-left valign-top"><p class="tableblock">Top 4</p></td>
1890 <td class="tableblock halign-left valign-top"><p class="tableblock">Battery -</p></td>
1891 <td class="tableblock halign-left valign-top"><p class="tableblock">Negative external battery terminal</p></td>
1892 </tr>
1893 <tr>
1894 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 1</p></td>
1895 <td class="tableblock halign-left valign-top"><p class="tableblock">A -</p></td>
1896 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A connection to pyro circuit</p></td>
1897 </tr>
1898 <tr>
1899 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 2</p></td>
1900 <td class="tableblock halign-left valign-top"><p class="tableblock">A +</p></td>
1901 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro channel A common connection to battery +</p></td>
1902 </tr>
1903 <tr>
1904 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 3</p></td>
1905 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Output</p></td>
1906 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to flight computer</p></td>
1907 </tr>
1908 <tr>
1909 <td class="tableblock halign-left valign-top"><p class="tableblock">Bottom 4</p></td>
1910 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch Input</p></td>
1911 <td class="tableblock halign-left valign-top"><p class="tableblock">Switch connection to positive battery terminal</p></td>
1912 </tr>
1913 </tbody>
1914 </table>
1915 </div>
1916 <div class="sect2">
1917 <h3 id="_connecting_a_battery_to_easytimer">9.2. Connecting A Battery To EasyTimer</h3>
1918 <div class="paragraph">
1919 <p>There are two possible battery connections on
1920 EasyTimer. You can use either method; both feed
1921 through the power switch terminals.</p>
1922 </div>
1923 <div class="paragraph">
1924 <p>One battery connection is the standard Altus Metrum
1925 white JST plug. This mates with single-cell Lithium
1926 Polymer batteries sold by Altus Metrum.</p>
1927 </div>
1928 <div class="paragraph">
1929 <p>The other is a pair of screw terminals marked 'Battery
1930 +' and 'Battery -'. Connect a battery from 4 to 12
1931 volts to these terminals, being careful to match polarity.</p>
1932 </div>
1933 </div>
1934 <div class="sect2">
1935 <h3 id="_charging_lithium_batteries_2">9.3. Charging Lithium Batteries</h3>
1936 <div class="paragraph">
1937 <p>Because EasyTimer allows for batteries other than the
1938 standard Altus Metrum Lithium Polymer cells, it cannot
1939 incorporate a battery charger circuit. Therefore, when
1940 using a Litium Polymer cell, you&#8217;ll need an external
1941 charger. These are available from Altus Metrum, or
1942 from Spark Fun.</p>
1943 </div>
1944 </div>
1945 <div class="sect2">
1946 <h3 id="_using_a_separate_pyro_battery_with_easytimer">9.4. Using a Separate Pyro Battery with EasyTimer</h3>
1947 <div class="paragraph">
1948 <p>As described above, using an external pyro battery involves
1949 connecting the negative battery terminal to the flight
1950 computer ground, connecting the positive battery terminal to
1951 one of the igniter leads and connecting the other igniter
1952 lead to the per-channel pyro circuit connection.</p>
1953 </div>
1954 <div class="paragraph">
1955 <p>To connect the negative pyro battery terminal to EasyTimer
1956 ground, connect it to the negative external battery
1957 connection, top terminal 4.</p>
1958 </div>
1959 <div class="paragraph">
1960 <p>Connecting the switched positive battery terminal to the pyro
1961 charges must be done separate from EasyTimer, by soldering
1962 them together or using some other connector.  Note that for
1963 safety, you must put a switch between the pyro battery and
1964 the rest of the circuit!</p>
1965 </div>
1966 <div class="paragraph">
1967 <p>The other lead from each pyro charge is then inserted into
1968 the appropriate per-pyro channel screw terminal (top
1969 terminal 1 for pyro channel A charge, bottom terminal 1 for
1970 pyro channel B charge).</p>
1971 </div>
1972 </div>
1973 <div class="sect2">
1974 <h3 id="_using_an_active_switch_with_easytimer">9.5. Using an Active Switch with EasyTimer</h3>
1975 <div class="paragraph">
1976 <p>As explained above, an external active switch requires three
1977 connections, one to the positive battery terminal, one to
1978 the flight computer positive input and one to ground. Use
1979 the negative external battery connection, top terminal 4 for
1980 ground.</p>
1981 </div>
1982 <div class="paragraph">
1983 <p>The positive battery terminal is available on bottom
1984 terminal 4, the positive flight computer input is on the
1985 bottom terminal 3.</p>
1986 </div>
1987 </div>
1988 </div>
1989 </div>
1990 <div class="sect1">
1991 <h2 id="_installation">10. Installation</h2>
1992 <div class="sectionbody">
1993 <div class="paragraph">
1994 <p>A typical installation involves attaching
1995 only a suitable battery, a single pole switch for
1996 power on/off, and two pairs of wires connecting e-matches for the
1997 apogee and main ejection charges.  All Altus Metrum products are
1998 designed for use with single-cell batteries with 3.7 volts
1999 nominal.
2000 EasyMini may also be used with other
2001 batteries as long as they supply between 4 and 12 volts.</p>
2002 </div>
2003 <div class="paragraph">
2004 <p>The battery connectors are a standard 2-pin JST connector; you
2005 can purchase suitable batteries from the any vendor selling
2006 Altus Metrum products. These batteries are
2007 single-cell Lithium Polymer batteries that nominally provide 3.7
2008 volts.  Other vendors sell similar batteries for RC aircraft
2009 using mating connectors, however the polarity for those is
2010 generally reversed from the batteries used by Altus Metrum
2011 products. In particular, the Tenergy batteries supplied for use
2012 in Featherweight flight computers are not compatible with Altus
2013 Metrum flight computers or battery chargers.</p>
2014 </div>
2015 <div class="admonitionblock warning">
2016 <table>
2017 <tr>
2018 <td class="icon">
2019 <img src="./images/icons/warning.svg" alt="Warning">
2020 </td>
2021 <td class="content">
2022 Check polarity and voltage before connecting any battery not
2023 purchased from Altus Metrum.
2024 </td>
2025 </tr>
2026 </table>
2027 </div>
2028 <div class="admonitionblock warning">
2029 <table>
2030 <tr>
2031 <td class="icon">
2032 <img src="./images/icons/warning.svg" alt="Warning">
2033 </td>
2034 <td class="content">
2035 Spark Fun sells batteries that have a matching connector with
2036 the correct polarity. However, these batteries include an
2037 integrated current limiting circuit. That circuit will cause
2038 the battery to shut down when firing the igniter circuit. Do
2039 not use these batteries unless you remove the current limiting
2040 circuit.
2041 </td>
2042 </tr>
2043 </table>
2044 </div>
2045 <div class="paragraph">
2046 <p>By default, we use the unregulated output of the battery
2047 directly to fire ejection charges.  This works marvelously
2048 with standard low-current e-matches like the J-Tek from MJG
2049 Technologies, and with Quest Q2G2 igniters.  However, if you
2050 want or need to use a separate pyro battery, check out
2051 <a href="#_using_a_separate_pyro_battery">Using a Separate Pyro Battery</a> for instructions on how to wire
2052 that up. The altimeters are designed to work with an external
2053 pyro battery of no more than 15 volts.</p>
2054 </div>
2055 <div class="paragraph">
2056 <p>Ejection charges are wired directly to the screw terminal block
2057 at the aft end of the altimeter.  You&#8217;ll need a very small straight
2058 blade screwdriver for these screws, such as you might find in a
2059 jeweler&#8217;s screwdriver set.</p>
2060 </div>
2061 <div class="paragraph">
2062 <p>Except for TeleMini v1.0, the flight computers also use the
2063 screw terminal block for the power switch leads. On TeleMini v1.0,
2064 the power switch leads are soldered directly to the board and
2065 can be connected directly to a switch.</p>
2066 </div>
2067 <div class="paragraph">
2068 <p>For most air-frames, the integrated antennas are more than
2069 adequate.   However, if you are installing in a carbon-fiber or
2070 metal electronics bay which is opaque to RF signals, you may need to
2071 use off-board external antennas instead.  In this case, you can
2072 replace the stock UHF antenna wire with an edge-launched SMA connector,
2073 and, on TeleMetrum v1, you can unplug the integrated GPS
2074 antenna and select an appropriate off-board GPS antenna with
2075 cable terminating in a U.FL connector.</p>
2076 </div>
2077 </div>
2078 </div>
2079 <div class="sect1">
2080 <h2 id="_using_altus_metrum_products">11. Using Altus Metrum Products</h2>
2081 <div class="sectionbody">
2082 <div class="sect2">
2083 <h3 id="_being_legal">11.1. Being Legal</h3>
2084 <div class="paragraph">
2085 <p>In the US, you need an
2086 <a href="http://www.altusmetrum.org/Radio/">amateur radio license</a>
2087 or other authorization to legally operate the radio
2088 transmitters that are part of our products.</p>
2089 </div>
2090 </div>
2091 <div class="sect2">
2092 <h3 id="_in_the_rocket">11.2. In the Rocket</h3>
2093 <div class="paragraph">
2094 <p>In the rocket itself, you just need a flight computer
2095 and a single-cell, 3.7 volt nominal Li-Po rechargeable
2096 battery.
2097 An 850mAh battery weighs less than a 9V
2098 alkaline battery, and will run a TeleMetrum, TeleMega,
2099 EasyMega or EasyTimer for hours.
2100 A 110mAh battery weighs less
2101 than a triple A battery and is a good choice for use
2102 with
2103 TeleMini or
2104 EasyMini.</p>
2105 </div>
2106 <div class="paragraph">
2107 <p>By default, we ship TeleMini, TeleMetrum and TeleMega
2108 flight computers with a simple wire antenna.  If your
2109 electronics bay or the air-frame it resides within is
2110 made of carbon fiber, which is opaque to RF signals,
2111 you may prefer to install an SMA connector so that you
2112 can run a coaxial cable to an antenna mounted
2113 elsewhere in the rocket.  However, note that the GPS
2114 antenna is fixed on all current products, so you
2115 really want to install the flight computer in a bay
2116 made of RF-transparent materials if at all possible.</p>
2117 </div>
2118 </div>
2119 <div class="sect2">
2120 <h3 id="_on_the_ground">11.3. On the Ground</h3>
2121 <div class="paragraph">
2122 <p>To receive the data stream from the rocket, you need
2123 an antenna and short feed-line connected to one of our
2124 <a href="http://www.altusmetrum.org/TeleDongle/">TeleDongle</a>
2125 units.  If possible, use an SMA to BNC adapter instead
2126 of feedline between the antenna feedpoint and
2127 TeleDongle, as this will give you the best
2128 performance.  The TeleDongle in turn plugs directly
2129 into the USB port on a notebook computer.  Because
2130 TeleDongle looks like a simple serial port, your
2131 computer does not require special device
2132 drivers&#8230;&#8203; just plug it in.</p>
2133 </div>
2134 <div class="paragraph">
2135 <p>The GUI tool, AltosUI, is written in Java and runs
2136 across Linux, Mac OS and Windows. There&#8217;s also a suite
2137 of C tools for Linux which can perform most of the
2138 same tasks.</p>
2139 </div>
2140 <div class="paragraph">
2141 <p>Alternatively, a TeleBT attached with an SMA to BNC
2142 adapter at the feed point of a hand-held yagi used in
2143 conjunction with an Android device running AltosDroid
2144 makes an outstanding ground station.</p>
2145 </div>
2146 <div class="paragraph">
2147 <p>After the flight,
2148 you can use the radio link to
2149 extract the more detailed data logged in either
2150 TeleMetrum or TeleMini devices, or
2151 you can use a
2152 USB cable to plug into the flight computer board directly.
2153 A USB cable is also how you
2154 charge the Li-Po battery, so you&#8217;ll want one of those
2155 anyway. The same cable used by lots of digital
2156 cameras and other modern electronic stuff will work
2157 fine.</p>
2158 </div>
2159 <div class="paragraph">
2160 <p>If your rocket lands out of sight, you may enjoy
2161 having a hand-held GPS receiver, so that you can put
2162 in a way-point for the last reported rocket position
2163 before touch-down.  This makes looking for your rocket
2164 a lot like Geo-Caching&#8230;&#8203; just go to the way-point and
2165 look around starting from there.  AltosDroid on an
2166 Android device with GPS receiver works great for this,
2167 too!</p>
2168 </div>
2169 <div class="paragraph">
2170 <p>You may also enjoy having a ham radio “HT” that covers
2171 the 70cm band&#8230;&#8203; you can use that with your antenna to
2172 direction-find the rocket on the ground the same way
2173 you can use a Walston or Beeline tracker.  This can be
2174 handy if the rocket is hiding in sage brush or a tree,
2175 or if the last GPS position doesn&#8217;t get you close
2176 enough because the rocket dropped into a canyon, or
2177 the wind is blowing it across a dry lake bed, or
2178 something like that&#8230;&#8203;  Keith currently uses a Yaesu
2179 FT1D, Bdale has a Yaesu VX-7R, which is a nicer radio
2180 in most ways but doesn&#8217;t support APRS.</p>
2181 </div>
2182 <div class="paragraph">
2183 <p>So, to recap, on the ground the hardware you&#8217;ll need includes:</p>
2184 </div>
2185 <div class="olist arabic">
2186 <ol class="arabic">
2187 <li>
2188 <p>an antenna and feed-line or adapter</p>
2189 </li>
2190 <li>
2191 <p>a TeleDongle</p>
2192 </li>
2193 <li>
2194 <p>a notebook computer</p>
2195 </li>
2196 <li>
2197 <p>optionally, a hand-held GPS receiver</p>
2198 </li>
2199 <li>
2200 <p>optionally, an HT or receiver covering 435 MHz</p>
2201 </li>
2202 </ol>
2203 </div>
2204 <div class="paragraph">
2205 <p>The best hand-held commercial directional antennas we&#8217;ve found for radio
2206 direction finding rockets are from
2207 <a href="http://www.arrowantennas.com/">Arrow Antennas</a>.</p>
2208 </div>
2209 <div class="paragraph">
2210 <p>The 440-3 and 440-5 are both good choices for finding
2211 a TeleMetrum- or TeleMini- equipped rocket when used
2212 with a suitable 70cm HT.  TeleDongle and an SMA to BNC
2213 adapter fit perfectly between the driven element and
2214 reflector of Arrow antennas.</p>
2215 </div>
2216 </div>
2217 <div class="sect2">
2218 <h3 id="_data_analysis">11.4. Data Analysis</h3>
2219 <div class="paragraph">
2220 <p>Our software makes it easy to log the data from each
2221 flight, both the telemetry received during the flight
2222 itself, and the more complete data log recorded in the
2223 flash memory on the altimeter board.  Once this data
2224 is on your computer, our post-flight tools make it
2225 easy to quickly get to the numbers everyone wants,
2226 like apogee altitude, max acceleration, and max
2227 velocity.  You can also generate and view a standard
2228 set of plots showing the altitude, acceleration, and
2229 velocity of the rocket during flight.  And you can
2230 even export a flight log in a format usable with Google
2231 Maps and Google Earth for visualizing the flight path
2232 in two or three dimensions!</p>
2233 </div>
2234 <div class="paragraph">
2235 <p>Our ultimate goal is to emit a set of files for each
2236 flight that can be published as a web page per flight,
2237 or just viewed on your local disk with a web browser.</p>
2238 </div>
2239 </div>
2240 <div class="sect2">
2241 <h3 id="_future_plans">11.5. Future Plans</h3>
2242 <div class="paragraph">
2243 <p>We have designed and prototyped several “companion
2244 boards” that can attach to the companion connector on
2245 TeleMetrum, TeleMega and EasyMega flight computers to
2246 collect more data, provide more pyro channels, and so
2247 forth.  We do not yet know if or when any of these
2248 boards will be produced in enough quantity to sell.
2249 If you have specific interests for data collection or
2250 control of events in your rockets beyond the
2251 capabilities of our existing productions, please let
2252 us know!</p>
2253 </div>
2254 <div class="paragraph">
2255 <p>Because all of our work is open, both the hardware
2256 designs and the software, if you have some great idea
2257 for an addition to the current Altus Metrum family,
2258 feel free to dive in and help!  Or let us know what
2259 you&#8217;d like to see that we aren&#8217;t already working on,
2260 and maybe we&#8217;ll get excited about it too&#8230;&#8203;</p>
2261 </div>
2262 <div class="paragraph">
2263 <p>Watch our <a href="http://altusmetrum.org/">web site</a> for
2264 more news and information as our family of products
2265 evolves!</p>
2266 </div>
2267 </div>
2268 </div>
2269 </div>
2270 <div class="sect1">
2271 <h2 id="_altosui">12. AltosUI</h2>
2272 <div class="sectionbody">
2273 <div class="imageblock">
2274 <div class="content">
2275 <img src="altosui.png" alt="altosui" width="450">
2276 </div>
2277 <div class="title">Figure 9. AltosUI Main Window</div>
2278 </div>
2279 <div class="paragraph">
2280 <p>The AltosUI program provides a graphical user interface for
2281 interacting with the Altus Metrum product family. AltosUI can
2282 monitor telemetry data, configure devices and many other
2283 tasks. The primary interface window provides a selection of
2284 buttons, one for each major activity in the system.  This
2285 chapter is split into sections, each of which documents one of
2286 the tasks provided from the top-level toolbar.</p>
2287 </div>
2288 <div class="sect2">
2289 <h3 id="_monitor_flight">12.1. Monitor Flight</h3>
2290 <div class="paragraph">
2291 <p>Selecting this item brings up a dialog box listing all
2292 of the connected TeleDongle devices. When you choose
2293 one of these, AltosUI will create a window to display
2294 telemetry data as received by the selected TeleDongle
2295 device.</p>
2296 </div>
2297 <div class="imageblock">
2298 <div class="content">
2299 <img src="device-selection.png" alt="device selection" width="300">
2300 </div>
2301 <div class="title">Figure 10. Device Selection Dialog</div>
2302 </div>
2303 <div class="paragraph">
2304 <p>All telemetry data received are automatically recorded
2305 in suitable log files. The name of the files includes
2306 the current date and rocket serial and flight numbers.</p>
2307 </div>
2308 <div class="paragraph">
2309 <p>The radio frequency being monitored by the TeleDongle
2310 device is displayed at the top of the window. You can
2311 configure the frequency by clicking on the frequency
2312 box and selecting the desired frequency. AltosUI
2313 remembers the last frequency selected for each
2314 TeleDongle and selects that automatically the next
2315 time you use that device.</p>
2316 </div>
2317 <div class="paragraph">
2318 <p>Below the TeleDongle frequency selector, the window
2319 contains a few significant pieces of information about
2320 the altimeter providing the telemetry data stream:</p>
2321 </div>
2322 <div class="ulist">
2323 <ul>
2324 <li>
2325 <p>The configured call-sign</p>
2326 </li>
2327 <li>
2328 <p>The device serial number</p>
2329 </li>
2330 <li>
2331 <p>The flight number. Each altimeter remembers how
2332 many times it has flown.</p>
2333 </li>
2334 <li>
2335 <p>The rocket flight state. Each flight passes through
2336 several states including Pad, Boost, Fast, Coast,
2337 Drogue, Main and Landed.</p>
2338 </li>
2339 <li>
2340 <p>The Received Signal Strength Indicator value. This
2341 lets you know how strong a signal TeleDongle is
2342 receiving. At the default data rate, 38400 bps, in
2343 bench testing, the radio inside TeleDongle v0.2
2344 operates down to about -106dBm, while the v3 radio
2345 works down to about -111dBm.  Weaker signals, or an
2346 environment with radio noise may cause the data to
2347 not be received. The packet link uses error
2348 detection and correction techniques which prevent
2349 incorrect data from being reported.</p>
2350 </li>
2351 <li>
2352 <p>The age of the displayed data, in seconds since the
2353 last successfully received telemetry packet.  In
2354 normal operation this will stay in the low single
2355 digits.  If the number starts counting up, then you
2356 are no longer receiving data over the radio link
2357 from the flight computer.</p>
2358 </li>
2359 </ul>
2360 </div>
2361 <div class="paragraph">
2362 <p>Finally, the largest portion of the window contains a
2363 set of tabs, each of which contain some information
2364 about the rocket.  They&#8217;re arranged in 'flight order'
2365 so that as the flight progresses, the selected tab
2366 automatically switches to display data relevant to the
2367 current state of the flight. You can select other tabs
2368 at any time. The final 'table' tab displays all of the
2369 raw telemetry values in one place in a
2370 spreadsheet-like format.</p>
2371 </div>
2372 <div class="sect3">
2373 <h4 id="_launch_pad">12.1.1. Launch Pad</h4>
2374 <div class="imageblock">
2375 <div class="content">
2376 <img src="launch-pad.png" alt="launch pad" width="400">
2377 </div>
2378 <div class="title">Figure 11. Monitor Flight Launch Pad View</div>
2379 </div>
2380 <div class="paragraph">
2381 <p>The 'Launch Pad' tab shows information used to decide when the
2382 rocket is ready for flight. The first elements include red/green
2383 indicators, if any of these is red, you&#8217;ll want to evaluate
2384 whether the rocket is ready to launch:</p>
2385 </div>
2386 <div class="dlist">
2387 <dl>
2388 <dt class="hdlist1">Battery Voltage</dt>
2389 <dd>
2390 <p>This indicates whether the Li-Po battery powering the
2391 flight computer has sufficient charge to last for
2392 the duration of the flight. A value of more than
2393 3.8V is required for a 'GO' status.</p>
2394 </dd>
2395 <dt class="hdlist1">Apogee Igniter Voltage</dt>
2396 <dd>
2397 <p>This indicates whether the apogee
2398 igniter has continuity. If the igniter has a low
2399 resistance, then the voltage measured here will be close
2400 to the Li-Po battery voltage. A value greater than 3.2V is
2401 required for a 'GO' status.</p>
2402 </dd>
2403 <dt class="hdlist1">Main Igniter Voltage</dt>
2404 <dd>
2405 <p>This indicates whether the main
2406 igniter has continuity. If the igniter has a low
2407 resistance, then the voltage measured here will be close
2408 to the Li-Po battery voltage. A value greater than 3.2V is
2409 required for a 'GO' status.</p>
2410 </dd>
2411 <dt class="hdlist1">On-board Data Logging</dt>
2412 <dd>
2413 <p>This indicates whether there is space remaining
2414 on-board to store flight data for the upcoming
2415 flight. If you&#8217;ve downloaded data, but failed to erase
2416 flights, there may not be any space left. Most of our
2417 flight computers can store multiple flights, depending
2418 on the configured maximum flight log size. TeleMini
2419 v1.0 stores only a single flight, so it will need to
2420 be downloaded and erased after each flight to capture
2421 data. This only affects on-board flight logging; the
2422 altimeter will still transmit telemetry and fire
2423 ejection charges at the proper times even if the
2424 flight data storage is full.</p>
2425 </dd>
2426 <dt class="hdlist1">GPS Locked</dt>
2427 <dd>
2428 <p>For a TeleMetrum or TeleMega device, this indicates
2429 whether the GPS receiver is currently able to compute
2430 position information. GPS requires at least 4
2431 satellites to compute an accurate position.</p>
2432 </dd>
2433 <dt class="hdlist1">GPS Ready</dt>
2434 <dd>
2435 <p>For a TeleMetrum or TeleMega device, this indicates
2436 whether GPS has reported at least 10 consecutive
2437 positions without losing lock. This ensures that the
2438 GPS receiver has reliable reception from the
2439 satellites.</p>
2440 </dd>
2441 </dl>
2442 </div>
2443 <div class="paragraph">
2444 <p>The Launchpad tab also shows the computed launch pad
2445 position and altitude, averaging many reported
2446 positions to improve the accuracy of the fix.</p>
2447 </div>
2448 </div>
2449 <div class="sect3">
2450 <h4 id="_ascent">12.1.2. Ascent</h4>
2451 <div class="imageblock">
2452 <div class="content">
2453 <img src="ascent.png" alt="ascent" width="400">
2454 </div>
2455 <div class="title">Figure 12. Monitor Flight Ascent View</div>
2456 </div>
2457 <div class="paragraph">
2458 <p>This tab is shown during Boost, Fast and Coast
2459 phases. The information displayed here helps monitor the
2460 rocket as it heads towards apogee.</p>
2461 </div>
2462 <div class="paragraph">
2463 <p>The height, speed, acceleration and tilt are shown along
2464 with the maximum values for each of them. This allows you to
2465 quickly answer the most commonly asked questions you&#8217;ll hear
2466 during flight.</p>
2467 </div>
2468 <div class="paragraph">
2469 <p>The current latitude and longitude reported by the GPS are
2470 also shown. Note that under high acceleration, these values
2471 may not get updated as the GPS receiver loses position
2472 fix. Once the rocket starts coasting, the receiver should
2473 start reporting position again.</p>
2474 </div>
2475 <div class="paragraph">
2476 <p>Finally, the current igniter voltages are reported as in the
2477 Launch Pad tab. This can help diagnose deployment failures
2478 caused by wiring which comes loose under high acceleration.</p>
2479 </div>
2480 </div>
2481 <div class="sect3">
2482 <h4 id="_descent">12.1.3. Descent</h4>
2483 <div class="imageblock">
2484 <div class="content">
2485 <img src="descent.png" alt="descent" width="400">
2486 </div>
2487 <div class="title">Figure 13. Monitor Flight Descent View</div>
2488 </div>
2489 <div class="paragraph">
2490 <p>Once the rocket has reached apogee and (we hope)
2491 activated the apogee charge, attention switches to
2492 tracking the rocket on the way back to the ground, and
2493 for dual-deploy flights, waiting for the main charge
2494 to fire.</p>
2495 </div>
2496 <div class="paragraph">
2497 <p>To monitor whether the apogee charge operated
2498 correctly, the current descent rate is reported along
2499 with the current height. Good descent rates vary based
2500 on the choice of recovery components, but generally
2501 range from 15-30m/s on drogue and should be below
2502 10m/s when under the main parachute in a dual-deploy
2503 flight.</p>
2504 </div>
2505 <div class="paragraph">
2506 <p>With GPS-equipped flight computers, you can locate the
2507 rocket in the sky using the elevation and bearing
2508 information to figure out where to look. Elevation is
2509 in degrees above the horizon. Bearing is reported in
2510 degrees relative to true north. Range can help figure
2511 out how big the rocket will appear. Ground Distance
2512 shows how far it is to a point directly under the
2513 rocket and can help figure out where the rocket is
2514 likely to land. Note that all of these values are
2515 relative to the pad location. If the elevation is near
2516 90°, the rocket is over the pad, not over you.</p>
2517 </div>
2518 <div class="paragraph">
2519 <p>Finally, the igniter voltages are reported in this tab
2520 as well, both to monitor the main charge as well as to
2521 see what the status of the apogee charge is.  Note
2522 that some commercial e-matches are designed to retain
2523 continuity even after being fired, and will continue
2524 to show as green or return from red to green after
2525 firing.</p>
2526 </div>
2527 </div>
2528 <div class="sect3">
2529 <h4 id="_landed">12.1.4. Landed</h4>
2530 <div class="imageblock">
2531 <div class="content">
2532 <img src="landed.png" alt="landed" width="400">
2533 </div>
2534 <div class="title">Figure 14. Monitor Flight Landed View</div>
2535 </div>
2536 <div class="paragraph">
2537 <p>Once the rocket is on the ground, attention switches
2538 to recovery. While the radio signal is often lost once
2539 the rocket is on the ground, the last reported GPS
2540 position is generally within a short distance of the
2541 actual landing location.</p>
2542 </div>
2543 <div class="paragraph">
2544 <p>The last reported GPS position is reported both by
2545 latitude and longitude as well as a bearing and
2546 distance from the launch pad. The distance should give
2547 you a good idea of whether to walk or hitch a ride.
2548 Take the reported latitude and longitude and enter
2549 them into your hand-held GPS unit and have that
2550 compute a track to the landing location.</p>
2551 </div>
2552 <div class="paragraph">
2553 <p>Our flight computers will continue to transmit RDF
2554 tones after landing, allowing you to locate the rocket
2555 by following the radio signal if necessary. You may
2556 need to get away from the clutter of the flight line,
2557 or even get up on a hill (or your neighbor&#8217;s RV roof)
2558 to receive the RDF signal.</p>
2559 </div>
2560 <div class="paragraph">
2561 <p>The maximum height, speed and acceleration reported
2562 during the flight are displayed for your admiring
2563 observers.  The accuracy of these immediate values
2564 depends on the quality of your radio link and how many
2565 packets were received.  Recovering the on-board data
2566 after flight may yield more precise results.</p>
2567 </div>
2568 <div class="paragraph">
2569 <p>To get more detailed information about the flight, you
2570 can click on the 'Graph Flight' button which will
2571 bring up a graph window for the current flight.</p>
2572 </div>
2573 </div>
2574 <div class="sect3">
2575 <h4 id="_table">12.1.5. Table</h4>
2576 <div class="imageblock">
2577 <div class="content">
2578 <img src="table.png" alt="table" width="400">
2579 </div>
2580 <div class="title">Figure 15. Monitor Flight Table View</div>
2581 </div>
2582 <div class="paragraph">
2583 <p>The table view shows all of the data available from the
2584 flight computer. Probably the most useful data on
2585 this tab is the detailed GPS information, which includes
2586 horizontal dilution of precision information, and
2587 information about the signal being received from the satellites.</p>
2588 </div>
2589 </div>
2590 <div class="sect3">
2591 <h4 id="_site_map">12.1.6. Site Map</h4>
2592 <div class="imageblock">
2593 <div class="content">
2594 <img src="site-map.png" alt="site map" width="400">
2595 </div>
2596 <div class="title">Figure 16. Monitor Flight Site Map View</div>
2597 </div>
2598 <div class="paragraph">
2599 <p>When the TeleMetrum has a GPS fix, the Site Map tab
2600 will map the rocket&#8217;s position to make it easier for
2601 you to locate the rocket, both while it is in the air,
2602 and when it has landed. The rocket&#8217;s state is
2603 indicated by color: white for pad, red for boost, pink
2604 for fast, yellow for coast, light blue for drogue,
2605 dark blue for main, and black for landed.</p>
2606 </div>
2607 <div class="paragraph">
2608 <p>The map&#8217;s default scale is approximately 3m (10ft) per
2609 pixel. The map can be dragged using the left mouse
2610 button. The map will attempt to keep the rocket
2611 roughly centered while data is being received.</p>
2612 </div>
2613 <div class="paragraph">
2614 <p>You can adjust the style of map and the zoom level
2615 with buttons on the right side of the map window. You
2616 can draw a line on the map by moving the mouse over
2617 the map with a button other than the left one pressed,
2618 or by pressing the left button while also holding down
2619 the shift key. The length of the line in real-world
2620 units will be shown at the start of the line.</p>
2621 </div>
2622 <div class="paragraph">
2623 <p>Images are fetched automatically via the Google Maps
2624 Static API, and cached on disk for reuse. If map
2625 images cannot be downloaded, the rocket&#8217;s path will be
2626 traced on a dark gray background instead.</p>
2627 </div>
2628 <div class="paragraph">
2629 <p>You can pre-load images for your favorite launch sites
2630 before you leave home; check out <a href="#_load_maps">Load Maps</a>.</p>
2631 </div>
2632 </div>
2633 <div class="sect3">
2634 <h4 id="_igniter">12.1.7. Igniter</h4>
2635 <div class="imageblock">
2636 <div class="content">
2637 <img src="ignitor.png" alt="ignitor" width="400">
2638 </div>
2639 <div class="title">Figure 17. Monitor Flight Additional Igniter View</div>
2640 </div>
2641 <div class="paragraph">
2642 <p>TeleMega includes four additional programmable pyro
2643 channels. The Ignitor tab shows whether each of them has
2644 continuity. If an ignitor has a low resistance, then the
2645 voltage measured here will be close to the pyro battery
2646 voltage. A value greater than 3.2V is required for a 'GO'
2647 status.</p>
2648 </div>
2649 </div>
2650 </div>
2651 <div class="sect2">
2652 <h3 id="_save_flight_data">12.2. Save Flight Data</h3>
2653 <div class="paragraph">
2654 <p>The altimeter records flight data to its internal
2655 flash memory.
2656 Data logged on board is recorded at a much
2657 higher rate than the telemetry system can handle, and
2658 is not subject to radio drop-outs. As such, it
2659 provides a more complete and precise record of the
2660 flight.
2661 The 'Save Flight Data' button allows you to
2662 read the flash memory and write it to disk.</p>
2663 </div>
2664 <div class="paragraph">
2665 <p>Clicking on the 'Save Flight Data' button brings up a
2666 list of connected flight computers and TeleDongle
2667 devices. If you select a flight computer, the flight
2668 data will be downloaded from that device directly.
2669 If you select a TeleDongle device, flight data will be
2670 downloaded from a flight computer over radio link via
2671 the specified TeleDongle. See
2672 <a href="#_controlling_an_altimeter_over_the_radio_link">Controlling An Altimeter Over The Radio Link</a> for
2673 more information.</p>
2674 </div>
2675 <div class="paragraph">
2676 <p>After the device has been selected, a dialog showing
2677 the flight data saved in the device will be shown
2678 allowing you to select which flights to download and
2679 which to delete. With version 0.9 or newer firmware,
2680 you must erase flights in order for the space they
2681 consume to be reused by another flight. This prevents
2682 accidentally losing flight data if you neglect to
2683 download data before flying again. Note that if there
2684 is no more space available in the device, then no data
2685 will be recorded during the next flight.</p>
2686 </div>
2687 <div class="paragraph">
2688 <p>The file name for each flight log is computed
2689 automatically from the recorded flight date, altimeter
2690 serial number and flight number information.</p>
2691 </div>
2692 </div>
2693 <div class="sect2">
2694 <h3 id="_replay_flight">12.3. Replay Flight</h3>
2695 <div class="paragraph">
2696 <p>Select this button and you are prompted to select a flight
2697 record file, either a .telem file recording telemetry data or a
2698 .eeprom file containing flight data saved from the altimeter
2699 flash memory.</p>
2700 </div>
2701 <div class="paragraph">
2702 <p>Once a flight record is selected, the flight monitor interface
2703 is displayed and the flight is re-enacted in real
2704 time.
2705 Check
2706 <a href="#_monitor_flight">Monitor Flight</a> to learn how this window operates.</p>
2707 </div>
2708 </div>
2709 <div class="sect2">
2710 <h3 id="_graph_data">12.4. Graph Data</h3>
2711 <div class="paragraph">
2712 <p>Select this button and you are prompted to select a flight
2713 record file, either a .telem file recording telemetry data or a
2714 .eeprom file containing flight data saved from
2715 flash memory.</p>
2716 </div>
2717 <div class="paragraph">
2718 <p>Note that telemetry files will generally produce poor graphs
2719 due to the lower sampling rate and missed telemetry packets.
2720 Use saved flight data in .eeprom files for graphing where possible.</p>
2721 </div>
2722 <div class="paragraph">
2723 <p>Once a flight record is selected, a window with multiple tabs is
2724 opened.</p>
2725 </div>
2726 <div class="sect3">
2727 <h4 id="_flight_graph">12.4.1. Flight Graph</h4>
2728 <div class="imageblock">
2729 <div class="content">
2730 <img src="graph.png" alt="graph" width="400">
2731 </div>
2732 <div class="title">Figure 18. Flight Data Graph</div>
2733 </div>
2734 <div class="paragraph">
2735 <p>By default, the graph contains acceleration (blue),
2736 velocity (green) and altitude (red).</p>
2737 </div>
2738 <div class="paragraph">
2739 <p>The graph can be zoomed into a particular area by
2740 clicking and dragging down and to the right. Once
2741 zoomed, the graph can be reset by clicking and
2742 dragging up and to the left. Holding down control and
2743 clicking and dragging allows the graph to be panned.
2744 The right mouse button causes a pop-up menu to be
2745 displayed, giving you the option save or print the
2746 plot.</p>
2747 </div>
2748 </div>
2749 <div class="sect3">
2750 <h4 id="_configure_graph">12.4.2. Configure Graph</h4>
2751 <div class="imageblock">
2752 <div class="content">
2753 <img src="graph-configure.png" alt="graph configure" width="400">
2754 </div>
2755 <div class="title">Figure 19. Flight Graph Configuration</div>
2756 </div>
2757 <div class="paragraph">
2758 <p>This selects which graph elements to show, and, at the
2759 very bottom. It also lets you configure how
2760 the graph is drawn:</p>
2761 </div>
2762 <div class="ulist">
2763 <ul>
2764 <li>
2765 <p>Whether to use metric or imperial units</p>
2766 </li>
2767 <li>
2768 <p>Whether to show a marker at each data
2769 point. When displaying a small section of
2770 the graph, these can be useful to know what
2771 data values were recorded.</p>
2772 </li>
2773 <li>
2774 <p>How wide to draw the lines in the graph</p>
2775 </li>
2776 <li>
2777 <p>How to filter speed and acceleration data
2778 computed from barometric data. Flight
2779 computers with accelerometers never display
2780 computed acceleration data, and only use
2781 barometric data to compute speed during
2782 descent. Flight computers without
2783 accelerometers always compute both speed and
2784 acceleration from barometric data. A larger
2785 value smooths the data more.</p>
2786 </li>
2787 </ul>
2788 </div>
2789 </div>
2790 <div class="sect3">
2791 <h4 id="_flight_statistics">12.4.3. Flight Statistics</h4>
2792 <div class="imageblock">
2793 <div class="content">
2794 <img src="graph-stats.png" alt="graph stats" width="400">
2795 </div>
2796 <div class="title">Figure 20. Flight Statistics</div>
2797 </div>
2798 <div class="paragraph">
2799 <p>Shows overall data computed from the flight.</p>
2800 </div>
2801 </div>
2802 <div class="sect3">
2803 <h4 id="_map">12.4.4. Map</h4>
2804 <div class="imageblock">
2805 <div class="content">
2806 <img src="graph-map.png" alt="graph map" width="400">
2807 </div>
2808 <div class="title">Figure 21. Flight Map</div>
2809 </div>
2810 <div class="paragraph">
2811 <p>Shows a satellite image of the flight area
2812 overlaid with the path of the flight. The
2813 flight path will have different colored
2814 sections for each state of the flight (just
2815 like the Site Map in Monitor Flight mode):
2816 white for pad, red for boost, pink for fast,
2817 yellow for coast, light blue for drogue, dark
2818 blue for main, and black for landed.</p>
2819 </div>
2820 <div class="paragraph">
2821 <p>The red concentric circles mark the launch
2822 pad, the black concentric circles mark the
2823 landing location. Data for the point along the
2824 along the flight path nearest the cursor will
2825 be displayed at the bottom of the window. This
2826 data includes flight time (so you can
2827 correlate data in the graph window), latitude,
2828 longitude, height above ground and vertical
2829 speed. The selected point will be highlighted
2830 with concentric circles in the same color as
2831 the flight path at that point.</p>
2832 </div>
2833 </div>
2834 </div>
2835 <div class="sect2">
2836 <h3 id="_export_data">12.5. Export Data</h3>
2837 <div class="paragraph">
2838 <p>This tool takes the raw data files and makes them
2839 available for external analysis. When you select this
2840 button, you are prompted to select a flight data file,
2841 which can be either a .eeprom or .telem.  The .eeprom
2842 files contain higher resolution and more continuous
2843 data, while .telem files contain receiver signal
2844 strength information.  Next, a second dialog appears
2845 which is used to select where to write the resulting
2846 file.
2847 It has a selector to choose between CSV and KML
2848 file formats.</p>
2849 </div>
2850 <div class="sect3">
2851 <h4 id="_comma_separated_value_format">12.5.1. Comma Separated Value Format</h4>
2852 <div class="paragraph">
2853 <p>This is a text file containing the data in a form
2854 suitable for import into a spreadsheet or other
2855 external data analysis tool. The first few lines of
2856 the file contain the version and configuration
2857 information from the altimeter, then there is a single
2858 header line which labels all of the fields. All of
2859 these lines start with a '#' character which many
2860 tools can be configured to skip over.</p>
2861 </div>
2862 <div class="paragraph">
2863 <p>The remaining lines of the file contain the data, with
2864 each field separated by a comma and at least one
2865 space. All of the sensor values are converted to
2866 standard units, with the barometric data reported in
2867 both pressure, altitude and height above pad units.</p>
2868 </div>
2869 </div>
2870 <div class="sect3">
2871 <h4 id="_keyhole_markup_language_for_google_earth">12.5.2. Keyhole Markup Language (for Google Earth)</h4>
2872 <div class="paragraph">
2873 <p>This is the format used by Google Earth to provide an
2874 overlay within that application. With this, you can
2875 use Google Earth to see the whole flight path
2876 in 3D.</p>
2877 </div>
2878 </div>
2879 </div>
2880 <div class="sect2">
2881 <h3 id="_configure_altimeter">12.6. Configure Altimeter</h3>
2882 <div class="imageblock">
2883 <div class="content">
2884 <img src="configure-altimeter.png" alt="configure altimeter" width="350">
2885 </div>
2886 <div class="title">Figure 22. Altimeter Configuration</div>
2887 </div>
2888 <div class="paragraph">
2889 <p>Select this button and then select either an altimeter or
2890 TeleDongle Device from the list provided. Selecting a TeleDongle
2891 device will use the radio link to configure a remote
2892 altimeter.</p>
2893 </div>
2894 <div class="paragraph">
2895 <p>The first few lines of the dialog provide information about the
2896 connected device, including the product name,
2897 software version and hardware serial number. Below that are the
2898 individual configuration entries.</p>
2899 </div>
2900 <div class="paragraph">
2901 <p>At the bottom of the dialog, there are four buttons:</p>
2902 </div>
2903 <div class="dlist">
2904 <dl>
2905 <dt class="hdlist1">Save</dt>
2906 <dd>
2907 <p>This writes any changes to the configuration parameter
2908 block in flash memory. If you don&#8217;t press this button,
2909 any changes you make will be lost.</p>
2910 </dd>
2911 <dt class="hdlist1">Reset</dt>
2912 <dd>
2913 <p>This resets the dialog to the most recently saved
2914 values, erasing any changes you have made.</p>
2915 </dd>
2916 <dt class="hdlist1">Reboot</dt>
2917 <dd>
2918 <p>This reboots the device. Use this to switch from idle
2919 to pad mode by rebooting once the rocket is oriented
2920 for flight, or to confirm changes you think you saved
2921 are really saved.</p>
2922 </dd>
2923 <dt class="hdlist1">Close</dt>
2924 <dd>
2925 <p>This closes the dialog. Any unsaved changes will be
2926 lost.</p>
2927 </dd>
2928 </dl>
2929 </div>
2930 <div class="paragraph">
2931 <p>The rest of the dialog contains the parameters to be configured.</p>
2932 </div>
2933 <div class="sect3">
2934 <h4 id="_main_deploy_altitude">12.6.1. Main Deploy Altitude</h4>
2935 <div class="paragraph">
2936 <p>This sets the altitude (above the recorded pad
2937 altitude) at which the 'main' igniter will fire. The
2938 drop-down menu shows some common values, but you can
2939 edit the text directly and choose whatever you
2940 like. If the apogee charge fires below this altitude,
2941 then the main charge will fire two seconds after the
2942 apogee charge fires.</p>
2943 </div>
2944 </div>
2945 <div class="sect3">
2946 <h4 id="_apogee_delay">12.6.2. Apogee Delay</h4>
2947 <div class="paragraph">
2948 <p>When flying redundant electronics, it&#8217;s often
2949 important to ensure that multiple apogee charges don&#8217;t
2950 fire at precisely the same time, as that can over
2951 pressurize the apogee deployment bay and cause a
2952 structural failure of the air-frame. The Apogee Delay
2953 parameter tells the flight computer to fire the apogee
2954 charge a certain number of seconds after apogee has
2955 been detected.</p>
2956 </div>
2957 </div>
2958 <div class="sect3">
2959 <h4 id="_apogee_lockout">12.6.3. Apogee Lockout</h4>
2960 <div class="paragraph">
2961 <p>Apogee lockout is the number of seconds after launch
2962 where the flight computer will not fire the apogee
2963 charge, even if the rocket appears to be at
2964 apogee. This is often called 'Mach Delay', as it is
2965 intended to prevent a flight computer from
2966 unintentionally firing apogee charges due to the
2967 pressure spike that occurrs across a mach
2968 transition. Altus Metrum flight computers include a
2969 Kalman filter which is not fooled by this sharp
2970 pressure increase, and so this setting should be left
2971 at the default value of zero to disable it.</p>
2972 </div>
2973 <div class="admonitionblock warning">
2974 <table>
2975 <tr>
2976 <td class="icon">
2977 <img src="./images/icons/warning.svg" alt="Warning">
2978 </td>
2979 <td class="content">
2980 Firmware versions older than 1.8.6 have a
2981 bug which resets the time since launch to zero each
2982 time a motor starts burning. Update firmware to get
2983 the correct behavior.
2984 </td>
2985 </tr>
2986 </table>
2987 </div>
2988 </div>
2989 <div class="sect3">
2990 <h4 id="_frequency">12.6.4. Frequency</h4>
2991 <div class="paragraph">
2992 <p>This configures which of the frequencies to use for
2993 both telemetry and packet command mode. Note that if
2994 you set this value via packet command mode, the
2995 TeleDongle frequency will also be automatically
2996 reconfigured to match so that communication will
2997 continue afterwards.</p>
2998 </div>
2999 </div>
3000 <div class="sect3">
3001 <h4 id="_rf_calibration">12.6.5. RF Calibration</h4>
3002 <div class="paragraph">
3003 <p>The radios in every Altus Metrum device are calibrated
3004 at the factory to ensure that they transmit and
3005 receive on the specified frequency.  If you need to
3006 you can adjust the calibration by changing this value.
3007 Do not do this without understanding what the value
3008 means, read the appendix on calibration and/or the
3009 source code for more information.  To change a
3010 TeleDongle&#8217;s calibration, you must reprogram the unit
3011 completely.</p>
3012 </div>
3013 </div>
3014 <div class="sect3">
3015 <h4 id="_telemetryrdfaprs_enable">12.6.6. Telemetry/RDF/APRS Enable</h4>
3016 <div class="paragraph">
3017 <p>Enables the radio for transmission during
3018 flight. When disabled, the radio will not
3019 transmit anything during flight at all.</p>
3020 </div>
3021 </div>
3022 <div class="sect3">
3023 <h4 id="_limit_transmit_to_10mw">12.6.7. Limit transmit to 10mW</h4>
3024 <div class="paragraph">
3025 <p>Reduces transmit power to no more than 10mW. This is
3026 useful when operating under some UK radio regulations.</p>
3027 </div>
3028 </div>
3029 <div class="sect3">
3030 <h4 id="_telemetry_baud_rate">12.6.8. Telemetry baud rate</h4>
3031 <div class="paragraph">
3032 <p>This sets the modulation bit rate for data
3033 transmission for both telemetry and packet
3034 link mode. Lower bit rates will increase range
3035 while reducing the amount of data that can be
3036 sent and increasing battery consumption. All
3037 telemetry is done using a rate 1/2 constraint
3038 4 convolution code, so the actual data
3039 transmission rate is 1/2 of the modulation bit
3040 rate specified here.</p>
3041 </div>
3042 </div>
3043 <div class="sect3">
3044 <h4 id="_aprs_interval">12.6.9. APRS Interval</h4>
3045 <div class="paragraph">
3046 <p>How often to transmit GPS information via APRS
3047 (in seconds). When set to zero, APRS
3048 transmission is disabled.
3049 This option is
3050 available on TeleMetrum v2 or newer and TeleMega
3051 boards. TeleMetrum v1 boards cannot transmit
3052 APRS packets.
3053 Note that a single APRS packet
3054 takes nearly a full second to transmit, so
3055 enabling this option will prevent sending any
3056 other telemetry during that time.</p>
3057 </div>
3058 </div>
3059 <div class="sect3">
3060 <h4 id="_aprs_ssid">12.6.10. APRS SSID</h4>
3061 <div class="paragraph">
3062 <p>Which SSID to report in APRS packets. By
3063 default, this is set to the last digit of the
3064 serial number, but can be configured to any
3065 value from 0 to 9.</p>
3066 </div>
3067 </div>
3068 <div class="sect3">
3069 <h4 id="_aprs_format">12.6.11. APRS Format</h4>
3070 <div class="paragraph">
3071 <p>Whether to send APRS data in Compressed or
3072 Uncompressed format. Compressed format is
3073 smaller and more precise. Uncompressed
3074 format is older, but may work better with your
3075 device. The Kenwood TH-D72 only displays
3076 altitude information with Uncompressed
3077 format, while the Yaesu FT1D only displays
3078 altitude with Compressed format. Test before
3079 you fly to see which to use.</p>
3080 </div>
3081 </div>
3082 <div class="sect3">
3083 <h4 id="_aprs_offset">12.6.12. APRS Offset</h4>
3084 <div class="paragraph">
3085 <p>The delay from the top of the minute before sending
3086 the first APRS packet of the minute. Coordinating
3087 values for this parameter between multiple devices can
3088 allow a single receiver to reliably receive APRS
3089 packets from multiple devices. Note that this offset only
3090 takes effect while the GPS signal is locked so that the
3091 transmitting device knows the current time.</p>
3092 </div>
3093 </div>
3094 <div class="sect3">
3095 <h4 id="_callsign">12.6.13. Callsign</h4>
3096 <div class="paragraph">
3097 <p>This sets the call sign included in each
3098 telemetry packet. Set this as needed to
3099 conform to your local radio regulations.</p>
3100 </div>
3101 </div>
3102 <div class="sect3">
3103 <h4 id="_maximum_flight_log_size">12.6.14. Maximum Flight Log Size</h4>
3104 <div class="paragraph">
3105 <p>This sets the space (in kilobytes) allocated
3106 for each flight log. The available space will
3107 be divided into chunks of this size. A smaller
3108 value will allow more flights to be stored, a
3109 larger value will record data from longer
3110 flights.</p>
3111 </div>
3112 </div>
3113 <div class="sect3">
3114 <h4 id="_ignitor_firing_mode">12.6.15. Ignitor Firing Mode</h4>
3115 <div class="paragraph">
3116 <p>This configuration parameter allows the two standard ignitor
3117 channels (Apogee and Main) to be used in different
3118 configurations.</p>
3119 </div>
3120 <div class="dlist">
3121 <dl>
3122 <dt class="hdlist1">Dual Deploy</dt>
3123 <dd>
3124 <p>This is the usual mode of operation; the
3125 'apogee' channel is fired at apogee and the
3126 'main' channel at the height above ground
3127 specified by the 'Main Deploy Altitude' during
3128 descent.</p>
3129 </dd>
3130 <dt class="hdlist1">Redundant Apogee</dt>
3131 <dd>
3132 <p>This fires both channels at apogee, the
3133 'apogee' channel first followed after a two
3134 second delay by the 'main' channel.</p>
3135 </dd>
3136 <dt class="hdlist1">Redundant Main</dt>
3137 <dd>
3138 <p>This fires both channels at the height above
3139 ground specified by the Main Deploy Altitude
3140 setting during descent. The 'apogee' channel
3141 is fired first, followed after a two second
3142 delay by the 'main' channel.</p>
3143 </dd>
3144 <dt class="hdlist1">Separation &amp; Apogee</dt>
3145 <dd>
3146 <p>This fires the 'main' channel when the first motor
3147 burns out and fires the 'apogee' charge at apogee.</p>
3148 </dd>
3149 </dl>
3150 </div>
3151 </div>
3152 <div class="sect3">
3153 <h4 id="_pad_orientation">12.6.16. Pad Orientation</h4>
3154 <div class="paragraph">
3155 <p>Because they include accelerometers,
3156 TeleMetrum, TeleMega and EasyMega are
3157 sensitive to the orientation of the board. By
3158 default, they expect the antenna end to point
3159 forward. This parameter allows that default to
3160 be changed, permitting the board to be mounted
3161 with the antenna pointing aft instead.</p>
3162 </div>
3163 <div class="dlist">
3164 <dl>
3165 <dt class="hdlist1">Antenna Up</dt>
3166 <dd>
3167 <p>In this mode, the antenna (or beeper, for devices
3168 without an antenna) of the flight computer must point
3169 forward, in line with the expected flight path.</p>
3170 </dd>
3171 <dt class="hdlist1">Antenna Down</dt>
3172 <dd>
3173 <p>In this mode, the antenna (or beeper, for devices
3174 without an antenna) end of the flight computer must
3175 point aft, in line with the expected flight path.</p>
3176 </dd>
3177 </dl>
3178 </div>
3179 </div>
3180 <div class="sect3">
3181 <h4 id="_beeper_frequency">12.6.17. Beeper Frequency</h4>
3182 <div class="paragraph">
3183 <p>The beeper on all Altus Metrum flight
3184 computers works best at 4000Hz, however if you
3185 have more than one flight computer in a single
3186 airframe, having all of them sound at the same
3187 frequency can be confusing. This parameter
3188 lets you adjust the base beeper frequency
3189 value.</p>
3190 </div>
3191 </div>
3192 <div class="sect3">
3193 <h4 id="_logging_trigger_motion">12.6.18. Logging Trigger Motion</h4>
3194 <div class="paragraph">
3195 <p>This sets the amount of motion that TeleGPS
3196 needs to see before logging the new
3197 position. Motions smaller than this are
3198 skipped, which saves storage space.</p>
3199 </div>
3200 </div>
3201 <div class="sect3">
3202 <h4 id="_position_reporting_interval">12.6.19. Position Reporting Interval</h4>
3203 <div class="paragraph">
3204 <p>The interval between TeleGPS position reports,
3205 both over the air and in the log. Increase
3206 this to reduce the frequency of radio
3207 transmissions and the length of time available
3208 in the log.</p>
3209 </div>
3210 </div>
3211 <div class="sect3">
3212 <h4 id="_calibrate_accelerometer">12.6.20. Calibrate Accelerometer</h4>
3213 <div class="paragraph">
3214 <p>This opens a separate window to recalibrate the
3215 accelerometers. Follow the instructions, orienting the
3216 flight computer with the antenna end, or end opposite
3217 the screw terminals, in the case of EasyMega, first up
3218 and then down.</p>
3219 </div>
3220 <div class="paragraph">
3221 <p>When the calibration is complete, return to the
3222 Configure Altimeter window and save the new
3223 calibration values.</p>
3224 </div>
3225 </div>
3226 <div class="sect3">
3227 <h4 id="_configure_pyro_channels">12.6.21. Configure Pyro Channels</h4>
3228 <div class="imageblock">
3229 <div class="content">
3230 <img src="configure-pyro.png" alt="configure pyro" width="400">
3231 </div>
3232 <div class="title">Figure 23. Additional Pyro Channel Configuration</div>
3233 </div>
3234 <div class="paragraph">
3235 <p>This opens a separate window to configure the
3236 additional pyro channels available on TeleMega,
3237 EasyMega and EasyTimer.  One column is presented for
3238 each channel. Each row represents a single
3239 parameter, if enabled the parameter must meet
3240 the specified test for the pyro channel to be
3241 fired.</p>
3242 </div>
3243 <div class="paragraph">
3244 <p>Select conditions and set the related value;
3245 the pyro channel will be activated when <strong>all</strong>
3246 of the conditions are met. Each pyro channel
3247 has a separate set of configuration values, so
3248 you can use different values for the same
3249 condition with different channels.</p>
3250 </div>
3251 <div class="paragraph">
3252 <p>At the bottom of the window, the 'Pyro Firing
3253 Time' configuration sets the length of time
3254 (in seconds) which each of these pyro channels
3255 will fire for.</p>
3256 </div>
3257 <div class="paragraph">
3258 <p>Once you have selected the appropriate
3259 configuration for all of the necessary pyro
3260 channels, you can save the pyro configuration
3261 along with the rest of the flight computer
3262 configuration by pressing the 'Save' button in
3263 the main Configure Flight Computer window.</p>
3264 </div>
3265 <div class="dlist">
3266 <dl>
3267 <dt class="hdlist1">Vertical Acceleration</dt>
3268 <dd>
3269 <p>Select a value, and then choose whether
3270 acceleration away from the ground should be above or below that
3271 value. Acceleration is positive upwards, so accelerating towards the
3272 ground would produce negative numbers. Acceleration during descent is
3273 noisy and inaccurate, so be careful when using it during these phases
3274 of the flight.</p>
3275 </dd>
3276 <dt class="hdlist1">Ascent rate</dt>
3277 <dd>
3278 <p>Select a value, and then choose whether ascent rate
3279 should be above or below that value. Ascent rate is positive upwards,
3280 so moving towards the ground would produce negative numbers. Ascent
3281 rate during descent is a bit noisy and so be careful when using it
3282 during these phases of the flight.</p>
3283 </dd>
3284 <dt class="hdlist1">Height above pad</dt>
3285 <dd>
3286 <p>Select a value, and then choose whether the height
3287 above the launch pad should be above or below that value. Note that
3288 because EasyTimer has only a low-range accelerometer and no barometer,
3289 this value will not be very reliable on that device.</p>
3290 </dd>
3291 <dt class="hdlist1">Orientation</dt>
3292 <dd>
3293 <p>TeleMega, EasyMega and EasyTimer contain a 3-axis
3294 gyroscope and accelerometer which is used to compute the orientation
3295 of the rocket. A record of orientations over the last 0.64 seconds is
3296 kept and the largest value within this period is compared with the
3297 specified value. Note that the tilt angle is not the change in angle
3298 from the launch pad, but rather absolute relative to gravity—the
3299 3-axis accelerometer is used to compute the angle of the rocket on the
3300 launch pad and initialize the system.</p>
3301 </dd>
3302 </dl>
3303 </div>
3304 <div class="admonitionblock note">
3305 <table>
3306 <tr>
3307 <td class="icon">
3308 <img src="./images/icons/note.svg" alt="Note">
3309 </td>
3310 <td class="content">
3311 <div class="paragraph">
3312 <p>Because this value is computed by integrating
3313 rate gyros, it gets progressively less
3314 accurate as the flight goes on. It should have
3315 an accumulated error of less than 0.2°/second
3316 (after 10 seconds of flight, the error should
3317 be less than 2°).</p>
3318 </div>
3319 <div class="paragraph">
3320 <p>The usual use of the orientation configuration
3321 is to ensure that the rocket is traveling
3322 mostly upwards when deciding whether to ignite
3323 air starts or additional stages. For that,
3324 choose a reasonable maximum angle (like 20°)
3325 and set the motor igniter to require an angle
3326 of less than that value.</p>
3327 </div>
3328 </td>
3329 </tr>
3330 </table>
3331 </div>
3332 <div class="dlist">
3333 <dl>
3334 <dt class="hdlist1">Flight Time</dt>
3335 <dd>
3336 <p>Time since launch. Select a value and choose whether to
3337 activate the pyro channel before or after that amount of time.</p>
3338 </dd>
3339 </dl>
3340 </div>
3341 <div class="admonitionblock warning">
3342 <table>
3343 <tr>
3344 <td class="icon">
3345 <img src="./images/icons/warning.svg" alt="Warning">
3346 </td>
3347 <td class="content">
3348 Firmware versions older than 1.8.6 have a bug which resets the time
3349 since launch to zero each time a motor starts burning. Update firmware
3350 to get the correct behavior.
3351 </td>
3352 </tr>
3353 </table>
3354 </div>
3355 <div class="admonitionblock warning">
3356 <table>
3357 <tr>
3358 <td class="icon">
3359 <img src="./images/icons/warning.svg" alt="Warning">
3360 </td>
3361 <td class="content">
3362 Firmware versions older than 1.9.8 cannot use times longer
3363 than 327.67 seconds. Update firmware if you need a longer time.
3364 </td>
3365 </tr>
3366 </table>
3367 </div>
3368 <div class="dlist">
3369 <dl>
3370 <dt class="hdlist1">Ascending</dt>
3371 <dd>
3372 <p>A deprecated configuration value which was the same as
3373 setting Ascent rate &gt; 0. Existing configurations using this will be
3374 cleared and must be reconfigured by the user.</p>
3375 </dd>
3376 <dt class="hdlist1">Descending</dt>
3377 <dd>
3378 <p>A deprecated configuration value which was the same as
3379 setting Ascent rate &lt; 0. Existing configurations using this will be
3380 cleared and must be reconfigured by the user.</p>
3381 </dd>
3382 <dt class="hdlist1">After Motor</dt>
3383 <dd>
3384 <p>The flight software counts each time the rocket starts
3385 accelerating and then decelerating (presumably due to a motor or
3386 motors burning). Use this value for multi-staged or multi-airstart
3387 launches. As of version 1.8.6 firmware, this checks to make sure at
3388 least this many motors have burned. Before version 1.8.6, this checked
3389 to make sure that exactly this many motors had burned.</p>
3390 </dd>
3391 <dt class="hdlist1">Delay</dt>
3392 <dd>
3393 <p>Once the other parameters all become true, a timer is
3394 started for the specified amount of time. While the timer is running,
3395 the other parameters are checked repeatedly and if any of them become
3396 false, then the pyro channel is disabled and will not fire. If the
3397 timer expires and all of the other parameters have remained true for
3398 the entire time, then the pyro channel is fired.</p>
3399 </dd>
3400 </dl>
3401 </div>
3402 <div class="admonitionblock warning">
3403 <table>
3404 <tr>
3405 <td class="icon">
3406 <img src="./images/icons/warning.svg" alt="Warning">
3407 </td>
3408 <td class="content">
3409 Firmware versions older than 1.9.8 cannot use delays longer
3410 than 327.67 seconds. Update firmware if you need a longer delay.
3411 </td>
3412 </tr>
3413 </table>
3414 </div>
3415 <div class="dlist">
3416 <dl>
3417 <dt class="hdlist1">Flight State</dt>
3418 <dd>
3419 <p>The flight software tracks the flight
3420 through a sequence of states:</p>
3421 <div class="ulist">
3422 <ul>
3423 <li>
3424 <p>Boost. The motor has lit and the rocket is
3425 accelerating upwards. Ascent rate will be greater than zero.
3426 Vertical acceleration will be greater than zero.</p>
3427 </li>
3428 <li>
3429 <p>Fast. The motor has burned out and the
3430 rocket is decelerating, but it is going
3431 faster than 200m/s. Ascent rate will be greater than zero. Vertical
3432 acceleration will be less than zero.</p>
3433 </li>
3434 <li>
3435 <p>Coast. The rocket is still moving upwards
3436 and decelerating, but the Ascent rate is less
3437 than 200m/s. Ascent rate will greater than zero. Vertical
3438 acceleration will be less than zero.</p>
3439 </li>
3440 <li>
3441 <p>Drogue. The rocket has reached apogee and is heading back down, but
3442 is above the configured Main altitude. Ascent rate will be less
3443 than zero during this state. Vertical acceleration will be negative
3444 until the rocket reaches a terminal descent rate, at which point
3445 Vertical acceleration will be zero. Both Ascent rate and Vertical
3446 acceleration are very noisy in this state, so be careful when
3447 trying to use them to control pyro channels. This state selection
3448 is not available on EasyTimer.</p>
3449 </li>
3450 <li>
3451 <p>Main. The rocket is still descending, and
3452 is below the Main altitude. Ascent rate will be less than zero
3453 during this state. Vertical acceleration may be briefly less than
3454 zero as the rocket slows from drogue descent to main descent, but
3455 it will settle down to a zero value once the rocket has reached the
3456 terminal velocity under the main chute. Ascent rate and Vertical
3457 acceleration should be much less noisy once the main chute has
3458 deployed. This state selection is not available on EasyTimer.</p>
3459 </li>
3460 <li>
3461 <p>Landed. The rocket is no longer moving.</p>
3462 </li>
3463 </ul>
3464 </div>
3465 </dd>
3466 </dl>
3467 </div>
3468 <div class="paragraph">
3469 <p>You can select a state to limit when the pyro channel may activate;
3470 note that the check is based on when the rocket transitions <strong>into</strong> the
3471 state, and so checking for “greater than Boost” means that the rocket
3472 is currently in boost or some later state.</p>
3473 </div>
3474 <div class="paragraph">
3475 <p>When a motor burns out, the rocket enters either Fast or Coast state
3476 (depending on how fast it is moving). If the computer detects upwards
3477 acceleration again, it will move back to Boost state.</p>
3478 </div>
3479 </div>
3480 </div>
3481 <div class="sect2">
3482 <h3 id="_configure_altosui">12.7. Configure AltosUI</h3>
3483 <div class="imageblock">
3484 <div class="content">
3485 <img src="configure-altosui.png" alt="configure altosui" width="230">
3486 </div>
3487 <div class="title">Figure 24. Configure AltosUI Dialog</div>
3488 </div>
3489 <div class="paragraph">
3490 <p>This button presents a dialog so that you can
3491 configure the AltosUI global settings.</p>
3492 </div>
3493 <div class="sect3">
3494 <h4 id="_voice_settings">12.7.1. Voice Settings</h4>
3495 <div class="paragraph">
3496 <p>AltosUI provides voice announcements during
3497 flight so that you can keep your eyes on the
3498 sky and still get information about the
3499 current flight status. However, sometimes you
3500 don&#8217;t want to hear them.</p>
3501 </div>
3502 <div class="dlist">
3503 <dl>
3504 <dt class="hdlist1">Enable</dt>
3505 <dd>
3506 <p>Turns all voice announcements on and off</p>
3507 </dd>
3508 <dt class="hdlist1">Test Voice</dt>
3509 <dd>
3510 <p>Plays a short message allowing you to verify
3511 that the audio system is working and the volume settings
3512 are reasonable</p>
3513 </dd>
3514 </dl>
3515 </div>
3516 </div>
3517 <div class="sect3">
3518 <h4 id="_log_directory">12.7.2. Log Directory</h4>
3519 <div class="paragraph">
3520 <p>AltosUI logs all telemetry data and saves all
3521 flash data to this directory. This
3522 directory is also used as the staring point
3523 when selecting data files for display or
3524 export.</p>
3525 </div>
3526 <div class="paragraph">
3527 <p>Click on the directory name to bring up a
3528 directory choosing dialog, select a new
3529 directory and click 'Select Directory' to
3530 change where AltosUI reads and writes data
3531 files.</p>
3532 </div>
3533 </div>
3534 <div class="sect3">
3535 <h4 id="_callsign_2">12.7.3. Callsign</h4>
3536 <div class="paragraph">
3537 <p>This value is transmitted in each command
3538 packet sent from TeleDongle and received from
3539 an altimeter.  It is not used in telemetry
3540 mode, as the callsign configured in the
3541 altimeter board is included in all telemetry
3542 packets.  Configure this with the AltosUI
3543 operators call sign as needed to comply with
3544 your local radio regulations.</p>
3545 </div>
3546 <div class="paragraph">
3547 <p>Note that to successfully command a flight
3548 computer over the radio (to configure the
3549 altimeter, monitor idle, or fire pyro
3550 charges), the callsign configured here must
3551 exactly match the callsign configured in the
3552 flight computer.  This matching is case
3553 sensitive.</p>
3554 </div>
3555 </div>
3556 <div class="sect3">
3557 <h4 id="_imperial_units">12.7.4. Imperial Units</h4>
3558 <div class="paragraph">
3559 <p>This switches between metric units (meters)
3560 and imperial units (feet and miles). This
3561 affects the display of values use during
3562 flight monitoring, configuration, data
3563 graphing and all of the voice
3564 announcements. It does not change the units
3565 used when exporting to CSV files, those are
3566 always produced in metric units.</p>
3567 </div>
3568 </div>
3569 <div class="sect3">
3570 <h4 id="_serial_debug">12.7.5. Serial Debug</h4>
3571 <div class="paragraph">
3572 <p>This causes all communication with a connected
3573 device to be dumped to the console from which
3574 AltosUI was started. If you&#8217;ve started it from
3575 an icon or menu entry, the output will simply
3576 be discarded. This mode can be useful to debug
3577 various serial communication issues.</p>
3578 </div>
3579 </div>
3580 <div class="sect3">
3581 <h4 id="_font_size">12.7.6. Font size</h4>
3582 <div class="paragraph">
3583 <p>Selects the set of fonts used in the flight
3584 monitor window. Choose between the small,
3585 medium and large sets.</p>
3586 </div>
3587 </div>
3588 <div class="sect3">
3589 <h4 id="_look_feel">12.7.7. Look &amp; feel</h4>
3590 <div class="paragraph">
3591 <p>Switches between the available Java user
3592 interface appearances. The default selection
3593 is supposed to match the native window system
3594 appearance for the target platform.</p>
3595 </div>
3596 </div>
3597 <div class="sect3">
3598 <h4 id="_menu_position">12.7.8. Menu position</h4>
3599 <div class="paragraph">
3600 <p>Selects the initial position for the main
3601 AltosUI window that includes all of the
3602 command buttons.</p>
3603 </div>
3604 </div>
3605 <div class="sect3">
3606 <h4 id="_map_cache_size">12.7.9. Map Cache Size</h4>
3607 <div class="paragraph">
3608 <p>Sets the number of map 'tiles' kept in memory
3609 while the application is running. More tiles
3610 consume more memory, but will make panning
3611 around the map faster.</p>
3612 </div>
3613 </div>
3614 <div class="sect3">
3615 <h4 id="_manage_frequencies">12.7.10. Manage Frequencies</h4>
3616 <div class="paragraph">
3617 <p>This brings up a dialog where you can
3618 configure the set of frequencies shown in the
3619 various frequency menus. You can add as many
3620 as you like, or even reconfigure the default
3621 set. Changing this list does not affect the
3622 frequency settings of any devices, it only
3623 changes the set of frequencies shown in the
3624 menus.</p>
3625 </div>
3626 </div>
3627 </div>
3628 <div class="sect2">
3629 <h3 id="_configure_groundstation">12.8. Configure Groundstation</h3>
3630 <div class="imageblock">
3631 <div class="content">
3632 <img src="configure-groundstation.png" alt="configure groundstation" width="300">
3633 </div>
3634 <div class="title">Figure 25. Configure Groundstation Dialog</div>
3635 </div>
3636 <div class="paragraph">
3637 <p>Select this button and then select a TeleDongle or
3638 TeleBT Device from the list provided.</p>
3639 </div>
3640 <div class="paragraph">
3641 <p>The first few lines of the dialog provide information
3642 about the connected device, including the product
3643 name, software version and hardware serial
3644 number. Below that are the individual configuration
3645 entries.</p>
3646 </div>
3647 <div class="paragraph">
3648 <p>Note that TeleDongle and TeleBT don&#8217;t save any
3649 configuration data, the settings here are recorded on
3650 the local machine in the Java preferences
3651 database. Moving the device to another machine, or
3652 using a different user account on the same machine
3653 will cause settings made here to have no effect.</p>
3654 </div>
3655 <div class="paragraph">
3656 <p>At the bottom of the dialog, there are three
3657 buttons:</p>
3658 </div>
3659 <div class="dlist">
3660 <dl>
3661 <dt class="hdlist1">Save</dt>
3662 <dd>
3663 <p>This writes any changes to the local Java
3664 preferences file. If you don&#8217;t press this
3665 button, any changes you make will be lost.</p>
3666 </dd>
3667 <dt class="hdlist1">Reset</dt>
3668 <dd>
3669 <p>This resets the dialog to the most recently
3670 saved values, erasing any changes you have
3671 made.</p>
3672 </dd>
3673 <dt class="hdlist1">Close</dt>
3674 <dd>
3675 <p>This closes the dialog. Any unsaved changes
3676 will be lost.</p>
3677 </dd>
3678 </dl>
3679 </div>
3680 <div class="paragraph">
3681 <p>The rest of the dialog contains the parameters
3682 to be configured.</p>
3683 </div>
3684 <div class="sect3">
3685 <h4 id="_frequency_2">12.8.1. Frequency</h4>
3686 <div class="paragraph">
3687 <p>This configures the frequency to use for both
3688 telemetry and packet command mode. Set this
3689 before starting any operation involving packet
3690 command mode so that it will use the right
3691 frequency. Telemetry monitoring mode also
3692 provides a menu to change the frequency, and
3693 that menu also sets the same Java preference
3694 value used here.</p>
3695 </div>
3696 </div>
3697 <div class="sect3">
3698 <h4 id="_rf_calibration_2">12.8.2. RF Calibration</h4>
3699 <div class="paragraph">
3700 <p>The radios in every Altus Metrum device are
3701 calibrated at the factory to ensure that they
3702 transmit and receive on the specified
3703 frequency.  To change a TeleDongle or TeleBT&#8217;s
3704 calibration, you must reprogram the unit
3705 completely, so this entry simply shows the
3706 current value and doesn&#8217;t allow any changes.</p>
3707 </div>
3708 </div>
3709 <div class="sect3">
3710 <h4 id="_telemetry_rate">12.8.3. Telemetry Rate</h4>
3711 <div class="paragraph">
3712 <p>This lets you match the telemetry and packet
3713 link rate from the transmitter. If they don&#8217;t
3714 match, the device won&#8217;t receive any data.</p>
3715 </div>
3716 </div>
3717 </div>
3718 <div class="sect2">
3719 <h3 id="_flash_image">12.9. Flash Image</h3>
3720 <div class="paragraph">
3721 <p>This reprograms Altus Metrum devices with new
3722 firmware.
3723 TeleMetrum v1.x, TeleDongle v0.2, TeleMini v1.0
3724 and TeleBT v1.0 are all reprogrammed by using another
3725 similar unit as a programming dongle (pair
3726 programming).
3727 TeleMega, EasyMega, TeleMetrum v2 or newer,
3728 EasyMini, EasyTimer, TeleBT v3 or newer and TeleDongle v3
3729 or newer are all
3730 programmed directly
3731 over USB (self programming). Please read
3732 the directions for flashing devices in
3733 <a href="#_updating_device_firmware">Updating Device Firmware</a>.</p>
3734 </div>
3735 </div>
3736 <div class="sect2">
3737 <h3 id="_fire_igniter">12.10. Fire Igniter</h3>
3738 <div class="imageblock">
3739 <div class="content">
3740 <img src="fire-igniter.png" alt="fire igniter" width="120">
3741 </div>
3742 <div class="title">Figure 26. Fire Igniter Window</div>
3743 </div>
3744 <div class="paragraph">
3745 <p>This activates the igniter circuits in the flight
3746 computer to help test recovery systems
3747 deployment.
3748 Because this command can operate over the
3749 Packet Command Link, you can prepare the rocket as for
3750 flight and then test the recovery system without
3751 needing to snake wires inside the air-frame.</p>
3752 </div>
3753 <div class="paragraph">
3754 <p>Selecting the 'Fire Igniter' button brings up the
3755 usual device selection dialog. Pick the desired
3756 device. This brings up another window which shows the
3757 current continuity test status for all of the pyro
3758 channels.</p>
3759 </div>
3760 <div class="paragraph">
3761 <p>Next, select the desired igniter to fire. This will
3762 enable the 'Arm' button.</p>
3763 </div>
3764 <div class="paragraph">
3765 <p>Select the 'Arm' button. This enables the 'Fire'
3766 button. The word 'Arm' is replaced by a countdown
3767 timer indicating that you have 10 seconds to press the
3768 'Fire' button or the system will deactivate, at which
3769 point you start over again at selecting the desired
3770 igniter.</p>
3771 </div>
3772 </div>
3773 <div class="sect2">
3774 <h3 id="_scan_channels">12.11. Scan Channels</h3>
3775 <div class="imageblock">
3776 <div class="content">
3777 <img src="scan-channels.png" alt="scan channels" width="300">
3778 </div>
3779 <div class="title">Figure 27. Scan Channels Window</div>
3780 </div>
3781 <div class="paragraph">
3782 <p>This listens for telemetry packets on all of the
3783 configured frequencies, displaying information about
3784 each device it receives a packet from. You can select
3785 which of the baud rates and telemetry formats should
3786 be tried; by default, it only listens at 38400 baud
3787 with the standard telemetry format used in v1.0 and
3788 later firmware.</p>
3789 </div>
3790 </div>
3791 <div class="sect2">
3792 <h3 id="_load_maps">12.12. Load Maps</h3>
3793 <div class="imageblock">
3794 <div class="content">
3795 <img src="load-maps.png" alt="load maps" width="500">
3796 </div>
3797 <div class="title">Figure 28. Load Maps Window</div>
3798 </div>
3799 <div class="paragraph">
3800 <p>Before heading out to a new launch site, you can use
3801 this to load satellite images in case you don&#8217;t have
3802 internet connectivity at the site.  Try not to wait
3803 until the last minute, though, particularly if you&#8217;re
3804 heading to a major launch.  If too many people are
3805 all trying to download map data at once, Google may
3806 limit access until the next day.</p>
3807 </div>
3808 <div class="paragraph">
3809 <p>There&#8217;s a drop-down menu of launch sites we know
3810 about; if your favorites aren&#8217;t there, please let us
3811 know the lat/lon and name of the site. The contents of
3812 this list are actually downloaded from our server at
3813 run-time, so as new sites are sent in, they&#8217;ll get
3814 automatically added to this list.  If the launch site
3815 isn&#8217;t in the list, you can manually enter the lat/lon
3816 values</p>
3817 </div>
3818 <div class="paragraph">
3819 <p>There are four different kinds of maps you can view;
3820 you can select which to download by selecting as many
3821 as you like from the available types:</p>
3822 </div>
3823 <div class="dlist">
3824 <dl>
3825 <dt class="hdlist1">Hybrid</dt>
3826 <dd>
3827 <p>A combination of satellite imagery and road data. This
3828 is the default view.</p>
3829 </dd>
3830 <dt class="hdlist1">Satellite</dt>
3831 <dd>
3832 <p>Just the satellite imagery without any annotation.</p>
3833 </dd>
3834 <dt class="hdlist1">Roadmap</dt>
3835 <dd>
3836 <p>Roads, political boundaries and a few geographic
3837 features.</p>
3838 </dd>
3839 <dt class="hdlist1">Terrain</dt>
3840 <dd>
3841 <p>Contour intervals and shading that show hills and
3842 valleys.</p>
3843 </dd>
3844 </dl>
3845 </div>
3846 <div class="paragraph">
3847 <p>You can specify the range of zoom levels to download;
3848 smaller numbers show more area with less
3849 resolution. The default level, 0, shows about
3850 3m/pixel. One zoom level change doubles or halves that
3851 number. Larger zoom levels show more detail, smaller
3852 zoom levels less.</p>
3853 </div>
3854 <div class="paragraph">
3855 <p>The Map Radius value sets how large an area around the
3856 center point to download. Select a value large enough
3857 to cover any plausible flight from that site. Be aware
3858 that loading a large area with a high maximum zoom
3859 level can attempt to download a lot of data. Loading
3860 hybrid maps with a 10km radius at a minimum zoom of -2
3861 and a maximum zoom of 2 consumes about 120MB of
3862 space. Terrain and road maps consume about 1/10 as
3863 much space as satellite or hybrid maps.</p>
3864 </div>
3865 <div class="paragraph">
3866 <p>Clicking the 'Load Map' button will fetch images from
3867 Google Maps; note that Google limits how many images
3868 you can fetch at once, so if you load more than one
3869 launch site, you may get some gray areas in the map
3870 which indicate that Google is tired of sending data to
3871 you. Try again later.</p>
3872 </div>
3873 </div>
3874 <div class="sect2">
3875 <h3 id="_monitor_idle">12.13. Monitor Idle</h3>
3876 <div class="imageblock">
3877 <div class="content">
3878 <img src="monitor-idle.png" alt="monitor idle" width="500">
3879 </div>
3880 <div class="title">Figure 29. Monitor Idle Window</div>
3881 </div>
3882 <div class="paragraph">
3883 <p>This brings up a dialog similar to the Monitor Flight
3884 UI, except it works with the altimeter in “idle” mode
3885 by sending query commands to discover the current
3886 state rather than listening for telemetry
3887 packets. Because this uses command mode, it needs to
3888 have the TeleDongle and flight computer callsigns
3889 match exactly. If you can receive telemetry, but
3890 cannot manage to run Monitor Idle, then it&#8217;s very
3891 likely that your callsigns are different in some way.</p>
3892 </div>
3893 <div class="paragraph">
3894 <p>You can change the frequency and callsign used to
3895 communicate with the flight computer; they must both
3896 match the configuration in the flight computer
3897 exactly.</p>
3898 </div>
3899 </div>
3900 </div>
3901 </div>
3902 <div class="sect1">
3903 <h2 id="_altosdroid">13. AltosDroid</h2>
3904 <div class="sectionbody">
3905 <div class="paragraph">
3906 <p>AltosDroid provides the same flight monitoring capabilities as
3907 AltosUI, but runs on Android devices. AltosDroid is designed
3908 to connect to a TeleBT receiver over Bluetooth™ and (on
3909 Android devices supporting USB On-the-go) TeleDongle and
3910 TeleBT devices over USB. AltosDroid monitors telemetry data,
3911 logging it to internal storage in the Android device, and
3912 presents that data in a UI similar to the 'Monitor Flight'
3913 window in AltosUI.</p>
3914 </div>
3915 <div class="paragraph">
3916 <p>This manual will explain how to configure AltosDroid, connect
3917 to TeleBT or TeleDongle, operate the flight monitoring
3918 interface and describe what the displayed data means.</p>
3919 </div>
3920 <div class="sect2">
3921 <h3 id="_installing_altosdroid">13.1. Installing AltosDroid</h3>
3922 <div class="paragraph">
3923 <p>AltosDroid is available from the Google Play store. To
3924 install it on your Android device, open the Google
3925 Play Store application and search for
3926 “altosdroid”. Make sure you don&#8217;t have a space between
3927 “altos” and “droid” or you probably won&#8217;t find what
3928 you want. That should bring you to the right page from
3929 which you can download and install the application.</p>
3930 </div>
3931 </div>
3932 <div class="sect2">
3933 <h3 id="_charging_telebt_battery">13.2. Charging TeleBT Battery</h3>
3934 <div class="paragraph">
3935 <p>Before using TeleBT with AltosDroid, make sure the
3936 internal TeleBT battery is charged.  To do this,
3937 attach a micro USB cable from a computer or other USB
3938 power source to TeleBT.  A dual LED on the circuit
3939 board should illuminate, showing red while the battery
3940 is charging, green when charging is completed, and
3941 both red and green on at the same time if there is a
3942 battery fault.</p>
3943 </div>
3944 </div>
3945 <div class="sect2">
3946 <h3 id="_connecting_to_telebt_over_bluetooth">13.3. Connecting to TeleBT over Bluetooth™</h3>
3947 <div class="paragraph">
3948 <p>Note that when turning TeleBT on, you may see a brief LED
3949 flash, but there will be no "activity" indicated until you
3950 pair with the device from AltosDroid.</p>
3951 </div>
3952 <div class="paragraph">
3953 <p>Press the Android 'Menu' button or soft-key to see the
3954 configuration options available. Select the 'Connect a
3955 device' option and then the 'Scan for devices' entry
3956 at the bottom to look for your TeleBT device. Select
3957 your device, and when it asks for the code, enter
3958 '1234'.</p>
3959 </div>
3960 <div class="paragraph">
3961 <p>Subsequent connections will not require you to enter
3962 that code, and your 'paired' device will appear in the
3963 list without scanning.</p>
3964 </div>
3965 </div>
3966 <div class="sect2">
3967 <h3 id="_connecting_to_teledongle_or_telebt_over_usb">13.4. Connecting to TeleDongle or TeleBT over USB</h3>
3968 <div class="paragraph">
3969 <p>Get a special USB On-the-go adapter cable. These
3970 cables have a USB micro-B male connector on one end
3971 and a standard A female connector on the other
3972 end. Plug in your TeleDongle or TeleBT device to the
3973 adapter cable and the adapter cable into your phone
3974 and AltosDroid should automatically start up. If it
3975 doesn&#8217;t, the most likely reason is that your Android
3976 device doesn&#8217;t support USB On-the-go.</p>
3977 </div>
3978 </div>
3979 <div class="sect2">
3980 <h3 id="_altosdroid_menu">13.5. AltosDroid Menu</h3>
3981 <div class="paragraph">
3982 <p>The main AltosDroid menu has a selection of operation
3983 and configuration options.</p>
3984 </div>
3985 <div class="dlist">
3986 <dl>
3987 <dt class="hdlist1">Connect a device</dt>
3988 <dd>
3989 <p>Offers a menu of available TeleBT devices, and an
3990 option to scan for additional devices.</p>
3991 </dd>
3992 <dt class="hdlist1">Disconnect device</dt>
3993 <dd>
3994 <p>Disconnects the current TeleBT or TeleDongle
3995 device. You can reconnect TeleBT over bluetooth by
3996 using Connect a Device. You can reconnect a USB device
3997 by unplugging it and then plugging it back in.</p>
3998 </dd>
3999 <dt class="hdlist1">Select radio frequency</dt>
4000 <dd>
4001 <p>This selects which frequency to listen on by bringing
4002 up a menu of pre-set radio frequencies. Pick the one
4003 which matches your altimeter.</p>
4004 </dd>
4005 <dt class="hdlist1">Select Tracker</dt>
4006 <dd>
4007 <p>Switches the information displays to show data for a
4008 different transmitting device. The map will always
4009 show all of the devices in view. Trackers are shown
4010 and selected by serial number, so make sure you note
4011 the serial number of devices in each airframe.</p>
4012 </dd>
4013 <dt class="hdlist1">Delete Track</dt>
4014 <dd>
4015 <p>Deletes all information about a transmitting device.</p>
4016 </dd>
4017 <dt class="hdlist1">Setup</dt>
4018 <dd>
4019 <p>Offers additional configuration operations. See
4020 <a href="#_setup">Setup</a>.</p>
4021 </dd>
4022 <dt class="hdlist1">Idle Mode</dt>
4023 <dd>
4024 <p>Communicate with an altimeter in Idle mode. See <a href="#_idle_mode">Idle Mode</a></p>
4025 </dd>
4026 <dt class="hdlist1">Quit</dt>
4027 <dd>
4028 <p>Shuts down AltosDroid.</p>
4029 </dd>
4030 </dl>
4031 </div>
4032 </div>
4033 <div class="sect2">
4034 <h3 id="_setup">13.6. Setup</h3>
4035 <div class="dlist">
4036 <dl>
4037 <dt class="hdlist1">Telemetry Rate</dt>
4038 <dd>
4039 <p>Altus Metrum transmitters can be configured to operate
4040 at lower data rates to improve transmission range. If
4041 you have configured your device to do this, this menu
4042 item allows you to change the receiver to match.</p>
4043 </dd>
4044 <dt class="hdlist1">Units</dt>
4045 <dd>
4046 <p>Selects which units used to report values.</p>
4047 </dd>
4048 <dt class="hdlist1">Map Type</dt>
4049 <dd>
4050 <p>Displays a menu of map types and lets you select
4051 one. Hybrid maps include satellite images with a
4052 roadmap overlaid. Satellite maps dispense with the
4053 roadmap overlay. Roadmap shows just the roads. Terrain
4054 includes roads along with shadows indicating changes
4055 in elevation, and other geographical features.</p>
4056 </dd>
4057 <dt class="hdlist1">Map Source</dt>
4058 <dd>
4059 <p>Select between online and offline maps. Online maps
4060 will show a 'move to current position' icon in the
4061 upper right corner, while offline maps will have
4062 copyright information all over the map. Otherwise,
4063 they&#8217;re pretty similar.</p>
4064 </dd>
4065 <dt class="hdlist1">Preload Maps</dt>
4066 <dd>
4067 <p>Brings up a dialog allowing you to download offline
4068 map tiles so that you can have maps available even if
4069 you have no network connectivity at the launch site.</p>
4070 </dd>
4071 <dt class="hdlist1">Manage Frequencies</dt>
4072 <dd>
4073 <p>This presents a dialog containing the current list of
4074 frequencies that will be show in the 'Select radio
4075 frequency' menu. You can change the label for existing
4076 frequencies, delete or add new frequencies.</p>
4077 </dd>
4078 </dl>
4079 </div>
4080 </div>
4081 <div class="sect2">
4082 <h3 id="_idle_mode">13.7. Idle Mode</h3>
4083 <div class="dlist">
4084 <dl>
4085 <dt class="hdlist1">Callsign</dt>
4086 <dd>
4087 <p>Lets you configure the callsign used by AltosDroid to
4088 communicate with the flight computer. The callsign on
4089 the two devices must match or the communication will
4090 fail. This provides a modest amount of protection
4091 against accidentally controlling another persons
4092 flight computer.</p>
4093 </dd>
4094 <dt class="hdlist1">Monitor</dt>
4095 <dd>
4096 <p>This provides similar information to monitoring the
4097 telemetry stream from a flight computer in flight
4098 mode. The title of the application will change to
4099 include (idle) so you can tell this mode is active.</p>
4100 </dd>
4101 <dt class="hdlist1">Reboot</dt>
4102 <dd>
4103 <p>Remotely reboots the flight computer. This is useful
4104 when the flight computers turned on while the airframe
4105 is horizontal and you want to restart the flight
4106 computers in pad mode after raising the airframe to
4107 vertical.</p>
4108 </dd>
4109 <dt class="hdlist1">Fire Igniters</dt>
4110 <dd>
4111 <p>Remotely control igniters for ground testing recovery
4112 systems.</p>
4113 </dd>
4114 </dl>
4115 </div>
4116 </div>
4117 <div class="sect2">
4118 <h3 id="_altosdroid_flight_monitoring">13.8. AltosDroid Flight Monitoring</h3>
4119 <div class="paragraph">
4120 <p>AltosDroid is designed to mimic the AltosUI flight
4121 monitoring display, providing separate tabs for each
4122 stage of your rocket flight along with a tab
4123 containing a map of the local area with icons marking
4124 the current location of the altimeter and the Android
4125 device.</p>
4126 </div>
4127 </div>
4128 <div class="sect2">
4129 <h3 id="_pad">13.9. Pad</h3>
4130 <div class="paragraph">
4131 <p>The 'Pad' tab shows information used to decide when
4132 the rocket is ready for flight. The first elements
4133 include red/green indicators, if any of these is red,
4134 you&#8217;ll want to evaluate whether the rocket is ready to
4135 launch.</p>
4136 </div>
4137 <div class="paragraph">
4138 <p>When the pad tab is selected, the voice responses will
4139 include status changes to the igniters and GPS
4140 reception, letting you know if the rocket is still
4141 ready for launch.</p>
4142 </div>
4143 <div class="dlist">
4144 <dl>
4145 <dt class="hdlist1">Battery</dt>
4146 <dd>
4147 <p>This indicates whether the Li-Po battery powering the
4148 transmitter has sufficient charge to last for the
4149 duration of the flight. A value of more than 3.8V is
4150 required for a 'GO' status.</p>
4151 </dd>
4152 <dt class="hdlist1">Receiver Battery</dt>
4153 <dd>
4154 <p>This indicates whether the Li-Po battery powering the
4155 TeleBT has sufficient charge to last for the duration
4156 of the flight. A value of more than 3.8V is required
4157 for a 'GO' status.</p>
4158 </dd>
4159 <dt class="hdlist1">Data Logging</dt>
4160 <dd>
4161 <p>This indicates whether there is space remaining
4162 on-board to store flight data for the upcoming
4163 flight. If you&#8217;ve downloaded data, but failed to erase
4164 flights, there may not be any space left. TeleMetrum
4165 and TeleMega can store multiple flights, depending on
4166 the configured maximum flight log size. TeleGPS logs
4167 data continuously. TeleMini v1.0 stores only a single
4168 flight, so it will need to be downloaded and erased
4169 after each flight to capture data. This only affects
4170 on-board flight logging; the altimeter will still
4171 transmit telemetry and fire ejection charges at the
4172 proper times.</p>
4173 </dd>
4174 <dt class="hdlist1">GPS Locked</dt>
4175 <dd>
4176 <p>For a TeleMetrum or TeleMega device, this indicates
4177 whether the GPS receiver is currently able to compute
4178 position information. GPS requires at least 4
4179 satellites to compute an accurate position.</p>
4180 </dd>
4181 <dt class="hdlist1">GPS Ready</dt>
4182 <dd>
4183 <p>For a TeleMetrum or TeleMega device, this indicates
4184 whether GPS has reported at least 10 consecutive
4185 positions without losing lock. This ensures that the
4186 GPS receiver has reliable reception from the
4187 satellites.</p>
4188 </dd>
4189 <dt class="hdlist1">Apogee Igniter</dt>
4190 <dd>
4191 <p>This indicates whether the apogee igniter has
4192 continuity. If the igniter has a low resistance, then
4193 the voltage measured here will be close to the Li-Po
4194 battery voltage. A value greater than 3.2V is required
4195 for a 'GO' status.</p>
4196 </dd>
4197 <dt class="hdlist1">Main Igniter</dt>
4198 <dd>
4199 <p>This indicates whether the main igniter has
4200 continuity. If the igniter has a low resistance, then
4201 the voltage measured here will be close to the Li-Po
4202 battery voltage. A value greater than 3.2V is required
4203 for a 'GO' status.</p>
4204 </dd>
4205 <dt class="hdlist1">Igniter A-D</dt>
4206 <dd>
4207 <p>This indicates whether the indicated additional pyro
4208 channel igniter has continuity. If the igniter has a
4209 low resistance, then the voltage measured here will be
4210 close to the Li-Po battery voltage. A value greater
4211 than 3.2V is required for a 'GO' status.</p>
4212 </dd>
4213 </dl>
4214 </div>
4215 <div class="paragraph">
4216 <p>The Pad tab also shows the location of the Android
4217 device.</p>
4218 </div>
4219 </div>
4220 <div class="sect2">
4221 <h3 id="_flight">13.10. Flight</h3>
4222 <div class="paragraph">
4223 <p>The 'Flight' tab shows information used to evaluate
4224 and spot a rocket while in flight. It displays speed
4225 and height data to monitor the health of the rocket,
4226 along with elevation, range and bearing to help locate
4227 the rocket in the sky.</p>
4228 </div>
4229 <div class="paragraph">
4230 <p>While the Flight tab is displayed, the voice
4231 announcements will include current speed, height,
4232 elevation and bearing information.</p>
4233 </div>
4234 <div class="dlist">
4235 <dl>
4236 <dt class="hdlist1">Speed</dt>
4237 <dd>
4238 <p>Shows current vertical speed. During descent, the
4239 speed values are averaged over a fairly long time to
4240 try and make them steadier.</p>
4241 </dd>
4242 <dt class="hdlist1">Height</dt>
4243 <dd>
4244 <p>Shows the current height above the launch pad.</p>
4245 </dd>
4246 <dt class="hdlist1">Max Speed</dt>
4247 <dd>
4248 <p>Shows the maximum vertical speed seen during the
4249 flight.</p>
4250 </dd>
4251 <dt class="hdlist1">Max Height</dt>
4252 <dd>
4253 <p>Shows the maximum height above launch pad.</p>
4254 </dd>
4255 <dt class="hdlist1">Elevation</dt>
4256 <dd>
4257 <p>This is the angle above the horizon from the android
4258 devices current position.</p>
4259 </dd>
4260 <dt class="hdlist1">Range</dt>
4261 <dd>
4262 <p>The total distance from the android device to the
4263 rocket, including both ground distance and difference
4264 in altitude. Use this to gauge how large the rocket is
4265 likely to appear in the sky.</p>
4266 </dd>
4267 <dt class="hdlist1">Bearing</dt>
4268 <dd>
4269 <p>This is the azimuth from true north for the rocket
4270 from the android device. Use this in combination with
4271 the Elevation value to help locate the rocket in the
4272 sky, or at least to help point the antenna in the
4273 general direction. This is provided in both degrees
4274 and a compass point (like West South West). You&#8217;ll
4275 want to know which direction is true north before
4276 launching your rocket.</p>
4277 </dd>
4278 <dt class="hdlist1">Ground Distance</dt>
4279 <dd>
4280 <p>This shows the distance across the ground to the
4281 lat/lon where the rocket is located. Use this to
4282 estimate what is currently under the rocket.</p>
4283 </dd>
4284 <dt class="hdlist1">Latitude/Longitude</dt>
4285 <dd>
4286 <p>Displays the last known location of the rocket.</p>
4287 </dd>
4288 <dt class="hdlist1">Apogee Igniter</dt>
4289 <dd>
4290 <p>This indicates whether the apogee igniter has
4291 continuity. If the igniter has a low resistance, then
4292 the voltage measured here will be close to the Li-Po
4293 battery voltage. A value greater than 3.2V is required
4294 for a 'GO' status.</p>
4295 </dd>
4296 <dt class="hdlist1">Main Igniter</dt>
4297 <dd>
4298 <p>This indicates whether the main igniter has
4299 continuity. If the igniter has a low resistance, then
4300 the voltage measured here will be close to the Li-Po
4301 battery voltage. A value greater than 3.2V is required
4302 for a 'GO' status.</p>
4303 </dd>
4304 </dl>
4305 </div>
4306 </div>
4307 <div class="sect2">
4308 <h3 id="_recover">13.11. Recover</h3>
4309 <div class="paragraph">
4310 <p>The 'Recover' tab shows information used while
4311 recovering the rocket on the ground after flight.</p>
4312 </div>
4313 <div class="paragraph">
4314 <p>While the Recover tab is displayed, the voice
4315 announcements will include distance along with either
4316 bearing or direction, depending on whether you are
4317 moving.</p>
4318 </div>
4319 <div class="dlist">
4320 <dl>
4321 <dt class="hdlist1">Bearing</dt>
4322 <dd>
4323 <p>This is the azimuth from true north for the rocket
4324 from the android device. Use this in combination with
4325 the Elevation value to help locate the rocket in the
4326 sky, or at least to help point the antenna in the
4327 general direction. This is provided in both degrees
4328 and a compass point (like West South West). You&#8217;ll
4329 want to know which direction is true north before
4330 launching your rocket.</p>
4331 </dd>
4332 <dt class="hdlist1">Direction</dt>
4333 <dd>
4334 <p>When you are in motion, this provides the angle from
4335 your current direction of motion towards the rocket.</p>
4336 </dd>
4337 <dt class="hdlist1">Distance</dt>
4338 <dd>
4339 <p>Distance over the ground to the rocket.</p>
4340 </dd>
4341 <dt class="hdlist1">Tar Lat/Tar Lon</dt>
4342 <dd>
4343 <p>Displays the last known location of the rocket.</p>
4344 </dd>
4345 <dt class="hdlist1">My Lat/My Lon</dt>
4346 <dd>
4347 <p>Displays the location of the Android device.</p>
4348 </dd>
4349 <dt class="hdlist1">Max Height</dt>
4350 <dd>
4351 <p>Shows the maximum height above launch pad seen during
4352 the flight.</p>
4353 </dd>
4354 <dt class="hdlist1">Max Speed</dt>
4355 <dd>
4356 <p>Shows the maximum vertical speed seen during the
4357 flight.</p>
4358 </dd>
4359 <dt class="hdlist1">Max Accel</dt>
4360 <dd>
4361 <p>Shows the maximum vertical acceleration seen during
4362 the flight.</p>
4363 </dd>
4364 </dl>
4365 </div>
4366 </div>
4367 <div class="sect2">
4368 <h3 id="_map_2">13.12. Map</h3>
4369 <div class="paragraph">
4370 <p>The 'Map' tab shows a map of the area around the
4371 rocket being tracked along with information needed to
4372 recover it.</p>
4373 </div>
4374 <div class="paragraph">
4375 <p>On the map itself, icons showing the location of the
4376 android device along with the last known location of
4377 each tracker. A blue line is drawn from the android
4378 device location to the currently selected tracker.</p>
4379 </div>
4380 <div class="paragraph">
4381 <p>Below the map, the distance and either bearing or
4382 direction along with the lat/lon of the target and the
4383 android device are shown</p>
4384 </div>
4385 <div class="paragraph">
4386 <p>The Map tab provides the same voice announcements as
4387 the Recover tab.</p>
4388 </div>
4389 </div>
4390 <div class="sect2">
4391 <h3 id="_downloading_flight_logs">13.13. Downloading Flight Logs</h3>
4392 <div class="paragraph">
4393 <p>AltosDroid always saves every bit of telemetry data it
4394 receives. To download that to a computer for use with
4395 AltosUI, remove the SD card from your Android device,
4396 or connect your device to your computer&#8217;s USB port and
4397 browse the files on that device. You will find
4398 '.telem' files in the TeleMetrum directory that will
4399 work with AltosUI directly.</p>
4400 </div>
4401 </div>
4402 </div>
4403 </div>
4404 <div class="sect1">
4405 <h2 id="_system_operation">Appendix A: System Operation</h2>
4406 <div class="sectionbody">
4407 <div class="sect2">
4408 <h3 id="_firmware_modes">A.1. Firmware Modes</h3>
4409 <div class="paragraph">
4410 <p>The AltOS firmware build for the altimeters has two
4411 fundamental modes, “idle” and “flight”.  Which of these modes
4412 the firmware operates in is determined at start up
4413 time.
4414 For
4415 TeleMetrum, TeleMega, EasyMega and EasyTimer, which have accelerometers, the mode is
4416 controlled by the orientation of the
4417 rocket (well, actually the board, of course&#8230;&#8203;) at the time
4418 power is switched on.  If the rocket is “nose up”, then
4419 the flight computer assumes it&#8217;s on a rail or rod being prepared for
4420 launch, so the firmware chooses flight mode.  However, if the
4421 rocket is more or less horizontal, the firmware instead enters
4422 idle mode.
4423 Since
4424 EasyMini doesn&#8217;t
4425 have an
4426 accelerometer we can use to determine orientation, “idle” mode
4427 is selected if the board is connected via USB to a computer,
4428 otherwise the board enters “flight” mode.
4429 TeleMini
4430 selects “idle” mode if it receives a command packet
4431 within the
4432 first five seconds of operation.</p>
4433 </div>
4434 <div class="paragraph">
4435 <p>At power on, the altimeter will beep out the battery voltage
4436 to the nearest tenth of a volt.  Each digit is represented by
4437 a sequence of short “dit” beeps, with a pause between
4438 digits. A zero digit is represented with one long “dah”
4439 beep. Then there will be a short pause while the altimeter
4440 completes initialization and self test, and decides which mode
4441 to enter next.</p>
4442 </div>
4443 <div class="paragraph">
4444 <p>In flight or “pad” mode, the altimeter engages the flight
4445 state machine, goes into transmit-only mode to send telemetry,
4446 and waits for launch to be detected.  Flight mode is indicated
4447 by an “di-dah-dah-dit” (“P” for pad) on the beeper or lights,
4448 followed by beeps or flashes indicating the state of the
4449 pyrotechnic igniter continuity.  One beep/flash indicates
4450 apogee continuity, two beeps/flashes indicate main continuity,
4451 three beeps/flashes indicate both apogee and main continuity,
4452 and one longer “brap” sound which is made by rapidly
4453 alternating between two tones indicates no continuity.  For a
4454 dual deploy flight, make sure you&#8217;re getting three beeps or
4455 flashes before launching!  For apogee-only or motor eject
4456 flights, do what makes sense.</p>
4457 </div>
4458 <div class="paragraph">
4459 <p>If idle mode is entered, you will hear an audible “di-dit” or
4460 see two short flashes (“I” for idle), and the flight state
4461 machine is disengaged, thus no ejection charges will fire.
4462 The altimeters also listen for the radio link when in idle
4463 mode for requests sent via TeleDongle.  Commands can be issued
4464 in idle mode over either USB or the radio link
4465 equivalently.
4466 TeleMini only has the radio link.
4467 Idle mode is useful for configuring the altimeter, for
4468 extracting data from the on-board storage chip after
4469 flight, and for ground testing pyro charges.</p>
4470 </div>
4471 <div class="paragraph">
4472 <p>In “Idle” and “Pad” modes, once the mode indication
4473 beeps/flashes and continuity indication has been sent, if
4474 there is no space available to log the flight in on-board
4475 memory, the flight computer will emit a warbling tone (much
4476 slower than the “no continuity tone”)</p>
4477 </div>
4478 <div class="paragraph">
4479 <p>See <a href="#_understanding_beeps">Understanding Beeps</a> for a summary of all of
4480 the audio signals used.</p>
4481 </div>
4482 <div class="paragraph">
4483 <p>Once landed, the flight computer will signal that by emitting
4484 the “Landed” sound described above, after which it will beep
4485 out the apogee height (in meters). Each digit is represented
4486 by a sequence of short “dit” beeps, with a pause between
4487 digits. A zero digit is represented with one long “dah”
4488 beep. The flight computer will continue to report landed mode
4489 and beep out the maximum height until turned off.</p>
4490 </div>
4491 <div class="paragraph">
4492 <p>One “neat trick” of particular value when TeleMetrum, TeleMega
4493 or EasyMega are used with
4494 very large air-frames, is that you can power the board up while the
4495 rocket is horizontal, such that it comes up in idle mode.  Then you can
4496 raise the air-frame to launch position, and issue a 'reset' command
4497 via TeleDongle over the radio link to cause the altimeter to reboot and
4498 come up in flight mode.  This is much safer than standing on the top
4499 step of a rickety step-ladder or hanging off the side of a launch
4500 tower with a screw-driver trying to turn on your avionics before
4501 installing igniters!</p>
4502 </div>
4503 <div class="paragraph">
4504 <p>TeleMini is configured solely via the radio link. Of course, that
4505 means you need to know the TeleMini radio configuration values
4506 or you won&#8217;t be able to communicate with it. For situations
4507 when you don&#8217;t have the radio configuration values,
4508 TeleMini v1.0
4509 offers an 'emergency recovery' mode. In this mode,
4510 TeleMini v1.0 is
4511 configured as follows:</p>
4512 </div>
4513 <div class="ulist">
4514 <ul>
4515 <li>
4516 <p>Sets the radio frequency to 434.550MHz</p>
4517 </li>
4518 <li>
4519 <p>Sets the radio calibration back to the factory value.</p>
4520 </li>
4521 <li>
4522 <p>Sets the callsign to N0CALL</p>
4523 </li>
4524 <li>
4525 <p>Does not go to 'pad' mode after five seconds.</p>
4526 </li>
4527 </ul>
4528 </div>
4529 <div class="paragraph">
4530 <p>To get into 'emergency recovery' mode, first find the row of
4531 four small holes opposite the switch wiring. Using a short
4532 piece of small gauge wire, connect the outer two holes
4533 together, then power TeleMini up. Once the red LED is lit,
4534 disconnect the wire and the board should signal that it&#8217;s in
4535 'idle' mode after the initial five second startup
4536 period.</p>
4537 </div>
4538 </div>
4539 <div class="sect2">
4540 <h3 id="_gps">A.2. GPS</h3>
4541 <div class="paragraph">
4542 <p>TeleMetrum and TeleMega include a complete GPS receiver.  A
4543 complete explanation of how GPS works is beyond the scope of
4544 this manual, but the bottom line is that the GPS receiver
4545 needs to lock onto at least four satellites to obtain a solid
4546 3 dimensional position fix and know what time it is.</p>
4547 </div>
4548 <div class="paragraph">
4549 <p>The flight computers provide backup power to the GPS chip any time a
4550 battery is connected.  This allows the receiver to “warm start” on
4551 the launch rail much faster than if every power-on were a GPS
4552 “cold start”.  In typical operations, powering up
4553 on the flight line in idle mode while performing final air-frame
4554 preparation will be sufficient to allow the GPS receiver to cold
4555 start and acquire lock.  Then the board can be powered down during
4556 RSO review and installation on a launch rod or rail.  When the board
4557 is turned back on, the GPS system should lock very quickly, typically
4558 long before igniter installation and return to the flight line are
4559 complete.</p>
4560 </div>
4561 </div>
4562 <div class="sect2">
4563 <h3 id="_controlling_an_altimeter_over_the_radio_link">A.3. Controlling An Altimeter Over The Radio Link</h3>
4564 <div class="paragraph">
4565 <p>One of the unique features of the Altus Metrum system is the
4566 ability to create a two way command link between TeleDongle
4567 and an altimeter using the digital radio transceivers
4568 built into each device. This allows you to interact with the
4569 altimeter from afar, as if it were directly connected to the
4570 computer.</p>
4571 </div>
4572 <div class="paragraph">
4573 <p>Any operation which can be performed with a flight computer can
4574 either be done with the device directly connected to the
4575 computer via the USB cable, or through the radio
4576 link. TeleMini doesn&#8217;t provide a USB connector and so it is
4577 always communicated with over radio.  Select the appropriate
4578 TeleDongle device when the list of devices is presented and
4579 AltosUI will interact with an altimeter over the radio link.</p>
4580 </div>
4581 <div class="paragraph">
4582 <p>One oddity in the current interface is how AltosUI selects the
4583 frequency for radio communications. Instead of providing
4584 an interface to specifically configure the frequency, it uses
4585 whatever frequency was most recently selected for the target
4586 TeleDongle device in Monitor Flight mode. If you haven&#8217;t ever
4587 used that mode with the TeleDongle in question, select the
4588 Monitor Flight button from the top level UI, and pick the
4589 appropriate TeleDongle device.  Once the flight monitoring
4590 window is open, select the desired frequency and then close it
4591 down again. All radio communications will now use that frequency.</p>
4592 </div>
4593 <div class="ulist">
4594 <ul>
4595 <li>
4596 <p>Save Flight Data—Recover flight data from the
4597 rocket without opening it up.</p>
4598 </li>
4599 <li>
4600 <p>Configure altimeter apogee delays, main deploy
4601 heights and additional pyro event conditions to
4602 respond to changing launch conditions. You can also
4603 'reboot' the altimeter. Use this to remotely enable
4604 the flight computer by turning TeleMetrum or
4605 TeleMega on in “idle” mode, then once the air-frame
4606 is oriented for launch, you can reboot the
4607 altimeter and have it restart in pad mode without
4608 having to climb the scary ladder.</p>
4609 </li>
4610 <li>
4611 <p>Fire Igniters—Test your deployment charges without snaking
4612 wires out through holes in the air-frame. Simply assemble the
4613 rocket as if for flight with the apogee and main charges
4614 loaded, then remotely command the altimeter to fire the
4615 igniters.</p>
4616 </li>
4617 </ul>
4618 </div>
4619 <div class="paragraph">
4620 <p>Operation over the radio link for configuring an
4621 altimeter, ground testing igniters, and so forth uses
4622 the same RF frequencies as flight telemetry.  To
4623 configure the desired TeleDongle frequency, select the
4624 monitor flight tab, then use the frequency selector
4625 and close the window before performing other desired
4626 radio operations.</p>
4627 </div>
4628 <div class="paragraph">
4629 <p>The flight computers only enable radio commanding in
4630 'idle' mode.  TeleMetrum and TeleMega use the
4631 accelerometer to detect which orientation they start
4632 up in, so make sure you have the flight computer lying
4633 horizontally when you turn it on. Otherwise, it will
4634 start in 'pad' mode ready for flight, and will not be
4635 listening for command packets from TeleDongle.</p>
4636 </div>
4637 <div class="paragraph">
4638 <p>TeleMini listens for a command packet for five seconds
4639 after first being turned on, if it doesn&#8217;t hear
4640 anything, it enters 'pad' mode, ready for flight and
4641 will no longer listen for command packets. The easiest
4642 way to connect to TeleMini is to initiate the command
4643 and select the TeleDongle device. At this point, the
4644 TeleDongle will be attempting to communicate with the
4645 TeleMini. Now turn TeleMini on, and it should
4646 immediately start communicating with the TeleDongle
4647 and the desired operation can be performed.</p>
4648 </div>
4649 <div class="paragraph">
4650 <p>You can monitor the operation of the radio link by watching the
4651 lights on the devices. The red LED will flash each time a packet
4652 is transmitted, while the green LED will light up on TeleDongle when
4653 it is waiting to receive a packet from the altimeter.</p>
4654 </div>
4655 </div>
4656 <div class="sect2">
4657 <h3 id="_ground_testing">A.4. Ground Testing</h3>
4658 <div class="paragraph">
4659 <p>An important aspect of preparing a rocket using electronic deployment
4660 for flight is ground testing the recovery system.
4661 Thanks
4662 to the bi-directional radio link central to the Altus Metrum system,
4663 this can be accomplished in a TeleMega, TeleMetrum or TeleMini equipped rocket
4664 with less work than you may be accustomed to with other systems.  It
4665 can even be fun!</p>
4666 </div>
4667 <div class="paragraph">
4668 <p>Just prep the rocket for flight, then power up the altimeter
4669 in “idle”
4670 mode (placing air-frame horizontal for TeleMetrum or TeleMega, or
4671 selecting the Configure Altimeter tab for TeleMini).
4672 This will cause
4673 the firmware to go into “idle” mode, in which the normal flight
4674 state machine is disabled and charges will not fire without
4675 manual command.
4676 You can now command the altimeter to fire the apogee
4677 or main charges from a safe distance using your
4678 computer and the Fire Igniter tab to complete ejection testing.</p>
4679 </div>
4680 </div>
4681 <div class="sect2">
4682 <h3 id="_radio_link">A.5. Radio Link</h3>
4683 <div class="paragraph">
4684 <p>TeleMetrum, TeleMini and TeleMega all incorporate an
4685 RF transceiver, but it&#8217;s not a full duplex system;
4686 each end can only be transmitting or receiving at any
4687 given moment. So we had to decide how to manage the
4688 link.</p>
4689 </div>
4690 <div class="paragraph">
4691 <p>By design, the altimeter firmware listens for the
4692 radio link when it&#8217;s in “idle mode”, which allows us
4693 to use the radio link to configure the rocket, do
4694 things like ejection tests, and extract data after a
4695 flight without having to crack open the air-frame.
4696 However, when the board is in “flight mode”, the
4697 altimeter only transmits and doesn&#8217;t listen at all.
4698 That&#8217;s because we want to put ultimate priority on
4699 event detection and getting telemetry out of the
4700 rocket through the radio in case the rocket crashes
4701 and we aren&#8217;t able to extract data later.</p>
4702 </div>
4703 <div class="paragraph">
4704 <p>We don&#8217;t generally use a 'normal packet radio' mode
4705 like APRS because they&#8217;re just too inefficient.  The
4706 GFSK modulation we use is FSK with the base-band
4707 pulses passed through a Gaussian filter before they go
4708 into the modulator to limit the transmitted bandwidth.
4709 When combined with forward error correction and
4710 interleaving, this allows us to have a very robust
4711 19.2 kilobit data link with only 10-40 milliwatts of
4712 transmit power, a whip antenna in the rocket, and a
4713 hand-held Yagi on the ground.  We&#8217;ve had flights to
4714 above 21k feet AGL with great reception, and
4715 calculations suggest we should be good to well over
4716 40k feet AGL with a 5-element yagi on the ground with
4717 our 10mW units and over 100k feet AGL with the 40mW
4718 devices.  We hope to fly boards to higher altitudes
4719 over time, and would of course appreciate customer
4720 feedback on performance in higher altitude flights!</p>
4721 </div>
4722 </div>
4723 <div class="sect2">
4724 <h3 id="_aprs">A.6. APRS</h3>
4725 <div class="paragraph">
4726 <p>TeleMetrum v2 and newer and TeleMega can send APRS if desired, and the
4727 interval between APRS packets can be configured. As
4728 each APRS packet takes a full second to transmit, we
4729 recommend an interval of at least 5 seconds to avoid
4730 consuming too much battery power or radio channel
4731 bandwidth. You can configure the time within each
4732 minute that APRS transmits by changing the APRS offset
4733 value. When the GPS signal is locked and knows the
4734 current time, the APRS offset selects the time with
4735 each minute for the first APRS transmission;
4736 subsequent transmissions occur each APRS interval
4737 seconds thereafter.  You can configure the APRS
4738 interval and APRS offset using AltosUI; that
4739 process is described in <a href="#_configure_altimeter">Configure Altimeter</a>.</p>
4740 </div>
4741 <div class="paragraph">
4742 <p>AltOS supports both compressed and uncompressed APRS
4743 position report data formats. The compressed format
4744 provides for higher position precision and shorter
4745 packets than the uncompressed APRS format. We&#8217;ve found
4746 some older APRS receivers that do not handle the
4747 compressed format. The Kenwood TH-72A requires the use
4748 of uncompressed format to display altitude information
4749 correctly. The Yaesu FT1D requires the use of
4750 compressed format to display altitude information.</p>
4751 </div>
4752 <div class="paragraph">
4753 <p>APRS packets include an SSID (Secondary Station Identifier)
4754 field that allows one operator to have multiple
4755 transmitters. AltOS allows you to set this to a single digit
4756 from 0 to 9, allowing you to fly multiple transmitters at the
4757 same time while keeping the identify of each one separate in
4758 the receiver. By default, the SSID is set to the last digit of
4759 the device serial number.</p>
4760 </div>
4761 <div class="paragraph">
4762 <p>The APRS packet format includes a comment field that
4763 can have arbitrary text in it. AltOS uses this to send
4764 status information as shown in the following table.</p>
4765 </div>
4766 <table class="tableblock frame-all grid-all stretch">
4767 <caption class="title">Table 10. Altus Metrum APRS Comments</caption>
4768 <colgroup>
4769 <col style="width: 20%;">
4770 <col style="width: 20%;">
4771 <col style="width: 60%;">
4772 </colgroup>
4773 <thead>
4774 <tr>
4775 <th class="tableblock halign-left valign-top">Field</th>
4776 <th class="tableblock halign-left valign-top">Example</th>
4777 <th class="tableblock halign-left valign-top">Description</th>
4778 </tr>
4779 </thead>
4780 <tbody>
4781 <tr>
4782 <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td>
4783 <td class="tableblock halign-left valign-top"><p class="tableblock">L</p></td>
4784 <td class="tableblock halign-left valign-top"><p class="tableblock">GPS Status U for unlocked, L for locked</p></td>
4785 </tr>
4786 <tr>
4787 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
4788 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4789 <td class="tableblock halign-left valign-top"><p class="tableblock">Number of Satellites in View</p></td>
4790 </tr>
4791 <tr>
4792 <td class="tableblock halign-left valign-top"><p class="tableblock">3</p></td>
4793 <td class="tableblock halign-left valign-top"><p class="tableblock">B4.0</p></td>
4794 <td class="tableblock halign-left valign-top"><p class="tableblock">Altimeter Battery Voltage</p></td>
4795 </tr>
4796 <tr>
4797 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4798 <td class="tableblock halign-left valign-top"><p class="tableblock">A3.7</p></td>
4799 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee Igniter Voltage</p></td>
4800 </tr>
4801 <tr>
4802 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
4803 <td class="tableblock halign-left valign-top"><p class="tableblock">M3.7</p></td>
4804 <td class="tableblock halign-left valign-top"><p class="tableblock">Main Igniter Voltage</p></td>
4805 </tr>
4806 <tr>
4807 <td class="tableblock halign-left valign-top"><p class="tableblock">6</p></td>
4808 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4809 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4810 </tr>
4811 <tr>
4812 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
4813 <td class="tableblock halign-left valign-top"><p class="tableblock">1286</p></td>
4814 <td class="tableblock halign-left valign-top"><p class="tableblock">Device Serial Number</p></td>
4815 </tr>
4816 </tbody>
4817 </table>
4818 <div class="paragraph">
4819 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4820 satellites in view, a primary battery at 4.0V, and
4821 apogee and main igniters both at 3.7V from device 1286.</p>
4822 </div>
4823 <div class="literalblock">
4824 <div class="content">
4825 <pre>L6 B4.0 A3.7 M3.7 1286</pre>
4826 </div>
4827 </div>
4828 <div class="paragraph">
4829 <p>Here&#8217;s an example of an APRS comment showing GPS lock with 6
4830 satellites in view and a primary battery at 4.0V from device 1876.</p>
4831 </div>
4832 <div class="literalblock">
4833 <div class="content">
4834 <pre>L6 B4.0 1876</pre>
4835 </div>
4836 </div>
4837 <div class="paragraph">
4838 <p>Make sure your primary battery is above 3.8V
4839 any connected igniters are above 3.5V
4840 and GPS is locked with at least 5 or 6 satellites in
4841 view before flying. If GPS is switching between L and
4842 U regularly, then it doesn&#8217;t have a good lock and you
4843 should wait until it becomes stable.</p>
4844 </div>
4845 <div class="paragraph">
4846 <p>If the GPS receiver loses lock, the APRS data
4847 transmitted will contain the last position for which
4848 GPS lock was available. You can tell that this has
4849 happened by noticing that the GPS status character
4850 switches from 'L' to 'U'. Before GPS has locked, APRS
4851 will transmit zero for latitude, longitude and
4852 altitude.</p>
4853 </div>
4854 </div>
4855 <div class="sect2">
4856 <h3 id="_configurable_parameters">A.7. Configurable Parameters</h3>
4857 <div class="paragraph">
4858 <p>Configuring an Altus Metrum altimeter for flight is
4859 very simple.  Even on our baro-only TeleMini and
4860 EasyMini boards, the use of a Kalman filter means
4861 there is no need to set a “mach delay”.  All of the
4862 configurable parameters can be set using AltosUI. Read
4863 <a href="#_configure_altimeter">Configure Altimeter</a> for more information.</p>
4864 </div>
4865 </div>
4866 </div>
4867 </div>
4868 <div class="sect1">
4869 <h2 id="_example_pyro_channel_configurations">Appendix B: Example Pyro Channel Configurations</h2>
4870 <div class="sectionbody">
4871 <div class="paragraph">
4872 <p>Programming configurable pyro channels on Altus Metrum products that
4873 include them isn&#8217;t difficult, but in an attempt to aid understanding
4874 of the configuration interface and help "keep simple things simple",
4875 we offer the following examples of the simplest configurations for
4876 common situations, along with some hints on avoiding unexpected
4877 results.</p>
4878 </div>
4879 <div class="paragraph">
4880 <p>The rich set of conditions provided can be used to configure almost
4881 any pyro event you can imagine, for a wide variety of objectives.
4882 But don&#8217;t be fooled!  Typical events need only one or a few simple
4883 conditions to be configured for success.  A key thing to remember is
4884 that <strong>all</strong> configured conditions must be true to allow a pyro channel
4885 to fire.  Trying to include too many conditions often results in
4886 conflicting rules that never allow a channel to fire.  The most
4887 important advice we can offer is, therefore, to try and find the
4888 simplest set of conditions that will do what you need for a given
4889 project.</p>
4890 </div>
4891 <div class="sect2">
4892 <h3 id="_two_stage_flights">B.1. Two-Stage Flights</h3>
4893 <div class="paragraph">
4894 <p>Successful completion of a two-stage flight often involves
4895 programming of two events.  The first is firing a separation
4896 charge, the second is igniting the sustainer&#8217;s (primary)
4897 motor.</p>
4898 </div>
4899 <div class="paragraph">
4900 <p>Separation charges are best fired as soon as possible after
4901 the previous stage has completed providing acceleration, to
4902 minimize drag of the sustainer&#8217;s coast phase before ignition.
4903 Recovery, whether the remainder of the flight is nominal or
4904 not, usually works best when the stages are separated.  So,
4905 the "best" way to configure a pyro channel for a separation
4906 charge is to just set "after motor number".  For a 2-stage
4907 project, set this to "1".  This will cause the pyro channel
4908 to fire as soon as the firmware&#8217;s flight state machine
4909 determines the first motor has burned out.</p>
4910 </div>
4911 <div class="paragraph">
4912 <p>Safe ignition of a sustainer (primary) motor requires that
4913 it happen after the previous stage burns out, while the
4914 airframe remains mostly vertical, and typically after the
4915 sustainer has coasted away from the booster a bit.  A good
4916 starting point is thus "after motor number" set the same as
4917 the separation charge, which is "1" for a 2-stage rocket.
4918 Then "angle from vertical less than" set to some
4919 reasonably vertical amount, perhaps 20 degrees.  Then "delay
4920 after other conditions" set for the desired duration of coast.
4921 Use simulations to figure out what a reasonable value here is,
4922 but for typical high power rocketry sport flights that aren&#8217;t
4923 trying to set records, something like 2 seconds is usually a
4924 good place to start.</p>
4925 </div>
4926 </div>
4927 <div class="sect2">
4928 <h3 id="_triggered_clusters_and_air_starts">B.2. Triggered Clusters and Air Starts</h3>
4929 <div class="paragraph">
4930 <p>When an airframe has a cluster of motors, one of which is
4931 "primary" and centered, surrounding by a ring of "secondary"
4932 motors, you may want to use the launch control system to                        fire the primary motor and use onboard electronics to light
4933 the rest of the cluster as soon as launch is detected.  This
4934 is particularly true if the primary motor is significantly
4935 different in geometry and may take longer to come up to
4936 pressure than the secondary motors.  In this case, a simple
4937 configuration to light secondary motors is is "time since
4938 boost greater than" enabled and set to "0".  There&#8217;s
4939 really no point in setting an angle limit since no time has
4940 transpired for the airframe to change orientation.</p>
4941 </div>
4942 <div class="paragraph">
4943 <p>Air starts can use the same simple configuration, but with
4944 the time set to a non-zero value.  However, if air starts
4945 are going to light after the airframe leaves the launch rail
4946 or tower, add an "angle from vertical less than"
4947 condition just you would for a 2-stage sustainer to stay safe.</p>
4948 </div>
4949 </div>
4950 <div class="sect2">
4951 <h3 id="_redundant_apogee">B.3. Redundant Apogee</h3>
4952 <div class="paragraph">
4953 <p>When flying a board like TeleMega or EasyMega, it&#8217;s easy to
4954 configure a programmable channel to fire a redundant apogee
4955 charge.  This is of course not <strong>fully</strong> redundant, since it&#8217;s
4956 always possible that the board itself or its battery could
4957 the the failure source, but far more often, pyro events fail
4958 due to broken wires, bad connectors, or bad e-matches&#8230;&#8203; so
4959 firing two charges from one board can add useful redundancy.</p>
4960 </div>
4961 <div class="paragraph">
4962 <p>The simplest configuration for redundant apogee is "flight
4963 state after" set to "drogue", and then "delay after other
4964 conditions" set to a second or two.</p>
4965 </div>
4966 </div>
4967 <div class="sect2">
4968 <h3 id="_redundant_main">B.4. Redundant Main</h3>
4969 <div class="paragraph">
4970 <p>Similarly to apogee, configuring a redundant main charge can
4971 provide useful redundancy.  What we want is to configure an
4972 altitude for deployment lower than the primary main deploy
4973 altitude, and then ensure we only trigger on that condition
4974 while descending.</p>
4975 </div>
4976 <div class="paragraph">
4977 <p>The simplest configuration for redundant main is "flight
4978 state after" set to "drogue", which will ensure we&#8217;re in to
4979 the descent phase, then "height less than" set to a number
4980 lower than you&#8217;ve chosen for the primary main channel
4981 deployment height.</p>
4982 </div>
4983 </div>
4984 <div class="sect2">
4985 <h3 id="_apogee_above_baro_sensor_limit">B.5. Apogee Above Baro Sensor Limit</h3>
4986 <div class="paragraph">
4987 <p>A question we&#8217;ve seen increasingly often is "How does the
4988 Telemega/Easymega detect apogee for flights above 100,000
4989 feet?"  Flights above that height are a bit outside
4990 our original design envelope, but can be made to work&#8230;&#8203;
4991 This is <strong>not</strong> a simple flight, and the configuration for it
4992 is also not simple, but we think including this information
4993 is important for anyone contemplating such a project with our
4994 electronics!</p>
4995 </div>
4996 <div class="paragraph">
4997 <p>Our flight computers use a Kalman sensor-fusing filter to
4998 estimate the flight state, which consists of three values:</p>
4999 </div>
5000 <div class="olist arabic">
5001 <ol class="arabic">
5002 <li>
5003 <p>Height above ground</p>
5004 </li>
5005 <li>
5006 <p>Vertical speed</p>
5007 </li>
5008 <li>
5009 <p>Vertical acceleration</p>
5010 </li>
5011 </ol>
5012 </div>
5013 <div class="paragraph">
5014 <p>Apogee is assumed to be where vertical speed crosses zero.</p>
5015 </div>
5016 <div class="paragraph">
5017 <p>Below 30km altitude (about 100k'), we use both the barometer
5018 and the accelerometer to update the flight state, along with
5019 a basic Newtonian model of motion. That works well, pegging
5020 apogee within a few sensor samples essentially every time.</p>
5021 </div>
5022 <div class="paragraph">
5023 <p>Above 30km, the barometric sensor doesn&#8217;t provide useful data,
5024 so we can&#8217;t use it to update the flight state. Instead, the
5025 Kalman filter falls back to a single sensor mode, using only
5026 the accelerometer.</p>
5027 </div>
5028 <div class="paragraph">
5029 <p>At all altitudes, we de-sense the barometric data when we
5030 estimate the speed is near or above mach as the sensor is
5031 often subjected to significant transients, which would
5032 otherwise push the flight state estimates too fast and could
5033 trigger a false apogee event.</p>
5034 </div>
5035 <div class="paragraph">
5036 <p>That means the filter is no longer getting the benefit of two
5037 sensors, and relies on just the accelerometer. The trouble
5038 with accelerometers is they&#8217;re measuring the derivative of
5039 speed, so you have to integrate their values to compute speed.
5040 Any offset error in acceleration measurement gets constantly
5041 added to that speed.</p>
5042 </div>
5043 <div class="paragraph">
5044 <p>In addition, we assume the axial acceleration is actually
5045 vertical acceleration; our tilt measurements have enough
5046 integration error during coast that we can&#8217;t usefully use
5047 that to get vertical acceleration. Because we don&#8217;t live in
5048 an inertial frame, that means we&#8217;re mis-computing the total
5049 acceleration acting on the airframe as we have to add gravity
5050 into the mix, and simply adding that to the axial acceleration
5051 value doesn&#8217;t generate the right value.</p>
5052 </div>
5053 <div class="paragraph">
5054 <p>The effect of this is to under-estimate apogee when you base
5055 the computation purely on acceleration as the rocket flies a
5056 parabolic path.</p>
5057 </div>
5058 <div class="paragraph">
5059 <p>For flights <strong>near</strong> 100k', all of this works pretty well -
5060 you&#8217;ve got the flight state estimates adjusted using the
5061 barometric sensor up to 30km, then you&#8217;re flying on inertial
5062 data to apogee.</p>
5063 </div>
5064 <div class="paragraph">
5065 <p>For flights well above 100k', it&#8217;s not great; you&#8217;re usually
5066 going fast enough through 100k' that the baro sensor is still
5067 de-sensed through the end of its useful range, so the flight
5068 state estimates are not as close. After that, as you&#8217;re flying
5069 purely on accelerometer data, there&#8217;s no way to re-correct the
5070 state, so the apogee estimates can be off by quite a bit.</p>
5071 </div>
5072 <div class="paragraph">
5073 <p>In the worst cases we have seen, the baro sensor data was
5074 wildly incorrect above mach due to poor static port design,
5075 leaving the state estimate of speed across the 30km boundary
5076 way off and causing the apogee detection to happen far from
5077 the correct time.</p>
5078 </div>
5079 <div class="paragraph">
5080 <p>The good news is that correctly determining apogee is not
5081 really all that important at high altitudes; there&#8217;s so little
5082 density that a drogue will have almost no drag anyways.  Data
5083 from customer flights shows a very parabolic path down to
5084 about 50-60k feet, even with a recovery system deployed.</p>
5085 </div>
5086 <div class="paragraph">
5087 <p>So, what we recommend is to set up two apogee plans:</p>
5088 </div>
5089 <div class="olist arabic">
5090 <ol class="arabic">
5091 <li>
5092 <p>Use the built-in apogee detection, but add a
5093 significant delay (as much as 30 seconds). This
5094 will probably fire near enough to apogee to not
5095 have a significant impact on the maximum height
5096 achieved.</p>
5097 </li>
5098 <li>
5099 <p>Add a back-up apogee which fires after apogee
5100 <strong>when the height is below about 20-25km</strong>. This
5101 way, if the flight isn&#8217;t nominal, and the sustainer
5102 ends up reaching apogee in dense air, you aren&#8217;t
5103 hoping the chutes come out before it gets going
5104 too fast. And, you get a second pyro channel firing
5105 at that altitude even if it reached a higher
5106 altitude before.</p>
5107 </li>
5108 </ol>
5109 </div>
5110 <div class="paragraph">
5111 <p>You can wire these two pyro channels to the same pyro device;
5112 you just need to make sure they&#8217;re wired + to + and - to -
5113 (the manual shows which screw terminals are which).</p>
5114 </div>
5115 <div class="paragraph">
5116 <p>The bottom line is that flights to altitudes modestly above
5117 the range of the baro sensor with Altus Metrum products can
5118 be accomplished safely, but flying "way high" (like 300k')
5119 demands a deployment mechanism which doesn&#8217;t solely rely on
5120 altimeters (like ours) which are designed for modest altitude
5121 rocketry.  Flights to those altitudes also probably need
5122 active stabilization to make sure they follow the prescribed
5123 trajectory and stay inside their waiver.</p>
5124 </div>
5125 </div>
5126 </div>
5127 </div>
5128 <div class="sect1">
5129 <h2 id="_handling_precautions">Appendix C: Handling Precautions</h2>
5130 <div class="sectionbody">
5131 <div class="paragraph">
5132 <p>All Altus Metrum products are sophisticated electronic devices.
5133 When handled gently and properly installed in an air-frame, they
5134 will deliver impressive results.  However, as with all electronic
5135 devices, there are some precautions you must take.</p>
5136 </div>
5137 <div class="admonitionblock warning">
5138 <table>
5139 <tr>
5140 <td class="icon">
5141 <img src="./images/icons/warning.svg" alt="Warning">
5142 </td>
5143 <td class="content">
5144 The Lithium Polymer rechargeable batteries have an
5145 extraordinary power density.  This is great because we can fly with
5146 much less battery mass than if we used alkaline batteries or previous
5147 generation rechargeable batteries&#8230;&#8203; but if they are punctured
5148 or their leads are allowed to short, they can and will release their
5149 energy very rapidly!
5150 Thus we recommend that you take some care when handling our batteries
5151 and consider giving them some extra protection in your air-frame.  We
5152 often wrap them in suitable scraps of closed-cell packing foam before
5153 strapping them down, for example.
5154 </td>
5155 </tr>
5156 </table>
5157 </div>
5158 <div class="paragraph">
5159 <p>The barometric sensors used on all of our flight computers are
5160 sensitive to sunlight.  In normal mounting situations, the baro sensor
5161 and all of the other surface mount components
5162 are “down” towards whatever the underlying mounting surface is, so
5163 this is not normally a problem.  Please consider this when designing an
5164 installation in an air-frame with a see-through plastic payload bay.  It
5165 is particularly important to
5166 consider this with TeleMini v1.0, both because the baro sensor is on the
5167 “top” of the board, and because many model rockets with payload bays
5168 use clear plastic for the payload bay!  Replacing these with an opaque
5169 cardboard tube, painting them, or wrapping them with a layer of masking
5170 tape are all reasonable approaches to keep the sensor out of direct
5171 sunlight.</p>
5172 </div>
5173 <div class="paragraph">
5174 <p>The barometric sensor sampling port must be able to “breathe”,
5175 both by not being covered by foam or tape or other materials that might
5176 directly block the hole on the top of the sensor, and also by having a
5177 suitable static vent to outside air.</p>
5178 </div>
5179 <div class="paragraph">
5180 <p>As with all other rocketry electronics, Altus Metrum altimeters must
5181 be protected from exposure to corrosive motor exhaust and ejection
5182 charge gasses.</p>
5183 </div>
5184 </div>
5185 </div>
5186 <div class="sect1">
5187 <h2 id="_updating_device_firmware">Appendix D: Updating Device Firmware</h2>
5188 <div class="sectionbody">
5189 <div class="paragraph">
5190 <p>TeleMega, TeleMetrum v2 and newer, EasyMega, EasyMini and TeleDongle v3
5191 are all
5192 programmed directly over their USB connectors (self
5193 programming).
5194 TeleMetrum v1, TeleMini v1.0 and TeleDongle v0.2 are
5195 all programmed by using another device as a programmer (pair
5196 programming). It&#8217;s important to recognize which kind of devices
5197 you have before trying to reprogram them.</p>
5198 </div>
5199 <div class="paragraph">
5200 <p>TeleMini v3 can be updated directly over USB, but has no USB connector
5201 on the board.  Instead, the USB signals are present on a row of 6
5202 holes adjacent to the copyright assertion in the silk screen.  Thus,
5203 updating firmware on TeleMini v3 requires making up a special cable,
5204 after which you can treat it just like TeleMetrum or TeleMega.  Many
5205 USB cables seem to follow the color code of red is +5V, black is GND,
5206 green is USB +, and white is USB -.  On TeleMini v3, pin 3 which has
5207 a square copper pad is ground, pin 1 is USB -, and pin 2 is USB +.</p>
5208 </div>
5209 <div class="paragraph">
5210 <p>You may wish to begin by ensuring you have current firmware
5211 images.  These are distributed as part of the AltOS software
5212 bundle that also includes the AltosUI ground station program.
5213 Newer ground station versions typically work fine with older
5214 firmware versions, so you don&#8217;t need to update your devices
5215 just to try out new software features.  You can always
5216 download the most recent version from
5217 <a href="http://www.altusmetrum.org/AltOS/" class="bare">http://www.altusmetrum.org/AltOS/</a></p>
5218 </div>
5219 <div class="sect2">
5220 <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>
5221 <div class="paragraph">
5222 <p>Self-programmable devices are reprogrammed by
5223 connecting them to your computer over USB.</p>
5224 </div>
5225 <div class="olist arabic">
5226 <ol class="arabic">
5227 <li>
5228 <p>Attach a battery if necessary and power switch to
5229 the target device. Power up the device.</p>
5230 </li>
5231 <li>
5232 <p>Using a Micro USB cable, connect the target device to your
5233 computer&#8217;s USB socket.  If the target is a TeleMini v3,
5234 make up and attach a special USB cable.</p>
5235 </li>
5236 <li>
5237 <p>Run AltosUI, and select 'Flash Image' from the File menu.</p>
5238 </li>
5239 <li>
5240 <p>Select the target device in the Device Selection dialog.</p>
5241 </li>
5242 <li>
5243 <p>Select the image you want to flash to the device,
5244 which should have a name in the form
5245 &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx,
5246 such as EasyMini-v1.0-1.6.0.ihx.</p>
5247 </li>
5248 <li>
5249 <p>Make sure the configuration parameters are
5250 reasonable looking. If the serial number and/or RF
5251 configuration values aren&#8217;t right, you&#8217;ll need to
5252 change them.</p>
5253 </li>
5254 <li>
5255 <p>Hit the 'OK' button and the software should proceed
5256 to flash the device with new firmware, showing a
5257 progress bar.</p>
5258 </li>
5259 <li>
5260 <p>Verify that the device is working by using the
5261 'Configure Altimeter' or 'Configure Groundstation'
5262 item to check over the configuration.</p>
5263 </li>
5264 </ol>
5265 </div>
5266 <div class="sect3">
5267 <h4 id="_recovering_from_self_flashing_failure">D.1.1. Recovering From Self-Flashing Failure</h4>
5268 <div class="paragraph">
5269 <p>If the firmware loading fails, it can leave the device
5270 unable to boot. Not to worry, you can force the device to
5271 start the boot loader instead, which will let you try to
5272 flash the device again.</p>
5273 </div>
5274 <div class="paragraph">
5275 <p>On each device, connecting two pins from one of the exposed
5276 connectors will force the boot loader to start, even if the
5277 regular operating system has been corrupted in some way.</p>
5278 </div>
5279 <div class="dlist">
5280 <dl>
5281 <dt class="hdlist1">TeleMega</dt>
5282 <dd>
5283 <p>Connect pin 6 and pin 1 of the companion
5284 connector. Pin 1 can be identified by the square pad
5285 around it, and then the pins count sequentially across
5286 the board. Be very careful to <strong>not</strong> short pin 8 to
5287 anything as that is connected directly to the
5288 battery. Pin 7 carries 3.3V and the board will crash
5289 if that is connected to pin 1, but shouldn&#8217;t damage
5290 the board.</p>
5291 </dd>
5292 <dt class="hdlist1">EasyMega</dt>
5293 <dd>
5294 <p>Connect pin 6 and pin 1 of the companion
5295 connector. Pin 1 can be identified by the square pad
5296 around it, and then the pins count sequentially across
5297 the board. Be very careful to <strong>not</strong> short pin 8 to
5298 anything as that is connected directly to the
5299 battery. Pin 7 carries 3.3V and the board will crash
5300 if that is connected to pin 1, but shouldn&#8217;t damage
5301 the board.</p>
5302 </dd>
5303 <dt class="hdlist1">EasyTimer</dt>
5304 <dd>
5305 <p>Connect pin 5 and pin 1 of the debug connector, which
5306 is the six holes next to the beeper. Pin 1 can be
5307 identified by the square pad around it, and then the
5308 pins count sequentially across the board, making Pin 5
5309 the one on the other end of the row.</p>
5310 </dd>
5311 <dt class="hdlist1">TeleMetrum v2 and newer</dt>
5312 <dd>
5313 <p>Connect pin 6 and pin 1 of the companion
5314 connector. Pin 1 can be identified by the square pad
5315 around it, and then the pins count sequentially across
5316 the board. Be very careful to <strong>not</strong> short pin 8 to
5317 anything as that is connected directly to the
5318 battery. Pin 7 carries 3.3V and the board will crash
5319 if that is connected to pin 1, but shouldn&#8217;t damage
5320 the board.</p>
5321 </dd>
5322 <dt class="hdlist1">EasyMini</dt>
5323 <dd>
5324 <p>Connect pin 6 and pin 1 of the debug connector, which
5325 is the six holes next to the beeper. Pin 1 can be
5326 identified by the square pad around it, and then the
5327 pins count sequentially across the board, making Pin 6
5328 the one on the other end of the row.</p>
5329 </dd>
5330 <dt class="hdlist1">TeleGPS v1</dt>
5331 <dd>
5332 <p>Connect pin 32 on the CPU to ground.  Pin 32 is the
5333 right-most pin on the bottom edge of the CPU when the
5334 board is oriented with the USB and battery connectors
5335 to the right.</p>
5336 </dd>
5337 <dt class="hdlist1">TeleGPS v2</dt>
5338 <dd>
5339 <p>Connect together pins 1 and 5 of the Debug connector.
5340 Pin 1 is the pin with the square pad around the hole.</p>
5341 </dd>
5342 <dt class="hdlist1">TeleDongle v3</dt>
5343 <dd>
5344 <p>Connect pin 32 on the CPU to ground. Pin 32 is closest
5345 to the USB wires on the row of pins towards the center
5346 of the board. Ground is available on the capacitor
5347 next to it, on the end towards the USB wires.</p>
5348 </dd>
5349 <dt class="hdlist1">TeleBT v3</dt>
5350 <dd>
5351 <p>Connect pin 4 on the CPU to 3.3V, which can be done by
5352 connecting pin 1 to pin 4.  Pin 1 is the left pin on
5353 the lower edge of the chip when the unit is oriented
5354 such that the SMA is at the top.</p>
5355 </dd>
5356 <dt class="hdlist1">TeleBT v4</dt>
5357 <dd>
5358 <p>Connect pin 30 on the CPU to ground. Pin 30 is the 6th
5359 pin from the right on the top when the unit is oriented
5360 such that the SMA is at the top.</p>
5361 </dd>
5362 </dl>
5363 </div>
5364 <div class="paragraph">
5365 <p>Once you&#8217;ve located the right pins:</p>
5366 </div>
5367 <div class="olist arabic">
5368 <ol class="arabic">
5369 <li>
5370 <p>Turn the altimeter power off.</p>
5371 </li>
5372 <li>
5373 <p>Connect a battery.</p>
5374 </li>
5375 <li>
5376 <p>Connect the indicated terminals together with a
5377 short piece of wire. Take care not to accidentally
5378 connect anything else.</p>
5379 </li>
5380 <li>
5381 <p>Connect USB</p>
5382 </li>
5383 <li>
5384 <p>Turn the board power on.</p>
5385 </li>
5386 </ol>
5387 </div>
5388 <div class="paragraph">
5389 <p>The board should now be visible over USB as
5390 'AltosFlash' and be ready to receive firmware.  Once
5391 the board has been powered up, you can remove the
5392 piece of wire.</p>
5393 </div>
5394 </div>
5395 </div>
5396 <div class="sect2">
5397 <h3 id="_pair_programming">D.2. Pair Programming</h3>
5398 <div class="paragraph">
5399 <p>The big concept to understand is that you have to use
5400 a TeleMetrum v1.0, TeleBT v1.0 or TeleDongle v0.2 as a
5401 programmer to update a pair programmed device. Due to
5402 limited memory resources in the cc1111, we don&#8217;t
5403 support programming directly over USB for these
5404 devices.</p>
5405 </div>
5406 <div class="paragraph">
5407 <p>If you need to update the firmware on a TeleDongle
5408 v0.2, we recommend updating the altimeter first,
5409 before updating TeleDongle.  However, note that
5410 TeleDongle rarely need to be updated.  Any firmware
5411 version 1.0.1 or later will work, version 1.2.1 may
5412 have improved receiver performance slightly.</p>
5413 </div>
5414 <div class="sect3">
5415 <h4 id="_updating_telemetrum_v1_x_firmware">D.2.1. Updating TeleMetrum v1.x Firmware</h4>
5416 <div class="olist arabic">
5417 <ol class="arabic">
5418 <li>
5419 <p>Find the 'programming cable' that you got as
5420 part of the starter kit, that has a red
5421 8-pin MicroMaTch connector on one end and a
5422 red 4-pin MicroMaTch connector on the other
5423 end.</p>
5424 </li>
5425 <li>
5426 <p>Take the 2 screws out of the TeleDongle v0.2
5427 or TeleBT v1.0 case to get access to the
5428 circuit board.</p>
5429 </li>
5430 <li>
5431 <p>Plug the 8-pin end of the programming cable
5432 to the matching connector on the TeleDongle
5433 v0.2 or TeleBT v1.0, and the 4-pin end to
5434 the matching connector on the TeleMetrum.
5435 Note that each MicroMaTch connector has an
5436 alignment pin that goes through a hole in
5437 the PC board when you have the cable
5438 oriented correctly.</p>
5439 </li>
5440 <li>
5441 <p>Attach a battery to the TeleMetrum board.</p>
5442 </li>
5443 <li>
5444 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5445 your computer&#8217;s USB port, and power up the
5446 TeleMetrum.</p>
5447 </li>
5448 <li>
5449 <p>Run AltosUI, and select 'Flash Image' from
5450 the File menu.</p>
5451 </li>
5452 <li>
5453 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5454 device from the list, identifying it as the
5455 programming device.</p>
5456 </li>
5457 <li>
5458 <p>Select the image you want put on the
5459 TeleMetrum, which should have a name in the
5460 form telemetrum-v1.2-1.0.0.ihx.  It should
5461 be visible in the default directory, if not
5462 you may have to poke around your system to
5463 find it.</p>
5464 </li>
5465 <li>
5466 <p>Make sure the configuration parameters are
5467 reasonable looking. If the serial number
5468 and/or RF configuration values aren&#8217;t right,
5469 you&#8217;ll need to change them.</p>
5470 </li>
5471 <li>
5472 <p>Hit the 'OK' button and the software should
5473 proceed to flash the TeleMetrum with new
5474 firmware, showing a progress bar.</p>
5475 </li>
5476 <li>
5477 <p>Confirm that the TeleMetrum board seems to
5478 have updated OK, which you can do by
5479 plugging in to it over USB and using a
5480 terminal program to connect to the board and
5481 issue the 'v' command to check the version,
5482 etc.</p>
5483 </li>
5484 </ol>
5485 </div>
5486 <div class="paragraph">
5487 <p>If something goes wrong, give it another try.</p>
5488 </div>
5489 </div>
5490 <div class="sect3">
5491 <h4 id="_updating_telemini_v1_0_firmware">D.2.2. Updating TeleMini v1.0 Firmware</h4>
5492 <div class="paragraph">
5493 <p>You&#8217;ll need a special 'programming cable' to
5494 reprogram the TeleMini v1.0.  You can make your own
5495 using an 8-pin MicroMaTch connector on one end
5496 and a set of four pins on the other.</p>
5497 </div>
5498 <div class="olist arabic">
5499 <ol class="arabic">
5500 <li>
5501 <p>Take the 2 screws out of the TeleDongle v0.2
5502 or TeleBT v1.0 case to get access to the
5503 circuit board.</p>
5504 </li>
5505 <li>
5506 <p>Plug the 8-pin end of the programming cable
5507 to the matching connector on the TeleDongle
5508 v0.2 or TeleBT v1.0, and the 4-pins into the
5509 holes in the TeleMini v1.0 circuit board.  Note
5510 that the MicroMaTch connector has an
5511 alignment pin that goes through a hole in
5512 the PC board when you have the cable
5513 oriented correctly, and that pin 1 on the
5514 TeleMini v1.0 board is marked with a square pad
5515 while the other pins have round pads.</p>
5516 </li>
5517 <li>
5518 <p>Attach a battery to the TeleMini v1.0 board.</p>
5519 </li>
5520 <li>
5521 <p>Plug the TeleDongle v0.2 or TeleBT v1.0 into
5522 your computer&#8217;s USB port, and power up the
5523 TeleMini v1.0</p>
5524 </li>
5525 <li>
5526 <p>Run AltosUI, and select 'Flash Image' from
5527 the File menu.</p>
5528 </li>
5529 <li>
5530 <p>Pick the TeleDongle v0.2 or TeleBT v1.0
5531 device from the list, identifying it as the
5532 programming device.</p>
5533 </li>
5534 <li>
5535 <p>Select the image you want put on the
5536 TeleMini v1.0, which should have a name in the
5537 form telemini-v1.0-1.0.0.ihx.  It should be
5538 visible in the default directory, if not you
5539 may have to poke around your system to find
5540 it.</p>
5541 </li>
5542 <li>
5543 <p>Make sure the configuration parameters are
5544 reasonable looking. If the serial number
5545 and/or RF configuration values aren&#8217;t right,
5546 you&#8217;ll need to change them.</p>
5547 </li>
5548 <li>
5549 <p>Hit the 'OK' button and the software should
5550 proceed to flash the TeleMini v1.0 with new
5551 firmware, showing a progress bar.</p>
5552 </li>
5553 <li>
5554 <p>Confirm that the TeleMini v1.0 board seems to
5555 have updated OK, which you can do by
5556 configuring it over the radio link through
5557 the TeleDongle, or letting it come up in
5558 “flight” mode and listening for telemetry.</p>
5559 </li>
5560 </ol>
5561 </div>
5562 <div class="paragraph">
5563 <p>If something goes wrong, give it another try.</p>
5564 </div>
5565 </div>
5566 <div class="sect3">
5567 <h4 id="_updating_teledongle_v0_2_firmware">D.2.3. Updating TeleDongle v0.2 Firmware</h4>
5568 <div class="paragraph">
5569 <p>Updating TeleDongle v0.2 firmware is just like
5570 updating TeleMetrum v1.x or TeleMini v1.0 firmware, but you
5571 use either a TeleMetrum v1.x, TeleDongle v0.2 or
5572 TeleBT v1.0 as the programmer.</p>
5573 </div>
5574 <div class="olist arabic">
5575 <ol class="arabic">
5576 <li>
5577 <p>Find the 'programming cable' that you got as part of
5578 the starter kit, that has a red 8-pin MicroMaTch
5579 connector on one end and a red 4-pin MicroMaTch
5580 connector on the other end.</p>
5581 </li>
5582 <li>
5583 <p>Find the USB cable that you got as part of the
5584 starter kit, and plug the “mini” end in to the
5585 mating connector on TeleMetrum v1.x, TeleDongle v0.2
5586 or TeleBT v1.0.</p>
5587 </li>
5588 <li>
5589 <p>Take the 2 screws out of the TeleDongle v0.2 or
5590 TeleBT v1.0 case to get access to the circuit board.</p>
5591 </li>
5592 <li>
5593 <p>Plug the 8-pin end of the programming cable to the
5594 matching connector on the programmer, and the 4-pin
5595 end to the matching connector on the TeleDongle
5596 v0.2.  Note that each MicroMaTch connector has an
5597 alignment pin that goes through a hole in the PC
5598 board when you have the cable oriented correctly.</p>
5599 </li>
5600 <li>
5601 <p>Attach a battery to the TeleMetrum v1.x board if
5602 you&#8217;re using one.</p>
5603 </li>
5604 <li>
5605 <p>Plug both the programmer and the TeleDongle into
5606 your computer&#8217;s USB ports, and power up the
5607 programmer.</p>
5608 </li>
5609 <li>
5610 <p>Run AltosUI, and select 'Flash Image' from the File
5611 menu.</p>
5612 </li>
5613 <li>
5614 <p>Pick the programmer device from the list,
5615 identifying it as the programming device.</p>
5616 </li>
5617 <li>
5618 <p>Select the image you want put on the TeleDongle
5619 v0.2, which should have a name in the form
5620 teledongle-v0.2-1.0.0.ihx.  It should be visible in
5621 the default directory, if not you may have to poke
5622 around your system to find it.</p>
5623 </li>
5624 <li>
5625 <p>Make sure the configuration parameters are
5626 reasonable looking. If the serial number and/or RF
5627 configuration values aren&#8217;t right, you&#8217;ll need to
5628 change them.  The TeleDongle v0.2 serial number is
5629 on the “bottom” of the circuit board, and can
5630 usually be read through the translucent blue plastic
5631 case without needing to remove the board from the
5632 case.</p>
5633 </li>
5634 <li>
5635 <p>Hit the 'OK' button and the software should proceed
5636 to flash the TeleDongle v0.2 with new firmware,
5637 showing a progress bar.</p>
5638 </li>
5639 <li>
5640 <p>Confirm that the TeleDongle v0.2 board seems to have
5641 updated OK, which you can do by plugging in to it
5642 over USB and using a terminal program to connect to
5643 the board and issue the 'v' command to check the
5644 version, etc.  Once you&#8217;re happy, remove the
5645 programming cable and put the cover back on the
5646 TeleDongle v0.2.</p>
5647 </li>
5648 </ol>
5649 </div>
5650 <div class="paragraph">
5651 <p>If something goes wrong, give it another try.</p>
5652 </div>
5653 <div class="paragraph">
5654 <p>Be careful removing the programming cable from the
5655 locking 8-pin connector on TeleMetrum.  You&#8217;ll need a
5656 fingernail or perhaps a thin screwdriver or knife
5657 blade to gently pry the locking ears out slightly to
5658 extract the connector.  We used a locking connector on
5659 TeleMetrum to help ensure that the cabling to
5660 companion boards used in a rocket don&#8217;t ever come
5661 loose accidentally in flight.</p>
5662 </div>
5663 </div>
5664 </div>
5665 </div>
5666 </div>
5667 <div class="sect1">
5668 <h2 id="_frequency_calibration">Appendix E: Frequency Calibration</h2>
5669 <div class="sectionbody">
5670 <div class="paragraph">
5671 <p>All products that have radio interfaces require calibration of the radio
5672 frequency.  Normally, this calibration is done once during the production
5673 process and the resulting cal value is saved into non-volatile memory.  The
5674 procedure decribed here should only be used outside of the factory if you
5675 are really convinced the radio calibration is bad, and you have access to
5676 the required tools to do the calibration.</p>
5677 </div>
5678 <div class="paragraph">
5679 <p>Because this procedure is only rarely needed in the field, we have not
5680 written any fancy user interface for doing it .. some interaction with
5681 and careful typing in a command-like style interface are required!</p>
5682 </div>
5683 <div class="sect2">
5684 <h3 id="_background_information">E.1. Background Information</h3>
5685 <div class="paragraph">
5686 <p>The radio system on each board uses a quartz crystal to control
5687 a frequency synthesizer that can be programmed to a range of operating
5688 frequencies.  While these crystals are very stable, they have an accuracy
5689 specification that means once the base frequency they set is multiplied up
5690 to the typical operating range of our products, any variation also gets
5691 multiplied.  The objective of the calibration process is, indirectly, to
5692 measure the actual operating frequency of the crystal and adjust the way
5693 the frequency synthesizer is programmed to account for this variation.</p>
5694 </div>
5695 <div class="paragraph">
5696 <p>The frequency may shift a few tens of Hz over the full operating temperature
5697 range, and it may also shift a bit over time as the crystal ages.  But once
5698 properly calibrated, none of those changes are likely to ever cause any
5699 operational problem, as the shift in operating frequency due to these factors
5700 is tiny compared to the bandwidth of our transmitted signal.</p>
5701 </div>
5702 </div>
5703 <div class="sect2">
5704 <h3 id="_required_equipment">E.2. Required Equipment</h3>
5705 <div class="paragraph">
5706 <p>The calibration process requires the ability to precisely measure the actual
5707 frequency of a steady CW carrier on or about the intended operating frequency
5708 in the vicinity of 435 MHz.</p>
5709 </div>
5710 <div class="paragraph">
5711 <p>In production, we use an HP 5385A that is locked to a 10 MHz reference that
5712 is in turn locked to GPS, which provides a highly accurate calibration.  Any
5713 reasonably accurate frequency counter is likely to be sufficient.</p>
5714 </div>
5715 <div class="paragraph">
5716 <p>You also need a computer with terminal program and USB cable to attach to
5717 the board in question, along with a battery and power switch suitable for
5718 powering the board up.</p>
5719 </div>
5720 </div>
5721 <div class="sect2">
5722 <h3 id="_rf_calibration_procedure">E.3. RF Calibration Procedure</h3>
5723 <div class="paragraph">
5724 <p>Using the terminal program, connect to the board over USB.  You will find
5725 that you are now interacting with a command interpreter on the board.  Using
5726 '?' will show the available commands.  Of interest for this process are the
5727 'C' command which turns on a steady transmitted carrier on the currently
5728 selected operating frequency, and the 'c' subcommands that allow interaction
5729 with the saved configuration.</p>
5730 </div>
5731 <div class="paragraph">
5732 <p>Use the 'c s' command to discover and note the current radio calibration
5733 value, and the operating frequency the board is configured for in kHz.</p>
5734 </div>
5735 <div class="paragraph">
5736 <p>Set up your frequency counter with a suitable antenna near the board&#8217;s
5737 antenna and use the 'C' command to turn on a steady carrier.  Let the
5738 frequency stabilize, and note what it is to as many digits as are steady
5739 on your counter&#8217;s display.</p>
5740 </div>
5741 <div class="paragraph">
5742 <p>To calculate the new calibration value, the equation is:</p>
5743 </div>
5744 <div class="olist arabic">
5745 <ol class="arabic">
5746 <li>
5747 <p>(intended_frequency / measured_frequency) * current_cal_value</p>
5748 </li>
5749 </ol>
5750 </div>
5751 <div class="paragraph">
5752 <p>Set the new calibration value using 'c f &lt;value&gt;', then use 'c w' to save
5753 that cal value into non-volatile memory.  You can use the 'C' command again
5754 to confirm the operating frequency is now within a few 10&#8217;s of Hz of the
5755 intended operating frequency.</p>
5756 </div>
5757 </div>
5758 </div>
5759 </div>
5760 <div class="sect1">
5761 <h2 id="_flight_data_recording">Appendix F: Flight Data Recording</h2>
5762 <div class="sectionbody">
5763 <div class="paragraph">
5764 <p>Each flight computer logs data at 100 samples per second
5765 during ascent and 10 samples per second during
5766 descent, except for TeleMini v1.0, which records ascent at 10 samples
5767 per second and descent at 1 sample per second.
5768 Data are logged to
5769 an on-board flash memory part, which can be partitioned into
5770 several equal-sized blocks, one for each flight.</p>
5771 </div>
5772 <table class="tableblock frame-all grid-all stretch">
5773 <caption class="title">Table 11. Data Storage on Altus Metrum altimeters</caption>
5774 <colgroup>
5775 <col style="width: 25%;">
5776 <col style="width: 25%;">
5777 <col style="width: 25%;">
5778 <col style="width: 25%;">
5779 </colgroup>
5780 <thead>
5781 <tr>
5782 <th class="tableblock halign-left valign-top">Device</th>
5783 <th class="tableblock halign-left valign-top">Bytes per Sample</th>
5784 <th class="tableblock halign-left valign-top">Total Storage</th>
5785 <th class="tableblock halign-left valign-top">Minutes at Full Rate</th>
5786 </tr>
5787 </thead>
5788 <tbody>
5789 <tr>
5790 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5791 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5792 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5793 <td class="tableblock halign-left valign-top"><p class="tableblock">20</p></td>
5794 </tr>
5795 <tr>
5796 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1 v1.2</p></td>
5797 <td class="tableblock halign-left valign-top"><p class="tableblock">8</p></td>
5798 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5799 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5800 </tr>
5801 <tr>
5802 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5803 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5804 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5805 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5806 </tr>
5807 <tr>
5808 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5809 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5810 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5811 <td class="tableblock halign-left valign-top"><p class="tableblock">80</p></td>
5812 </tr>
5813 <tr>
5814 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5815 <td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
5816 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5817 <td class="tableblock halign-left valign-top"><p class="tableblock">4</p></td>
5818 </tr>
5819 <tr>
5820 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5821 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5822 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
5823 <td class="tableblock halign-left valign-top"><p class="tableblock">5</p></td>
5824 </tr>
5825 <tr>
5826 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
5827 <td class="tableblock halign-left valign-top"><p class="tableblock">16</p></td>
5828 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5829 <td class="tableblock halign-left valign-top"><p class="tableblock">10</p></td>
5830 </tr>
5831 <tr>
5832 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
5833 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5834 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5835 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5836 </tr>
5837 <tr>
5838 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
5839 <td class="tableblock halign-left valign-top"><p class="tableblock">32</p></td>
5840 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5841 <td class="tableblock halign-left valign-top"><p class="tableblock">40</p></td>
5842 </tr>
5843 </tbody>
5844 </table>
5845 <div class="paragraph">
5846 <p>The on-board flash is partitioned into separate flight logs,
5847 each of a fixed maximum size. Increase the maximum size of
5848 each log and you reduce the number of flights that can be
5849 stored. Decrease the size and you can store more flights.</p>
5850 </div>
5851 <div class="paragraph">
5852 <p>Configuration data is also stored in the flash memory on
5853 TeleMetrum v1.x,
5854 TeleMini v3.0 and
5855 EasyMini.
5856 This consumes 64kB
5857 of flash space.  This configuration space is not available
5858 for storing flight log data.</p>
5859 </div>
5860 <div class="paragraph">
5861 <p>TeleMetrum v2 or newer, TeleMega and EasyMega
5862 store configuration data in a bit of eeprom available within
5863 the processor chip, leaving that space available in flash for
5864 more flight data.</p>
5865 </div>
5866 <div class="paragraph">
5867 <p>To compute the amount of space needed for a single flight, you
5868 can multiply the expected ascent time (in seconds) by 100
5869 times bytes-per-sample, multiply the expected descent time (in
5870 seconds) by 10 times the bytes per sample and add the two
5871 together. That will slightly under-estimate the storage (in
5872 bytes) needed for the flight.
5873 For instance, a TeleMetrum v2 or newer flight spending
5874 20 seconds in ascent and 150 seconds in descent will take
5875 about (20 * 1600) + (150 * 160) = 56000 bytes of storage. You
5876 could store dozens of these flights in the on-board flash.</p>
5877 </div>
5878 <div class="paragraph">
5879 <p>The default size allows for several flights on each flight
5880 computer, except for TeleMini v1.0, which
5881 only holds data for a single flight.
5882 You can adjust the size.</p>
5883 </div>
5884 <div class="paragraph">
5885 <p>Altus Metrum flight computers will not overwrite existing
5886 flight data, so be sure to download flight data and erase it
5887 from the flight computer before it fills up. The flight
5888 computer will still successfully control the flight even if it
5889 cannot log data, so the only thing you will lose is the data.</p>
5890 </div>
5891 </div>
5892 </div>
5893 <div class="sect1">
5894 <h2 id="_altus_metrum_hardware_specifications">Appendix G: Altus Metrum Hardware Specifications</h2>
5895 <div class="sectionbody">
5896 <div class="paragraph">
5897 <p>Here&#8217;s the full set of Altus Metrum products, both in
5898 production and retired.</p>
5899 </div>
5900 <table class="tableblock frame-all grid-all stretch">
5901 <caption class="title">Table 12. Altus Metrum Flight Computer Electronics</caption>
5902 <colgroup>
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 <col style="width: 12.5%;">
5911 </colgroup>
5912 <thead>
5913 <tr>
5914 <th class="tableblock halign-left valign-top">Device</th>
5915 <th class="tableblock halign-left valign-top">Barometer</th>
5916 <th class="tableblock halign-left valign-top">Z-axis accel</th>
5917 <th class="tableblock halign-left valign-top">GPS</th>
5918 <th class="tableblock halign-left valign-top">3D sensors</th>
5919 <th class="tableblock halign-left valign-top">Storage</th>
5920 <th class="tableblock halign-left valign-top">RF Output</th>
5921 <th class="tableblock halign-left valign-top">Battery</th>
5922 </tr>
5923 </thead>
5924 <tbody>
5925 <tr>
5926 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.0</p></td>
5927 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5928 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5929 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5930 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5931 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
5932 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5933 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5934 </tr>
5935 <tr>
5936 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.1</p></td>
5937 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5938 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA2202 50g</p></td>
5939 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5940 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5941 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5942 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5943 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5944 </tr>
5945 <tr>
5946 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v1.2</p></td>
5947 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</p></td>
5948 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL78 70g</p></td>
5949 <td class="tableblock halign-left valign-top"><p class="tableblock">SkyTraq</p></td>
5950 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5951 <td class="tableblock halign-left valign-top"><p class="tableblock">2MB</p></td>
5952 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5953 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5954 </tr>
5955 <tr>
5956 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v2.0</p></td>
5957 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5958 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
5959 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
5960 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5961 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5962 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5963 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5964 </tr>
5965 <tr>
5966 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v3.0</p></td>
5967 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5968 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5969 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
5970 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5971 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5972 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5973 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5974 </tr>
5975 <tr>
5976 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum v4.0</p></td>
5977 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
5978 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
5979 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8C/10S</p></td>
5980 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
5981 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
5982 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
5983 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5984 </tr>
5985 <tr>
5986 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
5987 <td class="tableblock halign-left valign-top"><p class="tableblock">MP3H6115 10km (33k')</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">-</p></td>
5991 <td class="tableblock halign-left valign-top"><p class="tableblock">5kB</p></td>
5992 <td class="tableblock halign-left valign-top"><p class="tableblock">10mW</p></td>
5993 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
5994 </tr>
5995 <tr>
5996 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v3.0</p></td>
5997 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</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">-</p></td>
6001 <td class="tableblock halign-left valign-top"><p class="tableblock">512kB</p></td>
6002 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6003 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6004 </tr>
6005 <tr>
6006 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini v1.0-v3.0</p></td>
6007 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</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">-</p></td>
6011 <td class="tableblock halign-left valign-top"><p class="tableblock">1MB</p></td>
6012 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6013 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6014 </tr>
6015 <tr>
6016 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v1.0</p></td>
6017 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6018 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6019 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6020 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6021 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6022 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6023 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6024 </tr>
6025 <tr>
6026 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v2.0</p></td>
6027 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6028 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6029 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6030 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6031 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6032 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6033 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6034 </tr>
6035 <tr>
6036 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v3.0</p></td>
6037 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6038 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6039 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-7Q</p></td>
6040 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6041 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6042 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6043 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6044 </tr>
6045 <tr>
6046 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v4.0</p></td>
6047 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6048 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6049 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6050 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</p></td>
6051 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6052 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6053 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6054 </tr>
6055 <tr>
6056 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v5.0</p></td>
6057 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6058 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6059 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6060 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 MMC5983</p></td>
6061 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6062 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6063 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6064 </tr>
6065 <tr>
6066 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega v6.0</p></td>
6067 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6068 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6069 <td class="tableblock halign-left valign-top"><p class="tableblock">uBlox Max-8Q</p></td>
6070 <td class="tableblock halign-left valign-top"><p class="tableblock">BMI088 MMC5983</p></td>
6071 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6072 <td class="tableblock halign-left valign-top"><p class="tableblock">40mW</p></td>
6073 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6074 </tr>
6075 <tr>
6076 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v1.0</p></td>
6077 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6078 <td class="tableblock halign-left valign-top"><p class="tableblock">MMA6555 102g</p></td>
6079 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6080 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU6000 HMC5883</p></td>
6081 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6082 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6083 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6084 </tr>
6085 <tr>
6086 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega v2.0</p></td>
6087 <td class="tableblock halign-left valign-top"><p class="tableblock">MS5607 30km (100k')</p></td>
6088 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</p></td>
6089 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6090 <td class="tableblock halign-left valign-top"><p class="tableblock">MPU9250</p></td>
6091 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6092 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6093 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7V</p></td>
6094 </tr>
6095 <tr>
6096 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer v1.0</p></td>
6097 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6098 <td class="tableblock halign-left valign-top"><p class="tableblock">16g</p></td>
6099 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6100 <td class="tableblock halign-left valign-top"><p class="tableblock">BMX160</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">-</p></td>
6103 <td class="tableblock halign-left valign-top"><p class="tableblock">3.7-12V</p></td>
6104 </tr>
6105 <tr>
6106 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor v3.0</p></td>
6107 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6108 <td class="tableblock halign-left valign-top"><p class="tableblock">ADXL375 200g</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">-</p></td>
6111 <td class="tableblock halign-left valign-top"><p class="tableblock">8MB</p></td>
6112 <td class="tableblock halign-left valign-top"><p class="tableblock">-</p></td>
6113 <td class="tableblock halign-left valign-top"><p class="tableblock">6.5-15V</p></td>
6114 </tr>
6115 </tbody>
6116 </table>
6117 <div style="page-break-after: always;"></div>
6118 <table class="tableblock frame-all grid-all stretch">
6119 <caption class="title">Table 13. Altus Metrum Flight Computer Mechanical Components</caption>
6120 <colgroup>
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.6666%;">
6126 <col style="width: 16.667%;">
6127 </colgroup>
6128 <thead>
6129 <tr>
6130 <th class="tableblock halign-left valign-top">Device</th>
6131 <th class="tableblock halign-left valign-top">Connectors</th>
6132 <th class="tableblock halign-left valign-top">Screw Terminals</th>
6133 <th class="tableblock halign-left valign-top">Width</th>
6134 <th class="tableblock halign-left valign-top">Length</th>
6135 <th class="tableblock halign-left valign-top">Tube Size</th>
6136 </tr>
6137 </thead>
6138 <tbody>
6139 <tr>
6140 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMetrum</p></td>
6141 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6142 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Switch</p></td>
6143 <td class="tableblock halign-left valign-top"><p class="tableblock">1 inch (2.54cm)</p></td>
6144 <td class="tableblock halign-left valign-top"><p class="tableblock">2 ¾ inch (6.99cm)</p></td>
6145 <td class="tableblock halign-left valign-top"><p class="tableblock">29mm coupler</p></td>
6146 </tr>
6147 <tr>
6148 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v1.0</p></td>
6149 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Battery</p></td>
6150 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro</p></td>
6151 <td class="tableblock halign-left valign-top"><p class="tableblock">½ inch (1.27cm)</p></td>
6152 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6153 <td class="tableblock halign-left valign-top"><p class="tableblock">18mm coupler</p></td>
6154 </tr>
6155 <tr>
6156 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMini v2.0</p></td>
6157 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug USB Battery</p></td>
6158 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery Switch</p></td>
6159 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6160 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6161 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6162 </tr>
6163 <tr>
6164 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMini</p></td>
6165 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6166 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Battery</p></td>
6167 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6168 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6169 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6170 </tr>
6171 <tr>
6172 <td class="tableblock halign-left valign-top"><p class="tableblock">TeleMega</p></td>
6173 <td class="tableblock halign-left valign-top"><p class="tableblock">Antenna Debug Companion USB Battery</p></td>
6174 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6175 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6176 <td class="tableblock halign-left valign-top"><p class="tableblock">3¼ inch (8.26cm)</p></td>
6177 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6178 </tr>
6179 <tr>
6180 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMega</p></td>
6181 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug Companion USB Battery</p></td>
6182 <td class="tableblock halign-left valign-top"><p class="tableblock">Apogee pyro Main pyro Pyro A-D Switch Pyro battery</p></td>
6183 <td class="tableblock halign-left valign-top"><p class="tableblock">1¼ inch (3.18cm)</p></td>
6184 <td class="tableblock halign-left valign-top"><p class="tableblock">2¼ inch (5.62cm)</p></td>
6185 <td class="tableblock halign-left valign-top"><p class="tableblock">38mm coupler</p></td>
6186 </tr>
6187 <tr>
6188 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyTimer</p></td>
6189 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB Battery</p></td>
6190 <td class="tableblock halign-left valign-top"><p class="tableblock">Pyro A Pyro B Battery</p></td>
6191 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6192 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6193 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6194 </tr>
6195 <tr>
6196 <td class="tableblock halign-left valign-top"><p class="tableblock">EasyMotor</p></td>
6197 <td class="tableblock halign-left valign-top"><p class="tableblock">Debug USB</p></td>
6198 <td class="tableblock halign-left valign-top"><p class="tableblock">+5V Pres GND Switch Battery</p></td>
6199 <td class="tableblock halign-left valign-top"><p class="tableblock">0.8 inch (2.03cm)</p></td>
6200 <td class="tableblock halign-left valign-top"><p class="tableblock">1½ inch (3.81cm)</p></td>
6201 <td class="tableblock halign-left valign-top"><p class="tableblock">24mm coupler</p></td>
6202 </tr>
6203 </tbody>
6204 </table>
6205 </div>
6206 </div>
6207 <div class="sect1">
6208 <h2 id="_release_notes">Appendix H: Release Notes</h2>
6209 <div class="sectionbody">
6210 <div class="sect2">
6211 <h3 id="_release_notes_for_version_1_9_17">H.1. Release Notes for Version 1.9.17</h3>
6212 <div class="paragraph">
6213 <p>Version 1.9.17</p>
6214 </div>
6215 <div class="sect3">
6216 <h4 id="_altos">H.1.1. AltOS</h4>
6217 <div class="ulist">
6218 <ul>
6219 <li>
6220 <p>Fix TeleMini v3 Monitor Idle support</p>
6221 </li>
6222 <li>
6223 <p>Support TeleMetrum v4.0 with uBlox-10 GPS module</p>
6224 </li>
6225 <li>
6226 <p>Improve igniter reporting via the beeper.</p>
6227 </li>
6228 </ul>
6229 </div>
6230 </div>
6231 <div class="sect3">
6232 <h4 id="_altosui_telegps_application">H.1.2. AltosUI &amp; TeleGPS application</h4>
6233 <div class="ulist">
6234 <ul>
6235 <li>
6236 <p>Add support for EasyMini v3 Monitor Idle</p>
6237 </li>
6238 </ul>
6239 </div>
6240 <div style="page-break-after: always;"></div>
6241 </div>
6242 </div>
6243 <div class="sect2">
6244 <h3 id="_release_notes_for_version_1_9_16">H.2. Release Notes for Version 1.9.16</h3>
6245 <div class="paragraph">
6246 <p>Version 1.9.16</p>
6247 </div>
6248 <div class="sect3">
6249 <h4 id="_altos_2">H.2.1. AltOS</h4>
6250 <div class="ulist">
6251 <ul>
6252 <li>
6253 <p>Add TeleGPS v3.0 support</p>
6254 </li>
6255 </ul>
6256 </div>
6257 </div>
6258 <div class="sect3">
6259 <h4 id="_altosui_telegps_application_2">H.2.2. AltosUI &amp; TeleGPS application</h4>
6260 <div class="ulist">
6261 <ul>
6262 <li>
6263 <p>Add TeleGPS v3.0 support</p>
6264 </li>
6265 </ul>
6266 </div>
6267 <div style="page-break-after: always;"></div>
6268 </div>
6269 </div>
6270 <div class="sect2">
6271 <h3 id="_release_notes_for_version_1_9_15">H.3. Release Notes for Version 1.9.15</h3>
6272 <div class="paragraph">
6273 <p>Version 1.9.15</p>
6274 </div>
6275 <div class="sect3">
6276 <h4 id="_altos_3">H.3.1. AltOS</h4>
6277 <div class="ulist">
6278 <ul>
6279 <li>
6280 <p>Add TeleMega v6.0 support</p>
6281 </li>
6282 <li>
6283 <p>Add TeleMetrum v4.0 support</p>
6284 </li>
6285 <li>
6286 <p>Fix sign of IMU values for TeleMega v5 boards in the
6287 'across' axis. This affects IMU acceleration and gyro reports
6288 for that axis, but has no effect on in-flight operation of
6289 the tilt computation.</p>
6290 </li>
6291 </ul>
6292 </div>
6293 <div style="page-break-after: always;"></div>
6294 </div>
6295 </div>
6296 <div class="sect2">
6297 <h3 id="_release_notes_for_version_1_9_14">H.4. Release Notes for Version 1.9.14</h3>
6298 <div class="paragraph">
6299 <p>Version 1.9.14</p>
6300 </div>
6301 <div class="sect3">
6302 <h4 id="_altos_4">H.4.1. AltOS</h4>
6303 <div class="ulist">
6304 <ul>
6305 <li>
6306 <p>Fix 1.9.13 regression in TeleLCO startup sequence that
6307 detects available TeleFire units.</p>
6308 </li>
6309 </ul>
6310 </div>
6311 <div style="page-break-after: always;"></div>
6312 </div>
6313 </div>
6314 <div class="sect2">
6315 <h3 id="_release_notes_for_version_1_9_13">H.5. Release Notes for Version 1.9.13</h3>
6316 <div class="paragraph">
6317 <p>Version 1.9.13</p>
6318 </div>
6319 <div class="sect3">
6320 <h4 id="_altos_5">H.5.1. AltOS</h4>
6321 <div class="ulist">
6322 <ul>
6323 <li>
6324 <p>Add option to beep max height in feet after landing</p>
6325 </li>
6326 <li>
6327 <p>Fix APRS reports to be sent at the correct time and spacing.</p>
6328 </li>
6329 <li>
6330 <p>Fix possible barometric sensor communication failure when
6331 the CPU is busy talking to the radio at the same time. This
6332 would cause loss of telemetry and failure to track the state
6333 of the rocket during flight. This was aggrevated by the APRS
6334 reports getting sent more often than they should.</p>
6335 </li>
6336 <li>
6337 <p>Change EasyMotor v3 code to base logging on motor pressure
6338 rather than the accelerometer. This allows use of EasyMotor
6339 v3 in a static test stand.</p>
6340 </li>
6341 </ul>
6342 </div>
6343 </div>
6344 <div class="sect3">
6345 <h4 id="_altosui_2">H.5.2. AltosUI</h4>
6346 <div class="ulist">
6347 <ul>
6348 <li>
6349 <p>Add support for configuring the units used to report height
6350 after landing on the beeper.</p>
6351 </li>
6352 </ul>
6353 </div>
6354 <div style="page-break-after: always;"></div>
6355 </div>
6356 </div>
6357 <div class="sect2">
6358 <h3 id="_release_notes_for_version_1_9_12">H.6. Release Notes for Version 1.9.12</h3>
6359 <div class="paragraph">
6360 <p>Version 1.9.12</p>
6361 </div>
6362 <div class="sect3">
6363 <h4 id="_altos_6">H.6.1. AltOS</h4>
6364 <div class="ulist">
6365 <ul>
6366 <li>
6367 <p>Add EasyMini v3.0 and EasyMotor v3.0 support</p>
6368 </li>
6369 <li>
6370 <p>Fix TeleMetrum v2.0 configuration. Saving config would
6371 crash the board.</p>
6372 </li>
6373 </ul>
6374 </div>
6375 </div>
6376 <div class="sect3">
6377 <h4 id="_altosui_3">H.6.2. AltosUI</h4>
6378 <div class="ulist">
6379 <ul>
6380 <li>
6381 <p>Add EasyMotor log parsing and graphing.</p>
6382 </li>
6383 </ul>
6384 </div>
6385 <div style="page-break-after: always;"></div>
6386 </div>
6387 </div>
6388 <div class="sect2">
6389 <h3 id="_release_notes_for_version_1_9_11">H.7. Release Notes for Version 1.9.11</h3>
6390 <div class="paragraph">
6391 <p>Version 1.9.11</p>
6392 </div>
6393 <div class="sect3">
6394 <h4 id="_altos_7">H.7.1. AltOS</h4>
6395 <div class="ulist">
6396 <ul>
6397 <li>
6398 <p>Make Apogee Delay work again.</p>
6399 </li>
6400 <li>
6401 <p>Allow TX power to be limited to 10mW for compliance with
6402 some uses under UK regulations.</p>
6403 </li>
6404 <li>
6405 <p>Fix numerous minor issues with 16- vs 32- bit time values.</p>
6406 </li>
6407 </ul>
6408 </div>
6409 </div>
6410 <div class="sect3">
6411 <h4 id="_altosui_4">H.7.2. AltosUI</h4>
6412 <div class="ulist">
6413 <ul>
6414 <li>
6415 <p>Support M1-based Macs, follow AdoptOpenJDK to Adoptium</p>
6416 </li>
6417 </ul>
6418 </div>
6419 </div>
6420 <div class="sect3">
6421 <h4 id="_altosdroid_2">H.7.3. AltosDroid</h4>
6422 <div class="ulist">
6423 <ul>
6424 <li>
6425 <p>Handle Bluetooth permissions reliably.</p>
6426 </li>
6427 <li>
6428 <p>Fix some screen rotation bugs.</p>
6429 </li>
6430 </ul>
6431 </div>
6432 <div style="page-break-after: always;"></div>
6433 </div>
6434 </div>
6435 <div class="sect2">
6436 <h3 id="_release_notes_for_version_1_9_10">H.8. Release Notes for Version 1.9.10</h3>
6437 <div class="paragraph">
6438 <p>Version 1.9.10</p>
6439 </div>
6440 <div class="paragraph">
6441 <p>This release contains a couple of bug fixes for ground station software.</p>
6442 </div>
6443 <div class="sect3">
6444 <h4 id="_altosui_5">H.8.1. AltosUI</h4>
6445 <div class="ulist">
6446 <ul>
6447 <li>
6448 <p>Rework the windows DLL build to make AltosUI run on more
6449 instances of Windows 10.</p>
6450 </li>
6451 </ul>
6452 </div>
6453 </div>
6454 <div class="sect3">
6455 <h4 id="_altosdroid_3">H.8.2. AltosDroid</h4>
6456 <div class="ulist">
6457 <ul>
6458 <li>
6459 <p>Adapt to Android security changes which prevent AltosDroid
6460 from storing flights in
6461 /storage/emulated/0/AltusMetrum. Now, flights are stored in
6462 /storage/emulated/0/media/org.altusmetrum.AltosDroid/AltusMetrum
6463 instead.  Also, AltosDroid will display an error message if
6464 flight data cannot be logged.</p>
6465 </li>
6466 </ul>
6467 </div>
6468 <div style="page-break-after: always;"></div>
6469 </div>
6470 </div>
6471 <div class="sect2">
6472 <h3 id="_release_notes_for_version_1_9_9">H.9. Release Notes for Version 1.9.9</h3>
6473 <div class="paragraph">
6474 <p>Version 1.9.9</p>
6475 </div>
6476 <div class="paragraph">
6477 <p>This release contains a critical bug fix for a problem
6478 introduced in version 1.9.8 for TeleMega and EasyMega
6479 boards. This problem occurs when using the stored
6480 configuration from 1.9.7 or earlier.</p>
6481 </div>
6482 <div class="paragraph">
6483 <p>If you are running 1.9.8 or are upgrading from 1.9.8 on any
6484 version of TeleMega or EasyMega, you must reconfigure all pyro
6485 channels, recalibrate accelerometers, reset the APRS interval,
6486 adjust the beep tone and reset the pyro time.</p>
6487 </div>
6488 <div class="sect3">
6489 <h4 id="_altos_8">H.9.1. AltOS</h4>
6490 <div class="ulist">
6491 <ul>
6492 <li>
6493 <p>Fix EasyMega and TeleMega upgrade process from 1.9.7 or
6494 earlier.  1.9.8 introduced larger delay values, which
6495 required modifying the configuration in-place, and the 1.9.8
6496 version had a flaw which broke the pyro channel config and
6497 all of the config values beyond that in memory, including
6498 APRS interval, IMU accel calibation, beep tone and pyro
6499 time.</p>
6500 </li>
6501 <li>
6502 <p>Fix TeleMega v5.0 mag sensor driver. This driver was quite
6503 broken due to developing it in the presence of the magnetic
6504 beeper on the board. Because of that beeper, the values this
6505 sensor records are not accurate. Fortunately, they are not
6506 used for controlling the flight.</p>
6507 </li>
6508 </ul>
6509 </div>
6510 </div>
6511 <div class="sect3">
6512 <h4 id="_altosui_6">H.9.2. AltosUI</h4>
6513 <div class="ulist">
6514 <ul>
6515 <li>
6516 <p>Parse TeleMega v5.0 log files. A missing check in the code
6517 meant that the TeleMega v5.0 log files would cause an error
6518 when attempting to load them. Logs saved with AltosUI
6519 1.9.8 were not affected, only the presentation of the data
6520 was broken.</p>
6521 </li>
6522 </ul>
6523 </div>
6524 <div style="page-break-after: always;"></div>
6525 </div>
6526 </div>
6527 <div class="sect2">
6528 <h3 id="_release_notes_for_version_1_9_8">H.10. Release Notes for Version 1.9.8</h3>
6529 <div class="paragraph">
6530 <p>Version 1.9.8</p>
6531 </div>
6532 <div class="sect3">
6533 <h4 id="_altos_9">H.10.1. AltOS</h4>
6534 <div class="ulist">
6535 <ul>
6536 <li>
6537 <p>Add support for TeleMega v5.0</p>
6538 </li>
6539 <li>
6540 <p>Extend extra pyro channel times to support delay &gt; 327 seconds</p>
6541 </li>
6542 </ul>
6543 </div>
6544 </div>
6545 <div class="sect3">
6546 <h4 id="_altosui_7">H.10.2. AltosUI</h4>
6547 <div class="ulist">
6548 <ul>
6549 <li>
6550 <p>Support ARM devices in Linux binary release</p>
6551 </li>
6552 <li>
6553 <p>Add support for TeleMega v5.0</p>
6554 </li>
6555 </ul>
6556 </div>
6557 </div>
6558 <div class="sect3">
6559 <h4 id="_altosdroid_4">H.10.3. AltosDroid</h4>
6560 <div class="ulist">
6561 <ul>
6562 <li>
6563 <p>Show tilt angle in pad and flight tabs</p>
6564 </li>
6565 <li>
6566 <p>Show altitude as well as height (useful for TeleGPS)</p>
6567 </li>
6568 <li>
6569 <p>Support devices without GPS receivers</p>
6570 </li>
6571 </ul>
6572 </div>
6573 </div>
6574 <div class="sect3">
6575 <h4 id="_micropeak_gui">H.10.4. MicroPeak GUI</h4>
6576 <div class="ulist">
6577 <ul>
6578 <li>
6579 <p>Show error dialog if device open fails</p>
6580 </li>
6581 </ul>
6582 </div>
6583 <div style="page-break-after: always;"></div>
6584 </div>
6585 </div>
6586 <div class="sect2">
6587 <h3 id="_release_notes_for_version_1_9_7">H.11. Release Notes for Version 1.9.7</h3>
6588 <div class="paragraph">
6589 <p>Version 1.9.7</p>
6590 </div>
6591 <div class="sect3">
6592 <h4 id="_altos_10">H.11.1. AltOS</h4>
6593 <div class="ulist">
6594 <ul>
6595 <li>
6596 <p>Fix TeleGPS logging so that new data are appended to an existing log correctly</p>
6597 </li>
6598 </ul>
6599 </div>
6600 </div>
6601 <div class="sect3">
6602 <h4 id="_altosui_8">H.11.2. AltosUI</h4>
6603 <div class="ulist">
6604 <ul>
6605 <li>
6606 <p>Support Mac OS X 11 (Big Sur)</p>
6607 </li>
6608 <li>
6609 <p>Support Monitor Idle on Easy Timer</p>
6610 </li>
6611 <li>
6612 <p>Fix TeleMega v4.0 and TeleMetrum v3.0 configuration in Antenna Down mode</p>
6613 </li>
6614 <li>
6615 <p>Show launch sites in Load Maps view</p>
6616 </li>
6617 <li>
6618 <p>Add IMU header names to CSV files</p>
6619 </li>
6620 <li>
6621 <p>Clean up TeleGPS log corruption due to firmware bugs during firmware update</p>
6622 </li>
6623 </ul>
6624 </div>
6625 </div>
6626 <div class="sect3">
6627 <h4 id="_altosdroid_5">H.11.3. AltosDroid</h4>
6628 <div class="ulist">
6629 <ul>
6630 <li>
6631 <p>Support older devices back to Android version 5.1</p>
6632 </li>
6633 <li>
6634 <p>Fix a number of issues that could result in app crashes</p>
6635 </li>
6636 </ul>
6637 </div>
6638 <div style="page-break-after: always;"></div>
6639 </div>
6640 </div>
6641 <div class="sect2">
6642 <h3 id="_release_notes_for_version_1_9_6">H.12. Release Notes for Version 1.9.6</h3>
6643 <div class="paragraph">
6644 <p>Version 1.9.6</p>
6645 </div>
6646 <div class="sect3">
6647 <h4 id="_altos_11">H.12.1. AltOS</h4>
6648 <div class="ulist">
6649 <ul>
6650 <li>
6651 <p>Fix EasyTimer bug where it might mis-detect boost (either
6652 detect it early or not at all) due to small errors in
6653 accelerometer calibration leading to large accumulated error
6654 in speed.</p>
6655 </li>
6656 <li>
6657 <p>Adjust self-test of new 9-axis IMU (BMX-160) so that it
6658 doesn&#8217;t think the part has a failure when tested sitting
6659 horizontally.</p>
6660 </li>
6661 </ul>
6662 </div>
6663 <div style="page-break-after: always;"></div>
6664 </div>
6665 </div>
6666 <div class="sect2">
6667 <h3 id="_release_notes_for_version_1_9_5">H.13. Release Notes for Version 1.9.5</h3>
6668 <div class="paragraph">
6669 <p>Version 1.9.5</p>
6670 </div>
6671 <div class="sect3">
6672 <h4 id="_altos_12">H.13.1. AltOS</h4>
6673 <div class="ulist">
6674 <ul>
6675 <li>
6676 <p>Add Booster mode for all dual-deploy altimeters. Select
6677 "Separation &amp; Apogee" mode in AltosUI to fire the 'main'
6678 channel at first motor burnout and the 'apogee' channel at
6679 apogee.</p>
6680 </li>
6681 <li>
6682 <p>Improve reliability of stm32l firmware under heavy
6683 load. This was found using Monitor Idle on TeleMega with all
6684 flash slots full of data which would occasionally lock up.</p>
6685 </li>
6686 <li>
6687 <p>Fix orientation label in AltosUI for devices with
6688 radios. This makes the orientation say 'Antenna up' and
6689 'Antenna Down' for TeleMetrum and TeleMega again.</p>
6690 </li>
6691 <li>
6692 <p>Fix log data for pyro channels which were inhibited (often
6693 because of a tilt limit). They used to report 'fired' as
6694 soon as they were inhibited, which was misleading. Now they
6695 never report as having been fired.</p>
6696 </li>
6697 <li>
6698 <p>Allow Igniter Test to fire each igniter more than once.</p>
6699 </li>
6700 </ul>
6701 </div>
6702 </div>
6703 <div class="sect3">
6704 <h4 id="_altosui_9">H.13.2. AltosUI</h4>
6705 <div class="ulist">
6706 <ul>
6707 <li>
6708 <p>Improve performance of Monitor Idle mode by sending less data for each
6709 update.</p>
6710 </li>
6711 <li>
6712 <p>Improve Mac OS X install scripts so that they work on
6713 Catalina. This involves sending the user to get Java from
6714 the AdoptOpenJDK project which provides a version that works
6715 with Java applications.</p>
6716 </li>
6717 <li>
6718 <p>Make larger dialogs scrollable for use on smaller screens.</p>
6719 </li>
6720 <li>
6721 <p>Fix troubles re-flashing EasyMega boards running older
6722 firmware.</p>
6723 </li>
6724 <li>
6725 <p>Add TeleMetrum v3.0 firmware to the Windows
6726 AltosUI packages.</p>
6727 </li>
6728 </ul>
6729 </div>
6730 <div style="page-break-after: always;"></div>
6731 </div>
6732 </div>
6733 <div class="sect2">
6734 <h3 id="_release_notes_for_version_1_9_4">H.14. Release Notes for Version 1.9.4</h3>
6735 <div class="paragraph">
6736 <p>Version 1.9.4</p>
6737 </div>
6738 <div class="sect3">
6739 <h4 id="_altos_13">H.14.1. AltOS</h4>
6740 <div class="ulist">
6741 <ul>
6742 <li>
6743 <p>Fixed firmware for TeleDongle v3.0 and TeleBT v4.0. Version 1.9.3 bricked those
6744 devices requiring them to be opened up to get them working again.</p>
6745 </li>
6746 <li>
6747 <p>Fixed firmware for EasyMini v1.0. Changes in the storage
6748 code caused it to use significantly more RAM which made the
6749 interrupt stack smash into other data structures and cause
6750 the device to panic at startup time.</p>
6751 </li>
6752 </ul>
6753 </div>
6754 </div>
6755 <div class="sect3">
6756 <h4 id="_altosui_10">H.14.2. AltosUI</h4>
6757 <div class="ulist">
6758 <ul>
6759 <li>
6760 <p>Add TeleMetrum v3.0 firmware to the Linux and Mac OSX
6761 AltosUI packages.</p>
6762 </li>
6763 </ul>
6764 </div>
6765 <div style="page-break-after: always;"></div>
6766 </div>
6767 </div>
6768 <div class="sect2">
6769 <h3 id="_release_notes_for_version_1_9_3">H.15. Release Notes for Version 1.9.3</h3>
6770 <div class="paragraph">
6771 <p>Version 1.9.3</p>
6772 </div>
6773 <div class="sect3">
6774 <h4 id="_altos_14">H.15.1. AltOS</h4>
6775 <div class="ulist">
6776 <ul>
6777 <li>
6778 <p>Add APRS offset. Allows multiple APRS transmitters to coordinate when
6779 transmission occurs to allow them to share a frequency.</p>
6780 </li>
6781 <li>
6782 <p>Fix max log size. Flight computer storage is erased in 64kB chunks. Adjust max
6783 log size to be a multiple of this size.</p>
6784 </li>
6785 <li>
6786 <p>Check flight erasing more carefully. Handle interrupting erasing in the
6787 middle.</p>
6788 </li>
6789 <li>
6790 <p>Add EasyTimer support.</p>
6791 </li>
6792 </ul>
6793 </div>
6794 </div>
6795 <div class="sect3">
6796 <h4 id="_altosui_telegps_micropeak">H.15.2. AltosUI, TeleGPS, MicroPeak</h4>
6797 <div class="ulist">
6798 <ul>
6799 <li>
6800 <p>Add configuration support for APRS offset.</p>
6801 </li>
6802 <li>
6803 <p>Adjust flight log sizes to be a multiple of the flight
6804 computer erase block size.</p>
6805 </li>
6806 <li>
6807 <p>Report barometric pad altitude in Pad tab for TeleMini.</p>
6808 </li>
6809 </ul>
6810 </div>
6811 <div style="page-break-after: always;"></div>
6812 </div>
6813 </div>
6814 <div class="sect2">
6815 <h3 id="_release_notes_for_version_1_9_2">H.16. Release Notes for Version 1.9.2</h3>
6816 <div class="paragraph">
6817 <p>Version 1.9.2</p>
6818 </div>
6819 <div class="sect3">
6820 <h4 id="_altos_15">H.16.1. AltOS</h4>
6821 <div class="ulist">
6822 <ul>
6823 <li>
6824 <p>Add support for TeleMega v4.0</p>
6825 </li>
6826 <li>
6827 <p>Fix time wrapping issue with TeleLCO and TeleFire</p>
6828 </li>
6829 </ul>
6830 </div>
6831 </div>
6832 <div class="sect3">
6833 <h4 id="_altosui_telegps_micropeak_2">H.16.2. AltosUI, TeleGPS, MicroPeak</h4>
6834 <div class="ulist">
6835 <ul>
6836 <li>
6837 <p>Add column in AltosUI for IMU data from TeleMega and EasyMega</p>
6838 </li>
6839 </ul>
6840 </div>
6841 </div>
6842 <div class="sect3">
6843 <h4 id="_altosdroid_6">H.16.3. AltosDroid</h4>
6844 <div class="ulist">
6845 <ul>
6846 <li>
6847 <p>Allow sorting of trackers by call, serial, frequency or age</p>
6848 </li>
6849 <li>
6850 <p>Offer selection of font sizes</p>
6851 </li>
6852 <li>
6853 <p>Various bug fixes for older Android versions</p>
6854 </li>
6855 </ul>
6856 </div>
6857 <div style="page-break-after: always;"></div>
6858 </div>
6859 </div>
6860 <div class="sect2">
6861 <h3 id="_release_notes_for_version_1_9_1">H.17. Release Notes for Version 1.9.1</h3>
6862 <div class="paragraph">
6863 <p>Version 1.9.1</p>
6864 </div>
6865 <div class="sect3">
6866 <h4 id="_altos_16">H.17.1. AltOS</h4>
6867 <div class="ulist">
6868 <ul>
6869 <li>
6870 <p>Add support for TeleMetrum v3.0</p>
6871 </li>
6872 <li>
6873 <p>Fix accel cal value when changing EasyMega v2.0 pad orientation</p>
6874 </li>
6875 <li>
6876 <p>Correct EasyMega v2.0 magnetometer data axes</p>
6877 </li>
6878 <li>
6879 <p>Fix EasyMega v2.0 idle monitor display of IMU data</p>
6880 </li>
6881 <li>
6882 <p>Report all sensor failures at power-up time.</p>
6883 </li>
6884 </ul>
6885 </div>
6886 </div>
6887 <div class="sect3">
6888 <h4 id="_altosui_telegps_micropeak_3">H.17.2. AltosUI, TeleGPS, MicroPeak</h4>
6889 <div class="ulist">
6890 <ul>
6891 <li>
6892 <p>Display error message when attempting to graph unknown format file.</p>
6893 </li>
6894 <li>
6895 <p>Make it possible to disable APRS once enabled.</p>
6896 </li>
6897 <li>
6898 <p>Display some data for point near cursor in map tab.</p>
6899 </li>
6900 <li>
6901 <p>Support upgrading devices from pre-1.8 firmware</p>
6902 </li>
6903 <li>
6904 <p>Wait for Windows to prepare new devices during firmware
6905 upgrade. This should avoid the “COMxx: open failed” message.</p>
6906 </li>
6907 </ul>
6908 </div>
6909 <div style="page-break-after: always;"></div>
6910 </div>
6911 </div>
6912 <div class="sect2">
6913 <h3 id="_release_notes_for_version_1_9">H.18. Release Notes for Version 1.9</h3>
6914 <div class="paragraph">
6915 <p>Version 1.9</p>
6916 </div>
6917 <div class="sect3">
6918 <h4 id="_altos_17">H.18.1. AltOS</h4>
6919 <div class="ulist">
6920 <ul>
6921 <li>
6922 <p>Add support for EasyMega v2.0</p>
6923 </li>
6924 <li>
6925 <p>Replace C library for ARM devices</p>
6926 </li>
6927 <li>
6928 <p>Remove support for 8051-based devices and SDCC compiler</p>
6929 </li>
6930 </ul>
6931 </div>
6932 </div>
6933 <div class="sect3">
6934 <h4 id="_altosui_telegps_micropeak_4">H.18.2. AltosUI, TeleGPS, MicroPeak</h4>
6935 <div class="ulist">
6936 <ul>
6937 <li>
6938 <p>Select ROM images based on product name when reflashing</p>
6939 </li>
6940 <li>
6941 <p>Fix TeleGPS v2 battery voltage display</p>
6942 </li>
6943 </ul>
6944 </div>
6945 <div style="page-break-after: always;"></div>
6946 </div>
6947 </div>
6948 <div class="sect2">
6949 <h3 id="_release_notes_for_version_1_8_7">H.19. Release Notes for Version 1.8.7</h3>
6950 <div class="paragraph">
6951 <p>Version 1.8.7</p>
6952 </div>
6953 <div class="sect3">
6954 <h4 id="_altos_18">H.19.1. AltOS</h4>
6955 <div class="ulist">
6956 <ul>
6957 <li>
6958 <p>Include TeleMega v3.0 firmware</p>
6959 </li>
6960 </ul>
6961 </div>
6962 </div>
6963 <div class="sect3">
6964 <h4 id="_altosui_telegps_micropeak_5">H.19.2. AltosUI, TeleGPS, MicroPeak</h4>
6965 <div class="ulist">
6966 <ul>
6967 <li>
6968 <p>Poll for new devices while Device dialog is displayed</p>
6969 </li>
6970 <li>
6971 <p>Wait for device to re-appear when flashing new firmware</p>
6972 </li>
6973 <li>
6974 <p>Fetch correct TeleBT v4.0 RF calibration values from web
6975 site when reflashing.</p>
6976 </li>
6977 <li>
6978 <p>Change gyro headings in .csv files from x/y/z to
6979 roll/pitch/yaw</p>
6980 </li>
6981 <li>
6982 <p>Add documentation about Packet Link mode</p>
6983 </li>
6984 <li>
6985 <p>Add documentation about forcing TeleMini RF parameters to
6986 known values.</p>
6987 </li>
6988 <li>
6989 <p>Create a proxy server for Google Maps to re-enable map
6990 images</p>
6991 </li>
6992 <li>
6993 <p>Fix Java version info in all distributed jar files so that
6994 applications will run with standard Mac OS X Java.</p>
6995 </li>
6996 <li>
6997 <p>Replace JavaApplicationStub for Mac OS X so that
6998 applications will run with Oracle Java.</p>
6999 </li>
7000 </ul>
7001 </div>
7002 <div style="page-break-after: always;"></div>
7003 </div>
7004 </div>
7005 <div class="sect2">
7006 <h3 id="_release_notes_for_version_1_8_6">H.20. Release Notes for Version 1.8.6</h3>
7007 <div class="paragraph">
7008 <p>Version 1.8.6</p>
7009 </div>
7010 <div class="sect3">
7011 <h4 id="_altos_19">H.20.1. AltOS</h4>
7012 <div class="ulist">
7013 <ul>
7014 <li>
7015 <p>Use maximum of 64 previous tilt values in pyro tilt tests</p>
7016 </li>
7017 <li>
7018 <p>Eliminate 100m height requirement for coast detection</p>
7019 </li>
7020 <li>
7021 <p>Change After Motor pyro check to be &gt;= instead of ==</p>
7022 </li>
7023 <li>
7024 <p>Change Time since Boost to be Time since launch.</p>
7025 </li>
7026 </ul>
7027 </div>
7028 </div>
7029 <div class="sect3">
7030 <h4 id="_altosui_telegps">H.20.2. AltosUI, TeleGPS</h4>
7031 <div class="ulist">
7032 <ul>
7033 <li>
7034 <p>Clarify pyro test phrasing</p>
7035 </li>
7036 <li>
7037 <p>Remove ascending/descending from pyro config UI</p>
7038 </li>
7039 <li>
7040 <p>Fix accel calibration in Antenna Down mode</p>
7041 </li>
7042 <li>
7043 <p>Add mag sensor reporting for TeleMega v3 idle monitoring.</p>
7044 </li>
7045 <li>
7046 <p>Fix radio parameter saving at 2400 bps telmetry rate.</p>
7047 </li>
7048 </ul>
7049 </div>
7050 </div>
7051 <div class="sect3">
7052 <h4 id="_micropeak">H.20.3. MicroPeak</h4>
7053 <div class="ulist">
7054 <ul>
7055 <li>
7056 <p>Report altimeter-recorded maximum height value</p>
7057 </li>
7058 </ul>
7059 </div>
7060 <div style="page-break-after: always;"></div>
7061 </div>
7062 </div>
7063 <div class="sect2">
7064 <h3 id="_release_notes_for_version_1_8_5">H.21. Release Notes for Version 1.8.5</h3>
7065 <div class="paragraph">
7066 <p>Version 1.8.5 includes fixes to the ground software support
7067 for TeleBT v4, along with a few other minor updates.</p>
7068 </div>
7069 <div class="sect3">
7070 <h4 id="_altos_20">H.21.1. AltOS</h4>
7071 <div class="ulist">
7072 <ul>
7073 <li>
7074 <p>Fix startup beeps that indicate sensor failures.</p>
7075 </li>
7076 </ul>
7077 </div>
7078 </div>
7079 <div class="sect3">
7080 <h4 id="_altosui_telegps_2">H.21.2. AltosUI, TeleGPS</h4>
7081 <div class="ulist">
7082 <ul>
7083 <li>
7084 <p>When updating device firmware, make sure selected firmware
7085 matches target device.</p>
7086 </li>
7087 <li>
7088 <p>Correct Bluetooth device matching when looking for TeleBT
7089 devices.</p>
7090 </li>
7091 </ul>
7092 </div>
7093 <div style="page-break-after: always;"></div>
7094 </div>
7095 </div>
7096 <div class="sect2">
7097 <h3 id="_release_notes_for_version_1_8_4">H.22. Release Notes for Version 1.8.4</h3>
7098 <div class="paragraph">
7099 <p>Version 1.8.4 includes support for EasyMini version 2.0</p>
7100 </div>
7101 <div class="sect3">
7102 <h4 id="_altos_21">H.22.1. AltOS</h4>
7103 <div class="ulist">
7104 <ul>
7105 <li>
7106 <p>Support for EasyMini version 2.0 hardware.</p>
7107 </li>
7108 </ul>
7109 </div>
7110 <div style="page-break-after: always;"></div>
7111 </div>
7112 </div>
7113 <div class="sect2">
7114 <h3 id="_release_notes_for_version_1_8_3">H.23. Release Notes for Version 1.8.3</h3>
7115 <div class="paragraph">
7116 <p>Version 1.8.3 includes support for TeleMega version 3.0 along
7117 with two important flight computer fixes. This version also
7118 changes KML export data to make Tripoli Record reporting
7119 better and some updates to graph presentation and data
7120 downloading.</p>
7121 </div>
7122 <div class="sect3">
7123 <h4 id="_altos_22">H.23.1. AltOS</h4>
7124 <div class="sect4">
7125 <h5 id="_altos_new_features">AltOS New Features</h5>
7126 <div class="ulist">
7127 <ul>
7128 <li>
7129 <p>Support for TeleMega version 3.0 hardware.</p>
7130 </li>
7131 </ul>
7132 </div>
7133 </div>
7134 <div class="sect4">
7135 <h5 id="_altos_bug_fixes">AltOS Bug Fixes</h5>
7136 <div class="ulist">
7137 <ul>
7138 <li>
7139 <p>Ground testing EasyMega and TeleMega additional pyro
7140 channels could result in a sticky 'fired' status which would
7141 prevent these channels from firing on future flights.</p>
7142 </li>
7143 <li>
7144 <p>Corrupted flight log records could prevent future flights
7145 from capturing log data.</p>
7146 </li>
7147 <li>
7148 <p>Fixed saving of pyro configuration that ended with
7149 'Descending'.</p>
7150 </li>
7151 </ul>
7152 </div>
7153 </div>
7154 </div>
7155 <div class="sect3">
7156 <h4 id="_altosui_and_telegps_applications">H.23.2. AltosUI and TeleGPS Applications</h4>
7157 <div class="sect4">
7158 <h5 id="_altosui_new_features">AltosUI New Features</h5>
7159 <div class="ulist">
7160 <ul>
7161 <li>
7162 <p>Support for TeleMega version 3.0.</p>
7163 </li>
7164 <li>
7165 <p>Graph lines have improved appearance to make them easier to
7166 distinguish. Markers may be placed at data points to show
7167 captured recorded data values.</p>
7168 </li>
7169 <li>
7170 <p>Graphing offers the ability to adjust the smoothing of
7171 computed speed and acceleration data.</p>
7172 </li>
7173 <li>
7174 <p>The download dialog now offers to graph new flights, checks
7175 for existing files to avoid overwriting data and reports if
7176 there are checksum errors in the downloaded data.</p>
7177 </li>
7178 </ul>
7179 </div>
7180 </div>
7181 <div class="sect4">
7182 <h5 id="_altosuitelegps_bug_fixes">AltosUI/TeleGPS Bug Fixes</h5>
7183 <div class="ulist">
7184 <ul>
7185 <li>
7186 <p>Restore TeleGPS tracking behavior.</p>
7187 </li>
7188 <li>
7189 <p>Display flight computer call sign and serial number in
7190 Monitor Idle mode instead of ground station values.</p>
7191 </li>
7192 </ul>
7193 </div>
7194 </div>
7195 <div class="sect4">
7196 <h5 id="_altosui_and_telegps_changes">AltosUI and TeleGPS Changes</h5>
7197 <div class="ulist">
7198 <ul>
7199 <li>
7200 <p>KML export now reports both barometric and GPS altitude data
7201 to make it more useful for Tripoli record reporting.</p>
7202 </li>
7203 <li>
7204 <p>CSV export now includes TeleMega/EasyMega pyro voltages and
7205 tilt angle.</p>
7206 </li>
7207 </ul>
7208 </div>
7209 <div style="page-break-after: always;"></div>
7210 </div>
7211 </div>
7212 </div>
7213 <div class="sect2">
7214 <h3 id="_release_notes_for_version_1_8_2">H.24. Release Notes for Version 1.8.2</h3>
7215 <div class="paragraph">
7216 <p>Version 1.8.2 includes support for TeleGPS version 2.0 along
7217 with accelerometer recalibration support in AltosUI.</p>
7218 </div>
7219 <div class="paragraph">
7220 <p>1.8.2 also contains a couple of minor fixes for AltosUI when
7221 analyzing saved data files.</p>
7222 </div>
7223 <div class="sect3">
7224 <h4 id="_altos_23">H.24.1. AltOS</h4>
7225 <div class="paragraph">
7226 <p>AltOS New Features</p>
7227 </div>
7228 <div class="ulist">
7229 <ul>
7230 <li>
7231 <p>Support for TeleGPS version 2.0 hardware.</p>
7232 </li>
7233 </ul>
7234 </div>
7235 </div>
7236 <div class="sect3">
7237 <h4 id="_altosui_and_telegps_applications_2">H.24.2. AltosUI and TeleGPS Applications</h4>
7238 <div class="paragraph">
7239 <p>AltosUI and TeleGPS New Features</p>
7240 </div>
7241 <div class="ulist">
7242 <ul>
7243 <li>
7244 <p>Support for TeleGPS version 2.0.</p>
7245 </li>
7246 <li>
7247 <p>Accelerometer re-calibration user interface.</p>
7248 </li>
7249 </ul>
7250 </div>
7251 <div class="paragraph">
7252 <p>AltosUI and TeleGPS Bug Fixes</p>
7253 </div>
7254 <div class="ulist">
7255 <ul>
7256 <li>
7257 <p>Prevent some crashes when reading older saved flight data
7258 for graphing or KML export.</p>
7259 </li>
7260 </ul>
7261 </div>
7262 <div style="page-break-after: always;"></div>
7263 </div>
7264 </div>
7265 <div class="sect2">
7266 <h3 id="_release_notes_for_version_1_8_1">H.25. Release Notes for Version 1.8.1</h3>
7267 <div class="paragraph">
7268 <p>Version 1.8.1 includes an important bug fix for Apogee Lockout
7269 operation in all flight computers. Anyone using this option
7270 must update firmware.</p>
7271 </div>
7272 <div class="paragraph">
7273 <p>This release also contains a change in how flight computers
7274 with accelerometers deal with speeds around and above Mach
7275 1. In previous versions, the flight computer would completely
7276 disregard the barometric sensor above 330m/s (around Mach
7277 1). Now, the data from the barometric sensor is reduced in
7278 effect without ever going away entirely. This prevents early
7279 drogue deployment for flights which spend considerable time
7280 above Mach 1.</p>
7281 </div>
7282 <div class="paragraph">
7283 <p>1.8.1 also contains a couple of minor fixes for AltosUI when
7284 analyzing saved data files.</p>
7285 </div>
7286 <div class="sect3">
7287 <h4 id="_altos_24">H.25.1. AltOS</h4>
7288 <div class="paragraph">
7289 <p>AltOS Bug Fixes</p>
7290 </div>
7291 <div class="ulist">
7292 <ul>
7293 <li>
7294 <p>Handle time value wrapping in Apogee Lockout
7295 correctly. Without this, apogee lockout would sometimes
7296 prevent any drogue charge from firing.</p>
7297 </li>
7298 <li>
7299 <p>Change Kalman filter on flight computers with accelerometer
7300 to continue using the barometric sensor even at high speeds
7301 to avoid unintentional drogue deployment during
7302 deceleration.</p>
7303 </li>
7304 </ul>
7305 </div>
7306 </div>
7307 <div class="sect3">
7308 <h4 id="_altosui_and_telegps_applications_3">H.25.2. AltosUI and TeleGPS Applications</h4>
7309 <div class="paragraph">
7310 <p>AltosUI New Features</p>
7311 </div>
7312 <div class="ulist">
7313 <ul>
7314 <li>
7315 <p>Add new 'Huge' font size to make text even bigger on high
7316 resolution monitors.</p>
7317 </li>
7318 </ul>
7319 </div>
7320 <div class="paragraph">
7321 <p>AltosUI Bug Fixes</p>
7322 </div>
7323 <div class="ulist">
7324 <ul>
7325 <li>
7326 <p>Prevent some crashes when reading older saved flight data
7327 for graphing or KML export.</p>
7328 </li>
7329 <li>
7330 <p>Load frequency preference at startup. The loading code was
7331 broken, so you&#8217;d see only the default frequencies.</p>
7332 </li>
7333 </ul>
7334 </div>
7335 <div style="page-break-after: always;"></div>
7336 </div>
7337 </div>
7338 <div class="sect2">
7339 <h3 id="_release_notes_for_version_1_8">H.26. Release Notes for Version 1.8</h3>
7340 <div class="paragraph">
7341 <p>Version 1.8 includes support for our new TeleBT v4.0 ground
7342 station, updates for data analysis in our ground station
7343 software and bug fixes in in the flight software for all our
7344 boards and ground station interfaces.</p>
7345 </div>
7346 <div class="sect3">
7347 <h4 id="_altos_25">H.26.1. AltOS</h4>
7348 <div class="paragraph">
7349 <p>AltOS New Features</p>
7350 </div>
7351 <div class="ulist">
7352 <ul>
7353 <li>
7354 <p>Add support for TeleBT v4.0 boards.</p>
7355 </li>
7356 </ul>
7357 </div>
7358 </div>
7359 <div class="sect3">
7360 <h4 id="_altosui_and_telegps_applications_4">H.26.2. AltosUI and TeleGPS Applications</h4>
7361 <div class="paragraph">
7362 <p>AltosUI New Features</p>
7363 </div>
7364 <div class="ulist">
7365 <ul>
7366 <li>
7367 <p>Add support for TeleBT v4.0 hardware</p>
7368 </li>
7369 <li>
7370 <p>Rewrite graphing and export functions. This code now handles
7371 each data series separately so that graphs are drawn
7372 correctly. Smoothing now uses a filter that looks both
7373 forward and backwards in time to make computed speed and
7374 acceleration data more accurate.</p>
7375 </li>
7376 </ul>
7377 </div>
7378 <div class="paragraph">
7379 <p>AltosUI Bug Fixes</p>
7380 </div>
7381 <div class="ulist">
7382 <ul>
7383 <li>
7384 <p>Correct axis labeling of magnetic sensor in TeleMega and
7385 EasyMega. The Y and Z axes were flipped.</p>
7386 </li>
7387 </ul>
7388 </div>
7389 <div style="page-break-after: always;"></div>
7390 </div>
7391 </div>
7392 <div class="sect2">
7393 <h3 id="_release_notes_for_version_1_7">H.27. Release Notes for Version 1.7</h3>
7394 <div class="paragraph">
7395 <p>Version 1.7 includes support for our new TeleMini v3.0
7396 flight computer and bug fixes in in the flight software for all our boards
7397 and ground station interfaces.</p>
7398 </div>
7399 <div class="sect3">
7400 <h4 id="_altos_26">H.27.1. AltOS</h4>
7401 <div class="paragraph">
7402 <p>AltOS New Features</p>
7403 </div>
7404 <div class="ulist">
7405 <ul>
7406 <li>
7407 <p>Add support for TeleMini v3.0 boards.</p>
7408 </li>
7409 </ul>
7410 </div>
7411 <div class="paragraph">
7412 <p>AltOS Fixes</p>
7413 </div>
7414 <div class="ulist">
7415 <ul>
7416 <li>
7417 <p>Fix interrupt priorities on STM32L processors. Run timer
7418 interrupt at lowest priority so that device interrupts get
7419 serviced first.</p>
7420 </li>
7421 </ul>
7422 </div>
7423 </div>
7424 <div class="sect3">
7425 <h4 id="_altosui_and_telegps_applications_5">H.27.2. AltosUI and TeleGPS Applications</h4>
7426 <div class="paragraph">
7427 <p>AltosUI New Features</p>
7428 </div>
7429 <div class="ulist">
7430 <ul>
7431 <li>
7432 <p>Add support for TeleMini v3.0 hardware</p>
7433 </li>
7434 </ul>
7435 </div>
7436 <div style="page-break-after: always;"></div>
7437 </div>
7438 </div>
7439 <div class="sect2">
7440 <h3 id="_release_notes_for_version_1_6_8">H.28. Release Notes for Version 1.6.8</h3>
7441 <div class="paragraph">
7442 <p>Version 1.6.8 fixes a TeleMega and TeleMetrum v2.0 bug where
7443 the device could stop logging data and transmitting
7444 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7445 v2.0 users should update their flight firmware.</p>
7446 </div>
7447 <div class="sect3">
7448 <h4 id="_altos_27">H.28.1. AltOS</h4>
7449 <div class="paragraph">
7450 <p>AltOS fixes:</p>
7451 </div>
7452 <div class="ulist">
7453 <ul>
7454 <li>
7455 <p>Fix STM32L DMA driver to work around STM32L SoC DMA priority
7456 issue t lock-up in the logging or radio code, either of
7457 which could stop data logging and telemetry.</p>
7458 </li>
7459 <li>
7460 <p>Avoid having TeleBT battery status values smash telemetry
7461 packet data by holding a lock during both operations.</p>
7462 </li>
7463 <li>
7464 <p>Don&#8217;t start reporting 'flight 0' when the log fills in
7465 flight.</p>
7466 </li>
7467 </ul>
7468 </div>
7469 <div class="paragraph">
7470 <p>AltOS changes:</p>
7471 </div>
7472 <div class="ulist">
7473 <ul>
7474 <li>
7475 <p>Flash LEDS on all products briefly during power up so that
7476 they can be tested during production.</p>
7477 </li>
7478 </ul>
7479 </div>
7480 </div>
7481 <div class="sect3">
7482 <h4 id="_altosui_telegps_and_altosdroid_applications">H.28.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7483 <div class="paragraph">
7484 <p>AltosUI fixes:</p>
7485 </div>
7486 <div class="ulist">
7487 <ul>
7488 <li>
7489 <p>Re-enable go/no-go entries after they&#8217;ve been disabled due
7490 to lack of data. If telemetry information is delayed when
7491 the Ui starts up, sometimes important fields would get
7492 disabled to never re-appear.</p>
7493 </li>
7494 <li>
7495 <p>Deal with ground station failure better during Configure
7496 Ground Station operation by cleaning up pending operations.</p>
7497 </li>
7498 </ul>
7499 </div>
7500 <div style="page-break-after: always;"></div>
7501 </div>
7502 </div>
7503 <div class="sect2">
7504 <h3 id="_release_notes_for_version_1_6_5">H.29. Release Notes for Version 1.6.5</h3>
7505 <div class="paragraph">
7506 <p>Version 1.6.5 fixes a TeleMega and TeleMetrum v2.0 bug where
7507 the device would often stop logging data and transmitting
7508 telemetry in flight. All TeleMega v1.0, v2.0 and TeleMetrum
7509 v2.0 users should update their flight firmware.</p>
7510 </div>
7511 <div class="sect3">
7512 <h4 id="_altos_28">H.29.1. AltOS</h4>
7513 <div class="paragraph">
7514 <p>AltOS fixes:</p>
7515 </div>
7516 <div class="ulist">
7517 <ul>
7518 <li>
7519 <p>Fix STM32L SPI driver to prevent lock-up in the logging or
7520 radio code, either of which could stop data logging and
7521 telemetry. Found and characterized by Chuck Haskin, who also
7522 tested the new firmware before release.</p>
7523 </li>
7524 </ul>
7525 </div>
7526 </div>
7527 <div class="sect3">
7528 <h4 id="_altosui_telegps_and_altosdroid_applications_2">H.29.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7529 <div class="paragraph">
7530 <p>AltosUI fixes:</p>
7531 </div>
7532 <div class="ulist">
7533 <ul>
7534 <li>
7535 <p>Deliver firmward for TeleMega v2.0 and TeleBT v3.0 with
7536 Windows package.</p>
7537 </li>
7538 </ul>
7539 </div>
7540 <div style="page-break-after: always;"></div>
7541 </div>
7542 </div>
7543 <div class="sect2">
7544 <h3 id="_release_notes_for_version_1_6_4">H.30. Release Notes for Version 1.6.4</h3>
7545 <div class="paragraph">
7546 <p>Version 1.6.4 fixes a bluetooth communication problem with
7547 TeleBT v1.0 devices, along with some altosui and altosdroid
7548 minor nits. It also now ships firmware for some newer devices.</p>
7549 </div>
7550 <div class="sect3">
7551 <h4 id="_altos_29">H.30.1. AltOS</h4>
7552 <div class="paragraph">
7553 <p>AltOS fixes:</p>
7554 </div>
7555 <div class="ulist">
7556 <ul>
7557 <li>
7558 <p>Fix hardware flow control on TeleBT v1.0. Hardware RTS/CTS
7559 doesn&#8217;t seem to work, switch from using the hardware to
7560 driving these pins with software.</p>
7561 </li>
7562 <li>
7563 <p>Fix ARM USB drivers to deal with OS restarts. Needed to
7564 reset all USB-related state when the USB bus is reset. These
7565 fixes affect all STM32L, STM32F0 and LPC11U14 based devices.</p>
7566 </li>
7567 </ul>
7568 </div>
7569 </div>
7570 <div class="sect3">
7571 <h4 id="_altosui_telegps_and_altosdroid_applications_3">H.30.2. AltosUI, TeleGPS and AltosDroid Applications</h4>
7572 <div class="paragraph">
7573 <p>AltosUI, TeleGPS and AltosDroid New Features:</p>
7574 </div>
7575 <div class="ulist">
7576 <ul>
7577 <li>
7578 <p>Automatically switch from meters or feet to kilometers or
7579 miles for distance units.</p>
7580 </li>
7581 <li>
7582 <p>Add Monitor Idle mode to TeleGPS application.</p>
7583 </li>
7584 </ul>
7585 </div>
7586 <div class="paragraph">
7587 <p>AltosUI, TeleGPS and AltosDroid Fixes:</p>
7588 </div>
7589 <div class="ulist">
7590 <ul>
7591 <li>
7592 <p>Abort map preloading when the preload map dialog is closed.</p>
7593 </li>
7594 <li>
7595 <p>In AltosDroid, Don&#8217;t reconnect to last device if the user
7596 had disconnected it the last time the application was
7597 active.</p>
7598 </li>
7599 </ul>
7600 </div>
7601 </div>
7602 <div class="sect3">
7603 <h4 id="_documentation">H.30.3. Documentation</h4>
7604 <div class="ulist">
7605 <ul>
7606 <li>
7607 <p>Mention TeleMega v2.0 in hardware specs table.</p>
7608 </li>
7609 <li>
7610 <p>Document TeleGPS RF output in telegps manual.</p>
7611 </li>
7612 </ul>
7613 </div>
7614 <div style="page-break-after: always;"></div>
7615 </div>
7616 </div>
7617 <div class="sect2">
7618 <h3 id="_release_notes_for_version_1_6_3">H.31. Release Notes for Version 1.6.3</h3>
7619 <div class="paragraph">
7620 <p>Version 1.6.3 adds idle mode to AltosDroid and has bug fixes
7621 for our host software on desktops, laptops an android devices
7622 along with BlueTooth support for Windows.</p>
7623 </div>
7624 <div class="sect3">
7625 <h4 id="_altos_30">H.31.1. AltOS</h4>
7626 <div class="paragraph">
7627 <p>AltOS fixes:</p>
7628 </div>
7629 <div class="ulist">
7630 <ul>
7631 <li>
7632 <p>Fix hardware flow control on TeleBT v3.0. RTS/CTS is
7633 wired backwards on this board, switch from using the
7634 hardware to driving these pins with software.</p>
7635 </li>
7636 </ul>
7637 </div>
7638 </div>
7639 <div class="sect3">
7640 <h4 id="_altosui_and_telegps_applications_6">H.31.2. AltosUI and TeleGPS Applications</h4>
7641 <div class="paragraph">
7642 <p>AltosUI and TeleGPS New Features:</p>
7643 </div>
7644 <div class="ulist">
7645 <ul>
7646 <li>
7647 <p>Add BlueTooth support for Windows operating system. This
7648 supports connections to TeleBT over BlueTooth rather than
7649 just USB.</p>
7650 </li>
7651 </ul>
7652 </div>
7653 <div class="paragraph">
7654 <p>AltosUI and TeleGPS Fixes:</p>
7655 </div>
7656 <div class="ulist">
7657 <ul>
7658 <li>
7659 <p>Change Java detection and install on Windows. Detection is
7660 now done by looking for the 'javaw.exe' program, and
7661 installation by opening a browser on the java.com web site.</p>
7662 </li>
7663 <li>
7664 <p>Delay polling while the Fire Igniters is visible to allow
7665 for TeleMega to report back complete status over the radio.</p>
7666 </li>
7667 <li>
7668 <p>Disallow changing RF calibration numbers in the
7669 configuration UI. There&#8217;s no good reason to change this from
7670 the field, and recovering is really hard if you haven&#8217;t
7671 written down the right number.</p>
7672 </li>
7673 <li>
7674 <p>Fix USB device discovery on Mac OS X El Capitan. This makes
7675 the connected Altus Metrum USB devices appear again.</p>
7676 </li>
7677 <li>
7678 <p>Fix acceleration data presented in MonitorIdle mode for
7679 TeleMetrum v2.0 flight computers.</p>
7680 </li>
7681 </ul>
7682 </div>
7683 </div>
7684 <div class="sect3">
7685 <h4 id="_altosdroid_7">H.31.3. AltosDroid</h4>
7686 <div class="paragraph">
7687 <p>AltosDroid new features:</p>
7688 </div>
7689 <div class="ulist">
7690 <ul>
7691 <li>
7692 <p>Monitor Idle mode. Check state of flight computer while in
7693 idle mode over the radio link</p>
7694 </li>
7695 <li>
7696 <p>Fire Igniters. Remotely fire ignires for recovery system
7697 ground tests.</p>
7698 </li>
7699 <li>
7700 <p>Remote reboot. Cause the flight computer to reboot over the
7701 radio link. This provides a method for switching the flight
7702 computer from idle to flight mode without needing to reach
7703 the power switch.</p>
7704 </li>
7705 <li>
7706 <p>Configurable frequency menu. Change the set of available
7707 frequencies and provide more descriptive names.</p>
7708 </li>
7709 </ul>
7710 </div>
7711 <div class="paragraph">
7712 <p>AltosDroid bug fixes:</p>
7713 </div>
7714 <div class="ulist">
7715 <ul>
7716 <li>
7717 <p>Don&#8217;t set target location if GPS hasn&#8217;t locked yet.</p>
7718 </li>
7719 <li>
7720 <p>Fix saving target states so they can be reloaded when the
7721 application restarts. When the application is shut down and
7722 restarted, all previous target state information will be
7723 restored (including GPS position if available).</p>
7724 </li>
7725 <li>
7726 <p>Fix crash on some Android devices for offline maps when
7727 changing the map scale or location.</p>
7728 </li>
7729 <li>
7730 <p>Don&#8217;t require USB OTG support. This kept the latest
7731 AltosDroid from being offered on devices without USB device
7732 support, although it can work without that just fine using
7733 BlueTooth.</p>
7734 </li>
7735 <li>
7736 <p>Don&#8217;t require bluetooth to be enabled. This allows the
7737 application to operate with USB devices or just show old
7738 data without turning on the bluetooth radio.</p>
7739 </li>
7740 <li>
7741 <p>Recover old tracker positions when restarting
7742 application. This finally allows you to safely stop and
7743 restart the application without losing the last known
7744 location of any tracker.</p>
7745 </li>
7746 </ul>
7747 </div>
7748 </div>
7749 <div class="sect3">
7750 <h4 id="_documentation_2">H.31.4. Documentation</h4>
7751 <div class="ulist">
7752 <ul>
7753 <li>
7754 <p>Document TeleMega and EasyMega additional pyro channel
7755 continuity audio alert pattern.</p>
7756 </li>
7757 </ul>
7758 </div>
7759 <div style="page-break-after: always;"></div>
7760 </div>
7761 </div>
7762 <div class="sect2">
7763 <h3 id="_release_notes_for_version_1_6_2">H.32. Release Notes for Version 1.6.2</h3>
7764 <div class="paragraph">
7765 <p>Version 1.6.2 includes support for our updated TeleMega v2.0
7766 product and bug fixes in in the flight software for all our boards
7767 and ground station interfaces.</p>
7768 </div>
7769 <div class="sect3">
7770 <h4 id="_altos_31">H.32.1. AltOS</h4>
7771 <div class="paragraph">
7772 <p>AltOS New Features:</p>
7773 </div>
7774 <div class="ulist">
7775 <ul>
7776 <li>
7777 <p>Add support for TeleMega v2.0 boards.</p>
7778 </li>
7779 <li>
7780 <p>Add PWM servo driver. There&#8217;s no higher level code using
7781 this yet, but the driver allows testing of the TeleMega v2.0
7782 servo output connector.</p>
7783 </li>
7784 </ul>
7785 </div>
7786 <div class="paragraph">
7787 <p>AltOS Fixes:</p>
7788 </div>
7789 <div class="ulist">
7790 <ul>
7791 <li>
7792 <p>Slow down telemetry packets to allow receiver to keep
7793 up.</p>
7794 </li>
7795 </ul>
7796 </div>
7797 </div>
7798 <div class="sect3">
7799 <h4 id="_altosui_and_telegps_applications_7">H.32.2. AltosUI and TeleGPS Applications</h4>
7800 <div class="paragraph">
7801 <p>AltosUI and TeleGPS Fixes:</p>
7802 </div>
7803 <div class="ulist">
7804 <ul>
7805 <li>
7806 <p>Fix post-flight orientation computation when processing
7807 TeleMega and EasyMega eeprom data files.</p>
7808 </li>
7809 <li>
7810 <p>Capture complete eeprom data even when there are invalid
7811 entries in the data. This keeps reading eeprom contents and
7812 writing the associated .eeprom file when an error is detected.</p>
7813 </li>
7814 </ul>
7815 </div>
7816 </div>
7817 <div class="sect3">
7818 <h4 id="_documentation_3">H.32.3. Documentation</h4>
7819 <div class="paragraph">
7820 <p>We spent a bunch of time trying to improve our documentation</p>
7821 </div>
7822 <div class="ulist">
7823 <ul>
7824 <li>
7825 <p>HTML versions now have a table of contents on the left side.</p>
7826 </li>
7827 <li>
7828 <p>EasyMini now has its own shorter manual.</p>
7829 </li>
7830 <li>
7831 <p>Provide links between sections in each document.</p>
7832 </li>
7833 <li>
7834 <p>Lots of minor rewriting and restructuring to avoid
7835 duplication of information</p>
7836 </li>
7837 </ul>
7838 </div>
7839 <div style="page-break-after: always;"></div>
7840 </div>
7841 </div>
7842 <div class="sect2">
7843 <h3 id="_release_notes_for_version_1_6_1">H.33. Release Notes for Version 1.6.1</h3>
7844 <div class="paragraph">
7845 <p>Version 1.6.1 includes support for our updated TeleBT v3.0
7846 product and bug fixes in in the flight software for all our boards
7847 and ground station interfaces.</p>
7848 </div>
7849 <div class="sect3">
7850 <h4 id="_altos_32">H.33.1. AltOS</h4>
7851 <div class="paragraph">
7852 <p>AltOS New Features:</p>
7853 </div>
7854 <div class="ulist">
7855 <ul>
7856 <li>
7857 <p>Add support for TeleBT v3.0 boards.</p>
7858 </li>
7859 <li>
7860 <p>Add support for uncompressed APRS data, providing support
7861 for older APRS receivers. Uncompressed APRS data is less
7862 precise, takes more bandwidth and doesn&#8217;t have integrated
7863 altitude data.</p>
7864 </li>
7865 </ul>
7866 </div>
7867 <div class="paragraph">
7868 <p>AltOS Fixes:</p>
7869 </div>
7870 <div class="ulist">
7871 <ul>
7872 <li>
7873 <p>Make TeleDongle and TeleBT more tolerant of data rate
7874 variations from transmitting devices.</p>
7875 </li>
7876 </ul>
7877 </div>
7878 </div>
7879 <div class="sect3">
7880 <h4 id="_altosui_and_telegps_applications_8">H.33.2. AltosUI and TeleGPS Applications</h4>
7881 <div class="paragraph">
7882 <p>AltosUI and TeleGPS New Features:</p>
7883 </div>
7884 <div class="ulist">
7885 <ul>
7886 <li>
7887 <p>Add map to Monitor Idle display. It&#8217;s nice to be able to
7888 verify that maps are working, instead of needing to use
7889 Monitor Flight.</p>
7890 </li>
7891 </ul>
7892 </div>
7893 <div class="paragraph">
7894 <p>AltosUI and TeleGPS Fixes:</p>
7895 </div>
7896 <div class="ulist">
7897 <ul>
7898 <li>
7899 <p>Fix frequency configuration to round values instead of
7900 truncate them, avoiding a common 1kHz error in the setting.</p>
7901 </li>
7902 <li>
7903 <p>Turn the Windows stub into a more useful program that can
7904 launch the application with parameters so that file manager
7905 icons work more reliably.</p>
7906 </li>
7907 <li>
7908 <p>Force KML export to use a C locale so that numbers are
7909 formatted with '.' instead of ',' for a decimal separator in
7910 non-US locales.</p>
7911 </li>
7912 <li>
7913 <p>Preload map tiles based on distance rather than number of
7914 tiles; this means you get the same resolution covering the
7915 entire area, rather than having high resolution near the
7916 center and low resolution further away.</p>
7917 </li>
7918 <li>
7919 <p>Allow configuration of frequency and callsign in Monitor
7920 Idle mode.</p>
7921 </li>
7922 <li>
7923 <p>Fix layout weirdness when resizing windows on
7924 Windows. Windows shouldn&#8217;t have giant blank spaces around
7925 the useful content anymore.</p>
7926 </li>
7927 <li>
7928 <p>Fix layout weirdness when resizing windows on
7929 Windows. Windows shouldn&#8217;t have giant blank spaces around
7930 the useful content anymore.</p>
7931 </li>
7932 <li>
7933 <p>Use a longer filter for descent speed values. This should
7934 provide something more useful on the display, although it
7935 will take longer to respond to changes now.</p>
7936 </li>
7937 <li>
7938 <p>Make Replay Flight run in realtime again. It had been set to
7939 run at 10x speed by mistake.</p>
7940 </li>
7941 </ul>
7942 </div>
7943 </div>
7944 <div class="sect3">
7945 <h4 id="_altosdroid_8">H.33.3. AltosDroid</h4>
7946 <div class="paragraph">
7947 <p>AltosDroid New Features:</p>
7948 </div>
7949 <div class="ulist">
7950 <ul>
7951 <li>
7952 <p>Add offline map support using mapping code from AltosUI.</p>
7953 </li>
7954 <li>
7955 <p>Support TeleDongle (and TeleBT via USB) on devices
7956 supporting USB On-The-Go.</p>
7957 </li>
7958 <li>
7959 <p>Display additional TeleMega pyro channel status in Pad tab.</p>
7960 </li>
7961 <li>
7962 <p>Switch between metric and imperial units.</p>
7963 </li>
7964 <li>
7965 <p>Monitor TeleBT battery voltage.</p>
7966 </li>
7967 <li>
7968 <p>Track multiple devices at the same time, selecting between
7969 them with a menu or using the map.</p>
7970 </li>
7971 <li>
7972 <p>Add hybrid, satellite and terrain map types.</p>
7973 </li>
7974 </ul>
7975 </div>
7976 <div class="paragraph">
7977 <p>AltosDroid Fixes:</p>
7978 </div>
7979 <div class="ulist">
7980 <ul>
7981 <li>
7982 <p>Use standard Android display conventions so that a menu
7983 button is available in the application title bar.</p>
7984 </li>
7985 <li>
7986 <p>Adjust layout to work on large and small screens; shrinking
7987 the go/no-go lights in smaller environments to try and make
7988 everything visible.</p>
7989 </li>
7990 <li>
7991 <p>Make voice announcements depend on current tab.</p>
7992 </li>
7993 <li>
7994 <p>Compute adjustment to current travel direction while in
7995 motion towards rocket.</p>
7996 </li>
7997 </ul>
7998 </div>
7999 <div style="page-break-after: always;"></div>
8000 </div>
8001 </div>
8002 <div class="sect2">
8003 <h3 id="_release_notes_for_version_1_6">H.34. Release Notes for Version 1.6</h3>
8004 <div class="paragraph">
8005 <p>Version 1.6 includes support for our updated TeleDongle v3.0
8006 product and bug fixes in in the flight software for all our boards
8007 and ground station interfaces.</p>
8008 </div>
8009 <div class="sect3">
8010 <h4 id="_altos_33">H.34.1. AltOS</h4>
8011 <div class="paragraph">
8012 <p>AltOS New Features</p>
8013 </div>
8014 <div class="ulist">
8015 <ul>
8016 <li>
8017 <p>Add support for TeleDongle v3.0 boards.</p>
8018 </li>
8019 </ul>
8020 </div>
8021 <div class="paragraph">
8022 <p>AltOS Fixes</p>
8023 </div>
8024 <div class="ulist">
8025 <ul>
8026 <li>
8027 <p>Don&#8217;t beep out the continuity twice by accident in idle mode.
8028 If the battery voltage report takes longer than the initialiation
8029 sequence, the igniter continuity would get reported twice.</p>
8030 </li>
8031 <li>
8032 <p>Record all 32 bits of gyro calibration data in TeleMega and
8033 EasyMega log files. This fixes computation of the gyro rates
8034 in AltosUI.</p>
8035 </li>
8036 <li>
8037 <p>Change TeleDongle LED usage. Green LED flashes when valid
8038 packet is received. Red LED flashes when invalid packet is
8039 received.</p>
8040 </li>
8041 <li>
8042 <p>Replace LPC11U14 SPI driver with non-interrupt version. The
8043 interrupt code would occasionally wedge on long transfers
8044 if interrupts were blocked for too long. This affects all
8045 released TeleGPS products; if you have a TeleGPS device,
8046 you&#8217;ll want to reflash the firmware.</p>
8047 </li>
8048 </ul>
8049 </div>
8050 </div>
8051 <div class="sect3">
8052 <h4 id="_altosui_and_telegps_applications_9">H.34.2. AltosUI and TeleGPS Applications</h4>
8053 <div class="paragraph">
8054 <p>AltosUI and TeleGPS New Features</p>
8055 </div>
8056 <div class="ulist">
8057 <ul>
8058 <li>
8059 <p>Compute tilt angle from TeleMega and EasyMega log
8060 files. This duplicates the quaternion-based angle tracking
8061 code from the flight firmware inside the ground station
8062 software so that post-flight analysis can include evaluation
8063 of the tilt angle.</p>
8064 </li>
8065 <li>
8066 <p>Shows the tool button window when starting with a data file
8067 specified. This means that opening a data file from the file
8068 manager will now bring up the main window to let you operate
8069 the whole application.</p>
8070 </li>
8071 </ul>
8072 </div>
8073 <div class="paragraph">
8074 <p>AltosUI Fixes</p>
8075 </div>
8076 <div class="ulist">
8077 <ul>
8078 <li>
8079 <p>Show the 'Connecting' dialog when using Monitor Idle. Lets
8080 you cancel the Monitor Idle startup when connecting over the
8081 radio link.</p>
8082 </li>
8083 <li>
8084 <p>Make 'Monitor Idle' work for TeleGPS devices when connected
8085 over USB. It&#8217;s nice for testing without needing to broadcast
8086 over the radio.</p>
8087 </li>
8088 <li>
8089 <p>Use different Windows API to discover USB devices. This
8090 works better on my Windows 7 box, and will be used if the
8091 older API fails to provide the necessary information.</p>
8092 </li>
8093 <li>
8094 <p>Look in more places in the registry to try and identify the
8095 installed Java version on Windows. If you install the
8096 default 32-bit version of Windows on a 64-bit OS, the Java
8097 registry information is hiding \SOFTWARE\Wow6432Node for
8098 some reason.</p>
8099 </li>
8100 <li>
8101 <p>Fix file association on Windows by searching for the
8102 javaw.exe program instead of assuming it is in
8103 %SYSTEMROOT%. This makes double-clicking on Altus Metrum
8104 data files in the file manager work correctly.</p>
8105 </li>
8106 <li>
8107 <p>When replaying a file, put 'done' in the Age field when we
8108 reach the end of the file, instead of continuing to count forever.</p>
8109 </li>
8110 <li>
8111 <p>In the Scan Channels code, wait for five seconds if we see
8112 any packet. This is needed because AltOS now sends the
8113 callsign, serial number and flight number only once every
8114 five seconds these days.</p>
8115 </li>
8116 <li>
8117 <p>In the Scan Channels code, reset pending flight state
8118 information each time we change channels. This avoids having
8119 flight computers appear on multiple frequencies by accident.</p>
8120 </li>
8121 </ul>
8122 </div>
8123 <div style="page-break-after: always;"></div>
8124 </div>
8125 </div>
8126 <div class="sect2">
8127 <h3 id="_release_notes_for_version_1_5">H.35. Release Notes for Version 1.5</h3>
8128 <div class="paragraph">
8129 <p>Version 1.5 is a major release. It includes support for our new
8130 EasyMega product, new features and bug fixes in in the flight
8131 software for all our boards and the AltosUI ground station</p>
8132 </div>
8133 <div class="sect3">
8134 <h4 id="_altos_34">H.35.1. AltOS</h4>
8135 <div class="paragraph">
8136 <p>AltOS New Features</p>
8137 </div>
8138 <div class="ulist">
8139 <ul>
8140 <li>
8141 <p>Add support for EasyMega boards.</p>
8142 </li>
8143 <li>
8144 <p>Make the APRS SSID be configurable. This lets you track
8145 different rockets on the same receiver without getting
8146 things mixed up.</p>
8147 </li>
8148 <li>
8149 <p>Report extra pyro channel continuity state on EasyMega and
8150 TeleMega via the beeper. This lets you easily verify flight
8151 readiness on these boards after powering up the electronics
8152 on the rail.</p>
8153 </li>
8154 <li>
8155 <p>Add lower telemetry data rates (2400 and 9600 bps) to
8156 increase telemetry radio range. This reduces the amount of
8157 data received as well as increasing battery consumption in
8158 the transmitter.</p>
8159 </li>
8160 <li>
8161 <p>Change TeleGPS to have only a single log, and append new
8162 data to it rather than using seperate per-flight logs. This
8163 avoids accidentally filling up log storage by turning
8164 TeleGPS on/off several times.</p>
8165 </li>
8166 </ul>
8167 </div>
8168 <div class="paragraph">
8169 <p>AltOS Fixes</p>
8170 </div>
8171 <div class="ulist">
8172 <ul>
8173 <li>
8174 <p>Increase the maximum range for altitude values from +/-32767m
8175 to +/-2147483647m, allowing the flight computers to function
8176 correctly above the 32km level.</p>
8177 </li>
8178 <li>
8179 <p>Continuously test pyro firing conditions during delay stage,
8180 inhibiting the pyro channel if the test fails. This prevents
8181 firing pyro charges where the conditions were good before
8182 the delay, but become bad before the delay expires.</p>
8183 </li>
8184 <li>
8185 <p>Allow negative numbers in pyro configuration values. This
8186 lets you specify things like descending speed or
8187 deceleration.</p>
8188 </li>
8189 </ul>
8190 </div>
8191 </div>
8192 <div class="sect3">
8193 <h4 id="_altosui_and_telegps_applications_10">H.35.2. AltosUI and TeleGPS Applications</h4>
8194 <div class="paragraph">
8195 <p>AltosUI and TeleGPS New Features</p>
8196 </div>
8197 <div class="ulist">
8198 <ul>
8199 <li>
8200 <p>Support telemetry baud rate selection. Adds menus to
8201 the flight monitoring and configuration for baud rate
8202 selection.</p>
8203 </li>
8204 <li>
8205 <p>Support APRS SSID configuration.</p>
8206 </li>
8207 <li>
8208 <p>Integrate with file managers. This provides icons for all of
8209 our file types and associates our application with the files
8210 so that using a file manager to open a AltOS data file
8211 results in launching our application.</p>
8212 </li>
8213 </ul>
8214 </div>
8215 <div class="paragraph">
8216 <p>AltosUI Fixes</p>
8217 </div>
8218 <div class="ulist">
8219 <ul>
8220 <li>
8221 <p>Make the 'Graph' button on the landed tab work again.</p>
8222 </li>
8223 <li>
8224 <p>Make tests for Java on Windows a bit smarter, and also
8225 provide the user with the option to skip installing Java for
8226 cases where we just can&#8217;t figure out what version is installed.</p>
8227 </li>
8228 </ul>
8229 </div>
8230 <div style="page-break-after: always;"></div>
8231 </div>
8232 </div>
8233 <div class="sect2">
8234 <h3 id="_release_notes_for_version_1_4_2">H.36. Release Notes for Version 1.4.2</h3>
8235 <div class="paragraph">
8236 <p>Version 1.4.2 is a minor release. It fixes Java-related install issues on
8237 Windows</p>
8238 </div>
8239 <div class="sect3">
8240 <h4 id="_altosui_and_telegps_applications_11">H.36.1. AltosUI and TeleGPS Applications</h4>
8241 <div class="paragraph">
8242 <p>Windows Install Fixes</p>
8243 </div>
8244 <div class="ulist">
8245 <ul>
8246 <li>
8247 <p>Checks for Java installation data in more registry locations.</p>
8248 </li>
8249 <li>
8250 <p>Allows user to bypass Java installation in case the
8251 detection fails.</p>
8252 </li>
8253 </ul>
8254 </div>
8255 <div style="page-break-after: always;"></div>
8256 </div>
8257 </div>
8258 <div class="sect2">
8259 <h3 id="_release_notes_for_version_1_4_1">H.37. Release Notes for Version 1.4.1</h3>
8260 <div class="paragraph">
8261 <p>Version 1.4.1 is a minor release. It fixes install issues on
8262 Windows and provides the missing TeleMetrum V2.0 firmware. There
8263 aren&#8217;t any changes to the firmware or host applications at
8264 all. All Windows users will want to upgrade to get the signed
8265 driver, but Mac and Linux users who do not need the TeleMetrum
8266 V2.0 firmware image will not need to upgrade.</p>
8267 </div>
8268 <div class="sect3">
8269 <h4 id="_altosui_and_telegps_applications_12">H.37.1. AltosUI and TeleGPS Applications:</h4>
8270 <div class="paragraph">
8271 <p>Windows Install Fixes</p>
8272 </div>
8273 <div class="ulist">
8274 <ul>
8275 <li>
8276 <p>Provide signed Windows driver files. This should avoid any need to
8277 disable driver signature checking on Windows 7 or 8.</p>
8278 </li>
8279 <li>
8280 <p>Fix Java version detection and download. Previously, the
8281 installer would only look for Java 6 or 7 and insist on
8282 downloading its own Java bits if there was something else
8283 installed. Furthermore, the 64-bit Java link provided didn&#8217;t
8284 work for anyone other than Keith, making it impossible to
8285 install AltOS on any machine with Java SE 8 installed.</p>
8286 </li>
8287 </ul>
8288 </div>
8289 <div class="paragraph">
8290 <p>Other Fixes</p>
8291 </div>
8292 <div class="ulist">
8293 <ul>
8294 <li>
8295 <p>Include 1.4 firmware for TeleMetrum V2.0. None of the
8296 installers shipped this file. Now it&#8217;s included in the AltOS
8297 packages for Linux, Mac and Windows.</p>
8298 </li>
8299 <li>
8300 <p>Include Google Application Key for map downloading. The 1.4
8301 release didn&#8217;t have this key in the released version of the
8302 software, making map downloading fail for most people.</p>
8303 </li>
8304 </ul>
8305 </div>
8306 <div style="page-break-after: always;"></div>
8307 </div>
8308 </div>
8309 <div class="sect2">
8310 <h3 id="_release_notes_for_version_1_4">H.38. Release Notes for Version 1.4</h3>
8311 <div class="paragraph">
8312 <p>Version 1.4 is a major release. It includes support for our new
8313 TeleGPS product, new features and bug fixes in in the flight
8314 software for all our boards and the AltosUI ground station</p>
8315 </div>
8316 <div class="sect3">
8317 <h4 id="_altos_35">H.38.1. AltOS</h4>
8318 <div class="paragraph">
8319 <p>AltOS new features:</p>
8320 </div>
8321 <div class="ulist">
8322 <ul>
8323 <li>
8324 <p>Add support for TeleGPS boards.</p>
8325 </li>
8326 <li>
8327 <p>Make the beeper tone configurable, making it
8328 possible to distinguish between two Altus Metrum
8329 products in the same ebay.</p>
8330 </li>
8331 <li>
8332 <p>Make the firing time for extra pyro channels
8333 configurable, allowing longer (or shorter) than the
8334 default 50ms.  Only relevant for TeleMega at this
8335 time.</p>
8336 </li>
8337 </ul>
8338 </div>
8339 <div class="paragraph">
8340 <p>AltOS fixes:</p>
8341 </div>
8342 <div class="ulist">
8343 <ul>
8344 <li>
8345 <p>Replace the 'dit dit dit' tones at startup with the
8346 current battery voltage, measured in tenths of a
8347 volt. This lets you check the battery voltage
8348 without needing telemetry, which is especially
8349 useful on EasyMini.</p>
8350 </li>
8351 <li>
8352 <p>Change state beeping to "Farnsworth spacing", which
8353 means they&#8217;re quite a bit faster than before, and so
8354 they take less time to send.</p>
8355 </li>
8356 <li>
8357 <p>Fix bug preventing the selection of the 'Flight
8358 State After' mode in pyro configuration.</p>
8359 </li>
8360 <li>
8361 <p>Fix bug where erasing flights would reset the flight
8362 number to 2 on TeleMega and TeleMetrum v2.</p>
8363 </li>
8364 <li>
8365 <p>Fix u-Blox GPS driver to mark course and speed data
8366 as being present.</p>
8367 </li>
8368 </ul>
8369 </div>
8370 </div>
8371 <div class="sect3">
8372 <h4 id="_altosui_application">H.38.2. AltosUI Application</h4>
8373 <div class="paragraph">
8374 <p>AltosUI new features:</p>
8375 </div>
8376 <div class="ulist">
8377 <ul>
8378 <li>
8379 <p>Add zooming and new content types (terrain and road
8380 maps) to map view. Change map storage format from
8381 PNG to Jpeg, which saves a huge amount of disk
8382 space. You will need to re-download all of your
8383 pre-loaded map images.</p>
8384 </li>
8385 <li>
8386 <p>Add a distance measuring device to the maps
8387 view. Select this by using any button other than the
8388 left one, or by pressing shift or control on the
8389 keyboard while using the left button.</p>
8390 </li>
8391 <li>
8392 <p>Add new 'Ignitor' tab to the flight monitor display
8393 for TeleMega&#8217;s extra ignitors.</p>
8394 </li>
8395 <li>
8396 <p>Add additional ignitor firing marks and voltages to
8397 the graph so you can see when the ignitors fired,
8398 along with the ignitor voltages.</p>
8399 </li>
8400 <li>
8401 <p>Add GPS course, ground speed and climb rate as
8402 optional graph elements.</p>
8403 </li>
8404 </ul>
8405 </div>
8406 <div class="paragraph">
8407 <p>AltosUI fixes:</p>
8408 </div>
8409 <div class="ulist">
8410 <ul>
8411 <li>
8412 <p>When flashing new firmware, re-try opening the
8413 device as sometimes it takes a while for the
8414 underlying operating system to recognize that the
8415 device has rebooted in preparation for the flashing
8416 operation.</p>
8417 </li>
8418 <li>
8419 <p>Hide Tilt Angle in ascent tab for devices that don&#8217;t
8420 have a gyro.</p>
8421 </li>
8422 <li>
8423 <p>Increase the width of data lines in the graphs to
8424 make them easier to read.</p>
8425 </li>
8426 <li>
8427 <p>Filter out speed and acceleration spikes caused by
8428 ejection charge firing when computing the maximum
8429 values. This provides a more accurate reading of
8430 those maximums.</p>
8431 </li>
8432 <li>
8433 <p>Fix EasyMini voltage displays. Early EasyMini
8434 prototypes used a 3.0V regulator, and AltosUI still
8435 used that value as the basis of the
8436 computation. Production EasyMini boards have always
8437 shipped with a 3.3V regulator. Also, purple EasyMini
8438 boards sensed the battery voltage past the blocking
8439 diode, resulting in a drop of about 150mV from the
8440 true battery voltage. Compensate for that when
8441 displaying the value.</p>
8442 </li>
8443 <li>
8444 <p>Display error message when trying to configure
8445 maximum flight log size while the flight computer
8446 still has flight data stored.</p>
8447 </li>
8448 <li>
8449 <p>Handle TeleMetrum and TeleMini eeprom files
8450 generated with pre-1.0 firmware. Those ancient
8451 versions didn&#8217;t report the log format, so just use
8452 the product name instead.</p>
8453 </li>
8454 </ul>
8455 </div>
8456 </div>
8457 <div class="sect3">
8458 <h4 id="_telegps_application">H.38.3. TeleGPS Application</h4>
8459 <div class="ulist">
8460 <ul>
8461 <li>
8462 <p>New application designed for use with TeleGPS boards.</p>
8463 </li>
8464 <li>
8465 <p>Shares code with AltosUI, mostly just trimmed down
8466 to focus on TeleGPS-related functions.</p>
8467 </li>
8468 </ul>
8469 </div>
8470 </div>
8471 <div class="sect3">
8472 <h4 id="_documentation_4">H.38.4. Documentation</h4>
8473 <div class="paragraph">
8474 <p>Documentation changes:</p>
8475 </div>
8476 <div class="ulist">
8477 <ul>
8478 <li>
8479 <p>Re-create the drill template images; they should
8480 print correctly from Firefox at least. Ship these as
8481 individual PDF files so they&#8217;re easy to print.</p>
8482 </li>
8483 <li>
8484 <p>Add a description of the 'Apogee Lockout' setting,
8485 which prevents the apogee charge from firing for a
8486 configurable amount of time after boost.</p>
8487 </li>
8488 </ul>
8489 </div>
8490 <div style="page-break-after: always;"></div>
8491 </div>
8492 </div>
8493 <div class="sect2">
8494 <h3 id="_release_notes_for_version_1_3_2">H.39. Release Notes for Version 1.3.2</h3>
8495 <div class="paragraph">
8496 <p>Version 1.3.2 is a minor release. It includes small bug fixes for
8497 the TeleMega flight software and AltosUI ground station</p>
8498 </div>
8499 <div class="sect3">
8500 <h4 id="_altos_36">H.39.1. AltOS</h4>
8501 <div class="paragraph">
8502 <p>AltOS fixes:</p>
8503 </div>
8504 <div class="ulist">
8505 <ul>
8506 <li>
8507 <p>On TeleMega, limit number of logged GPS status
8508 information to 12 satellites. That&#8217;s all there is
8509 room for in the log structure.</p>
8510 </li>
8511 <li>
8512 <p>Improve APRS behavior. Remembers last known GPS
8513 position and keeps sending that if we lose GPS
8514 lock. Marks locked/unlocked by sending L/U in the
8515 APRS comment field along with the number of sats in
8516 view and voltages.</p>
8517 </li>
8518 </ul>
8519 </div>
8520 </div>
8521 <div class="sect3">
8522 <h4 id="_altosui_application_2">H.39.2. AltosUI Application</h4>
8523 <div class="paragraph">
8524 <p>AltosUI fixes:</p>
8525 </div>
8526 <div class="ulist">
8527 <ul>
8528 <li>
8529 <p>If the TeleMega flight firmware reports that it has
8530 logged information about more than 12 satellites,
8531 don&#8217;t believe it as the log only holds 12 satellite
8532 records.</p>
8533 </li>
8534 <li>
8535 <p>Track the maximum height as computed from GPS
8536 altitude data and report that in the flight summary
8537 data.</p>
8538 </li>
8539 <li>
8540 <p>Use letters (A, B, C, D) for alternate pyro channel
8541 names instead of numbers (0, 1, 2, 3) in the Fire
8542 Igniter dialog.</p>
8543 </li>
8544 </ul>
8545 </div>
8546 <div style="page-break-after: always;"></div>
8547 </div>
8548 </div>
8549 <div class="sect2">
8550 <h3 id="_release_notes_for_version_1_3_1">H.40. Release Notes for Version 1.3.1</h3>
8551 <div class="paragraph">
8552 <p>Version 1.3.1 is a minor release. It improves support for
8553 TeleMega, TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8554 </div>
8555 <div class="sect3">
8556 <h4 id="_altos_37">H.40.1. AltOS</h4>
8557 <div class="paragraph">
8558 <p>AltOS new features:</p>
8559 </div>
8560 <div class="ulist">
8561 <ul>
8562 <li>
8563 <p>Improved APRS mode. Now uses compressed position
8564 format for smaller data size, improved precision and
8565 to include altitude data as well as latitude and
8566 longitude. Also added battery and pyro voltage
8567 reports in the APRS comment field so you can confirm
8568 that the unit is ready for launch.</p>
8569 </li>
8570 </ul>
8571 </div>
8572 <div class="paragraph">
8573 <p>AltOS fixes:</p>
8574 </div>
8575 <div class="ulist">
8576 <ul>
8577 <li>
8578 <p>Improve sensor boot code. If sensors fail to
8579 self-test, the device will still boot up and check
8580 for pad/idle modes. If in idle mode, the device will
8581 warn the user with a distinct beep, if in Pad mode,
8582 the unit will operate as best it can. Also, the
8583 Z-axis accelerometer now uses the factory
8584 calibration values instead of re-calibrating on the
8585 pad each time. This avoids accidental boost detect
8586 when moving the device around while in Pad mode.</p>
8587 </li>
8588 <li>
8589 <p>Fix antenna-down mode accelerometer
8590 configuration. Antenna down mode wasn&#8217;t working
8591 because the accelerometer calibration values were
8592 getting re-computed incorrectly in inverted mode.</p>
8593 </li>
8594 </ul>
8595 </div>
8596 </div>
8597 <div class="sect3">
8598 <h4 id="_altosui_application_3">H.40.2. AltosUI Application</h4>
8599 <div class="paragraph">
8600 <p>AltosUI new features:</p>
8601 </div>
8602 <div class="ulist">
8603 <ul>
8604 <li>
8605 <p>Display additional TeleMega sensor values in real
8606 units. Make all of these values available for
8607 plotting. Display TeleMega orientation value in the
8608 Ascent and Table tabs.</p>
8609 </li>
8610 <li>
8611 <p>Support additional TeleMega pyro channels in the
8612 Fire Igniter dialog. This lets you do remote testing
8613 of all of the channels, rather than just Apogee and
8614 Main.</p>
8615 </li>
8616 </ul>
8617 </div>
8618 <div class="paragraph">
8619 <p>AltosUI fixes:</p>
8620 </div>
8621 <div class="ulist">
8622 <ul>
8623 <li>
8624 <p>Limit data rate when downloading satellite images
8625 from Google to make sure we stay within their limits
8626 so that all of the map tiles download successfully.</p>
8627 </li>
8628 </ul>
8629 </div>
8630 <div style="page-break-after: always;"></div>
8631 </div>
8632 </div>
8633 <div class="sect2">
8634 <h3 id="_release_notes_for_version_1_3">H.41. Release Notes for Version 1.3</h3>
8635 <div class="paragraph">
8636 <p>Version 1.3 is a major release. It adds support for TeleMega,
8637 TeleMetrum v2.0, TeleMini v2.0 and EasyMini.</p>
8638 </div>
8639 <div class="sect3">
8640 <h4 id="_altos_38">H.41.1. AltOS</h4>
8641 <div class="paragraph">
8642 <p>AltOS new features:</p>
8643 </div>
8644 <div class="ulist">
8645 <ul>
8646 <li>
8647 <p>Add STM32L processor support. This includes
8648 enhancements to the scheduler to support products
8649 with many threads.</p>
8650 </li>
8651 <li>
8652 <p>Add NXP LPC11U14 processor support.</p>
8653 </li>
8654 <li>
8655 <p>Support additional pyro channels. These are
8656 configurable through the UI to handle air starts,
8657 staging, additional recovery events and external
8658 devices such as cameras.</p>
8659 </li>
8660 <li>
8661 <p>Add 3-axis gyro support for orientation
8662 tracking. This integrates the gyros to compute the
8663 angle from vertical during flight, allowing the
8664 additional pyro events to be controlled by this
8665 value.</p>
8666 </li>
8667 <li>
8668 <p>Many more device drivers, including u-Blox Max 7Q
8669 GPS, Freescale MMA6555 digital single-axis
8670 accelerometer, Invensense MPU6000 3-axis
8671 accelerometer + 3 axis gyro, Honeywell HMC5883
8672 3-axis magnetic sensor and the TI CC1120 and CC115L
8673 digital FM transceivers</p>
8674 </li>
8675 </ul>
8676 </div>
8677 </div>
8678 <div class="sect3">
8679 <h4 id="_altosui_application_4">H.41.2. AltosUI Application</h4>
8680 <div class="paragraph">
8681 <p>AltosUI new features:</p>
8682 </div>
8683 <div class="ulist">
8684 <ul>
8685 <li>
8686 <p>Support TeleMega, TeleMetrum v2.0, TeleMini v2.0 and
8687 EasyMini telemetry and log formats.</p>
8688 </li>
8689 </ul>
8690 </div>
8691 <div class="paragraph">
8692 <p>AltosUI fixes:</p>
8693 </div>
8694 <div class="ulist">
8695 <ul>
8696 <li>
8697 <p>Use preferred units for main deployment height
8698 configuration, instead of always doing configuration in
8699 meters.
8700 == MicroPeak Application</p>
8701 </li>
8702 <li>
8703 <p>Add 'Download' button to menu bar.</p>
8704 </li>
8705 <li>
8706 <p>Save the last log directory and offer that as the
8707 default for new downloads</p>
8708 </li>
8709 </ul>
8710 </div>
8711 <div style="page-break-after: always;"></div>
8712 </div>
8713 </div>
8714 <div class="sect2">
8715 <h3 id="_release_notes_for_version_1_2_1">H.42. Release Notes for Version 1.2.1</h3>
8716 <div class="paragraph">
8717 <p>Version 1.2.1 is a minor release. It adds support for TeleBT and
8718 the AltosDroid application, provides several new features in
8719 AltosUI and fixes some bugs in the AltOS firmware.</p>
8720 </div>
8721 <div class="sect3">
8722 <h4 id="_altos_39">H.42.1. AltOS</h4>
8723 <div class="paragraph">
8724 <p>AltOS new features:</p>
8725 </div>
8726 <div class="ulist">
8727 <ul>
8728 <li>
8729 <p>Add support for TeleBT</p>
8730 </li>
8731 </ul>
8732 </div>
8733 <div class="paragraph">
8734 <p>AltOS fixes:</p>
8735 </div>
8736 <div class="ulist">
8737 <ul>
8738 <li>
8739 <p>In TeleMini recovery mode (when booted with the
8740 outer two debug pins connected together), the radio
8741 parameters are also set back to defaults
8742 (434.550MHz, N0CALL, factory radio cal).</p>
8743 </li>
8744 <li>
8745 <p>Correct Kalman filter model error covariance
8746 matrix. The values used previously assumed
8747 continuous measurements instead of discrete
8748 measurements.</p>
8749 </li>
8750 <li>
8751 <p>Fix some bugs in the USB driver for TeleMetrum and
8752 TeleDongle that affected Windows users.</p>
8753 </li>
8754 <li>
8755 <p>Adjusted the automatic gain control parameters that
8756 affect receive performance for TeleDongle. Field
8757 tests indicate that this may improve receive
8758 performance somewhat.</p>
8759 </li>
8760 </ul>
8761 </div>
8762 </div>
8763 <div class="sect3">
8764 <h4 id="_altosui_application_5">H.42.2. AltosUI Application</h4>
8765 <div class="paragraph">
8766 <p>AltosUI application new features:</p>
8767 </div>
8768 <div class="ulist">
8769 <ul>
8770 <li>
8771 <p>Make the initial position of the AltosUI top level
8772 window configurable. Along with this change, the
8773 other windows will pop up at 'sensible' places now,
8774 instead of on top of one another.</p>
8775 </li>
8776 <li>
8777 <p>Add GPS data and a map to the graph window. This
8778 lets you see a complete summary of the flight
8779 without needing to 'replay' the whole thing.</p>
8780 </li>
8781 </ul>
8782 </div>
8783 <div class="paragraph">
8784 <p>AltosUI application fixes:</p>
8785 </div>
8786 <div class="ulist">
8787 <ul>
8788 <li>
8789 <p>Handle missing GPS lock in 'Descent'
8790 tab. Previously, if the GPS position of the pad was
8791 unknown, an exception would be raised, breaking the
8792 Descent tab contents.</p>
8793 </li>
8794 <li>
8795 <p>Improve the graph, adding tool-tips to show values
8796 near the cursor and making the displayed set of
8797 values configurable, adding all of the flight data
8798 as options while leaving the default settings alone
8799 so that the graph starts by showing height, speed
8800 and acceleration.</p>
8801 </li>
8802 <li>
8803 <p>Add callsign to Monitor idle window and connecting
8804 dialogs. This makes it clear which callsign is being
8805 used so that the operator will be aware that it must
8806 match the flight computer value or no communication
8807 will work.</p>
8808 </li>
8809 <li>
8810 <p>When downloading flight data, display the block
8811 number so that the user has some sense of
8812 progress. Unfortunately, we don&#8217;t know how many
8813 blocks will need to be downloaded, but at least it
8814 isn&#8217;t just sitting there doing nothing for a long
8815 time.</p>
8816 </li>
8817 </ul>
8818 </div>
8819 </div>
8820 <div class="sect3">
8821 <h4 id="_altosdroid_9">H.42.3. AltosDroid</h4>
8822 <div class="ulist">
8823 <ul>
8824 <li>
8825 <p>First version of this application</p>
8826 </li>
8827 </ul>
8828 </div>
8829 <div style="page-break-after: always;"></div>
8830 </div>
8831 </div>
8832 <div class="sect2">
8833 <h3 id="_release_notes_for_version_1_2">H.43. Release Notes for Version 1.2</h3>
8834 <div class="paragraph">
8835 <p>Version 1.2 is a major release. It adds support for MicroPeak
8836 and the MicroPeak USB adapter.</p>
8837 </div>
8838 <div class="sect3">
8839 <h4 id="_altos_40">H.43.1. AltOS</h4>
8840 <div class="paragraph">
8841 <p>AltOS New Features:</p>
8842 </div>
8843 <div class="ulist">
8844 <ul>
8845 <li>
8846 <p>Add MicroPeak support. This includes support for the
8847 ATtiny85 processor and adaptations to the core code
8848 to allow for devices too small to run the
8849 multi-tasking scheduler.</p>
8850 </li>
8851 </ul>
8852 </div>
8853 </div>
8854 <div class="sect3">
8855 <h4 id="_altosui_and_micropeak_application">H.43.2. AltosUI and MicroPeak Application</h4>
8856 <div class="paragraph">
8857 <p>New Features:</p>
8858 </div>
8859 <div class="ulist">
8860 <ul>
8861 <li>
8862 <p>Added MicroPeak application</p>
8863 </li>
8864 </ul>
8865 </div>
8866 <div class="paragraph">
8867 <p>AltosUI and MicroPeak fixes:</p>
8868 </div>
8869 <div class="ulist">
8870 <ul>
8871 <li>
8872 <p>Distribute Mac OS X packages in disk image ('.dmg')
8873 format to greatly simplify installation.</p>
8874 </li>
8875 <li>
8876 <p>Provide version numbers for the shared Java
8877 libraries to ensure that upgrades work properly, and
8878 to allow for multiple Altus Metrum software packages
8879 to be installed in the same directory at the same
8880 time.</p>
8881 </li>
8882 </ul>
8883 </div>
8884 <div style="page-break-after: always;"></div>
8885 </div>
8886 </div>
8887 <div class="sect2">
8888 <h3 id="_release_notes_for_version_1_1">H.44. Release Notes for Version 1.1</h3>
8889 <div class="paragraph">
8890 <p>Version 1.1.1 is a bug-fix release. It fixes a couple of bugs
8891 in AltosUI and one firmware bug that affects TeleMetrum
8892 version 1.0 boards. Thanks to Bob Brown for help diagnosing
8893 the Google Earth file export issue, and for suggesting the
8894 addition of the Ground Distance value in the Descent tab.</p>
8895 </div>
8896 <div class="sect3">
8897 <h4 id="_altos_41">H.44.1. AltOS</h4>
8898 <div class="paragraph">
8899 <p>AltOS fixes:</p>
8900 </div>
8901 <div class="ulist">
8902 <ul>
8903 <li>
8904 <p>TeleMetrum v1.0 boards use the AT45DB081D flash
8905 memory part to store flight data, which is different
8906 from later TeleMetrum boards. The AltOS v1.1 driver
8907 for this chip couldn&#8217;t erase memory, leaving it
8908 impossible to delete flight data or update
8909 configuration values. This bug doesn&#8217;t affect newer
8910 TeleMetrum boards, and it doesn&#8217;t affect the safety
8911 of rockets flying version 1.1 firmware.</p>
8912 </li>
8913 </ul>
8914 </div>
8915 </div>
8916 <div class="sect3">
8917 <h4 id="_altosui_11">H.44.2. AltosUI</h4>
8918 <div class="paragraph">
8919 <p>AltosUI new features:</p>
8920 </div>
8921 <div class="ulist">
8922 <ul>
8923 <li>
8924 <p>The “Descent” tab displays the range to the rocket,
8925 which is a combination of the over-the-ground
8926 distance to the rockets current latitude/longitude
8927 and the height of the rocket. As such, it&#8217;s useful
8928 for knowing how far away the rocket is, but
8929 difficult to use when estimating where the rocket
8930 might eventually land. A new “Ground Distance” field
8931 has been added which displays the distance to a spot
8932 right underneath the rocket.</p>
8933 </li>
8934 </ul>
8935 </div>
8936 <div class="paragraph">
8937 <p>AltosUI fixes:</p>
8938 </div>
8939 <div class="ulist">
8940 <ul>
8941 <li>
8942 <p>Creating a Google Earth file (KML) from on-board
8943 flight data (EEPROM) would generate an empty
8944 file. The code responsible for reading the EEPROM
8945 file wasn&#8217;t ever setting the GPS valid bits, and so
8946 the KML export code thought there was no GPS data in
8947 the file.</p>
8948 </li>
8949 <li>
8950 <p>The “Landed” tab was displaying all values in metric
8951 units, even when AltosUI was configured to display
8952 imperial units. Somehow I just missed this tab when
8953 doing the units stuff.</p>
8954 </li>
8955 <li>
8956 <p>Sensor data wasn&#8217;t being displayed for TeleMini
8957 flight computers in Monitor Idle mode, including
8958 things like battery voltage. The code that picked
8959 which kinds of data to fetch from the flight
8960 computer was missing a check for TeleMini when
8961 deciding whether to fetch the analog sensor data.</p>
8962 </li>
8963 </ul>
8964 </div>
8965 <div style="page-break-after: always;"></div>
8966 </div>
8967 </div>
8968 <div class="sect2">
8969 <h3 id="_release_notes_for_version_1_1_2">H.45. Release Notes for Version 1.1</h3>
8970 <div class="paragraph">
8971 <p>Version 1.1 is a minor release. It provides a few new features
8972 in AltosUI and the AltOS firmware and fixes bugs.</p>
8973 </div>
8974 <div class="sect3">
8975 <h4 id="_altos_42">H.45.1. AltOS</h4>
8976 <div class="paragraph">
8977 <p>AltOS Firmware New Features:</p>
8978 </div>
8979 <div class="ulist">
8980 <ul>
8981 <li>
8982 <p>Add apogee-lockout value. Overrides the apogee
8983 detection logic to prevent incorrect apogee charge
8984 firing.</p>
8985 </li>
8986 <li>
8987 <p>Force the radio frequency to 434.550MHz when the
8988 debug clock pin is connected to ground at boot
8989 time. This provides a way to talk to a TeleMini
8990 which is configured to some unknown frequency.</p>
8991 </li>
8992 <li>
8993 <p>Provide RSSI values for Monitor Idle mode. This
8994 makes it easy to check radio range without needing
8995 to go to flight mode.</p>
8996 </li>
8997 </ul>
8998 </div>
8999 <div class="paragraph">
9000 <p>AltOS Fixes:</p>
9001 </div>
9002 <div class="ulist">
9003 <ul>
9004 <li>
9005 <p>Fix a bug where the data reported in telemetry
9006 packets was from 320ms ago.</p>
9007 </li>
9008 <li>
9009 <p>Fix a bug which caused the old received telemetry
9010 packets to be retransmitted over the USB link when
9011 the radio was turned off and back on.</p>
9012 </li>
9013 </ul>
9014 </div>
9015 </div>
9016 <div class="sect3">
9017 <h4 id="_altosui_12">H.45.2. AltosUI</h4>
9018 <div class="paragraph">
9019 <p>AltosUI New Features:</p>
9020 </div>
9021 <div class="ulist">
9022 <ul>
9023 <li>
9024 <p>Make the look-n-feel configurable, providing a choice from
9025 the available options.</p>
9026 </li>
9027 <li>
9028 <p>Add an 'Age' element to mark how long since a
9029 telemetry packet has been received. Useful to
9030 quickly gauge whether communications with the rocket
9031 are still active.</p>
9032 </li>
9033 <li>
9034 <p>Add 'Configure Ground Station' dialog to set the
9035 radio frequency used by a particular TeleDongle
9036 without having to go through the flight monitor UI.</p>
9037 </li>
9038 <li>
9039 <p>Add configuration for the new apogee-lockout
9040 value. A menu provides a list of reasonable values,
9041 or the value can be set by hand.</p>
9042 </li>
9043 <li>
9044 <p>Add Imperial units mode to present data in feet
9045 instead of meters.</p>
9046 </li>
9047 </ul>
9048 </div>
9049 <div class="paragraph">
9050 <p>AltosUI Fixes:</p>
9051 </div>
9052 <div class="ulist">
9053 <ul>
9054 <li>
9055 <p>Fix a bug that caused GPS ready to happen too
9056 quickly. The software was using every telemetry
9057 packet to signal new GPS data, which caused GPS
9058 ready to be signalled after 10 packets instead of 10
9059 GPS updates.</p>
9060 </li>
9061 <li>
9062 <p>Fix Google Earth data export to work with recent
9063 versions. The google earth file loading code got a
9064 lot pickier, requiring some minor white space
9065 changes in the export code.</p>
9066 </li>
9067 <li>
9068 <p>Changed how flight data are downloaded. Now there&#8217;s
9069 an initial dialog asking which flights to download,
9070 and after that finishes, a second dialog comes up
9071 asking which flights to delete.</p>
9072 </li>
9073 <li>
9074 <p>Re-compute time spent in each state for the flight
9075 graph; this figures out the actual boost and landing
9076 times instead of using the conservative values
9077 provide by the flight electronics. This improves the
9078 accuracy of the boost acceleration and main descent
9079 rate computations.</p>
9080 </li>
9081 <li>
9082 <p>Make AltosUI run on Mac OS Lion. The default Java
9083 heap space was dramatically reduced for this release
9084 causing much of the UI to fail randomly. This most
9085 often affected the satellite mapping download and
9086 displays.</p>
9087 </li>
9088 <li>
9089 <p>Change how data are displayed in the 'table' tab of
9090 the flight monitoring window. This eliminates
9091 entries duplicated from the header and adds both
9092 current altitude and pad altitude, which are useful
9093 in 'Monitor Idle' mode.</p>
9094 </li>
9095 </ul>
9096 </div>
9097 <div style="page-break-after: always;"></div>
9098 </div>
9099 </div>
9100 <div class="sect2">
9101 <h3 id="_release_notes_for_version_1_0_1">H.46. Release Notes for Version 1.0.1</h3>
9102 <div class="paragraph">
9103 <p>Version 1.0.1 is a major release, adding support for the
9104 TeleMini device and lots of new AltosUI features</p>
9105 </div>
9106 <div class="sect3">
9107 <h4 id="_altos_43">H.46.1. AltOS</h4>
9108 <div class="paragraph">
9109 <p>AltOS New Features</p>
9110 </div>
9111 <div class="ulist">
9112 <ul>
9113 <li>
9114 <p>Add TeleMini v1.0 support.</p>
9115 </li>
9116 <li>
9117 <p>Support operation of TeleMetrum with the antenna pointing
9118 aft. Previous firmware versions required the antenna to be
9119 pointing upwards, now there is a configuration option
9120 allowing the antenna to point aft, to aid installation in
9121 some airframes.</p>
9122 </li>
9123 <li>
9124 <p>Ability to disable telemetry. For airframes where an antenna
9125 just isn&#8217;t possible, or where radio transmissions might
9126 cause trouble with other electronics, there&#8217;s a
9127 configuration option to disable all telemetry. Note that the
9128 board will still enable the radio link in idle mode.</p>
9129 </li>
9130 <li>
9131 <p>Arbitrary frequency selection. The radios in Altus Metrum
9132 devices can be programmed to a wide range of frequencies, so
9133 instead of limiting devices to 10 pre-selected 'channels',
9134 the new firmware allows the user to choose any frequency in
9135 the 70cm band. Note that the RF matching circuit on the
9136 boards is tuned for around 435MHz, so frequencies far from
9137 that may reduce the available range.</p>
9138 </li>
9139 </ul>
9140 </div>
9141 <div class="paragraph">
9142 <p>AltOS Fixes</p>
9143 </div>
9144 <div class="ulist">
9145 <ul>
9146 <li>
9147 <p>Change telemetry to be encoded in multiple 32-byte
9148 packets. This enables support for TeleMini and other devices
9149 without requiring further updates to the TeleDongle
9150 firmware.</p>
9151 </li>
9152 <li>
9153 <p>Kalman-filter based flight-tracking. The model based sensor
9154 fusion approach of a Kalman filter means that AltOS now
9155 computes apogee much more accurately than before, generally
9156 within a fraction of a second. In addition, this approach
9157 allows the baro-only TeleMini device to correctly identify
9158 Mach transitions, avoiding the error-prone selection of a
9159 Mach delay.</p>
9160 </li>
9161 </ul>
9162 </div>
9163 </div>
9164 <div class="sect3">
9165 <h4 id="_altosui_application_6">H.46.2. AltosUI Application</h4>
9166 <div class="paragraph">
9167 <p>AltosUI New Features</p>
9168 </div>
9169 <div class="ulist">
9170 <ul>
9171 <li>
9172 <p>Add main/apogee voltage graphs to the data
9173 plot. This provides a visual indication if the
9174 igniters fail before being fired.</p>
9175 </li>
9176 <li>
9177 <p>Scan for altimeter devices by watching the defined
9178 telemetry frequencies. This avoids the problem of
9179 remembering what frequency a device was configured
9180 to use, which is especially important with TeleMini
9181 which does not include a USB connection.</p>
9182 </li>
9183 <li>
9184 <p>Monitor altimeter state in "Idle" mode. This
9185 provides much of the information presented in the
9186 "Pad" dialog from the Monitor Flight command,
9187 monitoring the igniters, battery and GPS status
9188 withing requiring the flight computer to be armed
9189 and ready for flight.</p>
9190 </li>
9191 <li>
9192 <p>Pre-load map images from home. For those launch
9193 sites which don&#8217;t provide free Wi-Fi, this allows
9194 you to download the necessary satellite images
9195 given the location of the launch site. A list of
9196 known launch sites is maintained at altusmetrum.org
9197 which AltosUI downloads to populate a menu; if
9198 you&#8217;ve got a launch site not on that list, please
9199 send the name of it, latitude and longitude along
9200 with a link to the web site of the controlling club
9201 to the altusmetrum mailing list.</p>
9202 </li>
9203 <li>
9204 <p>Flight statistics are now displayed in the Graph
9205 data window. These include max height/speed/accel,
9206 average descent rates and a few other bits of
9207 information. The Graph Data window can now be
9208 reached from the 'Landed' tab in the Monitor Flight
9209 window so you can immediately see the results of a
9210 flight.</p>
9211 </li>
9212 </ul>
9213 </div>
9214 <div class="paragraph">
9215 <p>AltosUI Changes</p>
9216 </div>
9217 <div class="ulist">
9218 <ul>
9219 <li>
9220 <p>Wait for altimeter when using packet mode. Instead
9221 of quicly timing out when trying to initialize a
9222 packet mode configuration connection, AltosUI now
9223 waits indefinitely for the remote device to appear,
9224 providing a cancel button should the user get
9225 bored. This is necessary as the TeleMini can only be
9226 placed in "Idle" mode if AltosUI is polling it.</p>
9227 </li>
9228 </ul>
9229 </div>
9230 <div style="page-break-after: always;"></div>
9231 </div>
9232 </div>
9233 <div class="sect2">
9234 <h3 id="_release_notes_for_version_0_9_2">H.47. Release Notes for Version 0.9.2</h3>
9235 <div class="paragraph">
9236 <p>Version 0.9.2 is an AltosUI bug-fix release, with no firmware
9237 changes.</p>
9238 </div>
9239 <div class="sect3">
9240 <h4 id="_altosui_13">H.47.1. AltosUI</h4>
9241 <div class="paragraph">
9242 <p>AltosUI fixes:</p>
9243 </div>
9244 <div class="ulist">
9245 <ul>
9246 <li>
9247 <p>Fix plotting problems due to missing file in the Mac
9248 OS install image.</p>
9249 </li>
9250 <li>
9251 <p>Always read whole eeprom blocks, mark empty records
9252 invalid, display parsing errors to user.</p>
9253 </li>
9254 <li>
9255 <p>Add software version to Configure AltosUI dialog</p>
9256 </li>
9257 </ul>
9258 </div>
9259 <div style="page-break-after: always;"></div>
9260 </div>
9261 </div>
9262 <div class="sect2">
9263 <h3 id="_release_notes_for_version_0_9">H.48. Release Notes for Version 0.9</h3>
9264 <div class="paragraph">
9265 <p>Version 0.9 adds a few new firmware features and accompanying
9266 AltosUI changes, along with new hardware support.</p>
9267 </div>
9268 <div class="sect3">
9269 <h4 id="_altos_44">H.48.1. AltOS</h4>
9270 <div class="ulist">
9271 <ul>
9272 <li>
9273 <p>Support for TeleMetrum v1.1 hardware. Sources for the flash
9274 memory part used in v1.0 dried up, so v1.1 uses a different
9275 part which required a new driver and support for explicit
9276 flight log erasing.</p>
9277 </li>
9278 <li>
9279 <p>Multiple flight log support. This stores more than one
9280 flight log in the on-board flash memory. It also requires
9281 the user to explicitly erase flights so that you won&#8217;t lose
9282 flight logs just because you fly the same board twice in one
9283 day.</p>
9284 </li>
9285 <li>
9286 <p>Telemetry support for devices with serial number &gt;= 256.
9287 Previous versions used a telemetry packet format that
9288 provided only 8 bits for the device serial number. This
9289 change requires that both ends of the telemetry link be
9290 running the 0.9 firmware or they will not communicate.</p>
9291 </li>
9292 </ul>
9293 </div>
9294 </div>
9295 <div class="sect3">
9296 <h4 id="_altosui_application_7">H.48.2. AltosUI Application</h4>
9297 <div class="ulist">
9298 <ul>
9299 <li>
9300 <p>Support for telemetry format changes.</p>
9301 </li>
9302 <li>
9303 <p>Support for multiple flight logs.</p>
9304 </li>
9305 </ul>
9306 </div>
9307 <div style="page-break-after: always;"></div>
9308 </div>
9309 </div>
9310 <div class="sect2">
9311 <h3 id="_release_notes_for_version_0_8">H.49. Release Notes for Version 0.8</h3>
9312 <div class="paragraph">
9313 <p>Version 0.8 offers a major upgrade in the AltosUI
9314 interface.</p>
9315 </div>
9316 <div class="sect3">
9317 <h4 id="_altosui_application_8">H.49.1. AltosUI Application:</h4>
9318 <div class="ulist">
9319 <ul>
9320 <li>
9321 <p>Post-flight graphing tool. This lets you explore the
9322 behaviour of your rocket after flight with a scroll-able and
9323 zoom-able chart showing the altitude, speed and acceleration
9324 of the airframe along with events recorded by the flight
9325 computer. You can export graphs to PNG files, or print them
9326 directly.</p>
9327 </li>
9328 <li>
9329 <p>Real-time moving map which overlays the in-progress flight
9330 on satellite imagery fetched from Google Maps. This lets you
9331 see in pictures where your rocket has landed, allowing you
9332 to plan recovery activities more accurately.</p>
9333 </li>
9334 <li>
9335 <p>Wireless recovery system testing. Prep your rocket for
9336 flight and test fire the deployment charges to make sure
9337 things work as expected. All without threading wires through
9338 holes in your airframe.</p>
9339 </li>
9340 <li>
9341 <p>Optimized flight status displays. Each flight state now has
9342 it&#8217;s own custom 'tab' in the flight monitoring window so you
9343 can focus on the most important details. Pre-flight, the
9344 system shows a set of red/green status indicators for
9345 battery voltage, apogee/main igniter continutity and GPS
9346 reception. Wait until they&#8217;re all green and your rocket is
9347 ready for flight. There are also tabs for ascent, descent
9348 and landing along with the original tabular view of the
9349 data.</p>
9350 </li>
9351 <li>
9352 <p>Monitor multiple flights simultaneously. If you have more
9353 than one TeleDongle, you can monitor a flight with each one
9354 on the same computer.</p>
9355 </li>
9356 <li>
9357 <p>Automatic flight monitoring at startup. Plug TeleDongle into
9358 the machine before starting AltosUI and it will
9359 automatically connect to it and prepare to monitor a flight.</p>
9360 </li>
9361 <li>
9362 <p>Exports Google Earth flight tracks. Using the Keyhole Markup
9363 Language (.kml) file format, this provides a 3D view of your
9364 rocket flight through the Google Earth program.</p>
9365 </li>
9366 </ul>
9367 </div>
9368 <div style="page-break-after: always;"></div>
9369 </div>
9370 </div>
9371 <div class="sect2">
9372 <h3 id="_release_notes_for_version_0_7_1">H.50. Release Notes for Version 0.7.1</h3>
9373 <div class="paragraph">
9374 <p>Version 0.7.1 is the first release containing our new
9375 cross-platform Java-based user interface.</p>
9376 </div>
9377 <div class="sect3">
9378 <h4 id="_altosui_application_9">H.50.1. AltosUI Application</h4>
9379 <div class="ulist">
9380 <ul>
9381 <li>
9382 <p>Receive and log telemetry from a connected TeleDongle
9383 device. All data received is saved to log files named with
9384 the current date and the connected rocket serial and flight
9385 numbers. There is no mode in which telemetry data will not
9386 be saved.</p>
9387 </li>
9388 <li>
9389 <p>Download logged data from TeleMetrum devices, either through
9390 a direct USB connection or over the air through a TeleDongle
9391 device.</p>
9392 </li>
9393 <li>
9394 <p>Configure a TeleMetrum device, setting the radio channel,
9395 callsign, apogee delay and main deploy height. This can be
9396 done through either a USB connection or over a radio link
9397 via a TeleDongle device.</p>
9398 </li>
9399 <li>
9400 <p>Replay a flight in real-time. This takes a saved telemetry
9401 log or eeprom download and replays it through the user
9402 interface so you can relive your favorite rocket flights.</p>
9403 </li>
9404 <li>
9405 <p>Reprogram Altus Metrum devices. Using an Altus Metrum device
9406 connected via USB, another Altus Metrum device can be
9407 reprogrammed using the supplied programming cable between
9408 the two devices.</p>
9409 </li>
9410 <li>
9411 <p>Export Flight data to a comma-separated-values file. This
9412 takes either telemetry or on-board flight data and generates
9413 data suitable for use in external applications. All data is
9414 exported using standard units so that no device-specific
9415 knowledge is needed to handle the data.</p>
9416 </li>
9417 <li>
9418 <p>Speak to you during the flight. Instead of spending the
9419 flight hunched over your laptop looking at the screen, enjoy
9420 the view while the computer tells you what’s going on up
9421 there. During ascent, you hear the current flight state and
9422 altitude information. During descent, you get azimuth,
9423 elevation and range information to try and help you find
9424 your rocket in the air. Once on the ground, the direction
9425 and distance are reported.</p>
9426 </li>
9427 </ul>
9428 </div>
9429 </div>
9430 </div>
9431 </div>
9432 </div>
9433 </div>
9434 <div id="footer">
9435 <div id="footer-text">
9436 Version v1.9.17<br>
9437 Last updated 2023-08-30 11:09:36 -0600
9438 </div>
9439 </div>
9440 </body>
9441 </html>