doc: update 1.6 release notes with recent bug fixes
[fw/altos] / doc / telegps.xsl
1 <?xml version="1.0" encoding="utf-8" ?>
2 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3   "/usr/share/xml/docbook/schema/dtd/4.5/docbookx.dtd">
4 <book>
5   <title>TeleGPS Owner's Manual</title>
6   <subtitle>A recording GPS tracker</subtitle>
7   <bookinfo>
8     <author>
9       <firstname>Keith</firstname>
10       <surname>Packard</surname>
11     </author>
12     <copyright>
13       <year>2015</year>
14       <holder>Bdale Garbee and Keith Packard</holder>
15     </copyright>
16     <mediaobject>
17       <imageobject>
18         <imagedata fileref="telegps-v1.0-top.jpg" width="4in"/>
19       </imageobject>
20     </mediaobject>
21     <legalnotice>
22       <para>
23         This document is released under the terms of the
24         <ulink url="http://creativecommons.org/licenses/by-sa/3.0/">
25           Creative Commons ShareAlike 3.0
26         </ulink>
27         license.
28       </para>
29     </legalnotice>
30     <revhistory>
31       <revision>
32         <revnumber>1.6</revnumber>
33         <date>8 January 2015</date>
34         <revremark>
35           Major release adding TeleDongle v3.0 support.
36         </revremark>
37       </revision>
38       <revision>
39         <revnumber>1.4.1</revnumber>
40         <date>20 June 2014</date>
41         <revremark>
42           Minor release fixing some installation bugs.
43         </revremark>
44       </revision>
45       <revision>
46         <revnumber>1.4</revnumber>
47         <date>13 June 2014</date>
48         <revremark>
49           Initial release
50         </revremark>
51       </revision>
52     </revhistory>
53   </bookinfo>
54   <dedication>
55     <title>Acknowledgements</title>
56     <para>
57       Have fun using these products, and we hope to meet all of you
58       out on the rocket flight line somewhere.
59       <literallayout>
60 Bdale Garbee, KB0G
61 NAR #87103, TRA #12201
62
63 Keith Packard, KD7SQG
64 NAR #88757, TRA #12200
65       </literallayout>
66     </para>
67   </dedication>
68   <chapter>
69     <title>Quick Start Guide</title>
70     <para>
71       TeleGPS is designed to be easy to use. Requiring no external
72       components, flying takes just a few steps.
73     </para>
74     <para>
75       First, download and install the software from <ulink
76       url="http://altusmetrum.org/AltOS"/>. This will make sure that
77       you have the right device drivers installed.
78     </para>
79     <para>
80       Next, plug in the battery and USB cable and connect TeleGPS to
81       your computer. This will charge the battery and allow you to
82       configure the device.
83     </para>
84     <para>
85       Start the TeleGPS application and set the callsign and frequency
86       on your TeleGPS device; refer to the Configure TeleGPS section
87       in the TeleGPS Application chapter for instructions.
88     </para>
89     <para>
90       Unplug TeleGPS when the battery charger light goes green. This
91       will enable the radio and logging portions of the TeleGPS
92       firmware.
93     </para>
94     <para>
95       Connect TeleDongle to your computer and start TeleGPS or start
96       AltosDroid on your android device and connect to TeleBT. Set the
97       frequency to match the TeleGPS and you should be receiving telemetry.
98     </para>
99   </chapter>
100   <chapter>
101     <title>Handling Precautions</title>
102     <para>
103       All Altus Metrum products are sophisticated electronic devices.  
104       When handled gently and properly installed in an air-frame, they
105       will deliver impressive results.  However, as with all electronic 
106       devices, there are some precautions you must take.
107     </para>
108     <para>
109       The Lithium polymer batteries have an
110       extraordinary power density.  This is great because we can fly with
111       much less battery mass... but if they are punctured
112       or their contacts are allowed to short, they can and will release their
113       energy very rapidly!
114       Thus we recommend that you take some care when handling TeleGPS
115       to keep conductive material from coming in contact with the exposed metal elements.
116     </para>
117     <para>
118       As with all other rocketry electronics, Altus Metrum devices must 
119       be protected from exposure to corrosive motor exhaust and ejection 
120       charge gasses.
121     </para>
122   </chapter>
123   <chapter>
124     <title>TeleGPS Hardware</title>
125     <section>
126       <title>Hooking Up Lithium Polymer Batteries</title>
127       <para>
128         TeleGPS has a two pin JST PH series connector to connect up
129         a single-cell Lithium Polymer cell (3.7V nominal). You can
130         purchase matching batteries from the Altus Metrum store, or
131         other vendors, or you can make your own. Pin 1 of the
132         connector is positive, pin 2 is negative. Spark Fun sells a
133         cable with the connector attached, which they call a <ulink
134         url="https://www.sparkfun.com/products/9914">JST Jumper 2
135         Wire Assembly</ulink>.
136       </para>
137       <para>
138         Many RC vendors also sell lithium polymer batteries with
139         this same connector. All that we have found use the opposite
140         polarity, and if you use them that way, you will damage or
141         destroy TeleGPS.
142       </para>
143     </section>
144     <section>
145       <title>On-board Data Recording</title>
146       <para>
147         TeleGPS logs GPS data at a user-configurable rate. Data are
148         logged to a 2MB on-board flash memory part, which can be
149         partitioned into several equal-sized blocks, one for each
150         flight. 64kB of this storage are reserved to hold
151         configuration data, leaving 1984kB for flight data.
152       </para>
153       <para>
154         The on-board flash is partitioned into separate flight logs,
155         each of a fixed maximum size. Increase the maximum size of
156         each log and you reduce the number of flights that can be
157         stored. Decrease the size and you can store more flights.
158       </para>
159       <para>
160         To compute the amount of space needed for a single log, you
161         can divide the expected time (in seconds) by the sample period
162         (by default, 1 second per sample) and then multiply the result
163         by 32 bytes per sample. For instance, a sample period of 1
164         second and a flight lasting one hour will take 32 * 3600 =
165         115200 bytes. TeleGPS does try to reduce log space used by not
166         recording position information when it isn't moving, so actual
167         space consumed may be less than this.
168       </para>
169       <para>
170         The default size allows for four flights of 496kB each, which
171         provides over four hours of logging at 1 sample per second.
172       </para>
173       <para>
174         TeleGPS will not overwrite existing flight data, so be sure to
175         download flight data and erase it from the onboard flash
176         before it fills up. TeleGPS will still report telemetry even
177         if memory is full, so the only thing you will lose is the
178         on-board data log.
179       </para>
180     </section>
181     <section>
182       <title>Installation</title>
183       <para>
184         The battery connectors are a standard 2-pin JST connector and
185         match batteries sold by Spark Fun. These batteries are
186         single-cell Lithium Polymer batteries that nominally provide 3.7
187         volts.  Other vendors sell similar batteries for RC aircraft
188         using mating connectors, however the polarity for those is
189         generally reversed from the batteries used by Altus Metrum
190         products. In particular, the Tenergy batteries supplied for use
191         in Featherweight flight computers are not compatible with Altus
192         Metrum flight computers or battery chargers. <emphasis>Check
193         polarity and voltage before connecting any battery not purchased
194         from Altus Metrum or Spark Fun.</emphasis>
195       </para>
196       <para>
197         TeleGPS uses an integrate GPS patch antenna and won't
198         receive GPS signals if installed inside a metal or carbon
199         fiber compartment. Test GPS reception and telemetry
200         transmission with the system installed and all other
201         electronics powered up to verify signal reception and make
202         sure there isn't any interference from other systems.
203       </para>
204     </section>
205   </chapter>
206   <chapter>
207     <title>System Operation</title>
208     <section>
209       <title>GFSK Telemetry</title>
210       <para>
211         TeleGPS's native telemetry system doesn't use a 'normal packet
212         radio' mode like APRS because it's not very efficient.  The
213         GFSK modulation we use is FSK with the base-band pulses passed
214         through a Gaussian filter before they go into the modulator to
215         limit the transmitted bandwidth.  When combined with forward
216         error correction and interleaving, this allows us to have a
217         very robust 19.2 kilobit data link with only 10-40 milliwatts
218         of transmit power, a whip antenna in the rocket, and a
219         hand-held Yagi on the ground.  We've had flights to above 21k
220         feet AGL with great reception, and calculations suggest we
221         should be good to well over 40k feet AGL with a 5-element yagi
222         on the ground with our 10mW units and over 100k feet AGL with
223         the 40mW devices.
224       </para>
225     </section>
226     <section>
227       <title>APRS</title>
228       <para>
229         TeleGPS can send APRS if desired, and the
230         interval between APRS packets can be configured. As each APRS
231         packet takes a full second to transmit, we recommend an
232         interval of at least 5 seconds to avoid consuming too much
233         battery power or radio channel bandwidth. You can configure
234         the APRS interval using AltosUI; that process is described in
235         the Configure Altimeter section of the AltosUI chapter.
236       </para>
237       <para>
238         AltOS uses the APRS compressed position report data format,
239         which provides for higher position precision and shorter
240         packets than the original APRS format. It also includes
241         altitude data, which is invaluable when tracking rockets. We
242         haven't found a receiver which doesn't handle compressed
243         positions, but it's just possible that you have one, so if you
244         have an older device that can receive the raw packets but
245         isn't displaying position information, it's possible that this
246         is the cause.
247       </para>
248       <para>
249         The APRS packet format includes a comment field that can have
250         arbitrary text in it. AltOS uses this to send status
251         information about the flight computer. It sends four fields as
252         shown in the following table.
253       </para>
254       <table frame='all'>
255         <title>Altus Metrum APRS Comments</title>
256         <?dbfo keep-together="always"?>
257         <tgroup cols='3' align='center' colsep='1' rowsep='1'>
258           <colspec align='center' colwidth='*' colname='Field'/>
259           <colspec align='center' colwidth='*' colname='Example'/>
260           <colspec align='center' colwidth='4*' colname='Description'/>
261           <thead>
262             <row>
263               <entry align='center'>Field</entry>
264               <entry align='center'>Example</entry>
265               <entry align='center'>Description</entry>
266             </row>
267           </thead>
268           <tbody>
269             <row>
270               <entry>1</entry>
271               <entry>L</entry>
272               <entry>GPS Status U for unlocked, L for locked</entry>
273             </row>
274             <row>
275               <entry>2</entry>
276               <entry>6</entry>
277               <entry>Number of Satellites in View</entry>
278             </row>
279             <row>
280               <entry>3</entry>
281               <entry>B4.0</entry>
282               <entry>Battery Voltage</entry>
283             </row>
284           </tbody>
285         </tgroup>
286       </table>
287       <para>
288         Here's an example of an APRS comment showing GPS lock with 6
289         satellites in view and a battery at 4.0V.
290         <screen>
291           L6 B4.0
292         </screen>
293       </para>
294       <para>
295         Make sure your primary battery is above 3.8V and GPS is locked
296         with at least 5 or 6 satellites in view before starting. If GPS
297         is switching between L and U regularly, then it doesn't have a
298         good lock and you should wait until it becomes stable.
299       </para>
300       <para>
301         If the GPS receiver loses lock, the APRS data transmitted will
302         contain the last position for which GPS lock was
303         available. You can tell that this has happened by noticing
304         that the GPS status character switches from 'L' to 'U'. Before
305         GPS has locked, APRS will transmit zero for latitude,
306         longitude and altitude.
307       </para>
308     </section>
309     <section>
310       <title>Configurable Parameters</title>
311       <para>
312         Configuring TeleGPS is very
313         simple; the few configurable parameters can all be set
314         using the TeleGPS application over USB. Read
315         the Configure TeleGPS section in the TeleGPS Software chapter below
316         for more information.
317       </para>
318       <section>
319         <title>Radio Frequency</title>
320         <para>
321           Altus Metrum boards support radio frequencies in the 70cm
322           band. By default, the configuration interface provides a
323           list of 10 “standard” frequencies in 100kHz channels starting at
324           434.550MHz.  However, the firmware supports use of
325           any 50kHz multiple within the 70cm band. At any given
326           launch, we highly recommend coordinating when and by whom each
327           frequency will be used to avoid interference.  And of course, both
328           TeleGPS and the receiver must be configured to the same
329           frequency to successfully communicate with each other.
330         </para>
331       </section>
332       <section>
333         <title>Callsign</title>
334         <para>
335           This sets the callsign used for telemetry and APRS to
336           identify the device.
337         </para>
338       </section>
339       <section>
340         <title>Telemetry/RDF/APRS Enable</title>
341         <para>
342           You can completely disable the radio, if necessary, leaving
343           TeleGPS only logging data to internal memory.
344         </para>
345       </section>
346       <section>
347         <title>APRS Interval</title>
348         <para>
349           This selects how often APRS packets are transmitted. Set
350           this to zero to disable APRS without also disabling the
351           regular telemetry and RDF transmissions. As APRS takes a
352           full second to transmit a single position report, we
353           recommend sending packets no more than once every 5 seconds.
354         </para>
355       </section>
356       <section>
357         <title>Maximum Flight Log</title>
358         <para>
359           Changing this value will set the maximum amount of flight
360           log storage that an individual flight will use. The
361           available storage is divided into as many flights of the
362           specified size as can fit in the available space. You can
363           download and erase individual flight logs. If you fill up
364           the available storage, future flights will not get logged
365           until you erase some of the stored ones.
366         </para>
367       </section>
368       <section>
369         <title>Logging Trigger Motion</title>
370         <para>
371           If TeleGPS moves less than this distance over a long period
372           of time, it will not log that location, saving storage space.
373         </para>
374       </section>
375       <section>
376         <title>Position Reporting Interval</title>
377         <para>
378           This sets how often TeleGPS reports position information via
379           telemetry and to the on-board log. Reducing this value will
380           save power and logging memory consumption.
381         </para>
382       </section>
383     </section>
384   </chapter>
385   <chapter>
386     <title>TeleGPS Application</title>
387     <para>
388       The TeleGPS application provides a graphical user interface for
389       interacting with the Altus Metrum product family. TeleGPS can
390       monitor telemetry data, configure devices and many other
391       tasks. The primary interface window is for displaying data
392       received over the telemetry link. There are additional
393       tasks available from the main window menu bar. This chapter
394       is split into sections, each of which documents one of the tasks
395       provided from the top-level toolbar.
396     </para>
397     <section>
398       <title>Telemetry Monitoring</title>
399       <para>
400         This is the window brought up when you start the
401         application. If you have a TeleDongle device connected to the
402         computer, it will automatically be selected for telemetry monitoring
403       </para>
404       <para>
405         All telemetry data received are automatically recorded in
406         suitable log files. The name of the files includes the current
407         date and TeleGPS serial and flight numbers.
408       </para>
409       <para>
410         The radio frequency being monitored by the TeleDongle device
411         is displayed at the top of the window. You can configure the
412         frequency by clicking on the frequency box and selecting the
413         desired frequency. The TeleGPS application remembers the last
414         frequency selected for each TeleDongle and selects that
415         automatically the next time you use that device.
416       </para>
417       <para>
418         Below the TeleDongle frequency selector, the window contains a few
419         significant pieces of information about the altimeter providing
420         the telemetry data stream:
421       </para>
422       <itemizedlist>
423         <listitem>
424           <para>The configured call-sign</para>
425         </listitem>
426         <listitem>
427           <para>The device serial number</para>
428         </listitem>
429         <listitem>
430           <para>The flight number. TeleGPS remembers how many
431           times it has flown.
432           </para>
433         </listitem>
434         <listitem>
435           <para>
436             The Received Signal Strength Indicator value. This lets
437             you know how strong a signal TeleDongle is receiving. The
438             radio inside TeleDongle operates down to about -100dBm;
439             weaker signals may not be receivable. The packet link uses
440             error detection and correction techniques which prevent
441             incorrect data from being reported.
442           </para>
443         </listitem>
444         <listitem>
445           <para>
446             The age of the displayed data, in seconds since the last 
447             successfully received telemetry packet.  In normal operation
448             this will stay in the low single digits.  If the number starts
449             counting up, then you are no longer receiving data over the radio
450             link from the flight computer.
451           </para>
452         </listitem>
453       </itemizedlist>
454       <para>
455         Finally, the largest portion of the window contains a set of
456         tabs, each of which contain some information about the TeleGPS
457         board. The final 'table' tab displays many of the raw telemetry
458         values in one place in a spreadsheet-like format.
459       </para>
460       <section>
461         <title>Map</title>
462         <para>
463           The Map tab shows the TeleGPS track over time on top of map
464           data making it easy to locate the device.
465         </para>
466         <informalfigure>
467           <mediaobject>
468             <imageobject>
469               <imagedata fileref="telegps-map.png" width="5.5in"/>
470             </imageobject>
471           </mediaobject>
472         </informalfigure>
473         <para>
474           The map's default scale is approximately 3m (10ft) per pixel. The map
475           can be dragged using the left mouse button. The map will attempt
476           to keep the rocket roughly centered while data is being received.
477         </para>
478         <para>
479           You can adjust the style of map and the zoom level with
480           buttons on the right side of the map window. You can draw a
481           line on the map by moving the mouse over the map with a
482           button other than the left one pressed, or by pressing the
483           left button while also holding down the shift key. The
484           length of the line in real-world units will be shown at the
485           start of the line.
486         </para>
487         <para>
488           Images are fetched automatically via the Google Maps Static API,
489           and cached on disk for reuse. If map images cannot be downloaded,
490           the rocket's path will be traced on a dark gray background
491           instead.
492         </para>
493         <para>
494           You can pre-load images for your favorite launch sites
495           before you leave home; check out the 'Preload Maps' section below.
496         </para>
497       </section>
498       <section>
499         <title>Location</title>
500         <para>
501           The Location tab shows the raw GPS data received from TeleGPS.
502         </para>
503         <informalfigure>
504           <mediaobject>
505             <imageobject>
506               <imagedata fileref="telegps-location.png" width="5.5in"/>
507             </imageobject>
508           </mediaobject>
509         </informalfigure>
510       </section>
511       <section>
512         <title>Status</title>
513         <para>
514           The Status tab shows data relative to the location of
515           TeleGPS when the application first received telemetry from
516           it.
517         </para>
518         <informalfigure>
519           <mediaobject>
520             <imageobject>
521               <imagedata fileref="telegps-status.png" width="5.5in"/>
522             </imageobject>
523           </mediaobject>
524         </informalfigure>
525       </section>
526       <section>
527         <title>Table</title>
528         <para>
529           The Table tab shows detailed information about the GPS
530           receiver
531         </para>
532         <informalfigure>
533           <mediaobject>
534             <imageobject>
535               <imagedata fileref="telegps-table.png" width="5.5in"/>
536             </imageobject>
537           </mediaobject>
538         </informalfigure>
539       </section>
540     </section>
541     <!--
542         <variablelist>
543           <varlistentry>
544             <term></term>
545             <listitem>
546               <para>
547               </para>
548             </listitem>
549           </varlistentry>
550         </variablelist>
551     -->
552     <section>
553       <title>TeleGPS Menus</title>
554       <para>
555         TeleGPS has three or four menus at the top of the window:
556         <variablelist>
557           <varlistentry>
558             <term>File</term>
559             <listitem>
560               <para>
561                 New Window, Graph Data, Export Data, Load Maps, Preferences, Close and Exit
562               </para>
563             </listitem>
564           </varlistentry>
565           <varlistentry>
566             <term>Monitor</term>
567             <listitem>
568               <para>
569                 Connect Device, Disconnect and Scan Channels
570               </para>
571             </listitem>
572           </varlistentry>
573           <varlistentry>
574             <term>Device</term>
575             <listitem>
576               <para>
577                 Download Data, Configure Device and Flash Device
578               </para>
579             </listitem>
580           </varlistentry>
581           <varlistentry>
582             <term>Frequency</term>
583             <listitem>
584               <para>
585                 This shows the current monitoring frequency with a
586                 drop-down menu listing other configured
587                 frequencies. You can change the set of frequencies
588                 shown here from the Preferences dialog. This menu is
589                 only shown when the TeleGPS application is connected
590                 to a TeleDongle or TeleBT device.
591               </para>
592             </listitem>
593           </varlistentry>
594         </variablelist>
595       </para>
596       <section>
597         <title>New Window</title>
598         <para>
599           This creates another telemetry monitoring window, in case
600           you have multiple TeleDongle devices connected to the
601           computer.
602         </para>
603       </section>
604       <section>
605         <title>Graph Data</title>
606         <para>
607           This brings up a file dialog to load a saved log, either
608           a .telem file of recorded telemetry or .eeprom of saved
609           data from on-board memory. It looks a bit like the flight
610           monitoring window, using a selection of tabs to show
611           different views of the saved data.
612         </para>
613         <section>
614           <title>Graph</title>
615           <para>
616             The Graph tab shows a plot of the the GPS data
617             collected. The X axis is time in seconds; there are a
618             variety of Y axes available for different kinds of data.
619           </para>
620           <informalfigure>
621             <mediaobject>
622               <imageobject>
623                 <imagedata fileref="telegps-graph-graph.png" width="6in" scalefit="1"/>
624               </imageobject>
625             </mediaobject>
626           </informalfigure>
627         </section>
628         <section>
629           <title>Configure Graph</title>
630           <informalfigure>
631             <mediaobject>
632               <imageobject>
633                 <imagedata fileref="telegps-graph-configure.png" width="6in" scalefit="1"/>
634               </imageobject>
635             </mediaobject>
636           </informalfigure>
637           <para>
638             This selects which graph elements to show, and, at the
639             bottom, lets you switch between metric and imperial units
640           </para>
641         </section>
642         <section>
643           <title>Statistics</title>
644           <informalfigure>
645             <mediaobject>
646               <imageobject>
647                 <imagedata fileref="telegps-graph-stats.png" width="6in" scalefit="1"/>
648               </imageobject>
649             </mediaobject>
650           </informalfigure>
651           <para>
652             Shows overall data computed from the flight.
653           </para>
654         </section>
655         <section>
656           <title>Map</title>
657           <informalfigure>
658             <mediaobject>
659               <imageobject>
660                 <imagedata fileref="telegps-graph-map.png" width="6in" scalefit="1"/>
661               </imageobject>
662             </mediaobject>
663           </informalfigure>
664           <para>
665             Shows a map of the area overlaid with the GPS track. As with
666             the telemetry monitoring window, you can select the style
667             of map and zoom level using buttons along the side;
668             you can scroll the map by dragging within the map pressing
669             the left button and you can draw a line to measure
670             distances using either the left button with the shift key,
671             or any other button.
672           </para>
673         </section>
674       </section>
675       <section>
676         <title>Export Data</title>
677         <para>
678           This tool takes the raw data files and makes them available for
679           external analysis. When you select this button, you are prompted to 
680           select a data file, which can be either a .eeprom or .telem.
681           The .eeprom files contain higher resolution and more continuous data, 
682           while .telem files contain receiver signal strength information.  
683           Next, a second dialog appears which is used to select
684           where to write the resulting file. It has a selector to choose
685           between CSV and KML file formats.
686         </para>
687         <section>
688           <title>Comma Separated Value Format</title>
689           <para>
690             This is a text file containing the data in a form suitable for
691             import into a spreadsheet or other external data analysis
692             tool. The first few lines of the file contain the version and
693             configuration information from TeleGPS, then
694             there is a single header line which labels all of the
695             fields. All of these lines start with a '#' character which
696             many tools can be configured to skip over.
697           </para>
698           <para>
699             The remaining lines of the file contain the data, with each
700             field separated by a comma and at least one space. All of
701             the sensor values are converted to standard units, with the
702             barometric data reported in both pressure, altitude and
703             height above pad units.
704           </para>
705         </section>
706         <section>
707           <title>Keyhole Markup Language (for Google Earth)</title>
708           <para>
709             This is the format used by Google Earth to provide an overlay 
710             within that application. With this, you can use Google Earth to 
711             see the whole flight path in 3D.
712           </para>
713         </section>
714       </section>
715       <section>
716         <title>Load Maps</title>
717         <informalfigure>
718           <mediaobject>
719             <imageobject>
720               <imagedata fileref="load-maps.png" width="5.2in" scalefit="1"/>
721             </imageobject>
722           </mediaobject>
723         </informalfigure>
724         <para>
725           Before using TeleGPS, you can use Load Maps to load map data
726           in case you don't have access to the internet while
727           receiving telemetry.
728         </para>
729         <para>
730           There's a drop-down menu of rocket launch sites we know
731           about; if your favorites aren't there, please let us know
732           the lat/lon and name of the site. The contents of this list
733           are actually downloaded from our server at run-time, so as
734           new sites are sent in, they'll get automatically added to
735           this list.  If the launch site isn't in the list, you can
736           manually enter the lat/lon values
737         </para>
738         <para>
739           There are four different kinds of maps you can view; you can
740           select which to download by selecting as many as you like from
741           the available types:
742           <variablelist>
743             <varlistentry>
744               <term>Hybrid</term>
745               <listitem>
746                 <para>
747                   A combination of satellite imagery and road data. This
748                   is the default view.
749                 </para>
750               </listitem>
751             </varlistentry>
752             <varlistentry>
753               <term>Satellite</term>
754               <listitem>
755                 <para>
756                   Just the satellite imagery without any annotation.
757                 </para>
758               </listitem>
759             </varlistentry>
760             <varlistentry>
761               <term>Roadmap</term>
762               <listitem>
763                 <para>
764                   Roads, political boundaries and a few geographic features.
765                 </para>
766               </listitem>
767             </varlistentry>
768             <varlistentry>
769               <term>Terrain</term>
770               <listitem>
771                 <para>
772                   Contour intervals and shading that show hills and
773                   valleys.
774                 </para>
775               </listitem>
776             </varlistentry>
777           </variablelist>
778         </para>
779         <para>
780           You can specify the range of zoom levels to download; smaller
781           numbers show more area with less resolution. The default
782           level, 0, shows about 3m/pixel. One zoom level change
783           doubles or halves that number.
784         </para>
785         <para>
786           The Tile Radius value sets how large an area around the center
787           point to download. Each tile is 512x512 pixels, and the
788           'radius' value specifies how many tiles away from the center
789           will be downloaded. Specify a radius of 0 and you get only the
790           center tile. A radius of 1 loads a 3x3 grid, centered on the
791           specified location.
792         </para>
793         <para>
794           Clicking the 'Load Map' button will fetch images from Google
795           Maps; note that Google limits how many images you can fetch at
796           once, so if you load more than one launch site, you may get
797           some gray areas in the map which indicate that Google is tired
798           of sending data to you. Try again later.
799         </para>
800       </section>
801       <section>
802         <title>Preferences</title>
803         <informalfigure>
804           <mediaobject>
805             <imageobject>
806               <imagedata fileref="telegps-preferences.png" width="2.4in" scalefit="1"/>
807             </imageobject>
808           </mediaobject>
809         </informalfigure>
810         <section>
811           <title>Voice Settings</title>
812           <para>
813             AltosUI provides voice announcements during flight so that you
814             can keep your eyes on the sky and still get information about
815             the current flight status. However, sometimes you don't want
816             to hear them.
817           </para>
818           <variablelist>
819             <varlistentry>
820               <term>Enable</term>
821               <listitem>
822                 <para>Turns all voice announcements on and off</para>
823               </listitem>
824             </varlistentry>
825             <varlistentry>
826               <term>Test Voice</term>
827               <listitem>
828                 <para>
829                   Plays a short message allowing you to verify
830                   that the audio system is working and the volume settings
831                   are reasonable
832                 </para>
833               </listitem>
834             </varlistentry>
835           </variablelist>
836         </section>
837         <section>
838           <title>Log Directory</title>
839           <para>
840             AltosUI logs all telemetry data and saves all TeleMetrum flash
841             data to this directory. This directory is also used as the
842             staring point when selecting data files for display or export.
843           </para>
844           <para>
845             Click on the directory name to bring up a directory choosing
846             dialog, select a new directory and click 'Select Directory' to
847             change where AltosUI reads and writes data files.
848           </para>
849         </section>
850         <section>
851           <title>Callsign</title>
852           <para>
853             This value is transmitted in each command packet sent from 
854             TeleDongle and received from an altimeter.  It is not used in 
855             telemetry mode, as the callsign configured in the altimeter board
856             is included in all telemetry packets.  Configure this
857             with the AltosUI operators call sign as needed to comply with
858             your local radio regulations.
859           </para>
860           <para>
861             Note that to successfully command a flight computer over the radio
862             (to configure the altimeter, monitor idle, or fire pyro charges), 
863             the callsign configured here must exactly match the callsign
864             configured in the flight computer.  This matching is case 
865             sensitive.
866           </para>
867         </section>
868         <section>
869           <title>Imperial Units</title>
870           <para>
871             This switches between metric units (meters) and imperial
872             units (feet and miles). This affects the display of values
873             use during flight monitoring, configuration, data graphing
874             and all of the voice announcements. It does not change the
875             units used when exporting to CSV files, those are always
876             produced in metric units.
877           </para>
878         </section>
879         <section>
880           <title>Serial Debug</title>
881           <para>
882             This causes all communication with a connected device to be
883             dumped to the console from which AltosUI was started. If
884             you've started it from an icon or menu entry, the output
885             will simply be discarded. This mode can be useful to debug
886             various serial communication issues.
887           </para>
888         </section>
889         <section>
890           <title>Font Size</title>
891           <para>
892             Selects the set of fonts used in the flight monitor
893             window. Choose between the small, medium and large sets.
894           </para>
895         </section>
896         <section>
897           <title>Look &amp; Feel</title>
898           <para>
899             Adjust the style of the windows. By default, the TeleGPS
900             application attempts to blend in with the native style.
901           </para>
902         </section>
903         <section>
904           <title>Manage Frequencies</title>
905           <para>
906             This brings up a dialog where you can configure the set of
907             frequencies shown in the various frequency menus. You can
908             add as many as you like, or even reconfigure the default
909             set. Changing this list does not affect the frequency
910             settings of any devices, it only changes the set of
911             frequencies shown in the menus.
912           </para>
913         </section>
914       </section>
915       <section>
916         <title>Close</title>
917         <para>
918           This closes the current window, leaving any other windows
919           open and the application running.
920         </para>
921       </section>
922       <section>
923         <title>Exit</title>
924         <para>
925           This closes all TeleGPS windows and terminates the application.
926         </para>
927       </section>
928       <section>
929         <title>Connect Device</title>
930         <para>
931           Selecting this item brings up a dialog box listing all of
932           the connected TeleDongle devices. When you choose one of
933           these, AltosUI will display telemetry data as received by
934           the selected TeleDongle device.
935         </para>
936         <informalfigure>
937           <mediaobject>
938             <imageobject>
939               <imagedata fileref="device-selection.png" width="3.1in"/>
940             </imageobject>
941           </mediaobject>
942         </informalfigure>
943       </section>
944       <section>
945         <title>Disconnect</title>
946         <para>
947           Disconnects the currently connected TeleDongle or TeleBT
948         </para>
949       </section>
950       <section>
951         <title>Scan Channels</title>
952         <para>
953           Scans the configured set of frequencies looking for
954           telemetry signals. A list of all of the discovered signals
955           is show; selecting one of those and clicking on 'Monitor'
956           will select that frequency in the associated TeleGPS
957           application window.
958         </para>
959         <informalfigure>
960           <mediaobject>
961             <imageobject>
962               <imagedata fileref="telegps-scan.png" width="3.1in"/>
963             </imageobject>
964           </mediaobject>
965         </informalfigure>
966       </section>
967       <section>
968         <title>Download Data</title>
969         <para>
970           TeleGPS records data to its internal flash memory.
971           On-board data is recorded at the same rate as telemetry
972           but is not subject to radio drop-outs. As
973           such, it generally provides a more complete and precise record.
974           The 'Download Data' menu entry allows you to read the
975           flash memory and write it to disk. 
976         </para>
977         <para>
978           Select the 'Download Data' menu entry to bring up a list of
979           connected TeleGPS devices. After the device has been
980           selected, a dialog showing the data stored in the
981           device will be shown allowing you to select which entries to
982           download and which to delete. You must erase flights in order for the space they
983           consume to be reused by another track. This prevents
984           accidentally losing data if you neglect to download
985           data before starting TeleGPS again. Note that if there is no more
986           space available in the device, then no data will be recorded.
987         </para>
988         <para>
989           The file name for each data log is computed automatically
990           from the recorded date, altimeter serial number and flight
991           number information.
992         </para>
993       </section>
994       <section>
995         <title>Configure Device</title>
996         <informalfigure>
997           <mediaobject>
998             <imageobject>
999               <imagedata fileref="telegps-configure.png" width="3.6in" scalefit="1"/>
1000             </imageobject>
1001           </mediaobject>
1002         </informalfigure>
1003         <para>
1004           Select this button and then select any connected TeleGPS
1005           device from the list provided.
1006         </para>
1007         <para>
1008           The first few lines of the dialog provide information about the
1009           connected device, including the product name,
1010           software version and hardware serial number. Below that are the
1011           individual configuration entries.
1012         </para>
1013         <para>
1014           At the bottom of the dialog, there are four buttons:
1015         </para>
1016         <variablelist>
1017           <varlistentry>
1018             <term>Save</term>
1019             <listitem>
1020               <para>
1021                 This writes any changes to the
1022                 configuration parameter block in flash memory. If you don't
1023                 press this button, any changes you make will be lost.
1024               </para>
1025             </listitem>
1026           </varlistentry>
1027           <varlistentry>
1028             <term>Reset</term>
1029             <listitem>
1030               <para>
1031                 This resets the dialog to the most recently saved values,
1032                 erasing any changes you have made.
1033               </para>
1034             </listitem>
1035           </varlistentry>
1036           <varlistentry>
1037             <term>Reboot</term>
1038             <listitem>
1039               <para>
1040                 This reboots the device. This will restart logging for
1041                 a new flight number, if any log information has been
1042                 saved for the current flight.
1043               </para>
1044             </listitem>
1045           </varlistentry>
1046           <varlistentry>
1047             <term>Close</term>
1048             <listitem>
1049               <para>
1050                 This closes the dialog. Any unsaved changes will be
1051                 lost.
1052               </para>
1053             </listitem>
1054           </varlistentry>
1055         </variablelist>
1056         <para>
1057           The rest of the dialog contains the parameters to be configured.
1058         </para>
1059         <section>
1060           <title>Frequency</title>
1061           <para>
1062             This configures which of the frequencies to use for both
1063             telemetry and packet command mode. Note that if you set this
1064             value via packet command mode, the TeleDongle frequency will
1065             also be automatically reconfigured to match so that
1066             communication will continue afterwards.
1067           </para>
1068         </section>
1069         <section>
1070           <title>RF Calibration</title>
1071           <para>
1072             The radios in every Altus Metrum device are calibrated at the
1073             factory to ensure that they transmit and receive on the
1074             specified frequency.  If you need to you can adjust the calibration 
1075             by changing this value.  Do not do this without understanding what
1076             the value means, read the appendix on calibration and/or the source
1077             code for more information.  To change a TeleDongle's calibration, 
1078             you must reprogram the unit completely.
1079           </para>
1080         </section>
1081         <section>
1082           <title>Telemetry/RDF/APRS Enable</title>
1083           <para>
1084             Enables the radio for transmission during flight. When
1085             disabled, the radio will not transmit anything during flight
1086             at all.
1087           </para>
1088         </section>
1089         <section>
1090           <title>APRS Interval</title>
1091           <para>
1092             How often to transmit GPS information via APRS (in
1093             seconds). When set to zero, APRS transmission is
1094             disabled. This option is available on TeleMetrum v2 and
1095             TeleMega boards. TeleMetrum v1 boards cannot transmit APRS
1096             packets. Note that a single APRS packet takes nearly a full
1097             second to transmit, so enabling this option will prevent
1098             sending any other telemetry during that time.
1099           </para>
1100         </section>
1101         <section>
1102           <title>Callsign</title>
1103           <para>
1104             This sets the call sign included in each telemetry packet. Set this
1105             as needed to conform to your local radio regulations.
1106           </para>
1107         </section>
1108         <section>
1109           <title>Maximum Log Size</title>
1110           <para>
1111             This sets the space (in kilobytes) allocated for each data
1112             log. The available space will be divided into chunks of this
1113             size. A smaller value will allow more logs to be stored,
1114             a larger value will record data for longer times.
1115           </para>
1116         </section>
1117         <section>
1118           <title>Logging Trigger Motion</title>
1119           <para>
1120             If TeleGPS moves less than this distance over a long period
1121             of time, it will not log that location, saving storage space.
1122           </para>
1123         </section>
1124         <section>
1125           <title>Position Reporting Interval</title>
1126           <para>
1127             This sets how often TeleGPS reports position information via
1128             telemetry and to the on-board log. Reducing this value will
1129             save power and logging memory consumption.
1130           </para>
1131         </section>
1132       </section>
1133       <section>
1134         <title>Flash Device</title>
1135         <para>
1136           This reprograms TeleGPS devices with new firmware. Please
1137           read the directions for flashing devices in the Updating
1138           Device Firmware chapter below.
1139         </para>
1140       </section>
1141     </section>
1142   </chapter>
1143   <chapter>
1144     <title>Updating Device Firmware</title>
1145     <para>
1146       TeleGPS is programmed directly over its USB connectors.
1147     </para>
1148     <para>
1149       You may wish to begin by ensuring you have current firmware images.
1150       These are distributed as part of the TeleGPS software bundle that
1151       also includes the TeleGPS ground station program.  Newer ground
1152       station versions typically work fine with older firmware versions,
1153       so you don't need to update your devices just to try out new
1154       software features.  You can always download the most recent
1155       version from <ulink url="http://www.altusmetrum.org/AltOS/"/>.
1156     </para>
1157     <section>
1158       <title>
1159         Updating TeleGPS Firmware
1160       </title>
1161       <orderedlist inheritnum='inherit' numeration='arabic'>
1162         <listitem>
1163           <para>
1164             Attach a battery and power switch to the target
1165             device. Power up the device.
1166           </para>
1167         </listitem>
1168         <listitem>
1169           <para>
1170             Using a Micro USB cable, connect the target device to your
1171             computer's USB socket.
1172           </para>
1173         </listitem>
1174         <listitem>
1175           <para>
1176             Run TeleGPS, and select 'Flash Device' from the Device menu.
1177           </para>
1178         </listitem>
1179         <listitem>
1180           <para>
1181             Select the target device in the Device Selection dialog.
1182           </para>
1183         </listitem>
1184         <listitem>
1185           <para>
1186             Select the image you want to flash to the device, which
1187             should have a name in the form
1188             &lt;product&gt;-v&lt;product-version&gt;-&lt;software-version&gt;.ihx, such
1189             as TeleGPS-v1.0-1.4.0.ihx.
1190           </para>
1191         </listitem>
1192         <listitem>
1193           <para>
1194             Make sure the configuration parameters are reasonable
1195             looking. If the serial number and/or RF configuration
1196             values aren't right, you'll need to change them.
1197           </para>
1198         </listitem>
1199         <listitem>
1200           <para>
1201             Hit the 'OK' button and the software should proceed to flash
1202             the device with new firmware, showing a progress bar.
1203           </para>
1204         </listitem>
1205         <listitem>
1206           <para>
1207             Verify that the device is working by using the 'Configure
1208             Altimeter' item to check over the configuration.
1209           </para>
1210         </listitem>
1211       </orderedlist>
1212 <!--
1213       <section>
1214         <title>Recovering From Self-Flashing Failure</title>
1215         <para>
1216           If the firmware loading fails, it can leave the device
1217           unable to boot. Not to worry, you can force the device to
1218           start the boot loader instead, which will let you try to
1219           flash the device again.
1220         </para>
1221         <para>
1222           On each device, connecting two pins from one of the exposed
1223           connectors will force the boot loader to start, even if the
1224           regular operating system has been corrupted in some way.
1225         </para>
1226         <variablelist>
1227           <varlistentry>
1228             <term>TeleMega</term>
1229             <listitem>
1230               <para>
1231                 Connect pin 6 and pin 1 of the companion connector. Pin 1
1232                 can be identified by the square pad around it, and then
1233                 the pins could sequentially across the board. Be very
1234                 careful to <emphasis>not</emphasis> short pin 8 to
1235                 anything as that is connected directly to the battery. Pin
1236                 7 carries 3.3V and the board will crash if that is
1237                 connected to pin 1, but shouldn't damage the board.
1238               </para>
1239             </listitem>
1240           </varlistentry>
1241           <varlistentry>
1242             <term>TeleMetrum v2</term>
1243             <listitem>
1244               <para>
1245                 Connect pin 6 and pin 1 of the companion connector. Pin 1
1246                 can be identified by the square pad around it, and then
1247                 the pins could sequentially across the board. Be very
1248                 careful to <emphasis>not</emphasis> short pin 8 to
1249                 anything as that is connected directly to the battery. Pin
1250                 7 carries 3.3V and the board will crash if that is
1251                 connected to pin 1, but shouldn't damage the board.
1252               </para>
1253             </listitem>
1254           </varlistentry>
1255           <varlistentry>
1256             <term>EasyMini</term>
1257             <listitem>
1258               <para>
1259                 Connect pin 6 and pin 1 of the debug connector, which is
1260                 the six holes next to the beeper. Pin 1 can be identified
1261                 by the square pad around it, and then the pins could
1262                 sequentially across the board, making Pin 6 the one on the
1263                 other end of the row.
1264               </para>
1265             </listitem>
1266           </varlistentry>
1267         </variablelist>
1268       </section>
1269     -->
1270     </section>
1271   </chapter>
1272   <chapter>
1273     <title>Technical Information</title>
1274     <section>
1275       <title>GPS Receiver</title>
1276       <para>
1277         TeleGPS uses the u-Blox Max-7Q GPS receiver.
1278       </para>
1279     </section>
1280     <section>
1281       <title>Micro-controller</title>
1282       <para>
1283         TeleGPS uses an NXP LPC11U14 micro-controller. This tiny
1284         CPU contains 32kB of flash for the application and 4kB of RAM for
1285         temporary data storage.
1286       </para>
1287     </section>
1288     <section>
1289       <title>Lithium Polymer Battery</title>
1290       <para>
1291         Shipping restrictions may prevent us from including a battery
1292         battery with TeleGPS.
1293       </para>
1294     </section>
1295     <section>
1296       <title>Mechanical Considerations</title>
1297       <para>
1298         TeleGPS is designed to be rugged enough for typical rocketry
1299         applications.  The 4 mounting holes on the board are sized for 
1300         use with 4-40 or M3 screws.
1301       </para>
1302     </section>
1303     <section>
1304       <title>On-board data storage</title>
1305       <para>
1306         TeleGPS has 2MB of non-volatile storage, separate from the
1307         code storage memory. The TeleGPS firmware uses this to log
1308         information during flight.
1309       </para>
1310     </section>
1311   </chapter>
1312   <appendix>
1313     <title>Release Notes</title>
1314     <simplesect>
1315       <title>Version 1.6</title>
1316       <xi:include
1317           xmlns:xi="http://www.w3.org/2001/XInclude"
1318           href="release-notes-1.6.xsl"
1319           xpointer="xpointer(/article/*)"/>
1320     </simplesect>
1321     <simplesect>
1322       <title>Version 1.4.1</title>
1323       <xi:include
1324           xmlns:xi="http://www.w3.org/2001/XInclude"
1325           href="release-notes-1.4.1.xsl"
1326           xpointer="xpointer(/article/*)"/>
1327     </simplesect>
1328     <simplesect>
1329       <title>Version 1.4</title>
1330       <xi:include
1331           xmlns:xi="http://www.w3.org/2001/XInclude"
1332           href="release-notes-1.4.xsl"
1333           xpointer="xpointer(/article/*)"/>
1334     </simplesect>
1335   </appendix>
1336 </book>
1337 <!--  LocalWords:  Altusmetrum TeleGPS
1338 -->