TeleGPS Owner's Manual

A recording GPS tracker

Keith Packard

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

Revision History
Revision 1.413 June 2014
Initial release

Acknowledgements

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. Quick Start Guide
2. Handling Precautions
3. TeleGPS Hardware
1. Hooking Up Lithium Polymer Batteries
2. On-board Data Recording
3. Installation
4. System Operation
1. GFSK Telemetry
2. APRS
3. Configurable Parameters
3.1. Radio Frequency
3.2. Callsign
3.3. Telemetry/RDF/APRS Enable
3.4. APRS Interval
3.5. Maximum Flight Log
3.6. Logging Trigger Motion
3.7. Position Reporting Interval
5. TeleGPS Application
1. Telemetry Monitoring
1.1. Map
1.2. Location
1.3. Status
1.4. Table
2. TeleGPS Menus
2.1. New Window
2.2. Graph Data
2.3. Export Data
2.4. Load Maps
2.5. Preferences
2.6. Close
2.7. Exit
2.8. Connect Device
2.9. Disconnect
2.10. Scan Channels
2.11. Download Data
2.12. Configure Device
2.13. Flash Device
6. Updating Device Firmware
1. Updating TeleGPS Firmware
7. Technical Information
1. GPS Receiver
2. Micro-controller
3. Lithium Polymer Battery
4. Mechanical Considerations
5. On-board data storage

List of Tables

4.1. Altus Metrum APRS Comments

Chapter 1. Quick Start Guide

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

First, download and install the software from http://altusmetrum.org/AltOS. This will make sure that you have the right device drivers installed.

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.

Start the TeleGPS application and set the callsign and frequency on your TeleGPS device; refer to the Configure TeleGPS section in the TeleGPS Application chapter for instructions.

Unplug TeleGPS when the battery charger light goes green. This will enable the radio and logging portions of the TeleGPS firmware.

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. 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 batteries have an extraordinary power density. This is great because we can fly with much less battery mass... but if they are punctured or their contacts are allowed to short, they can and will release their energy very rapidly! Thus we recommend that you take some care when handling TeleGPS to keep conductive material from coming in contact with the exposed metal elements.

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

Chapter 3. TeleGPS Hardware

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. 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.

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 4. System Operation

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.

2. APRS

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 AltosUI; that process is described in the Configure Altimeter section of the AltosUI chapter.

AltOS uses the APRS compressed position report data format, which provides for higher position precision and shorter packets than the original APRS format. It also includes altitude data, which is invaluable when tracking rockets. We haven't found a receiver which doesn't handle compressed positions, but it's just possible that you have one, so if you have an older device that can receive the raw packets but isn't displaying position information, it's possible that this is the cause.

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

Table 4.1. Altus Metrum APRS Comments

FieldExampleDescription
1LGPS Status U for unlocked, L for locked
26Number of Satellites in View
3B4.0Battery Voltage

Here's an example of an APRS comment showing GPS lock with 6 satellites in view and a battery at 4.0V.

	  L6 B4.0
	

Make sure your primary battery is above 3.8V and GPS is locked with at least 5 or 6 satellites in view before starting. 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.

3. Configurable Parameters

Configuring TeleGPS is very simple; the few configurable parameters can all be set using the TeleGPS application over USB. Read the Configure TeleGPS section in the TeleGPS Software chapter below for more information.

3.1. Radio Frequency

Altus Metrum boards support radio frequencies in the 70cm band. By default, the configuration interface provides a list of 10 “standard” frequencies in 100kHz channels starting at 434.550MHz. However, the firmware supports use of any 50kHz multiple within the 70cm band. At any given launch, we highly recommend coordinating when and by whom each frequency will be used to avoid interference. And of course, both TeleGPS and the receiver must be configured to the same frequency to successfully communicate with each other.

3.2. Callsign

This sets the callsign used for telemetry and APRS to identify the device.

3.3. Telemetry/RDF/APRS Enable

You can completely disable the radio, if necessary, leaving TeleGPS only logging data to internal memory.

3.4. APRS Interval

This selects how often APRS packets are transmitted. Set this to zero to disable APRS without also disabling the regular telemetry and RDF transmissions. As APRS takes a full second to transmit a single position report, we recommend sending packets no more than once every 5 seconds.

3.5. Maximum Flight Log

Changing this value will set the maximum amount of flight log storage that an individual flight will use. The available storage is divided into as many flights of the specified size as can fit in the available space. You can download and erase individual flight logs. If you fill up the available storage, future flights will not get logged until you erase some of the stored ones.

3.6. Logging Trigger Motion

If TeleGPS moves less than this distance over a long period of time, it will not log that location, saving storage space.

3.7. Position Reporting Interval

This sets how often TeleGPS reports position information via telemetry and to the on-board log. Reducing this value will save power and logging memory consumption.

Chapter 5. 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. This chapter is split into sections, each of which documents one of the tasks provided from the top-level toolbar.

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.

1.1. Map

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

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 the 'Preload Maps' section below.

1.2. Location

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

1.3. Status

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

1.4. Table

The Table tab shows detailed information about the GPS receiver

2. TeleGPS Menus

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

File

New Window, Graph Data, Export Data, Load Maps, Preferences, Close and Exit

Monitor

Connect Device, Disconnect and Scan Channels

Device

Download Data, Configure Device and Flash Device

Frequency

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.

2.1. New Window

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

2.2. Graph Data

This brings up a file dialog to load a saved log, either a .telem file of recorded telemetry or .eeprom of saved data from on-board memory. It looks a bit like the flight monitoring window, using a selection of tabs to show different views of the saved data.

2.2.1. Graph

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.

2.2.2. Configure Graph

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

2.2.3. Statistics

Shows overall data computed from the flight.

2.2.4. 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.

2.3. 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.

2.3.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.

2.3.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 flight path in 3D.

2.4. Load Maps

Before using TeleGPS, you can use Load Maps to load map data in case you don't have access to the internet while receiving telemetry.

There's a drop-down menu of rocket 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:

Hybrid

A combination of satellite imagery and road data. This is the default view.

Satellite

Just the satellite imagery without any annotation.

Roadmap

Roads, political boundaries and a few geographic features.

Terrain

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.

The Tile Radius value sets how large an area around the center point to download. Each tile is 512x512 pixels, and the 'radius' value specifies how many tiles away from the center will be downloaded. Specify a radius of 0 and you get only the center tile. A radius of 1 loads a 3x3 grid, centered on the specified location.

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.

2.5. Preferences

2.5.1. Voice Settings

AltosUI 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.

Enable

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

2.5.2. Log Directory

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.

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.

2.5.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 AltosUI 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.

2.5.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.

2.5.5. Serial Debug

This causes all communication with a connected device to be dumped to the console from which AltosUI 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.

2.5.6. Font Size

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

2.5.7. Look & Feel

Adjust the style of the windows. By default, the TeleGPS application attempts to blend in with the native style.

2.5.8. 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.

2.6. Close

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

2.7. Exit

This closes all TeleGPS windows and terminates the application.

2.8. 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.

2.9. Disconnect

Disconnects the currently connected TeleDongle or TeleBT

2.10. Scan Channels

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.

2.11. 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.

2.12. Configure Device

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:

Save

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.

Reset

This resets the dialog to the most recently saved values, erasing any changes you have made.

Reboot

This reboots the device. This will restart logging for a new flight number, if any log information has been saved for the current flight.

Close

This closes the dialog. Any unsaved changes will be lost.

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

2.12.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.

2.12.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.

2.12.3. Telemetry/RDF/APRS Enable

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

2.12.4. APRS Interval

How often to transmit GPS information via APRS (in seconds). When set to zero, APRS transmission is disabled. This option is available on TeleMetrum v2 and TeleMega boards. TeleMetrum v1 boards cannot transmit APRS packets. 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.

2.12.5. Callsign

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

2.12.6. Maximum Log Size

This sets the space (in kilobytes) allocated for each data log. The available space will be divided into chunks of this size. A smaller value will allow more logs to be stored, a larger value will record data for longer times.

2.12.7. Logging Trigger Motion

If TeleGPS moves less than this distance over a long period of time, it will not log that location, saving storage space.

2.12.8. Position Reporting Interval

This sets how often TeleGPS reports position information via telemetry and to the on-board log. Reducing this value will save power and logging memory consumption.

2.13. Flash Device

This reprograms TeleGPS devices with new firmware. Please read the directions for flashing devices in the Updating Device Firmware chapter below.

Chapter 6. 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 http://www.altusmetrum.org/AltOS/.

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 Altimeter' item to check over the configuration.

Chapter 7. Technical Information

1. GPS Receiver

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

2. 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.

3. Lithium Polymer Battery

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

4. 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.

5. 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.