APRS

From CECS wiki
Jump to navigation Jump to search

APRS is one of several amateur radio digital modes specialized for position telemetry from a GPS. It is commonly used for tracking moving stations and for marking the locations of important objects or positions, as well as sending messages between different users or interfacing with other systems via the internet. APRS is most commonly said to stand for Automatic Packet Reporting System, but Automatic Position Reporting System (a historical name) is also occasionally used.

APRS is similar to packet radio in that it also uses the AX.25 protocol layer, but uses a different routing scheme and does not have a concept of connections or sessions. All packets are sent as Unnumbered Information (UI) frames, although some packet types (such as messages) add tracking numbers to the end of the payload for the purpose of sending acknowledgements.

On VHF, APRS in the US mostly uses the frequency 144.390MHz, although any of several frequencies can be used that are reserved for digital modes by the local frequency coordinator. World wide, other frequencies are used. The most common modulation is 1200 baud AFSK over FM, but other digital modes such as D-STAR can also be used as a transport layer for APRS. Many HF frequencies are also used for APRS, typically on 30m with 300 baud FSK over USB (upper sideband) or 20m and 40m with VARA HF.

Project: Set up a iGate / Digitpeater on campus

Uses for APRS[edit | edit source]

APRS has many common uses. Roughly sorted from most to least common, these are:

  • The most common use is tracking (with GPS) of people, vehicles, storms, objects, etc. This can be done via direct tracking of a GPS-enabled station (position beaconing) or by manually updating the coordinates of the location of a point of interest (APRS objects). These positions can be monitored on websites such as https://aprs.fi and http://www.findu.com/.
  • Weather stations can transmit local weather information over APRS, and many radios and TNCs can directly decode much of this information. Combined with the position of the weather station, which is also transmitted, a user can inform themselves of current weather conditions near their current location.
  • Users can send messages to other stations directly. This can either be used as a type of instant messaging service between two or more users, or a user can send messages to a bot which will be gated to the APRS-IS and reply based on information from the internet. These bots have several uses, including:
    • Linking to other services such as SMS, email, and Winlink
    • Saving messages for later retrieval by other stations (store-and-forward)
    • Looking up information such as weather, nearby points of interest (e.g. grocery stores, pharmacies, etc.), or other local information
    • Looking up information about other stations
  • Groups on long distance trips will often use the above features for coordination and communication.
  • In addition to GPS and weather information, other stations can transmit various types of telemetry over APRS. This will often be specific to the particular station and not necessarily able to be decoded by common APRS TNCs or software, appearing as either plaintext or compressed data depending on the application.
  • Several satellites have APRS digipeaters on board, including the ISS. This can be used to directly message other operators via the satellite, for store-and-forward, or to send messages to ground stations to access the APRS-IS (although this will typically be receive-only as the satellites usually use nonstandard APRS frequencies and there are usually no transmitting I-gates on these frequencies).
  • APRS can be used for coordinated radio direction finding via fade circle search using omnidirectional antennas on mobile and stationary stations.
  • Some groups use APRS for DX cluster and other localized information sharing.

Components in an APRS system[edit | edit source]

The following components are required to interact with APRS:

  1. A radio (usually an analog FM radio) or SDR. Preferably, this radio should be capable of both transmitting and receiving, although a receive-only radio can be used to decode packets if the ability to reply or transmit your own packets is not needed.
  2. A TNC (terminal node controller), also known as a packet radio modem. In the past, TNCs were external hardware modems, but modern radios may have built-in TNCs capable of handing APRS natively. If using an analog radio with no built-in TNC, a computer soundcard and software-based modem may be used, which are often more effective than dedicated TNCs but may also require the use of a special interface to ensure that the computer is able to trigger the radio's PTT, such as an AIOC, Digirig, RIGblaster, or other similar interface.
  3. A GPS, while technically optional, is highly recommended, particularly for mobile or portable stations.
  4. A computer or phone is required for radios which do not have built-in APRS interfaces. It displays the incoming beacons, objects, messages, etc. for the user, and will often be capable of displaying them on a map for positional awareness of the surrounding stations. It also allows the user to send their own beacons (using a connected GPS if available, or manually entered coordinates otherwise) and messages, and (when supported) may convert incoming station locations to GPS waypoints.

Note that some modern radios will contain all of these required components and thus will be self-contained APRS stations. However, connecting them to external hardware may still be preferable in some cases for improved user interfaces or to unlock additional features.

In addition to user stations such as these, there are also other components to the overall APRS network. These include:

  • Digipeaters (digital repeaters), which are an automatic APRS-capable radio system which will retransmit received packets, provided that they have not been retransmitted too many times already. This creates a type of mesh network and helps to extend the range at which users can transmit and receive packets.
  • I-gates, or internet gateways, route packets into the internet and back via the APRS Internet System (APRS-IS). If you send a beacon or message, the system will be able to route packets to you via I-gates which are capable of transmitting, although some are receive-only.
  • Reporting websites (such as https://aprs.fi and http://www.findu.com/) will track beacons and messages via the APRS-IS and display them on a map or list for users.
  • Bots will listen for messages directed to them via the APRS-IS and perform actions based on the user's message and send replies with requested information or confirm that a requested task was accomplished.

APRS configuration[edit | edit source]

These parameters must be configured in your radio or software for APRS to work:

  • Frequency
    • 144.390MHz is the standard in North America, other frequencies may be used in other regions (e.g. 144.800MHz)
  • Call sign and SSID
    • Generally entered in the same field and separated by a dash
    • SSID is a number from 0 to 15 which provides some information about the nature of the station and allows multiple stations under the same callsign to be distinguished from each other
    • For an SSID of 0, note that the -0 is generally omitted, e.g. K4UCF-0 would simply be K4UCF
    • The following conventions are used for SSIDs:
Common Meanings of APRS SSIDs
SSID Uses
-0* Primary fixed station
-5 Station outside of the usual 1200 baud AFSK network
-6 Station for special activities (satellites, camping, 6m, etc)
-7 Handheld portable
-8 Boat, sailboat, RV, or secondary mobile station
-9 Primary mobile station (car, truck, etc.)
-10 I-gates or other internet-linked station
-11 Balloon, aircraft, spacecraft, etc.
-12 One-way tracking device or APRStt/DTMF station
-13 Weather station
-14 Trucker or full-time driver
-1 to -4 and -15 Digipeater or other generic additional station
  • Station icon
    • A graphical representation of your station used in maps and lists
    • Can indicate house, portable, vehicle type, etc.
    • Represented internally by two characters, but often selectable from a menu using the actual icons
      • The first character is the table character, which determines which table to use or overlays
        • / for primary table
        • \ for alternate table
        • 0-9 or A-Z for overlays on the alternate table
      • The second character is the symbol character, which determines the actual icon displayed from the table
        • Can be a letter, number, punctuation, or other symbol depending on what is being displayed
    • Icons are also used for objects to indicate the location of something that isn't a station
    • The icon you use should be an accurate representation of your station

The following parameters are required for position beaconing:

  • Position
    • Can be from GPS and update automatically
    • Can be manually entered, typically for fixed stations
  • Beacon compression
    • There are three common compression modes with slightly different features
      • No compression: position information is transmitted in plaintext
      • Base 91 compression (sometimes simply called "compressed"): compresses the beacon into base 91 to increase the remaining available payload space
      • Mic-E compression: encodes a beacon and a status report split across the destination field and information field, common for Kenwood
  • Position comment
    • A short additional text field that can be appended to a beacon, which can be used to give other users a brief status report or station information
    • Some bots on the APRS-IS will monitor position comments for certain keywords to trigger an action (e.g. including "winlink" in your position comment will cause WLNK-1 to send a packet if you have unread Winlink emails)
  • Status text
    • A separate packet sent after a beacon containing additional information
    • Frequently used to advertise the current voice frequency a user is monitoring or transmitting on
  • Beacon method
    • There are three common methods used to determine when a beacon is transmitted
      • Manual: the user must push a button to send a beacon (good for testing or for fixed stations)
      • Automatic: the radio will transmit beacons on a fixed interval
      • Smart beaconing: the radio will transmit beacons with varying delays depending on the station's speed, direction changes, etc.

These parameters usually have good defaults and rarely need to be changed:

  • Packet path
    • Determines how the packet is routed via digipeaters
    • Default (good for most applications): WIDE1-1, WIDE2-1
  • Data speed
    • 1200 baud is the standard in almost every scenario
  • TX delay
    • This can be important to ensure that VOX-enabled radios do not cut off the start of a packet when transmitting, but the default is almost always sufficient for normal use

APRS modes[edit | edit source]

The following modes are used for APRS communications:

  • 1200 baud AFSK over FM is the most common mode for APRS
  • 9600 baud FSK or GFSK is used on some VHF/UHF systems for higher data rates, but this cannot be done via standard audio interfaces and requires a built-in TNC, specialized 9600 baud port, or discriminator tap
  • D-STAR can be used for APRS (these stations will often use nonstandard SSIDs such as letters)
  • 300 baud FSK is often used on HF (usually 30m)
  • VARA HF can be used for APRS on HF (usually 20m or 40m)
  • Meshtastic can use APRS

APRS internet features[edit | edit source]

The APRS-IS provides many useful features to users. The ability for packets to be forwarded to the internet allows for reporting websites such as https://aprs.fi and http://www.findu.com/ to be used to track stations and objects and to keep a record of messages that have been sent and received by a station. Additionally, there are a wide variety of bots connected to the APRS-IS that users can interface with. These include, but are not limited to:

SMS gateway[edit | edit source]

The bot "SMS" can be used to interface with phones to send and receive texts from other users via APRS, including from unlicensed users. For a phone number to be able to use the service, its owner must opt in at https://aprs.wiki/. APRS users can also specify aliases for phone numbers, check for missed messages, and delete any missed messages or messages which they have received but not successfully acknowledged. The following actions can be taken by sending messages to "SMS" over APRS:

SMS Bot Actions, APRS Side
Action APRS Message Syntax Example
Send message to phone number
@<number> <message>
@1234567890 Hello!
Send message to alias
@<alias> <message>
@friend Hello!
Add an alias for a phone number
#alias #add <alias> <number>
#alias #add friend 1234567890
Remove an alias for a phone number
#alias #remove <alias> <number>
#alias #remove friend 1234567890
Check for missed texts
APRSM
APRSM
Delete all missed/unacknowledged messages
del
del

The SMS user can also respond by sending texts to the phone number used by the "SMS" bot:

SMS Bot Actions, SMS Side
Action SMS Message Syntax Example
Send message to APRS user
@<callsign>[-<SSID>] <message>
@K4UCF-1 Hello!
Reply to last APRS user to send a message*
<message>
Hello last station!

*Note that omitting the callsign to respond to the last APRS user is not guaranteed to function if the system updates or restarts, so do not rely on this if a long time period has passed since the original message was sent.

Including "APOSMS" or "ALLMSG" in your beacon comment will cause the system to send you missed messages when you beacon ("APOSMS" is for the "SMS" system only, "ALLMSG" also includes the "MAIL" system).

More usage details at https://aprs.wiki/howto/.

Email gateway[edit | edit source]

The bot "EMAIL-2" can be used to send short emails to any email address. The message will appear in the subject line, with some additional tracking information in the body. The following actions can be taken by sending messages to "EMAIL-2" over APRS:

EMAIL-2 Bot Actions, APRS Side
Action APRS Message Syntax Example
Send email to email address
<email>@<domain> <message>
K4UCF@winlink.org Hello!
Send email to alias
<alias> <message>
k4ucf Hello!
Add an alias for an email
<alias> <email>@<domain>
k4ucf K4UCF@winlink.org
Remove an alias for an email
<alias> R
k4ucf R
Send a list of defined aliases to one of the defined aliases
<alias> L
k4ucf L
Check for missed emails
get
get

Note that any email address to which you have not assigned an alias will be unable to reply to you via APRS. Email addresses which do have a defined alias can send you a reply via email which you will receive via APRS, but they cannot reply to the email directly. Instead, you must tell them the alias that you have assigned them and they must send an email to the email address used by "EMAIL-2":

EMAIL-2 Bot Actions, Email Side
Action Email Subject Email Body Subject Example Body Example
Send message to APRS station
<callsign>[-<SSID>]:<message>
userid:<alias>:
K4UCF-1:Hello!
userid:k4ucf:

Note that the body will not be sent via APRS, only the subject. You may add additional content to the email body, but the userid block (with no spaces) must exist somewhere within it or the message will not be sent. A confirmation email will be sent indicating when the APRS station acknowledges receiving the email. More usage details at https://www.aprs-is.net/email.aspx.

Winlink gateway[edit | edit source]

The bot "WLNK-1" (known as APRSLink) can be used to interface with your Winlink account via APRS. It requires a fairly complex login procedure and a lengthy list of commands. The full procedure is too long to duplicate here, but is well-documented on the Winlink website. You can also send "?" or "H" to "WLNK-1" for a brief help list, and then send "?" or "H" immediately followed by the letter for the command you want to know more about (no space) to get help for that command.

More usage details at https://winlink.org/APRSLink.

Store-and-forward messages[edit | edit source]

The bot "MAIL" can be used for message store-and-forward within the APRS ecosystem. Users can send messages which will be stored for 7 days, and other users can check for missed messages or delete missed messages or messages that they failed to acknowledge at a later time. Users can also join and leave various groups for store-and-forward purposes as well. The following actions can be taken by sending messages to "MAIL" over APRS:

MAIL Bot Actions
Action APRS Message Format Example
Send a message to another APRS station
@<callsign>[-<SSID>] <message>
@K4UCF-1 Hello!
Send a message to a group
#<group> <message>
#k4ucf Hello!
Join a group
join <group>
join k4ucf
Leave group
unjoin <group>
unjoin k4ucf
Check for missed messages
APRSM
APRSM
Delete all missed/unacknowledged messages
del
del

Including "APMAIL" or "ALLMSG" in your beacon comment will cause the system to send you missed messages when you beacon ("APMAIL" is for the "MAIL" system only, "ALLMSG" also includes the "SMS" system).

More usage details at https://aprs.wiki/mail/.

Callsign lookup[edit | edit source]

The bot "WHO-15" ("WHO-IS" also works on some systems but not all) can be used to retrieve information about the holder of a specified callsign, including their name, location, and license class. The following actions can be taken by sending messages to "WHO-15" over APRS:

WHO-15 Bot Actions
Action APRS Message Syntax Example
Get brief information about a callsign holder (one message)
<callsign>
K4UCF
Get detailed information about a callsign holder (multiple messages)
f <callsign>
f K4UCF

More usage details at https://www.aprs-is.net/whois.aspx.

Weather lookup[edit | edit source]

The box "WXBOT" can be used to get weather forecast information for a location and a time. The following actions can be taken by sending messages to "WXBOT" over APRS:

WXBOT Bot Actions
Action APRS Message Syntax Example
Get a brief forecast for the day at your last known location
<any message less than 3 characters>
a
Specify the type of forecast or weather info you would like to receive
[location] [time] [type]
32816 current
Get help with usage
<"help" or "?">
?

The following can be used as locations:

WXBOT Locations
Type APRS Message Syntax Example
Last known location (default) N/A N/A
Location in the FCC ULS for a callsign
<callsign>
K4UCF
Location in api.aprs.fi for a callsign
<callsign>[-<SSID>]
K4UCF-1
Location in api.aprs.fi for other objects
<object name>
N/A
City* and state
<city name>,<2 letter state abbreviation>
Orlando,FL
5 digit zip code
<zip code>
32816
4 or 6 digit grid square
<XX##>[xx]
EL98jo
CWOP station
<station ID>
K4KMJ
4 character ICAO station
<station ID>
KMCO
3 character IATA station
<station ID>
MCO

Note that the spelling of city names is taken from the us.zip file at https://www.geonames.org/.

The following can be used as times:

WXBOT Times
Type APRS Message Syntax Example
Forecast for the current/upcoming day (default)
today
today
Forecast for the current/upcoming night
tonight
tonight
Forecast for the upcoming day/night
tomorrow [night]
tomorrow night
Forecast for an upcoming day/night
<day name or abbreviation> [night]
wed

The following can be used as types:

WXBOT Types
Type APRS Message Syntax
Brief forecast (default, usually one message)
brief
Full forecast (multiple messages)
full
Current NWS weather station conditions
current
Current ICAO weather station conditions in METAR form
metar
Weather report from CWOP station
cwop

More usage details at https://sites.google.com/site/ki6wjp/wxbot.

Additional lookups[edit | edit source]

The bot "MPAD" can perform a wide variety of lookups. In addition to weather lookups in a similar syntax to WXBOT, it can also return locations of other stations, sunrise/sunset times, satellite passes and frequencies, local repeaters, local destinations (stores, hospitals, etc.), and much more. Documenting all of these uses and their syntax here would be too long, so review the documentation or send "info" or "help" to "MPAD" for more information.

More usage details at https://github.com/joergschultzelutter/mpad.

Additional advanced topics[edit | edit source]

  • smart beaconing
    • instead of sending out a regular beacon, beacons more frequently when moving
    • uses speed, detected turns
  • Objects and items
    • can advertise events, third party items, etc.
    • (what is the difference between object and item)
  • Routing
    • RFONLY or NOGATE to prevent igate routing
    • WIDE1-1 (or blank) to reduce coverage from default

Software available[edit | edit source]

Radios that directly support APRS[edit | edit source]

Almost all ham radios can be used with APRS, but these have it built in:

  • Kenwood TM-D700 moble/base station radio
  • Kenwood TM-D710 moble/base station radio
  • Kenwood TM-D7A handheld (discontinued, hard to find, supports cross band repeat)
  • Kenwood D72, D74, D75 handhelds
  • Yaesu VX-8R handheld
  • Yaesu FTM-350E
  • Garmin Rhino (includes GPS, PDA, uses FRS not amateur radio unless modified)
  • Byonics has several kit radios and radio modems

TNC[edit | edit source]

If you do not use a software TNC or a radio that includes a TNC, an external TNC will be needed. See Choosing a TNC for APRS for a more complete discussion including a list of reviewed products. Unfortunately, most lists like this were written 10 or 15 years ago and never updated. They contain mostly broken links to discontinued products, from the previous Century, and companies that don't exist anymore. Potential criteria for selecting a TNC might include:

  • Will it be used for HF use?
  • Do you need 9600 baud, PSK, or other digital modes?
  • Will you use it with a (serial port starved) laptop?
  • Do you want to use it for tracking standalone with a GPS and without a computer? (Would a tinytrack be good enough?)
  • Will you use it for packet radio? (I.e., do you need a full TNC or is KISS mode enough?)
  • Will it be used for a digipeater? (need remote control options)

Costs:

  • $36 for a kit from tinytrack (transmit only, no computer interface)
  • ~$100 - $300 for a commercial full TNC
  • ~$400 for a DSP based TNC
  • ~$500 for a Kenwood D700A mobile radio (dual receive xband aprs 50/35W xmit)
  • ~$350 for a Kenwood TM-V7A hand held radio (dual receive xband aprs 5W xmit)
  • http://www.argentdata.com/catalog/

Software TNC's are becoming increasingly popular because you can get better performance and more features at much lower cost.

Slide Show covering origins of Packet Radio and evolution to using Software TNCs rather than 1980's style hardware.

GPS[edit | edit source]

Features to consider when selecting a GPS:

  • Integrated with a PDA?
  • Includes an LCD screen and maps?
  • Detachable / external antenna?
  • Small form factor?
  • RS232 serial or USB? (some have both)
  • Protocol format?
  • NEMA or proprietary (Rockwell?) format? (Most APRS software wants NEMA.)
  • Does it support WAAS?
  • If it has a map display and NEMA, does it also support NEMA in to display waypoints from the APRS software?

Costs:

  • $15 + $25 antenna at hamcation (motorolla, no case)
  • $80 basic GPS with display (ex: Garmin e-trex, GPS-18PC)
  • ~$300 - $600 Garmin Street Pilot

A few GPS manufacturers:

sound card interfaces[edit | edit source]

If you want to connect the radio directly to the computer without a TNC and use a software TNC, then circuitry is needed to convert radio audio output to soundcard level input, and soundcard output to radio microphone input. Some soundcards have adjustments that can convert some of the levels. Most soundcards will need a level converter interface to help. Some radios also have outputs that are suitable to connect directly to the sound card.

Considerations when choosing a sound card interface:

  • kit form or assembled?
  • Is PTT control needed too?
  • Is an additional external microphone also needed? (for echolink use)

windows tool chain[edit | edit source]

External links[edit | edit source]

APRS access on internet

Additional information

digipeater / igate info[edit | edit source]

vendors[edit | edit source]