TeleGPS Owner’s Manual

An Owner's Manual for the TeleGPS recording GPS tracker

Bdale Garbee

Keith Packard

This document is released under the terms of the Creative Commons ShareAlike 3.0 license.

Revision History


Thanks to Anthony (AJ) Towns for major contributions including the TeleGPS graphing and site map code and associated documentation. Free software means that our customers and friends can become our collaborators, and we certainly appreciate this level of contribution!

Have fun using these products, and we hope to meet all of you out on the rocket flight line somewhere.

Bdale Garbee, KB0G
NAR #87103, TRA #12201

Keith Packard, KD7SQG
NAR #88757, TRA #12200

Table of Contents

1. TeleGPS Quick Start Guide
2. Using TeleGPS Hardware
2.1. Hooking Up Lithium Polymer Batteries
2.2. On-board Data Recording
2.3. Installation
3. TeleGPS Application
3.1. Telemetry Monitoring
3.1.1. Map
3.1.2. Location
3.1.3. Status
3.1.4. Table
3.2. TeleGPS Menus
3.2.1. New Window
3.3. Graph Data
3.3.1. Data Graph
3.3.2. Graph Configuration
3.3.3. Statistics
3.3.4. Map
3.4. Export Data
3.4.1. Comma Separated Value Format
3.4.2. Keyhole Markup Language (for Google Earth)
3.5. Load Maps
3.6. Preferences
3.6.1. Voice Settings
3.6.2. Log Directory
3.6.3. Callsign
3.6.4. Imperial Units
3.6.5. Serial Debug
3.6.6. Font size
3.6.7. Look & feel
3.6.8. Menu position
3.6.9. Map Cache Size
3.6.10. Manage Frequencies
3.7. Close
3.8. Exit
3.9. Connect Device
3.10. Disconnect
3.11. Scan Channels
3.12. Download Data
3.13. Configure Device
3.13.1. Frequency
3.13.2. RF Calibration
3.13.3. Telemetry/RDF/APRS Enable
3.13.4. Telemetry baud rate
3.13.5. APRS Interval
3.13.6. APRS SSID
3.13.7. APRS Format
3.13.8. Callsign
3.13.9. Logging Trigger Motion
3.13.10. Position Reporting Interval
3.14. Flash Device
A. TeleGPS System Operation
A.1. GFSK Telemetry
A.3. Configurable Parameters
B. Handling Precautions
C. Technical Information
C.1. GPS Receiver
C.2. 70cm Transmitter
C.3. Micro-controller
C.4. Lithium Polymer Battery
C.5. Mechanical Considerations
C.6. On-board data storage
D. Updating Device Firmware
D.1. Updating TeleGPS Firmware
E. Release Notes
E.1. Release Notes for Version 1.6.3
E.1.1. AltOS
E.1.2. AltosUI and TeleGPS Applications
E.1.3. AltosDroid
E.1.4. Documentation
E.2. Release Notes for Version 1.6.2
E.2.1. AltOS
E.2.2. AltosUI and TeleGPS Applications
E.2.3. Documentation
E.3. Release Notes for Version 1.6.1
E.3.1. AltOS
E.3.2. AltosUI and TeleGPS Applications
E.3.3. AltosDroid
E.4. Release Notes for Version 1.6
E.4.1. AltOS
E.4.2. AltosUI and TeleGPS Applications
E.5. Release Notes for Version 1.5
E.5.1. AltOS
E.5.2. AltosUI and TeleGPS Applications
E.6. Release Notes for Version 1.4.2
E.6.1. AltosUI and TeleGPS Applications
E.7. Release Notes for Version 1.4.1
E.7.1. AltosUI and TeleGPS Applications:
E.8. Release Notes for Version 1.4
E.8.1. AltOS
E.8.2. AltosUI Application
E.8.3. TeleGPS Application
E.8.4. Documentation

List of Figures

3.1. TeleGPS Map View
3.2. TeleGPS Location View
3.3. TeleGPS Status View
3.4. TeleGPS Information Table
3.5. TeleGPS Graph
3.6. TeleGPS Graph Configuration
3.7. TeleGPS Statistics
3.8. TeleGPS Map
3.9. Load Maps Window
3.10. TeleGPS Preferences Window
3.11. Device Selection Dialog
3.12. Radio Scanning Dialog
3.13. TeleGPS Configuration Dialog

List of Tables

A.1. Altus Metrum APRS Comments

Chapter 1. TeleGPS Quick Start Guide

TeleGPS is designed to be easy to use. Requiring no external components, flying takes just a few steps.

  1. First, download and install the software from This will make sure that you have the right device drivers installed.
  2. Next, plug in the battery and USB cable and connect TeleGPS to your computer. This will charge the battery and allow you to configure the device.
  3. Start the TeleGPS application and set the callsign and frequency on your TeleGPS device; refer to Section 3.13, “Configure Device” for instructions.
  4. Unplug TeleGPS when the battery charger light goes green. This will enable the radio and logging portions of the TeleGPS firmware.
  5. Connect TeleDongle to your computer and start TeleGPS or start AltosDroid on your android device and connect to TeleBT. Set the frequency to match the TeleGPS and you should be receiving telemetry.

Chapter 2. Using TeleGPS Hardware

2.1. Hooking Up Lithium Polymer Batteries

TeleGPS has a two pin JST PH series connector to connect up a single-cell Lithium Polymer cell (3.7V nominal). You can purchase matching batteries from the Altus Metrum store, or other vendors, or you can make your own. Pin 1 of the connector is positive, pin 2 is negative. Spark Fun sells a cable with the connector attached, which they call a JST Jumper 2 Wire Assembly


Many RC vendors also sell lithium polymer batteries with this same connector. All that we have found use the opposite polarity, and if you use them that way, you will damage or destroy TeleGPS.

2.2. On-board Data Recording

TeleGPS logs GPS data at a user-configurable rate. Data are logged to a 2MB on-board flash memory part, which can be partitioned into several equal-sized blocks, one for each flight. 64kB of this storage are reserved to hold configuration data, leaving 1984kB for flight data.

The on-board flash is partitioned into separate flight logs, each of a fixed maximum size. Increase the maximum size of each log and you reduce the number of flights that can be stored. Decrease the size and you can store more flights.

To compute the amount of space needed for a single log, you can divide the expected time (in seconds) by the sample period (by default, 1 second per sample) and then multiply the result by 32 bytes per sample. For instance, a sample period of 1 second and a flight lasting one hour will take 32 * 3600 = 115200 bytes. TeleGPS does try to reduce log space used by not recording position information when it isn’t moving, so actual space consumed may be less than this.

The default size allows for four flights of 496kB each, which provides over four hours of logging at 1 sample per second.

TeleGPS will not overwrite existing flight data, so be sure to download flight data and erase it from the onboard flash before it fills up. TeleGPS will still report telemetry even if memory is full, so the only thing you will lose is the on-board data log.

2.3. Installation

The battery connectors are a standard 2-pin JST connector and match batteries sold by Spark Fun. These batteries are single-cell Lithium Polymer batteries that nominally provide 3.7 volts. Other vendors sell similar batteries for RC aircraft using mating connectors, however the polarity for those is generally reversed from the batteries used by Altus Metrum products. In particular, the Tenergy batteries supplied for use in Featherweight flight computers are not compatible with Altus Metrum flight computers or battery chargers.


Check polarity and voltage before connecting any battery not purchased from Altus Metrum or Spark Fun.

TeleGPS uses an integrate GPS patch antenna and won’t receive GPS signals if installed inside a metal or carbon fiber compartment. Test GPS reception and telemetry transmission with the system installed and all other electronics powered up to verify signal reception and make sure there isn’t any interference from other systems.

Chapter 3. TeleGPS Application

The TeleGPS application provides a graphical user interface for interacting with the Altus Metrum product family. TeleGPS can monitor telemetry data, configure devices and many other tasks. The primary interface window is for displaying data received over the telemetry link. There are additional tasks available from the main window menu bar.

3.1. Telemetry Monitoring

This is the window brought up when you start the application. If you have a TeleDongle device connected to the computer, it will automatically be selected for telemetry monitoring

All telemetry data received are automatically recorded in suitable log files. The name of the files includes the current date and TeleGPS serial and flight numbers.

The radio frequency being monitored by the TeleDongle device is displayed at the top of the window. You can configure the frequency by clicking on the frequency box and selecting the desired frequency. The TeleGPS application remembers the last frequency selected for each TeleDongle and selects that automatically the next time you use that device.

Below the TeleDongle frequency selector, the window contains a few significant pieces of information about the altimeter providing the telemetry data stream:

  • The configured call-sign
  • The device serial number
  • The flight number. TeleGPS remembers how many times it has flown.
  • 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 -100dBm; weaker signals may not be receivable. The packet link uses error detection and correction techniques which prevent incorrect data from being reported.
  • The age of the displayed data, in seconds since the last successfully received telemetry packet. In normal operation this will stay in the low single digits. If the number starts counting up, then you are no longer receiving data over the radio link from the flight computer.

Finally, the largest portion of the window contains a set of tabs, each of which contain some information about the TeleGPS board. The final table tab displays many of the raw telemetry values in one place in a spreadsheet-like format.

3.1.1. Map

The Map tab shows the TeleGPS track over time on top of map data making it easy to locate the device.

Figure 3.1. TeleGPS Map View


The map’s default 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 centered while data is being received.

You can adjust the style of map and the zoom level with buttons on the right side of the map window. You can draw a line on the map by moving the mouse over the map with a button other than the left one pressed, or by pressing the left button while also holding down the shift key. The length of the line in real-world units will be shown at the start of the line.

Images are fetched automatically via the Google Maps Static API, and cached on disk for reuse. If map images cannot be downloaded, the rocket’s path will be traced on a dark gray background instead.

You can pre-load images for your favorite launch sites before you leave home; check out Section 3.5, “Load Maps”.

3.1.2. Location

The Location tab shows the raw GPS data received from TeleGPS.

Figure 3.2. TeleGPS Location View


3.1.3. Status

The Status tab shows data relative to the location of TeleGPS when the application first received telemetry from it.

Figure 3.3. TeleGPS Status View


3.1.4. Table

The Table tab shows detailed information about the GPS receiver

Figure 3.4. TeleGPS Information Table


3.2. TeleGPS Menus

TeleGPS has three or four menus at the top of the window:

New Window, Graph Data, Export Data, Load Maps, Preferences, Close and Exit
Connect Device, Disconnect and Scan Channels
Download Data, Configure Device and Flash Device
This shows the current monitoring frequency with a drop-down menu listing other configured frequencies. You can change the set of frequencies shown here from the Preferences dialog. This menu is only shown when the TeleGPS application is connected to a TeleDongle or TeleBT device.

3.2.1. New Window

This creates another telemetry monitoring window, in case you have multiple TeleDongle devices connected to the computer.

3.3. Graph Data

The Graph tab shows a plot of the the GPS data collected. The X axis is time in seconds; there are a variety of Y axes available for different kinds of data. This window also allows you to see some statistics computed from the data, and an overall map of the entire data record.

3.3.1. Data Graph

Figure 3.5. TeleGPS Graph


3.3.2. Graph Configuration

Figure 3.6. TeleGPS Graph Configuration


This selects which graph elements to show, and, at the bottom, lets you switch between metric and imperial units

3.3.3. Statistics

Figure 3.7. TeleGPS Statistics


Shows overall data computed from the flight.

3.3.4. Map

Figure 3.8. TeleGPS Map


Shows a map of the area overlaid with the GPS track. As with the telemetry monitoring window, you can select the style of map and zoom level using buttons along the side; you can scroll the map by dragging within the map pressing the left button and you can draw a line to measure distances using either the left button with the shift key, or any other button.

3.4. Export Data

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 data file, which can be either a .eeprom or .telem. The .eeprom files contain higher resolution and more continuous data, while .telem files contain receiver signal strength information. 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.

3.4.1. Comma Separated Value Format

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 TeleGPS, then there is a single header line which labels all of the fields. All of these lines start with a # character which many tools can be configured to skip over.

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.

3.4.2. Keyhole Markup Language (for Google Earth)

This is the format used by Google Earth to provide an overlay within that application. With this, you can use Google Earth to see the whole path in 3D.

3.5. Load Maps

Figure 3.9. Load Maps Window


Before heading out to a new launch site, you can use this to load satellite images in case you don’t have internet connectivity at the site.

There’s a drop-down menu of launch sites we know about; if your favorites aren’t there, please let us know the lat/lon and name of the site. The contents of this list are actually downloaded from our server at run-time, so as new sites are sent in, they’ll get automatically added to this list. If the launch site isn’t in the list, you can manually enter the lat/lon values

There are four different kinds of maps you can view; you can select which to download by selecting as many as you like from the available types:

A combination of satellite imagery and road data. This is the default view.
Just the satellite imagery without any annotation.
Roads, political boundaries and a few geographic features.
Contour intervals and shading that show hills and valleys.

You can specify the range of zoom levels to download; smaller numbers show more area with less resolution. The default level, 0, shows about 3m/pixel. One zoom level change doubles or halves that number. Larger zoom levels show more detail, smaller zoom levels less.

The Map Radius value sets how large an area around the center point to download. Select a value large enough to cover any plausible flight from that site. Be aware that loading a large area with a high maximum zoom level can attempt to download a lot of data. Loading hybrid maps with a 10km radius at a minimum zoom of -2 and a maximum zoom of 2 consumes about 120MB of space. Terrain and road maps consume about 1/10 as much space as satellite or hybrid maps.

Clicking the Load Map button will fetch images from Google Maps; note that Google limits how many images you can fetch at once, so if you load more than one launch site, you may get some gray areas in the map which indicate that Google is tired of sending data to you. Try again later.

3.6. Preferences

Figure 3.10. TeleGPS Preferences Window


3.6.1. Voice Settings

TeleGPS provides voice announcements 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.

Turns all voice announcements on and off
Test Voice
Plays a short message allowing you to verify that the audio system is working and the volume settings are reasonable

3.6.2. Log Directory

TeleGPS logs all telemetry data and saves all flash data to this directory. This directory is also used as the staring point when selecting data files for display or export.

Click on the directory name to bring up a directory choosing dialog, select a new directory and click Select Directory to change where TeleGPS reads and writes data files.

3.6.3. Callsign

This value is transmitted in each command packet sent from TeleDongle and received from an altimeter. It is not used in telemetry mode, as the callsign configured in the altimeter board is included in all telemetry packets. Configure this with the TeleGPS operators call sign as needed to comply with your local radio regulations.

Note that to successfully command a flight computer over the radio (to configure the altimeter, monitor idle, or fire pyro charges), the callsign configured here must exactly match the callsign configured in the flight computer. This matching is case sensitive.

3.6.4. Imperial Units

This switches between metric units (meters) and imperial units (feet and miles). This affects the display of values use during flight monitoring, configuration, data graphing and all of the voice announcements. It does not change the units used when exporting to CSV files, those are always produced in metric units.

3.6.5. Serial Debug

This causes all communication with a connected device to be dumped to the console from which TeleGPS was started. If you’ve started it from an icon or menu entry, the output will simply be discarded. This mode can be useful to debug various serial communication issues.

3.6.6. Font size

Selects the set of fonts used in the flight monitor window. Choose between the small, medium and large sets.

3.6.7. Look & feel

Switches between the available Java user interface appearances. The default selection is supposed to match the native window system appearance for the target platform.

3.6.8. Menu position

Selects the initial position for the main TeleGPS window that includes all of the command buttons.

3.6.9. Map Cache Size

Sets the number of map tiles kept in memory while the application is running. More tiles consume more memory, but will make panning around the map faster.

3.6.10. Manage Frequencies

This brings up a dialog where you can configure the set of frequencies shown in the various frequency menus. You can add as many as you like, or even reconfigure the default set. Changing this list does not affect the frequency settings of any devices, it only changes the set of frequencies shown in the menus.

3.7. Close

This closes the current window, leaving any other windows open and the application running.

3.8. Exit

This closes all TeleGPS windows and terminates the application.

3.9. Connect Device

Selecting this item brings up a dialog box listing all of the connected TeleDongle devices. When you choose one of these, AltosUI will display telemetry data as received by the selected TeleDongle device.

Figure 3.11. Device Selection Dialog


3.10. Disconnect

Disconnects the currently connected TeleDongle or TeleBT

3.11. Scan Channels

Figure 3.12. Radio Scanning Dialog


Scans the configured set of frequencies looking for telemetry signals. A list of all of the discovered signals is show; selecting one of those and clicking on Monitor will select that frequency in the associated TeleGPS application window.

3.12. Download Data

TeleGPS records data to its internal flash memory. On-board data is recorded at the same rate as telemetry but is not subject to radio drop-outs. As such, it generally provides a more complete and precise record. The Download Data menu entry allows you to read the flash memory and write it to disk.

Select the Download Data menu entry to bring up a list of connected TeleGPS devices. After the device has been selected, a dialog showing the data stored in the device will be shown allowing you to select which entries to download and which to delete. You must erase flights in order for the space they consume to be reused by another track. This prevents accidentally losing data if you neglect to download data before starting TeleGPS again. Note that if there is no more space available in the device, then no data will be recorded.

The file name for each data log is computed automatically from the recorded date, altimeter serial number and flight number information.

3.13. Configure Device

Figure 3.13. TeleGPS Configuration Dialog


Select this button and then select any connected TeleGPS device from the list provided.

The first few lines of the dialog provide information about the connected device, including the product name, software version and hardware serial number. Below that are the individual configuration entries.

At the bottom of the dialog, there are four buttons:

This writes any changes to the configuration parameter block in flash memory. If you don’t press this button, any changes you make will be lost.
This resets the dialog to the most recently saved values, erasing any changes you have made.
This reboots the device. Use this to switch from idle to pad mode by rebooting once the rocket is oriented for flight, or to confirm changes you think you saved are really saved.
This closes the dialog. Any unsaved changes will be lost.

The rest of the dialog contains the parameters to be configured.

3.13.1. Frequency

This configures which of the frequencies to use for both telemetry and packet command mode. Note that if you set this value via packet command mode, the TeleDongle frequency will also be automatically reconfigured to match so that communication will continue afterwards.

3.13.2. RF Calibration

The radios in every Altus Metrum device are calibrated at the factory to ensure that they transmit and receive on the specified frequency. If you need to you can adjust the calibration by changing this value. Do not do this without understanding what the value means, read the appendix on calibration and/or the source code for more information. To change a TeleDongle’s calibration, you must reprogram the unit completely.

3.13.3. Telemetry/RDF/APRS Enable

Enables the radio for transmission during flight. When disabled, the radio will not transmit anything during flight at all.

3.13.4. Telemetry baud rate

This sets the modulation bit rate for data transmission for both telemetry and packet link mode. Lower bit rates will increase range while reducing the amount of data that can be sent and increasing battery consumption. All telemetry is done using a rate 1/2 constraint 4 convolution code, so the actual data transmission rate is 1/2 of the modulation bit rate specified here.

3.13.5. APRS Interval

How often to transmit GPS information via APRS (in seconds). When set to zero, APRS transmission is disabled. Note that a single APRS packet takes nearly a full second to transmit, so enabling this option will prevent sending any other telemetry during that time.

3.13.6. APRS SSID

Which SSID to report in APRS packets. By default, this is set to the last digit of the serial number, but can be configured to any value from 0 to 9.

3.13.7. APRS Format

Whether to send APRS data in Compressed or Uncompressed format. Compressed format is smaller and more precise. Uncompressed format is older, but may work better with your device. The Kenwood TH-D72 only displays altitude information with Uncompressed format, while the Yaesu FT1D only displays altitude with Compressed format. Test before you fly to see which to use.

3.13.8. Callsign

This sets the call sign included in each telemetry packet. Set this as needed to conform to your local radio regulations.

3.13.9. Logging Trigger Motion

This sets the amount of motion that TeleGPS needs to see before logging the new position. Motions smaller than this are skipped, which saves storage space.

3.13.10. Position Reporting Interval

The interval between TeleGPS position reports, both over the air and in the log. Increase this to reduce the frequency of radio transmissions and the length of time available in the log.

3.14. Flash Device

This reprograms TeleGPS devices with new firmware. Please read the directions for flashing devices in Appendix D, Updating Device Firmware.

Appendix A. TeleGPS System Operation

A.1. GFSK Telemetry

TeleGPS’s native telemetry system doesn’t use a normal packet radio mode like APRS because it’s not very efficient. The GFSK modulation we use is FSK with the base-band pulses passed through a Gaussian filter before they go into the modulator to limit the transmitted bandwidth. When combined with forward error correction and interleaving, this allows us to have a very robust 19.2 kilobit data link with only 10-40 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 great reception, and calculations suggest we should be good to well over 40k feet AGL with a 5-element yagi on the ground with our 10mW units and over 100k feet AGL with the 40mW devices.


TeleGPS can send APRS if desired, and the interval between APRS packets can be configured. As each APRS packet takes a full second to transmit, we recommend an interval of at least 5 seconds to avoid consuming too much battery power or radio channel bandwidth. You can configure the APRS interval using TeleGPS; that process is described in Section 3.13, “Configure Device”.

AltOS supports both compressed and uncompressed APRS position report data formats. The compressed format provides for higher position precision and shorter packets than the uncompressed APRS format. We’ve found some older APRS receivers that do not handle the compressed format. The Kenwood TH-72A requires the use of uncompressed format to display altitude information correctly. The Yaesu FT1D requires the use of compressed format to display altitude information.

APRS packets include an SSID (Secondary Station Identifier) field that allows one operator to have multiple transmitters. AltOS allows you to set this to a single digit from 0 to 9, allowing you to fly multiple transmitters at the same time while keeping the identify of each one separate in the receiver. By default, the SSID is set to the last digit of the device serial number.

The APRS packet format includes a comment field that can have arbitrary text in it. AltOS uses this to send status information as shown in the following table.

Table A.1. Altus Metrum APRS Comments

Field Example Description



GPS Status U for unlocked, L for locked



Number of Satellites in View



Altimeter Battery Voltage



Device Serial Number

Here’s an example of an APRS comment showing GPS lock with 6 satellites in view and a primary battery at 4.0V from device 1876.

L6 B4.0 1876

Make sure your primary battery is above 3.8V and GPS is locked with at least 5 or 6 satellites in view before flying. If GPS is switching between L and U regularly, then it doesn’t have a good lock and you should wait until it becomes stable.

If the GPS receiver loses lock, the APRS data transmitted will contain the last position for which GPS lock was available. You can tell that this has happened by noticing that the GPS status character switches from L to U. Before GPS has locked, APRS will transmit zero for latitude, longitude and altitude.

A.3. Configurable Parameters

Configuring TeleGPS is very simple; the few configurable parameters can all be set using the TeleGPS application over USB. Check out Section 3.13, “Configure Device”.

Appendix B. Handling Precautions

All Altus Metrum products are sophisticated electronic devices. When handled gently and properly installed in an air-frame, they will deliver impressive results. However, as with all electronic devices, there are some precautions you must take.


The Lithium Polymer rechargeable batteries 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 air-frame. We often wrap them in suitable scraps of closed-cell packing foam before strapping them down, for example.

The barometric sensors used on all of our flight computers are sensitive to sunlight. In normal mounting situations, the baro sensor 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 when designing an installation in an air-frame with a see-through plastic payload bay. It is particularly important to consider this with TeleMini v1.0, both because the baro sensor is on the “top” of the board, and because many model rockets with payload bays use clear plastic for the payload bay! Replacing these with an opaque cardboard tube, painting them, or wrapping them with a layer of masking tape are all reasonable approaches to keep the sensor out of direct sunlight.

The 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, and also by having a suitable static vent to outside air.

As with all other rocketry electronics, Altus Metrum altimeters must be protected from exposure to corrosive motor exhaust and ejection charge gasses.

Appendix C. Technical Information

C.1. GPS Receiver

TeleGPS uses the u-Blox Max-7Q GPS receiver.

C.2. 70cm Transmitter

TeleGPS uses a TI CC115L transmitter. This radio produces 10mW of RF output.

C.3. Micro-controller

TeleGPS uses an NXP LPC11U14 micro-controller. This tiny CPU contains 32kB of flash for the application and 4kB of RAM for temporary data storage.

C.4. Lithium Polymer Battery

Shipping restrictions may prevent us from including a battery battery with TeleGPS.

C.5. Mechanical Considerations

TeleGPS is designed to be rugged enough for typical rocketry applications. The 4 mounting holes on the board are sized for use with 4-40 or M3 screws.

C.6. On-board data storage

TeleGPS has 2MB of non-volatile storage, separate from the code storage memory. The TeleGPS firmware uses this to log information during flight.

Appendix D. Updating Device Firmware

TeleGPS is programmed directly over its USB connectors.

You may wish to begin by ensuring you have current firmware images. These are distributed as part of the TeleGPS software bundle that also includes the TeleGPS 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

D.1. Updating TeleGPS Firmware

  1. Attach a battery and power switch to the target device. Power up the device.
  2. Using a Micro USB cable, connect the target device to your computer’s USB socket.
  3. Run TeleGPS, and select Flash Device from the Device menu.
  4. Select the target device in the Device Selection dialog.
  5. Select the image you want to flash to the device, which should have a name in the form <product>-v<product-version>-<software-version>.ihx, such as TeleGPS-v1.0-1.4.0.ihx.
  6. 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.
  7. Hit the OK button and the software should proceed to flash the device with new firmware, showing a progress bar.
  8. Verify that the device is working by using the 'Configure Device item to check over the configuration.

Appendix E. Release Notes

E.1. Release Notes for Version 1.6.3

Version 1.6.3 adds idle mode to AltosDroid and has bug fixes for our host software on desktops, laptops an android devices along with BlueTooth support for Windows.

E.1.1. AltOS

AltOS fixes:

  • Fix hardware flow control on TeleBT v3.0. RTS/CTS is wired backwards on this board, switch from using the hardware to driving these pins with software.

E.1.2. AltosUI and TeleGPS Applications

AltosUI and TeleGPS New Features:

  • Add BlueTooth support for Windows operating system. This supports connections to TeleBT over BlueTooth rather than just USB.

AltosUI and TeleGPS Fixes:

  • Change Java detection and install on Windows. Detection is now done by looking for the javaw.exe program, and installation by opening a browser on the web site.
  • Delay polling while the Fire Igniters is visible to allow for TeleMega to report back complete status over the radio.
  • Disallow changing RF calibration numbers in the configuration UI. There’s no good reason to change this from the field, and recovering is really hard if you haven’t written down the right number.
  • Fix USB device discovery on Mac OS X El Capitan. This makes the connected Altus Metrum USB devices appear again.
  • Fix acceleration data presented in MonitorIdle mode for TeleMetrum v2.0 flight computers.

E.1.3. AltosDroid

AltosDroid new features:

  • Monitor Idle mode. Check state of flight computer while in idle mode over the radio link
  • Fire Igniters. Remotely fire ignires for recovery system ground tests.
  • Remote reboot. Cause the flight computer to reboot over the radio link. This provides a method for switching the flight computer from idle to flight mode without needing to reach the power switch.
  • Configurable frequency menu. Change the set of available frequencies and provide more descriptive names.

AltosDroid bug fixes:

  • Don’t set target location if GPS hasn’t locked yet.
  • Fix saving target states so they can be reloaded when the application restarts. When the application is shut down and restarted, all previous target state information will be restored (including GPS position if available).
  • Fix crash on some Android devices for offline maps when changing the map scale or location.
  • Don’t require USB OTG support. This kept the latest AltosDroid from being offered on devices without USB device support, although it can work without that just fine using BlueTooth.
  • Don’t require bluetooth to be enabled. This allows the application to operate with USB devices or just show old data without turning on the bluetooth radio.
  • Recover old tracker positions when restarting application. This finally allows you to safely stop and restart the application without losing the last known location of any tracker.

E.1.4. Documentation

  • Document TeleMega and EasyMega additional pyro channel continuity audio alert pattern.

E.2. Release Notes for Version 1.6.2

Version 1.6.2 includes support for our updated TeleMega v2.0 product and bug fixes in in the flight software for all our boards and ground station interfaces.

E.2.1. AltOS

AltOS New Features:

  • Add support for TeleMega v2.0 boards.
  • Add PWM servo driver. There’s no higher level code using this yet, but the driver allows testing of the TeleMega v2.0 servo output connector.

AltOS Fixes:

  • Slow down telemetry packets to allow receiver to keep up.

E.2.2. AltosUI and TeleGPS Applications

AltosUI and TeleGPS Fixes:

  • Fix post-flight orientation computation when processing TeleMega and EasyMega eeprom data files.
  • Capture complete eeprom data even when there are invalid entries in the data. This keeps reading eeprom contents and writing the associated .eeprom file when an error is detected.

E.2.3. Documentation

We spent a bunch of time trying to improve our documentation

  • HTML versions now have a table of contents on the left side.
  • EasyMini now has its own shorter manual.
  • Provide links between sections in each document.
  • Lots of minor rewriting and restructuring to avoid duplication of information

E.3. Release Notes for Version 1.6.1

Version 1.6.1 includes support for our updated TeleBT v3.0 product and bug fixes in in the flight software for all our boards and ground station interfaces.

E.3.1. AltOS

AltOS New Features:

  • Add support for TeleBT v3.0 boards.
  • Add support for uncompressed APRS data, providing support for older APRS receivers. Uncompressed APRS data is less precise, takes more bandwidth and doesn’t have integrated altitude data.

AltOS Fixes:

  • Make TeleDongle and TeleBT more tolerant of data rate variations from transmitting devices.

E.3.2. AltosUI and TeleGPS Applications

AltosUI and TeleGPS New Features:

  • Add map to Monitor Idle display. It’s nice to be able to verify that maps are working, instead of needing to use Monitor Flight.

AltosUI and TeleGPS Fixes:

  • Fix frequency configuration to round values instead of truncate them, avoiding a common 1kHz error in the setting.
  • Turn the Windows stub into a more useful program that can launch the application with parameters so that file manager icons work more reliably.
  • Force KML export to use a C locale so that numbers are formatted with . instead of , for a decimal separator in non-US locales.
  • Preload map tiles based on distance rather than number of tiles; this means you get the same resolution covering the entire area, rather than having high resolution near the center and low resolution further away.
  • Allow configuration of frequency and callsign in Monitor Idle mode.
  • Fix layout weirdness when resizing windows on Windows. Windows shouldn’t have giant blank spaces around the useful content anymore.
  • Fix layout weirdness when resizing windows on Windows. Windows shouldn’t have giant blank spaces around the useful content anymore.
  • Use a longer filter for descent speed values. This should provide something more useful on the display, although it will take longer to respond to changes now.
  • Make Replay Flight run in realtime again. It had been set to run at 10x speed by mistake.

E.3.3. AltosDroid

AltosDroid New Features:

  • Add offline map support using mapping code from AltosUI.
  • Support TeleDongle (and TeleBT via USB) on devices supporting USB On-The-Go.
  • Display additional TeleMega pyro channel status in Pad tab.
  • Switch between metric and imperial units.
  • Monitor TeleBT battery voltage.
  • Track multiple devices at the same time, selecting between them with a menu or using the map.
  • Add hybrid, satellite and terrain map types.

AltosDroid Fixes:

  • Use standard Android display conventions so that a menu button is available in the application title bar.
  • Adjust layout to work on large and small screens; shrinking the go/no-go lights in smaller environments to try and make everything visible.
  • Make voice announcements depend on current tab.
  • Compute adjustment to current travel direction while in motion towards rocket.

E.4. Release Notes for Version 1.6

Version 1.6 includes support for our updated TeleDongle v3.0 product and bug fixes in in the flight software for all our boards and ground station interfaces.

E.4.1. AltOS

AltOS New Features

  • Add support for TeleDongle v3.0 boards.

AltOS Fixes

  • Don’t beep out the continuity twice by accident in idle mode. If the battery voltage report takes longer than the initialiation sequence, the igniter continuity would get reported twice.
  • Record all 32 bits of gyro calibration data in TeleMega and EasyMega log files. This fixes computation of the gyro rates in AltosUI.
  • Change TeleDongle LED usage. Green LED flashes when valid packet is received. Red LED flashes when invalid packet is received.
  • Replace LPC11U14 SPI driver with non-interrupt version. The interrupt code would occasionally wedge on long transfers if interrupts were blocked for too long. This affects all released TeleGPS products; if you have a TeleGPS device, you’ll want to reflash the firmware.

E.4.2. AltosUI and TeleGPS Applications

AltosUI and TeleGPS New Features

  • Compute tilt angle from TeleMega and EasyMega log files. This duplicates the quaternion-based angle tracking code from the flight firmware inside the ground station software so that post-flight analysis can include evaluation of the tilt angle.
  • Shows the tool button window when starting with a data file specified. This means that opening a data file from the file manager will now bring up the main window to let you operate the whole application.

AltosUI Fixes

  • Show the Connecting dialog when using Monitor Idle. Lets you cancel the Monitor Idle startup when connecting over the radio link.
  • Make Monitor Idle work for TeleGPS devices when connected over USB. It’s nice for testing without needing to broadcast over the radio.
  • Use different Windows API to discover USB devices. This works better on my Windows 7 box, and will be used if the older API fails to provide the necessary information.
  • Look in more places in the registry to try and identify the installed Java version on Windows. If you install the default 32-bit version of Windows on a 64-bit OS, the Java registry information is hiding \SOFTWARE\Wow6432Node for some reason.
  • Fix file association on Windows by searching for the javaw.exe program instead of assuming it is in %SYSTEMROOT%. This makes double-clicking on Altus Metrum data files in the file manager work correctly.
  • When replaying a file, put done in the Age field when we reach the end of the file, instead of continuing to count forever.
  • In the Scan Channels code, wait for five seconds if we see any packet. This is needed because AltOS now sends the callsign, serial number and flight number only once every five seconds these days.
  • In the Scan Channels code, reset pending flight state information each time we change channels. This avoids having flight computers appear on multiple frequencies by accident.

E.5. Release Notes for Version 1.5

Version 1.5 is a major release. It includes support for our new EasyMega product, new features and bug fixes in in the flight software for all our boards and the AltosUI ground station

E.5.1. AltOS

AltOS New Features

  • Add support for EasyMega boards.
  • Make the APRS SSID be configurable. This lets you track different rockets on the same receiver without getting things mixed up.
  • Report extra pyro channel continuity state on EasyMega and TeleMega via the beeper. This lets you easily verify flight readiness on these boards after powering up the electronics on the rail.
  • Add lower telemetry data rates (2400 and 9600 bps) to increase telemetry radio range. This reduces the amount of data received as well as increasing battery consumption in the transmitter.
  • Change TeleGPS to have only a single log, and append new data to it rather than using seperate per-flight logs. This avoids accidentally filling up log storage by turning TeleGPS on/off several times.

AltOS Fixes

  • Increase the maximum range for altitude values from +/-32767m to +/-2147483647m, allowing the flight computers to function correctly above the 32km level.
  • Continuously test pyro firing conditions during delay stage, inhibiting the pyro channel if the test fails. This prevents firing pyro charges where the conditions were good before the delay, but become bad before the delay expires.
  • Allow negative numbers in pyro configuration values. This lets you specify things like descending speed or deceleration.

E.5.2. AltosUI and TeleGPS Applications

AltosUI and TeleGPS New Features

  • Support telemetry baud rate selection. Adds menus to the flight monitoring and configuration for baud rate selection.
  • Support APRS SSID configuration.
  • Integrate with file managers. This provides icons for all of our file types and associates our application with the files so that using a file manager to open a AltOS data file results in launching our application.

AltosUI Fixes

  • Make the Graph button on the landed tab work again.
  • Make tests for Java on Windows a bit smarter, and also provide the user with the option to skip installing Java for cases where we just can’t figure out what version is installed.

E.6. Release Notes for Version 1.4.2

Version 1.4.2 is a minor release. It fixes Java-related install issues on Windows

E.6.1. AltosUI and TeleGPS Applications

Windows Install Fixes

  • Checks for Java installation data in more registry locations.
  • Allows user to bypass Java installation in case the detection fails.

E.7. Release Notes for Version 1.4.1

Version 1.4.1 is a minor release. It fixes install issues on Windows and provides the missing TeleMetrum V2.0 firmware. There aren’t any changes to the firmware or host applications at all. All Windows users will want to upgrade to get the signed driver, but Mac and Linux users who do not need the TeleMetrum V2.0 firmware image will not need to upgrade.

E.7.1. AltosUI and TeleGPS Applications:

Windows Install Fixes

  • Provide signed Windows driver files. This should avoid any need to disable driver signature checking on Windows 7 or 8.
  • Fix Java version detection and download. Previously, the installer would only look for Java 6 or 7 and insist on downloading its own Java bits if there was something else installed. Furthermore, the 64-bit Java link provided didn’t work for anyone other than Keith, making it impossible to install AltOS on any machine with Java SE 8 installed.

Other Fixes

  • Include 1.4 firmware for TeleMetrum V2.0. None of the installers shipped this file. Now it’s included in the AltOS packages for Linux, Mac and Windows.
  • Include Google Application Key for map downloading. The 1.4 release didn’t have this key in the released version of the software, making map downloading fail for most people.

E.8. Release Notes for Version 1.4

Version 1.4 is a major release. It includes support for our new TeleGPS product, new features and bug fixes in in the flight software for all our boards and the AltosUI ground station

E.8.1. AltOS

AltOS new features:

  • Add support for TeleGPS boards.
  • Make the beeper tone configurable, making it possible to distinguish between two Altus Metrum products in the same ebay.
  • Make the firing time for extra pyro channels configurable, allowing longer (or shorter) than the default 50ms. Only relevant for TeleMega at this time.

AltOS fixes:

  • Replace the dit dit dit tones at startup with the current battery voltage, measured in tenths of a volt. This lets you check the battery voltage without needing telemetry, which is especially useful on EasyMini.
  • Change state beeping to "Farnsworth spacing", which means they’re quite a bit faster than before, and so they take less time to send.
  • Fix bug preventing the selection of the Flight State After mode in pyro configuration.
  • Fix bug where erasing flights would reset the flight number to 2 on TeleMega and TeleMetrum v2.
  • Fix u-Blox GPS driver to mark course and speed data as being present.

E.8.2. AltosUI Application

AltosUI new features:

  • Add zooming and new content types (terrain and road maps) to map view. Change map storage format from PNG to Jpeg, which saves a huge amount of disk space. You will need to re-download all of your pre-loaded map images.
  • Add a distance measuring device to the maps view. Select this by using any button other than the left one, or by pressing shift or control on the keyboard while using the left button.
  • Add new Ignitor tab to the flight monitor display for TeleMega’s extra ignitors.
  • Add additional ignitor firing marks and voltages to the graph so you can see when the ignitors fired, along with the ignitor voltages.
  • Add GPS course, ground speed and climb rate as optional graph elements.

AltosUI fixes:

  • When flashing new firmware, re-try opening the device as sometimes it takes a while for the underlying operating system to recognize that the device has rebooted in preparation for the flashing operation.
  • Hide Tilt Angle in ascent tab for devices that don’t have a gyro.
  • Increase the width of data lines in the graphs to make them easier to read.
  • Filter out speed and acceleration spikes caused by ejection charge firing when computing the maximum values. This provides a more accurate reading of those maximums.
  • Fix EasyMini voltage displays. Early EasyMini prototypes used a 3.0V regulator, and AltosUI still used that value as the basis of the computation. Production EasyMini boards have always shipped with a 3.3V regulator. Also, purple EasyMini boards sensed the battery voltage past the blocking diode, resulting in a drop of about 150mV from the true battery voltage. Compensate for that when displaying the value.
  • Display error message when trying to configure maximum flight log size while the flight computer still has flight data stored.
  • Handle TeleMetrum and TeleMini eeprom files generated with pre-1.0 firmware. Those ancient versions didn’t report the log format, so just use the product name instead.

E.8.3. TeleGPS Application

  • New application designed for use with TeleGPS boards.
  • Shares code with AltosUI, mostly just trimmed down to focus on TeleGPS-related functions.

E.8.4. Documentation

Documentation changes:

  • Re-create the drill template images; they should print correctly from Firefox at least. Ship these as individual PDF files so they’re easy to print.
  • Add a description of the Apogee Lockout setting, which prevents the apogee charge from firing for a configurable amount of time after boost.