doc: Rename telemetrum-doc as altusmetrum
[fw/altos] / doc / telemetrum-doc.xsl
diff --git a/doc/telemetrum-doc.xsl b/doc/telemetrum-doc.xsl
deleted file mode 100644 (file)
index 0c20b28..0000000
+++ /dev/null
@@ -1,1735 +0,0 @@
-<?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>The Altus Metrum System</title>
-  <subtitle>Owner's Manual for TeleMetrum and TeleDongle Devices</subtitle>
-  <bookinfo>
-    <author>
-      <firstname>Bdale</firstname>
-      <surname>Garbee</surname>
-    </author>
-    <author>
-      <firstname>Keith</firstname>
-      <surname>Packard</surname>
-    </author>
-    <author>
-      <firstname>Bob</firstname>
-      <surname>Finch</surname>
-    </author>
-    <author>
-      <firstname>Anthony</firstname>
-      <surname>Towns</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.8</revnumber>
-        <date>24 November 2010</date>
-       <revremark>Updated for software version 0.8 </revremark>
-      </revision>
-    </revhistory>
-  </bookinfo>
-  <acknowledgements>
-    <para>
-      Thanks to Bob Finch, W9YA, NAR 12965, TRA 12350 for writing "The
-      Mere-Mortals Quick Start/Usage Guide to the Altus Metrum Starter
-      Kit" which has turned into the Getting Started chapter in this
-      book. Bob was one of our first customers for a production
-      TeleMetrum, and the enthusiasm that led to his contribution of
-      this section is immensely gratifying and highy appreciated!
-    </para>
-    <para>
-      And thanks to Anthony (AJ) Towns for contributing the
-      AltosUI graphing and site map code and documentation. Free
-      software means that our customers and friends can become our
-      collaborators, and we certainly appreciate this level of
-      contribution.
-    </para>
-    <para>
-      Have fun using these products, and we hope to meet all of you
-      out on the rocket flight line somewhere.
-      <literallayout>
-Bdale Garbee, KB0G
-NAR #87103, TRA #12201
-
-Keith Packard, KD7SQG
-NAR #88757, TRA #12200
-      </literallayout>
-    </para>
-  </acknowledgements>
-  <chapter>
-    <title>Introduction and Overview</title>
-    <para>
-      Welcome to the Altus Metrum community!  Our circuits and software reflect
-      our passion for both hobby rocketry and Free Software.  We hope their
-      capabilities and performance will delight you in every way, but by
-      releasing all of our hardware and software designs under open licenses,
-      we also hope to empower you to take as active a role in our collective
-      future as you wish!
-    </para>
-    <para>
-      The focal point of our community is TeleMetrum, a dual deploy altimeter 
-      with fully integrated GPS and radio telemetry as standard features, and
-      a "companion interface" that will support optional capabilities in the 
-      future.
-    </para>
-    <para>    
-      Complementing TeleMetrum is TeleDongle, a USB to RF interface for 
-      communicating with TeleMetrum.  Combined with your choice of antenna and 
-      notebook computer, TeleDongle and our associated user interface software
-      form a complete ground station capable of logging and displaying in-flight
-      telemetry, aiding rocket recovery, then processing and archiving flight
-      data for analysis and review.
-    </para>
-    <para>
-      More products will be added to the Altus Metrum family over time, and
-      we currently envision that this will be a single, comprehensive manual
-      for the entire product family.
-    </para>
-  </chapter>
-  <chapter>
-    <title>Getting Started</title>
-    <para>
-      The first thing to do after you check the inventory of parts in your 
-      "starter kit" is to charge the battery by plugging it into the 
-      corresponding socket of the TeleMetrum and then using the USB A to 
-      mini B
-      cable to plug the Telemetrum into your computer's USB socket. The 
-      TeleMetrum circuitry will charge the battery whenever it is plugged 
-      in, because the TeleMetrum's on-off switch does NOT control the
-      charging circuitry.  When the GPS chip is initially searching for
-      satellites, TeleMetrum will consume more current than it can pull
-      from the usb port, so the battery must be attached in order to get
-      satellite lock.  Once GPS is locked, the current consumption goes back
-      down enough to enable charging while 
-      running. So it's a good idea to fully charge the battery as your 
-      first item of business so there is no issue getting and maintaining 
-      satellite lock.  The yellow charge indicator led will go out when the 
-      battery is nearly full and the charger goes to trickle charge. It
-      can take several hours to fully recharge a deeply discharged battery.
-    </para>
-    <para>
-      The other active device in the starter kit is the TeleDongle USB to
-      RF interface.  If you plug it in to your Mac or Linux computer it should
-      "just work", showing up as a serial port device.  Windows systems need
-      driver information that is part of the AltOS download to know that the
-      existing USB modem driver will work.  If you are using Linux and are
-      having problems, try moving to a fresher kernel (2.6.33 or newer), as
-      the USB serial driver had ugly bugs in some earlier versions.
-    </para>
-    <para>
-      Next you should obtain and install the AltOS utilities.  These include
-      the AltosUI ground station program, current firmware images for
-      TeleMetrum and TeleDongle, and a number of standalone utilities that
-      are rarely needed.  Pre-built binary packages are available for Debian
-      Linux, Microsoft Windows, and recent MacOSX versions.  Full sourcecode
-      and build instructions for some other Linux variants are also available.
-      The latest version may always be downloaded from
-      <ulink url="http://altusmetrum.org/AltOS"/>.
-    </para>
-    <para>
-      Both Telemetrum and TeleDongle can be directly communicated 
-      with using USB ports. The first thing you should try after getting 
-      both units plugged into to your computer's usb port(s) is to run 
-      'ao-list' from a terminal-window to see what port-device-name each 
-      device has been assigned by the operating system. 
-      You will need this information to access the devices via their 
-      respective on-board firmware and data using other command line
-      programs in the AltOS software suite.
-    </para>
-    <para>
-      To access the device's firmware for configuration you need a terminal
-      program such as you would use to talk to a modem.  The software 
-      authors prefer using the program 'cu' which comes from the UUCP package
-      on most Unix-like systems such as Linux.  An example command line for
-      cu might be 'cu -l /dev/ttyACM0', substituting the correct number 
-      indicated from running the
-      ao-list program.  Another reasonable terminal program for Linux is
-      'cutecom'.  The default 'escape' 
-      character used by CU (i.e. the character you use to
-      issue commands to cu itself instead of sending the command as input 
-      to the connected device) is a '~'. You will need this for use in 
-      only two different ways during normal operations. First is to exit 
-      the program by sending a '~.' which is called a 'escape-disconnect' 
-      and allows you to close-out from 'cu'. The
-      second use will be outlined later.
-    </para>
-    <para>
-      Both TeleMetrum and TeleDongle share the concept of a two level 
-      command set in their firmware.  
-      The first layer has several single letter commands. Once 
-      you are using 'cu' (or 'cutecom') sending (typing) a '?' 
-      returns a full list of these
-      commands. The second level are configuration sub-commands accessed 
-      using the 'c' command, for 
-      instance typing 'c?' will give you this second level of commands 
-      (all of which require the
-      letter 'c' to access).  Please note that most configuration options
-      are stored only in DataFlash memory, and only TeleMetrum has this
-      memory to save the various values entered like the channel number 
-      and your callsign when powered off.  TeleDongle requires that you
-      set these each time you plug it in, which ao-view can help with.
-    </para>
-    <para>
-      Try setting these config ('c' or second level menu) values.  A good
-      place to start is by setting your call sign.  By default, the boards
-      use 'N0CALL' which is cute, but not exactly legal!
-      Spend a few minutes getting comfortable with the units, their 
-      firmware, and 'cu' (or possibly 'cutecom').
-      For instance, try to send 
-      (type) a 'c r 2' and verify the channel change by sending a 'c s'. 
-      Verify you can connect and disconnect from the units while in your
-      terminal program by sending the escape-disconnect mentioned above.
-    </para>
-    <para>
-      Note that the 'reboot' command, which is very useful on TeleMetrum, 
-      will likely just cause problems with the dongle.  The *correct* way
-      to reset the dongle is just to unplug and re-plug it.
-    </para>
-    <para>
-      A fun thing to do at the launch site and something you can do while 
-      learning how to use these units is to play with the rf-link access 
-      of the TeleMetrum from the TeleDongle.  Be aware that you *must* create
-      some physical separation between the devices, otherwise the link will 
-      not function due to signal overload in the receivers in each device.
-    </para>
-    <para>
-      Now might be a good time to take a break and read the rest of this
-      manual, particularly about the two "modes" that the TeleMetrum 
-      can be placed in and how the position of the TeleMetrum when booting 
-      up will determine whether the unit is in "pad" or "idle" mode.
-    </para>
-    <para>
-      You can access a TeleMetrum in idle mode from the Teledongle's USB 
-      connection using the rf link
-      by issuing a 'p' command to the TeleDongle. Practice connecting and
-      disconnecting ('~~' while using 'cu') from the TeleMetrum.  If 
-      you cannot escape out of the "p" command, (by using a '~~' when in 
-      CU) then it is likely that your kernel has issues.  Try a newer version.
-    </para>
-    <para>
-      Using this rf link allows you to configure the TeleMetrum, test 
-      fire e-matches and igniters from the flight line, check pyro-match 
-      continuity and so forth. You can leave the unit turned on while it 
-      is in 'idle mode' and then place the
-      rocket vertically on the launch pad, walk away and then issue a 
-      reboot command.  The TeleMetrum will reboot and start sending data 
-      having changed to the "pad" mode. If the TeleDongle is not receiving 
-      this data, you can disconnect 'cu' from the Teledongle using the 
-      procedures mentioned above and THEN connect to the TeleDongle from 
-      inside 'ao-view'. If this doesn't work, disconnect from the
-      TeleDongle, unplug it, and try again after plugging it back in.
-    </para>
-    <para>
-      Eventually the GPS will find enough satellites, lock in on them, 
-      and 'ao-view' will both auditorially announce and visually indicate 
-      that GPS is ready.
-      Now you can launch knowing that you have a good data path and 
-      good satellite lock for flight data and recovery.  Remember 
-      you MUST tell ao-view to connect to the TeleDongle explicitly in 
-      order for ao-view to be able to receive data.
-    </para>
-    <para>
-      Both RDF (radio direction finding) tones from the TeleMetrum and 
-      GPS trekking data are available and together are very useful in 
-      locating the rocket once it has landed. (The last good GPS data 
-      received before touch-down will be on the data screen of 'ao-view'.)
-    </para>
-    <para>
-      Once you have recovered the rocket you can download the eeprom 
-      contents using either 'ao-dumplog' (or possibly 'ao-eeprom'), over
-      either a USB cable or over the radio link using TeleDongle.
-      And by following the man page for 'ao-postflight' you can create 
-      various data output reports, graphs, and even kml data to see the 
-      flight trajectory in google-earth. (Moving the viewing angle making 
-      sure to connect the yellow lines while in google-earth is the proper
-      technique.)
-    </para>
-    <para>
-      As for ao-view.... some things are in the menu but don't do anything 
-      very useful.  The developers have stopped working on ao-view to focus
-      on a new, cross-platform ground station program.  So ao-view may or 
-      may not be updated in the future.  Mostly you just use 
-      the Log and Device menus.  It has a wonderful display of the incoming 
-      flight data and I am sure you will enjoy what it has to say to you 
-      once you enable the voice output!
-    </para>
-    <section>
-      <title>FAQ</title>
-      <para>
-        The altimeter (TeleMetrum) seems to shut off when disconnected from the
-        computer.  Make sure the battery is adequately charged.  Remember the
-        unit will pull more power than the USB port can deliver before the 
-        GPS enters "locked" mode.  The battery charges best when TeleMetrum
-        is turned off.
-      </para>
-      <para>
-        It's impossible to stop the TeleDongle when it's in "p" mode, I have
-        to unplug the USB cable?  Make sure you have tried to "escape out" of 
-        this mode.  If this doesn't work the reboot procedure for the 
-        TeleDongle *is* to simply unplug it. 'cu' however will retain it's 
-        outgoing buffer IF your "escape out" ('~~') does not work. 
-        At this point using either 'ao-view' (or possibly
-        'cutemon') instead of 'cu' will 'clear' the issue and allow renewed
-        communication.
-      </para>
-      <para>
-        The amber LED (on the TeleMetrum/altimeter) lights up when both 
-        battery and USB are connected. Does this mean it's charging? 
-        Yes, the yellow LED indicates the charging at the 'regular' rate. 
-        If the led is out but the unit is still plugged into a USB port, 
-        then the battery is being charged at a 'trickle' rate.
-      </para>
-      <para>
-        There are no "dit-dah-dah-dit" sound like the manual mentions?
-        That's the "pad" mode.  Weak batteries might be the problem.
-        It is also possible that the unit is horizontal and the output 
-        is instead a "dit-dit" meaning 'idle'.
-      </para>
-      <para>
-        It's unclear how to use 'ao-view' and other programs when 'cu' 
-        is running. You cannot have more than one program connected to 
-        the TeleDongle at one time without apparent data loss as the 
-        incoming data will not make it to both programs intact. 
-        Disconnect whatever programs aren't currently being used.
-      </para>
-      <para>
-        How do I save flight data?   
-        Live telemetry is written to file(s) whenever 'ao-view' is connected 
-        to the TeleDongle.  The file area defaults to ~/altos
-        but is easily changed using the menus in 'ao-view'. The files that 
-        are written end in '.telem'. The after-flight
-        data-dumped files will end in .eeprom and represent continuous data 
-        unlike the rf-linked .telem files that are subject to the 
-        turnarounds/data-packaging time slots in the half-duplex rf data path. 
-        See the above instructions on what and how to save the eeprom stored 
-        data after physically retrieving your TeleMetrum.  Make sure to save
-        the on-board data after each flight, as the current firmware will
-        over-write any previous flight data during a new flight.
-      </para>
-    </section>
-  </chapter>
-  <chapter>
-    <title>Specifications</title>
-    <itemizedlist>
-      <listitem>
-        <para>
-          Recording altimeter for model rocketry.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Supports dual deployment (can fire 2 ejection charges).
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          70cm ham-band transceiver for telemetry downlink.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Barometric pressure sensor good to 45k feet MSL.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          1-axis high-g accelerometer for motor characterization, capable of 
-          +/- 50g using default part.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          On-board, integrated GPS receiver with 5hz update rate capability.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          On-board 1 megabyte non-volatile memory for flight data storage.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          USB interface for battery charging, configuration, and data recovery.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Fully integrated support for LiPo rechargeable batteries.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Uses LiPo to fire e-matches, support for optional separate pyro 
-          battery if needed.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          2.75 x 1 inch board designed to fit inside 29mm airframe coupler tube.
-        </para>
-      </listitem>
-    </itemizedlist>
-  </chapter>
-  <chapter>
-    <title>Handling Precautions</title>
-    <para>
-      TeleMetrum is a sophisticated electronic device.  When handled gently and
-      properly installed in an airframe, it will deliver impressive results.
-      However, like all electronic devices, there are some precautions you
-      must take.
-    </para>
-    <para>
-      The Lithium Polymer rechargeable batteries used with TeleMetrum have an 
-      extraordinary power density.  This is great because we can fly with
-      much less battery mass than if we used alkaline batteries or previous
-      generation rechargeable batteries... but if they are punctured 
-      or their leads are allowed to short, they can and will release their 
-      energy very rapidly!
-      Thus we recommend that you take some care when handling our batteries 
-      and consider giving them some extra protection in your airframe.  We 
-      often wrap them in suitable scraps of closed-cell packing foam before 
-      strapping them down, for example.
-    </para>
-    <para>
-      The TeleMetrum barometric sensor is sensitive to sunlight.  In normal 
-      mounting situations, it and all of the other surface mount components 
-      are "down" towards whatever the underlying mounting surface is, so
-      this is not normally a problem.  Please consider this, though, when
-      designing an installation, for example, in a 29mm airframe with a 
-      see-through plastic payload bay.
-    </para>
-    <para>
-      The TeleMetrum barometric sensor sampling port must be able to 
-      "breathe",
-      both by not being covered by foam or tape or other materials that might
-      directly block the hole on the top of the sensor, but also by having a
-      suitable static vent to outside air.  
-    </para>
-    <para>
-      As with all other rocketry electronics, TeleMetrum must be protected 
-      from exposure to corrosive motor exhaust and ejection charge gasses.
-    </para>
-  </chapter>
-  <chapter>
-    <title>Hardware Overview</title>
-    <para>
-      TeleMetrum is a 1 inch by 2.75 inch circuit board.  It was designed to
-      fit inside coupler for 29mm airframe tubing, but using it in a tube that
-      small in diameter may require some creativity in mounting and wiring 
-      to succeed!  The default 1/4
-      wave UHF wire antenna attached to the center of the nose-cone end of
-      the board is about 7 inches long, and wiring for a power switch and
-      the e-matches for apogee and main ejection charges depart from the 
-      fin can end of the board.  Given all this, an ideal "simple" avionics 
-      bay for TeleMetrum should have at least 10 inches of interior length.
-    </para>
-    <para>
-      A typical TeleMetrum installation using the on-board GPS antenna and
-      default wire UHF antenna involves attaching only a suitable
-      Lithium Polymer battery, a single pole switch for power on/off, and 
-      two pairs of wires connecting e-matches for the apogee and main ejection
-      charges.  
-    </para>
-    <para>
-      By default, we use the unregulated output of the LiPo battery directly
-      to fire ejection charges.  This works marvelously with standard 
-      low-current e-matches like the J-Tek from MJG Technologies, and with 
-      Quest Q2G2 igniters.  However, if you
-      want or need to use a separate pyro battery, you can do so by adding
-      a second 2mm connector to position B2 on the board and cutting the
-      thick pcb trace connecting the LiPo battery to the pyro circuit between
-      the two silk screen marks on the surface mount side of the board shown
-      here [insert photo]
-    </para>
-    <para>
-      We offer two choices of pyro and power switch connector, or you can 
-      choose neither and solder wires directly to the board.  All three choices
-      are reasonable depending on the constraints of your airframe.  Our
-      favorite option when there is sufficient room above the board is to use
-      the Tyco pin header with polarization and locking.  If you choose this
-      option, you crimp individual wires for the power switch and e-matches
-      into a mating connector, and installing and removing the TeleMetrum
-      board from an airframe is as easy as plugging or unplugging two 
-      connectors.  If the airframe will not support this much height or if
-      you want to be able to directly attach e-match leads to the board, we
-      offer a screw terminal block.  This is very similar to what most other
-      altimeter vendors provide and so may be the most familiar option.  
-      You'll need a very small straight blade screwdriver to connect
-      and disconnect the board in this case, such as you might find in a
-      jeweler's screwdriver set.  Finally, you can forego both options and
-      solder wires directly to the board, which may be the best choice for
-      minimum diameter and/or minimum mass designs. 
-    </para>
-    <para>
-      For most airframes, the integrated GPS antenna and wire UHF antenna are
-      a great combination.  However, if you are installing in a carbon-fiber
-      electronics bay which is opaque to RF signals, you may need to use 
-      off-board external antennas instead.  In this case, you can order
-      TeleMetrum with an SMA connector for the UHF antenna connection, and
-      you can unplug the integrated GPS antenna and select an appropriate 
-      off-board GPS antenna with cable terminating in a U.FL connector.
-    </para>
-  </chapter>
-  <chapter>
-    <title>System Operation</title>
-    <section>
-      <title>Firmware Modes </title>
-      <para>
-        The AltOS firmware build for TeleMetrum has two fundamental modes,
-        "idle" and "flight".  Which of these modes the firmware operates in
-        is determined by the orientation of the rocket (well, actually the
-        board, of course...) at the time power is switched on.  If the rocket
-        is "nose up", then TeleMetrum assumes it's on a rail or rod being
-        prepared for launch, so the firmware chooses flight mode.  However,
-        if the rocket is more or less horizontal, the firmware instead enters
-        idle mode.
-      </para>
-      <para>
-        At power on, you will hear three beeps 
-        ("S" in Morse code for startup) and then a pause while 
-        TeleMetrum completes initialization and self tests, and decides which
-        mode to enter next.
-      </para>
-      <para>
-        In flight or "pad" mode, TeleMetrum turns on the GPS system, 
-        engages the flight
-        state machine, goes into transmit-only mode on the RF link sending 
-        telemetry, and waits for launch to be detected.  Flight mode is
-        indicated by an audible "di-dah-dah-dit" ("P" for pad) on the 
-        beeper, followed by
-        beeps indicating the state of the pyrotechnic igniter continuity.
-        One beep indicates apogee continuity, two beeps indicate
-        main continuity, three beeps indicate both apogee and main continuity,
-        and one longer "brap" sound indicates no continuity.  For a dual
-        deploy flight, make sure you're getting three beeps before launching!
-        For apogee-only or motor eject flights, do what makes sense.
-      </para>
-      <para>
-        In idle mode, you will hear an audible "di-dit" ("I" for idle), and
-        the normal flight state machine is disengaged, thus
-        no ejection charges will fire.  TeleMetrum also listens on the RF
-        link when in idle mode for packet mode requests sent from TeleDongle.
-        Commands can be issued to a TeleMetrum in idle mode over either
-        USB or the RF link equivalently.
-        Idle mode is useful for configuring TeleMetrum, for extracting data 
-        from the on-board storage chip after flight, and for ground testing
-        pyro charges.
-      </para>
-      <para>
-        One "neat trick" of particular value when TeleMetrum is used with very
-        large airframes, is that you can power the board up while the rocket
-        is horizontal, such that it comes up in idle mode.  Then you can 
-        raise the airframe to launch position, use a TeleDongle to open
-        a packet connection, and issue a 'reset' command which will cause
-        TeleMetrum to reboot, realize it's now nose-up, and thus choose
-        flight mode.  This is much safer than standing on the top step of a
-        rickety step-ladder or hanging off the side of a launch tower with
-        a screw-driver trying to turn on your avionics before installing
-        igniters!
-      </para>
-    </section>
-    <section>
-      <title>GPS </title>
-      <para>
-        TeleMetrum includes a complete GPS receiver.  See a later section for
-        a brief explanation of how GPS works that will help you understand
-        the information in the telemetry stream.  The bottom line is that
-        the TeleMetrum GPS receiver needs to lock onto at least four 
-        satellites to obtain a solid 3 dimensional position fix and know 
-        what time it is!
-      </para>
-      <para>
-        TeleMetrum provides backup power to the GPS chip any time a LiPo
-        battery is connected.  This allows the receiver to "warm start" on
-        the launch rail much faster than if every power-on were a "cold start"
-        for the GPS receiver.  In typical operations, powering up TeleMetrum
-        on the flight line in idle mode while performing final airframe
-        preparation will be sufficient to allow the GPS receiver to cold
-        start and acquire lock.  Then the board can be powered down during
-        RSO review and installation on a launch rod or rail.  When the board
-        is turned back on, the GPS system should lock very quickly, typically
-        long before igniter installation and return to the flight line are
-        complete.
-      </para>
-    </section>
-    <section>
-      <title>Ground Testing </title>
-      <para>
-        An important aspect of preparing a rocket using electronic deployment
-        for flight is ground testing the recovery system.  Thanks
-        to the bi-directional RF link central to the Altus Metrum system, 
-        this can be accomplished in a TeleMetrum-equipped rocket without as
-        much work as you may be accustomed to with other systems.  It can
-        even be fun!
-      </para>
-      <para>
-        Just prep the rocket for flight, then power up TeleMetrum while the
-        airframe is horizontal.  This will cause the firmware to go into 
-        "idle" mode, in which the normal flight state machine is disabled and
-        charges will not fire without manual command.  Then, establish an
-        RF packet connection from a TeleDongle-equipped computer using the 
-        P command from a safe distance.  You can now command TeleMetrum to
-        fire the apogee or main charges to complete your testing.
-      </para>
-      <para>
-        In order to reduce the chance of accidental firing of pyrotechnic
-        charges, the command to fire a charge is intentionally somewhat
-        difficult to type, and the built-in help is slightly cryptic to 
-        prevent accidental echoing of characters from the help text back at
-        the board from firing a charge.  The command to fire the apogee
-        drogue charge is 'i DoIt drogue' and the command to fire the main
-        charge is 'i DoIt main'.
-      </para>
-    </section>
-    <section>
-      <title>Radio Link </title>
-      <para>
-        The chip our boards are based on incorporates an RF transceiver, but
-        it's not a full duplex system... each end can only be transmitting or
-        receiving at any given moment.  So we had to decide how to manage the
-        link.
-      </para>
-      <para>
-        By design, TeleMetrum firmware listens for an RF connection when
-        it's in "idle mode" (turned on while the rocket is horizontal), which
-        allows us to use the RF link to configure the rocket, do things like
-        ejection tests, and extract data after a flight without having to 
-        crack open the airframe.  However, when the board is in "flight 
-        mode" (turned on when the rocket is vertical) the TeleMetrum only 
-        transmits and doesn't listen at all.  That's because we want to put 
-        ultimate priority on event detection and getting telemetry out of 
-        the rocket and out over
-        the RF link in case the rocket crashes and we aren't able to extract
-        data later... 
-      </para>
-      <para>
-        We don't use a 'normal packet radio' mode because they're just too
-        inefficient.  The GFSK modulation we use is just FSK with the 
-        baseband pulses passed through a
-        Gaussian filter before they go into the modulator to limit the
-        transmitted bandwidth.  When combined with the hardware forward error
-        correction support in the cc1111 chip, this allows us to have a very
-        robust 38.4 kilobit data link with only 10 milliwatts of transmit power,
-        a whip antenna in the rocket, and a hand-held Yagi on the ground.  We've
-        had flights to above 21k feet AGL with good reception, and calculations
-        suggest we should be good to well over 40k feet AGL with a 5-element yagi on
-        the ground.  We hope to fly boards to higher altitudes soon, and would
-        of course appreciate customer feedback on performance in higher
-        altitude flights!
-      </para>
-    </section>
-    <section>
-      <title>Configurable Parameters</title>
-      <para>
-        Configuring a TeleMetrum board for flight is very simple.  Because we
-        have both acceleration and pressure sensors, there is no need to set
-        a "mach delay", for example.  The few configurable parameters can all
-        be set using a simple terminal program over the USB port or RF link
-        via TeleDongle.
-      </para>
-      <section>
-        <title>Radio Channel</title>
-        <para>
-          Our firmware supports 10 channels.  The default channel 0 corresponds
-          to a center frequency of 434.550 Mhz, and channels are spaced every 
-          100 khz.  Thus, channel 1 is 434.650 Mhz, and channel 9 is 435.550 Mhz.
-          At any given launch, we highly recommend coordinating who will use
-          each channel and when to avoid interference.  And of course, both 
-          TeleMetrum and TeleDongle must be configured to the same channel to
-          successfully communicate with each other.
-        </para>
-        <para>
-          To set the radio channel, use the 'c r' command, like 'c r 3' to set
-          channel 3.  
-          As with all 'c' sub-commands, follow this with a 'c w' to write the 
-          change to the parameter block in the on-board DataFlash chip on
-          your TeleMetrum board if you want the change to stay in place across reboots.
-        </para>
-      </section>
-      <section>
-        <title>Apogee Delay</title>
-        <para>
-          Apogee delay is the number of seconds after TeleMetrum detects flight
-          apogee that the drogue charge should be fired.  In most cases, this
-          should be left at the default of 0.  However, if you are flying
-          redundant electronics such as for an L3 certification, you may wish 
-          to set one of your altimeters to a positive delay so that both 
-          primary and backup pyrotechnic charges do not fire simultaneously.
-        </para>
-        <para>
-          To set the apogee delay, use the 'c d' command.
-          As with all 'c' sub-commands, follow this with a 'c w' to write the 
-          change to the parameter block in the on-board DataFlash chip.
-        </para>
-        <para>
-          Please note that the TeleMetrum apogee detection algorithm always
-          fires a fraction of a second *after* apogee.  If you are also flying
-          an altimeter like the PerfectFlite MAWD, which only supports selecting
-          0 or 1 seconds of apogee delay, you may wish to set the MAWD to 0
-          seconds delay and set the TeleMetrum to fire your backup 2 or 3
-          seconds later to avoid any chance of both charges firing 
-          simultaneously.  We've flown several airframes this way quite happily,
-          including Keith's successful L3 cert.
-        </para>
-      </section>
-      <section>
-        <title>Main Deployment Altitude</title>
-        <para>
-          By default, TeleMetrum will fire the main deployment charge at an
-          elevation of 250 meters (about 820 feet) above ground.  We think this
-          is a good elevation for most airframes, but feel free to change this 
-          to suit.  In particular, if you are flying two altimeters, you may
-          wish to set the
-          deployment elevation for the backup altimeter to be something lower
-          than the primary so that both pyrotechnic charges don't fire
-          simultaneously.
-        </para>
-        <para>
-          To set the main deployment altitude, use the 'c m' command.
-          As with all 'c' sub-commands, follow this with a 'c w' to write the 
-          change to the parameter block in the on-board DataFlash chip.
-        </para>
-      </section>
-    </section>
-    <section>
-      <title>Calibration</title>
-      <para>
-        There are only two calibrations required for a TeleMetrum board, and
-        only one for TeleDongle.
-      </para>
-      <section>
-        <title>Radio Frequency</title>
-        <para>
-          The radio frequency is synthesized from a clock based on the 48 Mhz
-          crystal on the board.  The actual frequency of this oscillator must be
-          measured to generate a calibration constant.  While our GFSK modulation
-          bandwidth is wide enough to allow boards to communicate even when 
-          their oscillators are not on exactly the same frequency, performance
-          is best when they are closely matched.
-          Radio frequency calibration requires a calibrated frequency counter.
-          Fortunately, once set, the variation in frequency due to aging and
-          temperature changes is small enough that re-calibration by customers
-          should generally not be required.
-        </para>
-        <para>
-          To calibrate the radio frequency, connect the UHF antenna port to a
-          frequency counter, set the board to channel 0, and use the 'C' 
-          command to generate a CW carrier.  Wait for the transmitter temperature
-          to stabilize and the frequency to settle down.  
-          Then, divide 434.550 Mhz by the 
-          measured frequency and multiply by the current radio cal value show
-          in the 'c s' command.  For an unprogrammed board, the default value
-          is 1186611.  Take the resulting integer and program it using the 'c f'
-          command.  Testing with the 'C' command again should show a carrier
-          within a few tens of Hertz of the intended frequency.
-          As with all 'c' sub-commands, follow this with a 'c w' to write the 
-          change to the parameter block in the on-board DataFlash chip.
-        </para>
-      </section>
-      <section>
-        <title>Accelerometer</title>
-        <para>
-          The accelerometer we use has its own 5 volt power supply and
-          the output must be passed through a resistive voltage divider to match
-          the input of our 3.3 volt ADC.  This means that unlike the barometric
-          sensor, the output of the acceleration sensor is not ratiometric to 
-          the ADC converter, and calibration is required.  We also support the 
-          use of any of several accelerometers from a Freescale family that 
-          includes at least +/- 40g, 50g, 100g, and 200g parts.  Using gravity,
-          a simple 2-point calibration yields acceptable results capturing both
-          the different sensitivities and ranges of the different accelerometer
-          parts and any variation in power supply voltages or resistor values
-          in the divider network.
-        </para>
-        <para>
-          To calibrate the acceleration sensor, use the 'c a 0' command.  You
-          will be prompted to orient the board vertically with the UHF antenna
-          up and press a key, then to orient the board vertically with the 
-          UHF antenna down and press a key.
-          As with all 'c' sub-commands, follow this with a 'c w' to write the 
-          change to the parameter block in the on-board DataFlash chip.
-        </para>
-        <para>
-          The +1g and -1g calibration points are included in each telemetry
-          frame and are part of the header extracted by ao-dumplog after flight.
-          Note that we always store and return raw ADC samples for each
-          sensor... nothing is permanently "lost" or "damaged" if the 
-          calibration is poor.
-        </para>
-        <para>
-         In the unlikely event an accel cal that goes badly, it is possible
-         that TeleMetrum may always come up in 'pad mode' and as such not be
-         listening to either the USB or radio interfaces.  If that happens,
-         there is a special hook in the firmware to force the board back
-         in to 'idle mode' so you can re-do the cal.  To use this hook, you
-         just need to ground the SPI clock pin at power-on.  This pin is
-         available as pin 2 on the 8-pin companion connector, and pin 1 is
-         ground.  So either carefully install a fine-gauge wire jumper
-         between the two pins closest to the index hole end of the 8-pin
-         connector, or plug in the programming cable to the 8-pin connector
-         and use a small screwdriver or similar to short the two pins closest
-         to the index post on the 4-pin end of the programming cable, and
-         power up the board.  It should come up in 'idle mode' (two beeps).
-        </para>
-      </section>
-    </section>
-
-
-
-  <section>
-    <title>Updating Device Firmware</title>
-    <para>
-      The big conceptual thing to realize is that you have to use a
-      TeleDongle as a programmer to update a TeleMetrum, and vice versa.
-      Due to limited memory resources in the cc1111, we don't support
-      programming either unit directly over USB.
-    </para>
-    <para>
-      You may wish to begin by ensuring you have current firmware images.
-      These are distributed as part of the AltOS software bundle that
-      also includes the AltosUI ground station program.  Newer ground
-      station versions typically work fine with older firmware versions, 
-      so you don't need to update your devices just to try out new 
-      software features.  You can always download the most recent 
-      version from <ulink url="http://www.altusmetrum.org/AltOS/"/>.
-    </para>
-    <para>
-      We recommend updating TeleMetrum first, before updating TeleDongle.
-    </para>
-    <section>
-      <title>Updating TeleMetrum Firmware</title>
-      <orderedlist inheritnum='inherit' numeration='arabic'>
-        <listitem> 
-          Find the 'programming cable' that you got as part of the starter
-          kit, that has a red 8-pin MicroMaTch connector on one end and a
-          red 4-pin MicroMaTch connector on the other end.  
-        </listitem>
-        <listitem> 
-          Take the 2 screws out of the TeleDongle case to get access 
-          to the circuit board.  
-        </listitem>
-        <listitem>
-          Plug the 8-pin end of the programming cable to the
-          matching connector on the TeleDongle, and the 4-pin end to the
-          matching connector on the TeleMetrum.  
-         Note that each MicroMaTch connector has an alignment pin that
-         goes through a hole in the PC board when you have the cable
-         oriented correctly.
-        </listitem>
-        <listitem>
-          Attach a battery to the TeleMetrum board.
-        </listitem>
-        <listitem>
-          Plug the TeleDongle into your computer's USB port, and power 
-          up the TeleMetrum. 
-        </listitem>
-        <listitem>
-          Run AltosUI, and select 'Flash Image' from the File menu.
-        </listitem>
-        <listitem>
-          Pick the TeleDongle device from the list, identifying it as the 
-          programming device.
-        </listitem>
-        <listitem>
-          Select the image you want put on the TeleMetrum, which should have a 
-          name in the form telemetrum-v1.0-0.7.1.ihx.  It should be visible 
-       in the default directory, if not you may have to poke around 
-       your system to find it.
-        </listitem>
-        <listitem>
-          Make sure the configuration parameters are reasonable
-          looking. If the serial number and/or RF configuration
-          values aren't right, you'll need to change them.
-        </listitem>
-        <listitem>
-          Hit the 'OK' button and the software should proceed to flash 
-          the TeleMetrum with new firmware, showing a progress bar.
-        </listitem>
-        <listitem>
-          Confirm that the TeleMetrum board seems to have updated ok, which you
-          can do by plugging in to it over USB and using a terminal program
-          to connect to the board and issue the 'v' command to check
-          the version, etc.
-        </listitem>
-        <listitem>
-          If something goes wrong, give it another try.
-        </listitem>
-      </orderedlist>
-    </section>
-    <section>
-      <title>Updating TeleDongle Firmware</title>
-      <para>
-        Updating TeleDongle's firmware is just like updating TeleMetrum
-       firmware, but you switch which board is the programmer and which
-       is the programming target.
-       </para>
-      <orderedlist inheritnum='inherit' numeration='arabic'>
-        <listitem> 
-          Find the 'programming cable' that you got as part of the starter
-          kit, that has a red 8-pin MicroMaTch connector on one end and a
-          red 4-pin MicroMaTch connector on the other end.  
-        </listitem>
-        <listitem>
-         Find the USB cable that you got as part of the starter kit, and
-         plug the "mini" end in to the mating connector on TeleMetrum.
-        </listitem>
-        <listitem>
-          Take the 2 screws out of the TeleDongle case to get access 
-          to the circuit board.  
-        </listitem>
-        <listitem>
-          Plug the 8-pin end of the programming cable to the (latching)
-          matching connector on the TeleMetrum, and the 4-pin end to the
-          matching connector on the TeleDongle.  
-         Note that each MicroMaTch connector has an alignment pin that
-         goes through a hole in the PC board when you have the cable
-         oriented correctly.
-        </listitem>
-        <listitem>
-          Attach a battery to the TeleMetrum board.
-        </listitem>
-        <listitem>
-          Plug both TeleMetrum and TeleDongle into your computer's USB 
-         ports, and power up the TeleMetrum. 
-        </listitem>
-        <listitem>
-          Run AltosUI, and select 'Flash Image' from the File menu.
-        </listitem>
-        <listitem>
-          Pick the TeleMetrum device from the list, identifying it as the 
-          programming device.
-        </listitem>
-        <listitem>
-          Select the image you want put on the TeleDongle, which should have a 
-          name in the form teledongle-v0.2-0.7.1.ihx.  It should be visible 
-       in the default directory, if not you may have to poke around 
-       your system to find it.
-        </listitem>
-        <listitem>
-          Make sure the configuration parameters are reasonable
-          looking. If the serial number and/or RF configuration
-          values aren't right, you'll need to change them.  The TeleDongle
-         serial number is on the "bottom" of the circuit board, and can 
-         usually be read through the translucent blue plastic case without
-         needing to remove the board from the case.
-        </listitem>
-        <listitem>
-          Hit the 'OK' button and the software should proceed to flash 
-          the TeleDongle with new firmware, showing a progress bar.
-        </listitem>
-        <listitem>
-          Confirm that the TeleDongle board seems to have updated ok, which you
-          can do by plugging in to it over USB and using a terminal program
-          to connect to the board and issue the 'v' command to check
-          the version, etc.  Once you're happy, remove the programming cable
-         and put the cover back on the TeleDongle.     
-        </listitem>
-        <listitem>
-          If something goes wrong, give it another try.
-        </listitem>
-      </orderedlist>
-      <para>
-        Be careful removing the programming cable from the locking 8-pin
-        connector on TeleMetrum.  You'll need a fingernail or perhaps a thin
-        screwdriver or knife blade to gently pry the locking ears out 
-        slightly to extract the connector.  We used a locking connector on 
-        TeleMetrum to help ensure that the cabling to companion boards 
-        used in a rocket don't ever come loose accidentally in flight.
-      </para>
-    </section>
-  </section>
-
-
-
-  </chapter>
-  <chapter>
-    
-    <title>AltosUI</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>
-    <section>
-      <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>
-      <para>
-       One oddity in the current interface is how AltosUI selects the
-       channel for packet mode communications. Instead of providing
-       an interface to specifically configure the channel, it uses
-       whatever channel was most recently selected for the target
-       TeleDongle device in Monitor Flight mode. If you haven't ever
-       used that mode with the TeleDongle in question, select the
-       Monitor Flight button from the top level UI, pick the
-       appropriate TeleDongle device. Once the flight monitoring
-       window is open, select the desired channel and then close it
-       down again. All Packet Command Mode operations will now use
-       that channel.
-      </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>
-    </section>
-    <section>
-      <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>
-      <section>
-        <title>Site Map</title>
-        <para>
-          When the rocket gets a GPS fix, the Site Map tab will map
-          the rocket's position to make it easier for you to locate the
-          rocket, both while it is in the air, and when it has landed. The
-          rocket's state is indicated by colour: white for pad, red for
-          boost, pink for fast, yellow for coast, light blue for drogue,
-          dark blue for main, and black for landed.
-        </para>
-        <para>
-          The map's scale is approximately 3m (10ft) per pixel. The map
-          can be dragged using the left mouse button. The map will attempt
-          to keep the rocket roughly centred while data is being received.
-        </para>
-        <para>
-          Images are fetched automatically via the Google Maps Static API,
-          and are cached for reuse. If map images cannot be downloaded,
-          the rocket's path will be traced on a dark grey background
-          instead.
-        </para>
-      </section>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <title>Graph Data</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 acceleration (blue),
-        velocity (green) and altitude (red) of the flight are plotted and
-        displayed, measured in metric units.
-      </para>
-      <para>
-        The graph can be zoomed into a particular area by clicking and
-        dragging down and to the right. Once zoomed, the graph can be
-        reset by clicking and dragging up and to the left. Holding down
-        control and clicking and dragging allows the graph to be panned.
-        The right mouse button causes a popup menu to be displayed, giving
-        you the option save or print the plot.
-      </para>
-      <para>
-        Note that telemetry files will generally produce poor graphs
-        due to the lower sampling rate and missed telemetry packets,
-        and will also often have significant amounts of data received
-        while the rocket was waiting on the pad. Use saved flight data
-        for graphing where possible.
-      </para>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <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>
-    </section>
-    <section>
-      <title>Fire Igniter</title>
-      <para>
-       This activates the igniter circuits in TeleMetrum to help test
-       recovery systems deployment. Because this command can operate
-       over the Packet Command Link, you can prepare the rocket as
-       for flight and then test the recovery system without needing
-       to snake wires inside the airframe.
-      </para>
-      <para>
-       Selecting the 'Fire Igniter' button brings up the usual device
-       selection dialog. Pick the desired TeleDongle or TeleMetrum
-       device. This brings up another window which shows the current
-       continutity test status for both apogee and main charges.
-      </para>
-      <para>
-       Next, select the desired igniter to fire. This will enable the
-       'Arm' button.
-      </para>
-      <para>
-       Select the 'Arm' button. This enables the 'Fire' button. The
-       word 'Arm' is replaced by a countdown timer indicating that
-       you have 10 seconds to press the 'Fire' button or the system
-       will deactivate, at which point you start over again at
-       selecting the desired igniter.
-      </para>
-    </section>
-  </chapter>
-  <chapter>
-    <title>Using Altus Metrum Products</title>
-    <section>
-      <title>Being Legal</title>
-      <para>
-        First off, in the US, you need an <ulink url="http://www.altusmetrum.org/Radio/">amateur radio license</ulink> or
-        other authorization to legally operate the radio transmitters that are part
-        of our products.
-      </para>
-      <section>
-        <title>In the Rocket</title>
-        <para>
-          In the rocket itself, you just need a <ulink url="http://www.altusmetrum.org/TeleMetrum/">TeleMetrum</ulink> board and
-          a LiPo rechargeable battery.  An 860mAh battery weighs less than a 9V 
-          alkaline battery, and will run a <ulink url="http://www.altusmetrum.org/TeleMetrum/">TeleMetrum</ulink> for hours.
-        </para>
-        <para>
-          By default, we ship TeleMetrum with a simple wire antenna.  If your 
-          electronics bay or the airframe it resides within is made of carbon fiber, 
-          which is opaque to RF signals, you may choose to have an SMA connector 
-          installed so that you can run a coaxial cable to an antenna mounted 
-          elsewhere in the rocket.
-        </para>
-      </section>
-      <section>
-        <title>On the Ground</title>
-        <para>
-          To receive the data stream from the rocket, you need an antenna and short 
-          feedline connected to one of our <ulink url="http://www.altusmetrum.org/TeleDongle/">TeleDongle</ulink> units.  The
-          TeleDongle in turn plugs directly into the USB port on a notebook 
-          computer.  Because TeleDongle looks like a simple serial port, your computer
-          does not require special device drivers... just plug it in.
-        </para>
-        <para>
-         The GUI tool, AltosUI, is written in Java and runs across
-         Linux, Mac OS and Windows. There's also a suite of C tools
-         for Linux which can perform most of the same tasks.
-        </para>
-        <para>
-          After the flight, you can use the RF link to extract the more detailed data 
-          logged in the rocket, or you can use a mini USB cable to plug into the 
-          TeleMetrum board directly.  Pulling out the data without having to open up
-          the rocket is pretty cool!  A USB cable is also how you charge the LiPo 
-          battery, so you'll want one of those anyway... the same cable used by lots 
-          of digital cameras and other modern electronic stuff will work fine.
-        </para>
-        <para>
-          If your rocket lands out of sight, you may enjoy having a hand-held GPS 
-          receiver, so that you can put in a waypoint for the last reported rocket 
-          position before touch-down.  This makes looking for your rocket a lot like 
-          Geo-Cacheing... just go to the waypoint and look around starting from there.
-        </para>
-        <para>
-          You may also enjoy having a ham radio "HT" that covers the 70cm band... you 
-          can use that with your antenna to direction-find the rocket on the ground 
-          the same way you can use a Walston or Beeline tracker.  This can be handy 
-          if the rocket is hiding in sage brush or a tree, or if the last GPS position 
-          doesn't get you close enough because the rocket dropped into a canyon, or 
-          the wind is blowing it across a dry lake bed, or something like that...  Keith
-          and Bdale both currently own and use the Yaesu VX-7R at launches.
-        </para>
-        <para>
-          So, to recap, on the ground the hardware you'll need includes:
-          <orderedlist inheritnum='inherit' numeration='arabic'>
-            <listitem> 
-              an antenna and feedline
-            </listitem>
-            <listitem> 
-              a TeleDongle
-            </listitem>
-            <listitem> 
-              a notebook computer
-            </listitem>
-            <listitem> 
-              optionally, a handheld GPS receiver
-            </listitem>
-            <listitem> 
-              optionally, an HT or receiver covering 435 Mhz
-            </listitem>
-          </orderedlist>
-        </para>
-        <para>
-          The best hand-held commercial directional antennas we've found for radio 
-          direction finding rockets are from 
-          <ulink url="http://www.arrowantennas.com/" >
-            Arrow Antennas.
-          </ulink>
-          The 440-3 and 440-5 are both good choices for finding a 
-          TeleMetrum-equipped rocket when used with a suitable 70cm HT.  
-        </para>
-      </section>
-      <section>
-        <title>Data Analysis</title>
-        <para>
-          Our software makes it easy to log the data from each flight, both the 
-          telemetry received over the RF link during the flight itself, and the more
-          complete data log recorded in the DataFlash memory on the TeleMetrum 
-          board.  Once this data is on your computer, our postflight tools make it
-          easy to quickly get to the numbers everyone wants, like apogee altitude, 
-          max acceleration, and max velocity.  You can also generate and view a 
-          standard set of plots showing the altitude, acceleration, and
-          velocity of the rocket during flight.  And you can even export a data file 
-          useable with Google Maps and Google Earth for visualizing the flight path 
-          in two or three dimensions!
-        </para>
-        <para>
-          Our ultimate goal is to emit a set of files for each flight that can be
-          published as a web page per flight, or just viewed on your local disk with 
-          a web browser.
-        </para>
-      </section>
-      <section>
-        <title>Future Plans</title>
-        <para>
-          In the future, we intend to offer "companion boards" for the rocket that will
-          plug in to TeleMetrum to collect additional data, provide more pyro channels,
-          and so forth.  A reference design for a companion board will be documented
-          soon, and will be compatible with open source Arduino programming tools.
-        </para>
-        <para>
-          We are also working on the design of a hand-held ground terminal that will
-          allow monitoring the rocket's status, collecting data during flight, and
-          logging data after flight without the need for a notebook computer on the
-          flight line.  Particularly since it is so difficult to read most notebook
-          screens in direct sunlight, we think this will be a great thing to have.
-        </para>
-        <para>
-          Because all of our work is open, both the hardware designs and the software,
-          if you have some great idea for an addition to the current Altus Metrum family,
-          feel free to dive in and help!  Or let us know what you'd like to see that 
-          we aren't already working on, and maybe we'll get excited about it too... 
-        </para>
-      </section>
-    </section>
-  </chapter>
-</book>
-