From 4c1206a47431c7d873228fdd7328e1b9ac93a390 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Fri, 13 Nov 2015 19:45:02 -0800 Subject: [PATCH] Break out common pieces from TeleGPS and AltusMetrum This creates shared files for portions of the TeleGPS and AltusMetrum manual to avoid duplicating text between the two. Signed-off-by: Keith Packard --- doc/Makefile | 19 +- doc/altosui.inc | 346 +------------------------- doc/altusmetrum.txt | 2 + doc/aprs-operation.inc | 85 +++++++ doc/config-device.inc | 240 ++++++++++++++++++ doc/config-ui.inc | 105 ++++++++ doc/installation.inc | 15 +- doc/load-maps.inc | 60 +++++ doc/micropeak.txt | 4 +- doc/release-notes-0.9.inc | 4 +- doc/system-operation.inc | 404 ++++--------------------------- doc/telegps-application.inc | 224 +---------------- doc/telegps-dedication.inc | 19 ++ doc/telegps-quick-start.inc | 13 +- doc/telegps-system-operation.inc | 126 +--------- doc/telegps.txt | 4 +- doc/usage.inc | 142 ++++++++++- 17 files changed, 728 insertions(+), 1084 deletions(-) create mode 100644 doc/aprs-operation.inc create mode 100644 doc/config-device.inc create mode 100644 doc/config-ui.inc create mode 100644 doc/load-maps.inc create mode 100644 doc/telegps-dedication.inc diff --git a/doc/Makefile b/doc/Makefile index 89a302ff..f8fdb5e8 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -90,6 +90,13 @@ IMAGES=\ TXT_FILES=altusmetrum.txt +COMMON_INC_FILES=\ + config-device.inc \ + config-ui.inc \ + load-maps.inc \ + aprs-operation.inc \ + handling.inc + INC_FILES=\ dedication.inc \ intro.inc \ @@ -109,23 +116,23 @@ INC_FILES=\ system-operation.inc \ pyro-channels.inc \ flight-data-recording.inc \ - handling.inc \ specs.inc \ + $(COMMON_INC_FILES) \ release-notes.inc \ $(RELNOTES_INC) RAW_FILES=$(TXT_FILES:.txt=.raw) $(INC_FILES:.inc=.raw) TELEGPS_INC_FILES=\ - dedication.inc \ + telegps-dedication.inc \ telegps-quick-start.inc \ telegps-using.inc \ telegps-system-operation.inc \ telegps-application.inc \ - handling.inc \ telegps-specs.inc \ telegps-updating-firmware.inc \ - telegps-release-notes.inc + telegps-release-notes.inc \ + $(COMMON_INC_FILES) TELEGPS_TXT_FILES=\ telegps.txt @@ -214,10 +221,10 @@ DOC=$(HTML) $(HTML_REVHISTORY) $(PDF) $(IMAGES) $(STYLESHEET) sed -e 's/^[ ]*//' -e 's/^\\//' $*.inc > $@ .raw.pdf: - a2x --verbose -a docinfo -f pdf --xsltproc-opts "--stringparam toc.section.depth 2" --xsl-file $(FOP_STYLE) --fop --fop-opts="-c $(FOP_XCONF)" $*.raw + a2x --verbose -a icons -a docinfo -f pdf --xsltproc-opts "--stringparam toc.section.depth 2" --xsl-file $(FOP_STYLE) --fop --fop-opts="-c $(FOP_XCONF)" $*.raw .raw.html: - a2x --verbose -a docinfo -f xhtml --xsltproc-opts "--stringparam toc.section.depth 2" --xsl-file $(HTML_STYLE) --stylesheet=$(STYLESHEET) $*.raw + a2x --verbose -a icons -a docinfo -f xhtml --xsltproc-opts "--stringparam toc.section.depth 2" --xsl-file $(HTML_STYLE) --stylesheet=$(STYLESHEET) $*.raw .tmpl.xsl: xsltproc --output $@ /usr/share/xml/docbook/stylesheet/docbook-xsl/template/titlepage.xsl $*.tmpl diff --git a/doc/altosui.inc b/doc/altosui.inc index a7bf4449..df5a3cee 100644 --- a/doc/altosui.inc +++ b/doc/altosui.inc @@ -285,8 +285,7 @@ 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. + before you leave home; check out <<_load_maps>>. ==== Igniter @@ -478,202 +477,8 @@ The rest of the dialog contains the parameters to be configured. - ==== Main Deploy Altitude - - 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. - - ==== Apogee Delay - - 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 over - pressurize the apogee deployment bay and cause a - structural failure of the air-frame. The Apogee Delay - parameter tells the flight computer to fire the apogee - charge a certain number of seconds after apogee has - been detected. - - ==== Apogee Lockout - - Apogee lockout is the number of seconds after boost - where the flight computer will not fire the apogee - charge, even if the rocket appears to be at - apogee. This is often called 'Mach Delay', as it is - intended to prevent a flight computer from - unintentionally firing apogee charges due to the - pressure spike that occurrs across a mach - transition. Altus Metrum flight computers include a - Kalman filter which is not fooled by this sharp - pressure increase, and so this setting should be left - at the default value of zero to disable it. + include::config-device.raw[] - ==== 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. - - ==== 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. - - ==== Telemetry/RDF/APRS Enable - - Enables the radio for transmission during - flight. When disabled, the radio will not - transmit anything during flight at all. - - ==== 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. - - ==== 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. - - ==== 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. - - ==== Callsign - - This sets the call sign included in each - telemetry packet. Set this as needed to - conform to your local radio regulations. - - ==== Maximum Flight Log Size - - This sets the space (in kilobytes) allocated - for each flight log. The available space will - be divided into chunks of this size. A smaller - value will allow more flights to be stored, a - larger value will record data from longer - flights. - - ==== Ignitor Firing Mode - - This configuration parameter allows the two standard ignitor - channels (Apogee and Main) to be used in different - configurations. - - Dual Deploy:: - This is the usual mode of operation; the - 'apogee' channel is fired at apogee and the - 'main' channel at the height above ground - specified by the 'Main Deploy Altitude' during - descent. - - Redundant Apogee:: - This fires both channels at apogee, the - 'apogee' channel first followed after a two - second delay by the 'main' channel. - - Redundant Main:: - This fires both channels at the height above - ground specified by the Main Deploy Altitude - setting during descent. The 'apogee' channel - is fired first, followed after a two second - delay by the 'main' channel. - - ==== Pad Orientation - - Because they include accelerometers, - TeleMetrum, TeleMega and EasyMega are - sensitive to the orientation of the board. By - default, they expect the antenna end to point - forward. This parameter allows that default to - be changed, permitting the board to be mounted - with the antenna pointing aft instead. - - Antenna Up:: - In this mode, the antenna end of the flight - computer must point forward, in line with the - expected flight path. - - Antenna Down:: - In this mode, the antenna end of the flight - computer must point aft, in line with the - expected flight path. - - ==== Beeper Frequency - - The beeper on all Altus Metrum flight - computers works best at 4000Hz, however if you - have more than one flight computer in a single - airframe, having all of them sound at the same - frequency can be confusing. This parameter - lets you adjust the base beeper frequency - value. - - ==== Configure Pyro Channels - - .Additional Pyro Channel Configuration - image::configure-pyro.png[width="5.5in"] - - This opens a separate window to configure the - additional pyro channels available on TeleMega - and EasyMega. One column is presented for - each channel. Each row represents a single - parameter, if enabled the parameter must meet - the specified test for the pyro channel to be - fired. - - Select conditions and set the related value; - the pyro channel will be activated when *all* - of the conditions are met. Each pyro channel - has a separate set of configuration values, so - you can use different values for the same - condition with different channels. - - At the bottom of the window, the 'Pyro Firing - Time' configuration sets the length of time - (in seconds) which each of these pyro channels - will fire for. - - Once you have selected the appropriate - configuration for all of the necessary pyro - channels, you can save the pyro configuration - along with the rest of the flight computer - configuration by pressing the 'Save' button in - the main Configure Flight Computer window. - - include::pyro-channels.raw[] === Configure AltosUI @@ -683,91 +488,7 @@ This button presents a dialog so that you can configure the AltosUI global settings. - ==== 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 - - ==== 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. - - ==== 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. - - ==== 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. - - ==== Font Size - - Selects the set of fonts used in the flight - monitor window. Choose between the small, - medium and large sets. - - ==== 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. - - ==== 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. + include::config-ui.raw[] === Configure Groundstation @@ -890,66 +611,7 @@ with the standard telemetry format used in v1.0 and later firmware. - === Load Maps - - .Load Maps Window - image::load-maps.png[width="5.2in"] - - 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: - - 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. 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. + include::load-maps.raw[] === Monitor Idle diff --git a/doc/altusmetrum.txt b/doc/altusmetrum.txt index a2f78dda..f8d284ec 100644 --- a/doc/altusmetrum.txt +++ b/doc/altusmetrum.txt @@ -1,6 +1,8 @@ = The Altus Metrum System :doctype: book :numbered: +:altusmetrum: 1 +:application: AltosUI include::dedication.raw[] diff --git a/doc/aprs-operation.inc b/doc/aprs-operation.inc new file mode 100644 index 00000000..e514e110 --- /dev/null +++ b/doc/aprs-operation.inc @@ -0,0 +1,85 @@ + === APRS + + {aprsdevices} 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 {application}; that process is described in + <<{configure_section}>> in the {application} chapter. + + 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 about the flight computer. It sends four fields as + shown in the following table. + + .Altus Metrum APRS Comments + [options="header",cols="1,1,3"] + |==== + |Field |Example |Description + + |1 + |L + |GPS Status U for unlocked, L for locked + + |2 + |6 + |Number of Satellites in View + + |3 + |B4.0 + |Altimeter Battery Voltage + + |4 + |A3.7 + |Apogee Igniter Voltage + + |5 + |M3.7 + |Main Igniter Voltage + + |6 + |1286 + |Device Serial Number + |==== + + Here's an example of an APRS comment showing GPS lock with 6 + satellites in view, a primary battery at 4.0V, and + apogee and main igniters both at 3.7V from device 1286. + + .... + L6 B4.0 A3.7 M3.7 1286 + .... + + Make sure your primary battery is above 3.8V, any + connected igniters are above 3.5V 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. diff --git a/doc/config-device.inc b/doc/config-device.inc new file mode 100644 index 00000000..fb09416c --- /dev/null +++ b/doc/config-device.inc @@ -0,0 +1,240 @@ +ifdef::altusmetrum[] + + ==== Main Deploy Altitude + + 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. + + ==== Apogee Delay + + 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 over + pressurize the apogee deployment bay and cause a + structural failure of the air-frame. The Apogee Delay + parameter tells the flight computer to fire the apogee + charge a certain number of seconds after apogee has + been detected. + + ==== Apogee Lockout + + Apogee lockout is the number of seconds after boost + where the flight computer will not fire the apogee + charge, even if the rocket appears to be at + apogee. This is often called 'Mach Delay', as it is + intended to prevent a flight computer from + unintentionally firing apogee charges due to the + pressure spike that occurrs across a mach + transition. Altus Metrum flight computers include a + Kalman filter which is not fooled by this sharp + pressure increase, and so this setting should be left + at the default value of zero to disable it. + +endif::altusmetrum[] + +==== 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. + +==== 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. + +==== Telemetry/RDF/APRS Enable + + Enables the radio for transmission during + flight. When disabled, the radio will not + transmit anything during flight at all. + +==== 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. + +==== APRS Interval + + How often to transmit GPS information via APRS + (in seconds). When set to zero, APRS + transmission is disabled. + ifdef::altusmetrum[] + This option is + available on TeleMetrum v2 and TeleMega + boards. TeleMetrum v1 boards cannot transmit + APRS packets. + endif::altusmetrum[] + 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. + +==== 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. + +==== 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. + +==== Callsign + + This sets the call sign included in each + telemetry packet. Set this as needed to + conform to your local radio regulations. + +ifdef::altusmetrum[] + + ==== Maximum Flight Log Size + + This sets the space (in kilobytes) allocated + for each flight log. The available space will + be divided into chunks of this size. A smaller + value will allow more flights to be stored, a + larger value will record data from longer + flights. + + ==== Ignitor Firing Mode + + This configuration parameter allows the two standard ignitor + channels (Apogee and Main) to be used in different + configurations. + + Dual Deploy:: + This is the usual mode of operation; the + 'apogee' channel is fired at apogee and the + 'main' channel at the height above ground + specified by the 'Main Deploy Altitude' during + descent. + + Redundant Apogee:: + This fires both channels at apogee, the + 'apogee' channel first followed after a two + second delay by the 'main' channel. + + Redundant Main:: + This fires both channels at the height above + ground specified by the Main Deploy Altitude + setting during descent. The 'apogee' channel + is fired first, followed after a two second + delay by the 'main' channel. + + ==== Pad Orientation + + Because they include accelerometers, + TeleMetrum, TeleMega and EasyMega are + sensitive to the orientation of the board. By + default, they expect the antenna end to point + forward. This parameter allows that default to + be changed, permitting the board to be mounted + with the antenna pointing aft instead. + + Antenna Up:: + In this mode, the antenna end of the flight + computer must point forward, in line with the + expected flight path. + + Antenna Down:: + In this mode, the antenna end of the flight + computer must point aft, in line with the + expected flight path. + + ==== Beeper Frequency + + The beeper on all Altus Metrum flight + computers works best at 4000Hz, however if you + have more than one flight computer in a single + airframe, having all of them sound at the same + frequency can be confusing. This parameter + lets you adjust the base beeper frequency + value. + +endif::altusmetrum[] + +==== 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. + +==== 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. + + +ifdef::altusmetrum[] + + ==== Configure Pyro Channels + + .Additional Pyro Channel Configuration + image::configure-pyro.png[width="5.5in"] + + This opens a separate window to configure the + additional pyro channels available on TeleMega + and EasyMega. One column is presented for + each channel. Each row represents a single + parameter, if enabled the parameter must meet + the specified test for the pyro channel to be + fired. + + Select conditions and set the related value; + the pyro channel will be activated when *all* + of the conditions are met. Each pyro channel + has a separate set of configuration values, so + you can use different values for the same + condition with different channels. + + At the bottom of the window, the 'Pyro Firing + Time' configuration sets the length of time + (in seconds) which each of these pyro channels + will fire for. + + Once you have selected the appropriate + configuration for all of the necessary pyro + channels, you can save the pyro configuration + along with the rest of the flight computer + configuration by pressing the 'Save' button in + the main Configure Flight Computer window. + + include::pyro-channels.raw[] + +endif::altusmetrum[] diff --git a/doc/config-ui.inc b/doc/config-ui.inc new file mode 100644 index 00000000..c7e7f1ac --- /dev/null +++ b/doc/config-ui.inc @@ -0,0 +1,105 @@ +==== Voice Settings + + {application} 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 + +==== Log Directory + + {application} 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 {application} reads and writes data + files. + +==== 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 {application} + 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. + +==== 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. + +==== Serial Debug + + This causes all communication with a connected + device to be dumped to the console from which + {application} 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. + +==== Font size + + Selects the set of fonts used in the flight + monitor window. Choose between the small, + medium and large sets. + +==== 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. + +==== Menu position + + Selects the initial position for the main + {application} window that includes all of the + command buttons. + +==== 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. + +==== 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. diff --git a/doc/installation.inc b/doc/installation.inc index 44433298..32d81984 100644 --- a/doc/installation.inc +++ b/doc/installation.inc @@ -22,13 +22,14 @@ Check polarity and voltage before connecting any battery not purchased from Altus Metrum or Spark Fun. - By default, we use the unregulated output of the 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, check out the “External Pyro Battery” section in this - manual for instructions on how to wire that up. The altimeters are - designed to work with an external pyro battery of no more than 15 volts. + By default, we use the unregulated output of the 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, check out + <<_using_a_separate_pyro_battery>> for instructions on how to wire + that up. The altimeters are designed to work with an external + pyro battery of no more than 15 volts. Ejection charges are wired directly to the screw terminal block at the aft end of the altimeter. You'll need a very small straight diff --git a/doc/load-maps.inc b/doc/load-maps.inc new file mode 100644 index 00000000..e7717d89 --- /dev/null +++ b/doc/load-maps.inc @@ -0,0 +1,60 @@ +=== Load Maps + + .Load Maps Window + image::load-maps.png[width="5.2in"] + + 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: + + 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. 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. diff --git a/doc/micropeak.txt b/doc/micropeak.txt index 085be0ed..a3d644d2 100644 --- a/doc/micropeak.txt +++ b/doc/micropeak.txt @@ -149,8 +149,8 @@ * Once the data are saved, a graph will be displayed with height, speed and acceleration values computed - from the recorded barometric pressure data. See the - next section for more details on that. + from the recorded barometric pressure data. See + <<_analyzing_micropeak_data> for more details on that. === Analyzing MicroPeak Data diff --git a/doc/release-notes-0.9.inc b/doc/release-notes-0.9.inc index 66810e5d..0ee7ea51 100644 --- a/doc/release-notes-0.9.inc +++ b/doc/release-notes-0.9.inc @@ -18,8 +18,8 @@ flight logs just because you fly the same board twice in one day. - * Telemetry support for devices with serial number >= - 256. Previous versions used a telemetry packet format that + * Telemetry support for devices with serial number >= 256. + Previous versions used a telemetry packet format that provided only 8 bits for the device serial number. This change requires that both ends of the telemetry link be running the 0.9 firmware or they will not communicate. diff --git a/doc/system-operation.inc b/doc/system-operation.inc index d7c56eaa..dd8d7d02 100644 --- a/doc/system-operation.inc +++ b/doc/system-operation.inc @@ -28,72 +28,6 @@ completes initialization and self test, and decides which mode to enter next. - Here's a short summary of all of the modes and the beeping (or - flashing, in the case of TeleMini v1) that accompanies each - mode. In the description of the beeping pattern, “dit” means a - short beep while "dah" means a long beep (three times as - long). “Brap” means a long dissonant tone. - - .AltOS Modes - [options="border",cols="1,1,2,2"] - |==== - |Mode Name - |Abbreviation - |Beeps - |Description - - |Startup - |S - |battery voltage in decivolts - |Calibrating sensors, detecting orientation. - - |Idle - |I - |dit dit - |Ready to accept commands over USB or radio link. - - |Pad - |P - |dit dah dah dit - |Waiting for launch. Not listening for commands. - - |Boost - |B - |dah dit dit dit - |Accelerating upwards. - - |Fast - |F - |dit dit dah dit - |Decelerating, but moving faster than 200m/s. - - |Coast - |C - |dah dit dah dit - |Decelerating, moving slower than 200m/s - - |Drogue - |D - |dah dit dit - |Descending after apogee. Above main height. - - |Main - |M - |dah dah - |Descending. Below main height. - - |Landed - |L - |dit dah dit dit - |Stable altitude for at least ten seconds. - - - |Sensor error - |X - |dah dit dit dah - |Error detected during sensor calibration. - |==== - In flight or “pad” mode, the altimeter engages the flight state machine, goes into transmit-only mode to send telemetry, and waits for launch to be detected. Flight mode is indicated @@ -317,308 +251,52 @@ === Radio Link - TeleMetrum, TeleMini and TeleMega all incorporate 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 + TeleMetrum, TeleMini and TeleMega all incorporate 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. - By design, the altimeter firmware listens for the radio link when - it's in “idle mode”, which - allows us to use the radio link to configure the rocket, do things like - ejection tests, and extract data after a flight without having to - crack open the air-frame. However, when the board is in “flight - mode”, the altimeter 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 through - the radio in case the rocket crashes and we aren't able to extract - data later... - - We don't generally use a 'normal packet radio' mode like APRS - because they're just too inefficient. 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. We hope to fly boards to higher altitudes over - time, and would of course appreciate customer feedback on - performance in higher altitude flights! - - === APRS - - TeleMetrum v2.0 and TeleMega 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. - - 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 about the flight computer. It sends four fields as - shown in the following table. - - .Altus Metrum APRS Comments - [options="header",cols="1,1,3"] - |==== - |Field |Example |Description - - |1 - |L - |GPS Status U for unlocked, L for locked - - |2 - |6 - |Number of Satellites in View - - |3 - |B4.0 - |Altimeter Battery Voltage - - |4 - |A3.7 - |Apogee Igniter Voltage - - |5 - |M3.7 - |Main Igniter Voltage - - |6 - |1286 - |Device Serial Number - |==== - - Here's an example of an APRS comment showing GPS lock with 6 - satellites in view, a primary battery at 4.0V, and - apogee and main igniters both at 3.7V from device 1286. - - .... - L6 B4.0 A3.7 M3.7 1286 - .... - - Make sure your primary battery is above 3.8V, any - connected igniters are above 3.5V 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. + By design, the altimeter firmware listens for the + radio link when it's in “idle mode”, which allows us + to use the radio link to configure the rocket, do + things like ejection tests, and extract data after a + flight without having to crack open the air-frame. + However, when the board is in “flight mode”, the + altimeter 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 through the radio in case the rocket crashes + and we aren't able to extract data later. + + We don't generally use a 'normal packet radio' mode + like APRS because they're just too inefficient. 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. We hope to fly boards to higher altitudes + over time, and would of course appreciate customer + feedback on performance in higher altitude flights! + + :aprsdevices: TeleMetrum v2.0 and TeleMega + :configure_section: _configure_altimeter + include::aprs-operation.raw[] === Configurable Parameters Configuring an Altus Metrum altimeter for flight is very simple. Even on our baro-only TeleMini and EasyMini boards, the use of a Kalman filter means - there is no need to set a “mach delay”. The few - configurable parameters can all be set using AltosUI - over USB or or radio link via TeleDongle. Read the - Configure Altimeter section in the AltosUI chapter - below for more information. - - ==== 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 altimeter and TeleDongle - must be configured to the same frequency to - successfully communicate with each other. - - ==== Callsign - - This sets the callsign used for telemetry, - APRS and the packet link. For telemetry and - APRS, this is used to identify the device. For - the packet link, the callsign must match that - configured in AltosUI or the link will not - work. This is to prevent accidental - configuration of another Altus Metrum flight - computer operating on the same frequency - nearby. - - ==== Telemetry/RDF/APRS Enable - - You can completely disable the radio while in - flight, if necessary. This doesn't disable the - packet link in idle mode. - - ==== 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. - - ==== 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. - - ==== APRS SSID - - This selects the SSID reported in APRS - packets. By default, it is set to the last - digit of the serial number, but you can change - this to any value from 0 to 9. - - ==== Apogee Delay - - Apogee delay is the number of seconds after - the altimeter 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. - - The Altus Metrum apogee detection algorithm - fires exactly at 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 - air-frames this way quite happily, including - Keith's successful L3 cert. - - ==== Apogee Lockout - - Apogee lockout is the number of seconds after - boost where the flight computer will not fire - the apogee charge, even if the rocket appears - to be at apogee. This is often called 'Mach - Delay', as it is intended to prevent a flight - computer from unintentionally firing apogee - charges due to the pressure spike that occurrs - across a mach transition. Altus Metrum flight - computers include a Kalman filter which is not - fooled by this sharp pressure increase, and so - this setting should be left at the default - value of zero to disable it. - - ==== Main Deployment Altitude - - By default, the altimeter 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 - air-frames, 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. - - ==== 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. - - Even though our flight computers (except TeleMini v1.0) can store - multiple flights, we strongly recommend downloading and saving - flight data after each flight. - - ==== Ignite Mode - - Instead of firing one charge at apogee and - another charge at a fixed height above the - ground, you can configure the altimeter to - fire both at apogee or both during - descent. This was added to support an airframe - Bdale designed that had two altimeters, one in - the fin can and one in the nose. - - Providing the ability to use both igniters for - apogee or main allows some level of redundancy - without needing two flight computers. In - Redundant Apogee or Redundant Main mode, the - two charges will be fired two seconds apart. - - ==== Pad Orientation - - TeleMetrum, TeleMega and EasyMega measure - acceleration along the axis of the - board. Which way the board is oriented affects - the sign of the acceleration value. Instead of - trying to guess which way the board is mounted - in the air frame, the altimeter must be - explicitly configured for either Antenna Up or - Antenna Down. The default, Antenna Up, expects - the end of the board connected to the 70cm - antenna to be nearest the nose of the rocket, - with the end containing the screw terminals - nearest the tail. - - ==== Configurable Pyro Channels - - In addition to the usual Apogee and Main pyro - channels, TeleMega and EasyMega have four - additional channels that can be configured to - activate when various flight conditions are - satisfied. You can select as many conditions - as necessary; all of them must be met in order - to activate the channel. The conditions - available are: - - include::pyro-channels.raw[] - + there is no need to set a “mach delay”. All of the + configurable parameters can be set using AltosUI + over USB or or radio link via TeleDongle. Read + <<_configure_altimeter>> for more information. diff --git a/doc/telegps-application.inc b/doc/telegps-application.inc index c5ecc11f..41dda968 100644 --- a/doc/telegps-application.inc +++ b/doc/telegps-application.inc @@ -91,7 +91,7 @@ You can pre-load images for your favorite launch sites before you leave home; check out - the 'Preload Maps' section below. + <<_load_maps>>. ==== Location @@ -233,155 +233,14 @@ within that application. With this, you can use Google Earth to see the whole path in 3D. - === Load Maps - - .Load Maps Window - image::load-maps.png[width="5.2in"] - - 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. 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. + include::load-maps.raw[] === Preferences .TeleGPS Preferences Window image::telegps-preferences.png[width="2.4in"] - 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 - - ==== 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. - - ==== 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. - - ==== 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. - - ==== Font Size - - Selects the set of fonts used in the flight - monitor window. Choose between the small, - medium and large sets. - - ==== 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. - - ==== 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. + include::config-ui.raw[] === Close @@ -485,82 +344,7 @@ The rest of the dialog contains the parameters to be configured. - ==== 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. - - ==== 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. - - ==== Telemetry/RDF/APRS Enable - - Enables the radio for transmission during - flight. When disabled, the radio will not - transmit anything during flight at all. - - ==== 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. - - ==== 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. - - ==== 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. - - ==== Callsign - - This sets the call sign included in each - telemetry packet. Set this as needed to - conform to your local radio regulations. - - ==== 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. - - ==== 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. + include::config-device.raw[] === Flash Device diff --git a/doc/telegps-dedication.inc b/doc/telegps-dedication.inc new file mode 100644 index 00000000..719c309c --- /dev/null +++ b/doc/telegps-dedication.inc @@ -0,0 +1,19 @@ +[dedication] +== Acknowledgments + + 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. + + [verse] + Bdale Garbee, KB0G + NAR #87103, TRA #12201 + + [verse] + Keith Packard, KD7SQG + NAR #88757, TRA #12200 diff --git a/doc/telegps-quick-start.inc b/doc/telegps-quick-start.inc index e8db8ac3..6492743d 100644 --- a/doc/telegps-quick-start.inc +++ b/doc/telegps-quick-start.inc @@ -3,22 +3,21 @@ 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 + 1. 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 + 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. - 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. + 3. Start the TeleGPS application and set the callsign and frequency + on your TeleGPS device; refer to <<_configure_device>> for instructions. - Unplug TeleGPS when the battery charger light goes green. This + 4. 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 + 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. diff --git a/doc/telegps-system-operation.inc b/doc/telegps-system-operation.inc index e8790db8..40ab467c 100644 --- a/doc/telegps-system-operation.inc +++ b/doc/telegps-system-operation.inc @@ -19,131 +19,13 @@ ground with our 10mW units and over 100k feet AGL with the 40mW devices. - === 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; that - process is described in the Configure TeleGPS - section of the TeleGPS Application 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. - - .TeleGPS APRS Comments - [options="header",cols="1,1,3"] - |==== - |Field |Example |Description - - |1 - |L - |GPS Status U for unlocked, L for locked - - |2 - |6 - |Number of Satellites in View - - |3 - |B4.0 - |Altimeter Battery Voltage - - |4 - |1286 - |Device Serial Number - |==== - - Here's an example of an APRS comment showing GPS lock with 6 - satellites in view and a battery at 4.0V from device 1286. - - .... - L6 B4.0 1286 - .... - - Make sure your battery is above 3.8V 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. + :aprsdevices: TeleGPS + :configure_section: _configure_device + include::aprs-operation.raw[] === 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. - - ==== 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. - - ==== Callsign - - This sets the callsign used for telemetry and APRS to - identify the device. - - ==== Telemetry/RDF/APRS Enable - - You can completely disable the radio, if necessary, leaving - TeleGPS only logging data to internal memory. - - ==== 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. - - ==== 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. - - ==== 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. - - ==== 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. + the Configure TeleGPS section in the TeleGPS Software chapter diff --git a/doc/telegps.txt b/doc/telegps.txt index 059036ec..6726b340 100644 --- a/doc/telegps.txt +++ b/doc/telegps.txt @@ -1,8 +1,10 @@ = TeleGPS Owner's Manual :doctype: book :numbered: +:telegps: 1 +:application: TeleGPS - include::dedication.raw[] + include::telegps-dedication.raw[] include::telegps-quick-start.raw[] diff --git a/doc/usage.inc b/doc/usage.inc index cc694dda..b2ab0c27 100644 --- a/doc/usage.inc +++ b/doc/usage.inc @@ -50,6 +50,122 @@ firing when in the Off position. The switch is in-line with the positive battery terminal. + === Understanding Beeps + + Altus Metrum flight computers include a beeper to + provide information about the state of the system. + TeleMini doesn't have room for a beeper, so instead it + uses an LED, which works the same, except for every + beep is replaced with the flash of the LED. + + Here's a short summary of all of the modes and the beeping (or + flashing, in the case of TeleMini v1) that accompanies each + mode. In the description of the beeping pattern, “dit” means a + short beep while "dah" means a long beep (three times as + long). “Brap” means a long dissonant tone. + + .AltOS Modes + [options="border",cols="1,1,2,2"] + |==== + |Mode Name + |Abbreviation + |Beeps + |Description + + |Startup + |S + |battery voltage in decivolts + |Calibrating sensors, detecting orientation. + + |Idle + |I + |dit dit + |Ready to accept commands over USB or radio link. + + |Pad + |P + |dit dah dah dit + |Waiting for launch. Not listening for commands. + + |Boost + |B + |dah dit dit dit + |Accelerating upwards. + + |Fast + |F + |dit dit dah dit + |Decelerating, but moving faster than 200m/s. + + |Coast + |C + |dah dit dah dit + |Decelerating, moving slower than 200m/s + + |Drogue + |D + |dah dit dit + |Descending after apogee. Above main height. + + |Main + |M + |dah dah + |Descending. Below main height. + + |Landed + |L + |dit dah dit dit + |Stable altitude for at least ten seconds. + + + |Sensor error + |X + |dah dit dit dah + |Error detected during sensor calibration. + |==== + + === Turning On the Power + + Connect a battery and power switch and turn the switch + to "on". The flight computer will signal power on by + reporting the battery voltage and then perform an internal self + test and sensor calibration. + + Once the self test and calibration are complete, there + are two modes that an Altus Metrum flight computer can + operate in: + + Flight/Pad:: + The flight computer is waiting to detect + launch and then fly the rocket. In this mode, the USB + link is disabled, and the radio goes into + transmit-only mode. The only way to get out of this + mode is to power the flight computer down. + + Idle:: + The flight computer is ready to communicate over USB + and in packet mode over the radio. You can configure + the flight computer, download data or display + the current state. + + For flight computers with accelerometers (TeleMetrum, + EasyMega and TeleMega), the mode is selected by the + orientation of the board during the self test + interval. If the board is pointing upwards as if ready + to fly, it will enter Flight/Pad mode. Otherwise, it will + enter Idle mode. + + For EasyMini, if the USB cable is connected to a + computer, it will enter Idle mode. Otherwise, it will + enter Flight/Pad mode. + + For TeleMini v1.0, if a packet link is waiting to + connect when the device is powered on, it will enter + Idle mode, otherwise it will enter Flight/Pad mode. + + You can see in <<_understanding_beeps>> + how to tell which mode the flight computer is in. + === Using an External Active Switch Circuit You can use an active switch circuit, such as the @@ -63,13 +179,14 @@ === Using a Separate Pyro Battery - As mentioned above in the section on hooking up pyro - charges, one lead for each of the pyro charges is connected - through the power switch directly to the positive battery - terminal. The other lead is connected to the pyro circuit, - which connects it to the negative battery terminal when the - pyro circuit is fired. The pyro circuit on all of the flight - computers is designed to handle up to 16V. + As mentioned above in <<_hooking_up_pyro_charges>>, one + lead for each of the pyro charges is connected through + the power switch directly to the positive battery + terminal. The other lead is connected to the pyro + circuit, which connects it to the negative battery + terminal when the pyro circuit is fired. The pyro + circuit on all of the flight computers is designed to + handle up to 16V. To use a separate pyro battery, connect the negative pyro battery terminal to the flight computer ground terminal, @@ -78,7 +195,8 @@ computer. When the pyro channel fires, it will complete the circuit between the negative pyro terminal and the ground terminal, firing the igniter. Specific instructions on how - to hook this up will be found in each section below. + to hook this up for each flight computer will be found + in the section below for that flight computer. === Using a Different Kind of Battery @@ -89,7 +207,7 @@ [WARNING] TeleMega, EasyMega and TeleMetrum are only designed to - use a single-cell Lithium Polymer battery and cannot - be used with any other kind. Connecting a different - kind of battery to any of these will destroy the - board. + operate off a single-cell Lithium Polymer battery and + cannot be used with any other kind. Connecting a + different kind of battery to any of these will destroy + the board. -- 2.30.2