summaryrefslogtreecommitdiff
path: root/doc/altosui-doc.xsl
blob: 4a1f43b5fa3014fee96a4dff1ccc256c8dd3c9ea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "/usr/share/xml/docbook/schema/dtd/4.5/docbookx.dtd">

<book>
  <title>AltosUI</title>
  <subtitle>Altos Metrum Graphical User Interface Manual</subtitle>
  <bookinfo>
    <author>
      <firstname>Bdale</firstname>
      <surname>Garbee</surname>
    </author>
    <author>
      <firstname>Keith</firstname>
      <surname>Packard</surname>
    </author>
    <copyright>
      <year>2010</year>
      <holder>Bdale Garbee and Keith Packard</holder>
    </copyright>
    <legalnotice>
      <para>
        This document is released under the terms of the
        <ulink url="http://creativecommons.org/licenses/by-sa/3.0/">
          Creative Commons ShareAlike 3.0
        </ulink>
        license.
      </para>
    </legalnotice>
    <revhistory>
      <revision>
        <revnumber>0.1</revnumber>
        <date>19 November 2010</date>
        <revremark>Initial content</revremark>
      </revision>
    </revhistory>
  </bookinfo>
  <chapter>
    <title>Introduction</title>
    <para>
      The AltosUI program provides a graphical user interface for
      interacting with the Altus Metrum product family, including
      TeleMetrum and TeleDongle. AltosUI can monitor telemetry data,
      configure TeleMetrum and TeleDongle devices and many other
      tasks. The primary interface window provides a selection of
      buttons, one for each major activity in the system.  This manual
      is split into chapters, each of which documents one of the tasks
      provided from the top-level toolbar.
    </para>
  </chapter>
  <chapter>
    <title>Packet Command Mode</title>
    <subtitle>Controlling TeleMetrum Over The Radio Link</subtitle>
    <para>
      One of the unique features of the Altos Metrum environment is
      the ability to create a two way command link between TeleDongle
      and TeleMetrum using the digital radio transceivers built into
      each device. This allows you to interact with TeleMetrum from
      afar, as if it were directly connected to the computer.
    </para>
    <para>
      Any operation which can be performed with TeleMetrum
      can either be done with TeleMetrum directly connected to
      the computer via the USB cable, or through the packet
      link. Simply select the appropriate TeleDongle device when
      the list of devices is presented and AltosUI will use packet
      command mode.
    </para>
    <itemizedlist>
      <listitem>
	<para>
	  Save Flight Data—Recover flight data from the rocket without
	  opening it up.
	</para>
      </listitem>
      <listitem>
	<para>
	  Configure TeleMetrum—Reset apogee delays or main deploy
	  heights to respond to changing launch conditions. You can
	  also 'reboot' the TeleMetrum device. Use this to remotely
	  enable the flight computer by turning TeleMetrum on while
	  horizontal, then once the airframe is oriented for launch,
	  you can reboot TeleMetrum and have it restart in pad mode
	  without having to climb the scary ladder.
	</para>
      </listitem>
      <listitem>
	<para>
	  Fire Igniters—Test your deployment charges without snaking
	  wires out through holes in the airframe. Simply assembly the
	  rocket as if for flight with the apogee and main charges
	  loaded, then remotely command TeleMetrum to fire the
	  igniters.
	</para>
      </listitem>
    </itemizedlist>
    <para>
      Packet command mode uses the same RF channels as telemetry
      mode. Configure the desired TeleDongle channel using the
      flight monitor window channel selector and then close that
      window before performing the desired operation.
    </para>
    <para>
      TeleMetrum only enables packet command mode in 'idle' mode, so
      make sure you have TeleMetrum lying horizontally when you turn
      it on. Otherwise, TeleMetrum will start in 'pad' mode ready for
      flight and will not be listening for command packets from TeleDongle.
    </para>
    <para>
      When packet command mode is enabled, you can monitor the link
      by watching the lights on the TeleDongle and TeleMetrum
      devices. The red LED will flash each time TeleDongle or
      TeleMetrum transmit a packet while the green LED will light up
      on TeleDongle while it is waiting to receive a packet from
      TeleMetrum.
    </para>
  </chapter>
  <chapter>
    <title>Monitor Flight</title>
    <subtitle>Receive, Record and Display Telemetry Data</subtitle>
    <para>
      Selecting this item brings up a dialog box listing all of the
      connected TeleDongle devices. When you choose one of these,
      AltosUI will create a window to display telemetry data as
      received by the selected TeleDongle device.
    </para>
    <para>
      All telemetry data received are automatically recorded in
      suitable log files. The name of the files includes the current
      date and rocket serial and flight numbers.
    </para>
    <para>
      The radio channel being monitored by the TeleDongle device is
      displayed at the top of the window. You can configure the
      channel by clicking on the channel box and selecting the desired
      channel. AltosUI remembers the last channel selected for each
      TeleDongle and selects that automatically the next time you use
      that device.
    </para>
    <para>
      Below the TeleDongle channel selector, the window contains a few
      significant pieces of information about the TeleMetrum providing
      the telemetry data stream:
    </para>
    <itemizedlist>
      <listitem>
	<para>The TeleMetrum callsign</para>
      </listitem>
      <listitem>
	<para>The TeleMetrum serial number</para>
      </listitem>
      <listitem>
	<para>The flight number. Each TeleMetrum remembers how many
	times it has flown.</para>
      </listitem>
      <listitem>
	<para>
	  The rocket flight state. Each flight passes through several
	  states including Pad, Boost, Fast, Coast, Drogue, Main and
	  Landed.
	</para>
      </listitem>
      <listitem>
	<para>
	  The Received Signal Strength Indicator value. This lets
	  you know how strong a signal TeleDongle is receiving. The
	  radio inside TeleDongle operates down to about -99dBm;
	  weaker signals may not be receiveable. The packet link uses
	  error correction and detection techniques which prevent
	  incorrect data from being reported.
	</para>
      </listitem>
    </itemizedlist>
    <para>
      Finally, the largest portion of the window contains a set of
      tabs, each of which contain some information about the rocket.
      They're arranged in 'flight order' so that as the flight
      progresses, the selected tab automatically switches to display
      data relevant to the current state of the flight. You can select
      other tabs at any time. The final 'table' tab contains all of
      the telemetry data in one place.
    </para>
    <section>
      <title>Launch Pad</title>
      <para>
	The 'Launch Pad' tab shows information used to decide when the
	rocket is ready for flight. The first elements include red/green
	indicators, if any of these is red, you'll want to evaluate
	whether the rocket is ready to launch:
	<itemizedlist>
	  <listitem>
	    <para>
	      Battery Voltage. This indicates whether the LiPo battery
	      powering the TeleMetrum has sufficient charge to last for
	      the duration of the flight. A value of more than
	      3.7V is required for a 'GO' status.
	    </para>
	  </listitem>
	  <listitem>
	    <para>
	      Apogee Igniter Voltage. This indicates whether the apogee
	      igniter has continuity. If the igniter has a low
	      resistance, then the voltage measured here will be close
	      to the LiPo battery voltage. A value greater than 3.2V is
	      required for a 'GO' status.
	    </para>
	  </listitem>
	  <listitem>
	    <para>
	      Main Igniter Voltage. This indicates whether the main
	      igniter has continuity. If the igniter has a low
	      resistance, then the voltage measured here will be close
	      to the LiPo battery voltage. A value greater than 3.2V is
	      required for a 'GO' status.
	    </para>
	  </listitem>
	  <listitem>
	    <para>
	      GPS Locked. This indicates whether the GPS receiver is
	      currently able to compute position information. GPS requires
	      at least 4 satellites to compute an accurate position.
	    </para>
	  </listitem>
	  <listitem>
	    <para>
	      GPS Ready. This indicates whether GPS has reported at least
	      10 consecutive positions without losing lock. This ensures
	      that the GPS receiver has reliable reception from the
	      satellites.
	    </para>
	  </listitem>
	</itemizedlist>
	<para>
	  The LaunchPad tab also shows the computed launch pad position
	  and altitude, averaging many reported positions to improve the
	  accuracy of the fix.
	</para>
      </para>
    </section>
    <section>
      <title>Ascent</title>
      <para>
	This tab is shown during Boost, Fast and Coast
	phases. The information displayed here helps monitor the
	rocket as it heads towards apogee.
      </para>
      <para>
	The height, speed and acceleration are shown along with the
	maxium values for each of them. This allows you to quickly
	answer the most commonly asked questions you'll hear during
	flight.
      </para>
      <para>
	The current latitude and longitude reported by the GPS are
	also shown. Note that under high acceleration, these values
	may not get updated as the GPS receiver loses position
	fix. Once the rocket starts coasting, the receiver should
	start reporting position again.
      </para>
      <para>
	Finally, the current igniter voltages are reported as in the
	Launch Pad tab. This can help diagnose deployment failures
	caused by wiring which comes loose under high acceleration.
      </para>
    </section>
    <section>
      <title>Descent</title>
      <para>
	Once the rocket has reached apogee and (we hope) activated the
	apogee charge, attention switches to tracking the rocket on
	the way back to the ground, and for dual-deploy flights,
	waiting for the main charge to fire.
      </para>
      <para>
	To monitor whether the apogee charge operated correctly, the
	current descent rate is reported along with the current
	height. Good descent rates generally range from 15-30m/s.
      </para>
      <para>
	To help locate the rocket in the sky, use the elevation and
	bearing information to figure out where to look. Elevation is
	in degrees above the horizon. Bearing is reported in degrees
	relative to true north. Range can help figure out how big the
	rocket will appear. Note that all of these values are relative
	to the pad location. If the elevation is near 90°, the rocket
	is over the pad, not over you.
      </para>
      <para>
	Finally, the igniter voltages are reported in this tab as
	well, both to monitor the main charge as well as to see what
	the status of the apogee charge is.
      </para>
    </section>
    <section>
      <title>Landed</title>
      <para>
	Once the rocket is on the ground, attention switches to
	recovery. While the radio signal is generally lost once the
	rocket is on the ground, the last reported GPS position is
	generally within a short distance of the actual landing location.
      </para>
      <para>
	The last reported GPS position is reported both by
	latitude and longitude as well as a bearing and distance from
	the launch pad. The distance should give you a good idea of
	whether you'll want to walk or hitch a ride. Take the reported
	latitude and longitude and enter them into your handheld GPS
	unit and have that compute a track to the landing location.
      </para>
      <para>
	Finally, the maximum height, speed and acceleration reported
	during the flight are displayed for your admiring observers.
      </para>
    </section>
  </chapter>
  <chapter>
    <title>Save Flight Data</title>
    <para>
      TeleMetrum records flight data to its internal flash memory.
      This data is recorded at a much higher rate than the telemetry
      system can handle, and is not subject to radio drop-outs. As
      such, it provides a more complete and precise record of the
      flight. The 'Save Flight Data' button allows you to read the
      flash memory and write it to disk.
    </para>
    <para>
      Clicking on the 'Save Flight Data' button brings up a list of
      connected TeleMetrum and TeleDongle devices. If you select a
      TeleMetrum device, the flight data will be downloaded from that
      device directly. If you select a TeleDongle device, flight data
      will be downloaded from a TeleMetrum device connected via the
      packet command link to the specified TeleDongle. See the chapter
      on Packet Command Mode for more information about this.
    </para>
    <para>
      The filename for the data is computed automatically from the recorded
      flight date, TeleMetrum serial number and flight number
      information.
    </para>
  </chapter>
  <chapter>
    <title>Replay Flight</title>
    <para>
      Select this button and you are prompted to select a flight
      record file, either a .telem file recording telemetry data or a
      .eeprom file containing flight data saved from the TeleMetrum
      flash memory.
    </para>
    <para>
      Once a flight record is selected, the flight monitor interface
      is displayed and the flight is re-enacted in real time. Check
      the Monitor Flight chapter above to learn how this window operates.
    </para>
  </chapter>
  <chapter>
    <title>Graph Data</title>
    <para>
      This section should be written by AJ.
    </para>
  </chapter>
  <chapter>
    <title>Export Data</title>
    <para>
     This tool takes the raw data files and makes them available for
     external analysis. When you select this button, you are prompted to select a flight
      data file (either .eeprom or .telem will do, remember that
      .eeprom files contain higher resolution and more continuous
      data). Next, a second dialog appears which is used to select
      where to write the resulting file. It has a selector to choose
      between CSV and KML file formats.
    </para>
    <section>
      <title>Comma Separated Value Format</title>
      <para>
	This is a text file containing the data in a form suitable for
	import into a spreadsheet or other external data analysis
	tool. The first few lines of the file contain the version and
	configuration information from the TeleMetrum device, then
	there is a single header line which labels all of the
	fields. All of these lines start with a '#' character which
	most tools can be configured to skip over.
      </para>
      <para>
	The remaining lines of the file contain the data, with each
	field separated by a comma and at least one space. All of
	the sensor values are converted to standard units, with the
	barometric data reported in both pressure, altitude and
	height above pad units.
      </para>
    </section>
    <section>
      <title>Keyhole Markup Language (for Google Earth)</title>
      <para>
	This is the format used by
	Googleearth to provide an overlay within that
	application. With this, you can use Googleearth to see the
	whole flight path in 3D.
      </para>
    </section>
  </chapter>
  <chapter>
    <title>Configure TeleMetrum</title>
    <para>
      Select this button and then select either a TeleMetrum or
      TeleDongle Device from the list provided. Selecting a TeleDongle
      device will use Packet Comamnd Mode to configure remote
      TeleMetrum device. Learn how to use this in the Packet Command
      Mode chapter.
    </para>
    <para>
      The first few lines of the dialog provide information about the
      connected TeleMetrum device, including the product name,
      software version and hardware serial number. Below that are the
      individual configuration entries.
    </para>
    <para>
      At the bottom of the dialog, there are four buttons:
    </para>
    <itemizedlist>
      <listitem>
	<para>
	  Save. This writes any changes to the TeleMetrum
	  configuration parameter block in flash memory. If you don't
	  press this button, any changes you make will be lost.
	</para>
      </listitem>
      <listitem>
	<para>
	  Reset. This resets the dialog to the most recently saved values,
	  erasing any changes you have made.
	</para>
      </listitem>
      <listitem>
	<para>
	  Reboot. This reboots the TeleMetrum device. Use this to
	  switch from idle to pad mode by rebooting once the rocket is
	  oriented for flight.
	</para>
      </listitem>
      <listitem>
	<para>
	  Close. This closes the dialog. Any unsaved changes will be
	  lost.
	</para>
      </listitem>
    </itemizedlist>
    <para>
      The rest of the dialog contains the parameters to be configured.
    </para>
    <section>
      <title>Main Deploy Altitude</title>
      <para>
	This sets the altitude (above the recorded pad altitude) at
	which the 'main' igniter will fire. The drop-down menu shows
	some common values, but you can edit the text directly and
	choose whatever you like. If the apogee charge fires below
	this altitude, then the main charge will fire two seconds
	after the apogee charge fires.
      </para>
    </section>
    <section>
      <title>Apogee Delay</title>
      <para>
	When flying redundant electronics, it's often important to
	ensure that multiple apogee charges don't fire at precisely
	the same time as that can overpressurize the apogee deployment
	bay and cause a structural failure of the airframe. The Apogee
	Delay parameter tells the flight computer to fire the apogee
	charge a certain number of seconds after apogee has been
	detected.
      </para>
    </section>
    <section>
      <title>Radio Channel</title>
      <para>
	This configures which of the 10 radio channels to use for both
	telemetry and packet command mode. Note that if you set this
	value via packet command mode, you will have to reconfigure
	the TeleDongle channel before you will be able to use packet
	command mode again.
      </para>
    </section>
    <section>
      <title>Radio Calibration</title>
      <para>
	The radios in every Altus Metrum device are calibrated at the
	factory to ensure that they transmit and receive on the
	specified frequency for each channel. You can adjust that
	calibration by changing this value. To change the TeleDongle's
	calibration, you must reprogram the unit completely.
      </para>
    </section>
    <section>
      <title>Callsign</title>
      <para>
	This sets the callsign included in each telemetry packet. Set this
	as needed to conform to your local radio regulations.
      </para>
    </section>
  </chapter>
  <chapter>
    <title>Configure AltosUI</title>
    <para>
      This button presents a dialog so that you can configure the AltosUI global settings.
    </para>
    <section>
      <title>Voice Settings</title>
      <para>
	AltosUI provides voice annoucements during flight so that you
	can keep your eyes on the sky and still get information about
	the current flight status. However, sometimes you don't want
	to hear them.
      </para>
      <itemizedlist>
	<listitem>
	  <para>Enable—turns all voice announcements on and off</para>
	</listitem>
	<listitem>
	  <para>
	    Test Voice—Plays a short message allowing you to verify
	    that the audio systme is working and the volume settings
	    are reasonable
	  </para>
	</listitem>
      </itemizedlist>
    </section>
    <section>
      <title>Log Directory</title>
      <para>
	AltosUI logs all telemetry data and saves all TeleMetrum flash
	data to this directory. This directory is also used as the
	staring point when selecting data files for display or export.
      </para>
      <para>
	Click on the directory name to bring up a directory choosing
	dialog, select a new directory and click 'Select Directory' to
	change where AltosUI reads and writes data files.
      </para>
    </section>
    <section>
      <title>Callsign</title>
      <para>
	This value is used in command packet mode and is transmitted
	in each packet sent from TeleDongle and received from
	TeleMetrum. It is not used in telemetry mode as that transmits
	packets only from TeleMetrum to TeleDongle. Configure this
	with the AltosUI operators callsign as needed to comply with
	your local radio regulations.
      </para>
    </section>
  </chapter>
  <chapter>
    <title>Flash Image</title>
    <para>
      This reprograms any Altus Metrum device by using a TeleMetrum or
      TeleDongle as a programming dongle. Please read the directions
      for connecting the programming cable in the main TeleMetrum
      manual before reading these instructions.
    </para>
    <para>
      Once you have the programmer and target devices connected,
      push the 'Flash Image' button. That will present a dialog box
      listing all of the connected devices. Carefully select the
      programmer device, not the device to be programmed.
    </para>
    <para>
      Next, select the image to flash to the device. These are named
      with the product name and firmware version. The file selector
      will start in the directory containing the firmware included
      with the AltosUI package. Navigate to the directory containing
      the desired firmware if it isn't there.
    </para>
    <para>
      Next, a small dialog containing the device serial number and
      RF calibration values should appear. If these values are
      incorrect (possibly due to a corrupted image in the device),
      enter the correct values here.
    </para>
    <para>
      Finally, a dialog containing a progress bar will follow the
      programming process.
    </para>
    <para>
      When programming is complete, the target device will
      reboot. Note that if the target device is connected via USB, you
      will have to unplug it and then plug it back in for the USB
      connection to reset so that you can communicate with the device
      again.
    </para>
  </chapter>
  <chapter>
    <title>Fire Igniter</title>
    <para>
    </para>
  </chapter>
</book>