All hams who used the APRS network, either by radio transceivers, provided with this working mode or through software applications connected to the Internet, noticed the major differences regarding the representation of the APRS nodes:
- radio mode: text information, directly received or re-transmitted by the neighboring digipeaters. Some transceivers calculate and display the distance and direction to the received nodes, others display even the APRS symbols and a small map. Long distance nodes or those which access the APRS network via Internet, are only visible on the transceiver's display under certain conditions;
- APRS-IS (Internet Service) mode: basically, absolutely any information, collected by the APRS-IS infrastructure, is available trough a map and a graphic interface, which allow viewing of the exchanged messages, call signs logs, tracks and so on. The volume of the displayed information is so huge that always will be mandatory to filter the data, using various criteria, like distance from the current position (radius), APRS symbols, prefixes and many, many others.
Many hams who want to access the APRS network, choose to use an Internet connection and an APRS-IS application and that because of the friendly interaction way with this infrastructure.
If the Internet access is not available, but we have a functional APRS "installation" (dedicated transceiver, simple radio devices or trackers interfaced with a computer or a smart phone), in the coverage area of a digipeater or an i-Gate, there are many possibilities to gather information about APRS nodes and also to communicate with these or Internet community members.
Before all, I recommend the interfacing of any transceiver with an APRS application, even in case of equipments with embedded APRS features. APRS texting and messaging is a real challange, no matter how performant are these transceivers and for some hams this will be for sure a reason to give up.
The simplest and fastest interfacing way is to use the already famous APRSdroid application, in Audio (AFSK) mode, via the "acoustic" interconnection. Although it seems primitive, it is very effective. Afterwards, those who consider useful this APRS working way, can switch to more elaborate interfaces, like "personalized" cables or TNCs.
All the APRS services listed below are available by sending an APRS message with the following structure:
- destination: the call sign of the APRS node which hosts the desired service. For example: WHERE, QRZ, ANSRVR, ISS;
- text: the command which should be performed by the destination. for example: alert, help, YO3XYZ-10, login.
1. Locate an APRS node
As I mentioned below, after you power on your APRS radio, on the transceiver's display or APRS application, will be seen only the nodes directly received or whose signals were re-transmitted by the neighboring digipeaters. A distant ham, whose signals cannot be re-transmitted to the digipeaters from your local area, will not be shown on your screens. Consequently, without doing anything, we will never know if the ham radio is active, neither is moving or in which direction is heading.
The above information can be obtained if we send some text messages to the WHERE or WHERE-IS node. It is useful, also, to imagine the following scenario: ham radio YO3XYZ will go the YO9C repeater and we would like to know where is he. We assume that, being mobile, APRS call sign will be YO3XYZ-9.
Send to WHERE the text YO3XYZ-9. If the call sign was correctly assumed, you will get an answer with the following structure:
YO3XYZ-9: 45.6 miles 346.10 deg NNW (2m ago)
which means that the node is active (last position was transmitted 2 minutes ago) and is placed at 45.6 miles distance, with 346 degrees NNW azimuth.
But, you can receive an answer which informs that the last position was sent 10 days ago (10d ago). That means that the YO3XYZ-9 is not active or does not use the assumed call sign.
In order to find the most recent active APRS call sign, send to WHERE the text YO3XYZ-*, meaning all possible SSIDs for this call sign. Can take some time until receive the answer, in case of call signs with intense activity in the APRS network and you will obtain results with the following format:
YO3XYZ-7: 45.6 miles 346.10 deg NNW (1m ago)
YO3XYZ-9: 3.7 miles 92.33 deg NNW (10d ago)
YO3XYZ-10: 21.2 miles 175.45 deg NNW (2w ago)
So, it is very possible that the used call sign in our scenario to be YO3XYZ-7. You can check this and to find the distance in kilometers, if is more appropriate for you, by sending to WHERE the text dis YO3XYZ-7 @km. The answer could be:
YO3XYZ-7: 71.16 km (2m ago)
In order to know if the APRS node is moving, supposing that you are staying (!), send a message to WHERE with the following texts:
alert YO3XYZ-7 > 46
and
alert YO3XYZ-7 < 44
To have answers in kilometers, add km after the alert distance. Each command will be followed by a confirmation, as follows:
Will alert you outside 46 miles of YO3XYZ-7
and
Will alert you within 44 miles of YO3XYZ-7
First command will alert you if the node moves away, with an answer like this:
Alert: YO3XYZ-7 is 46.2 miles 345.90 deg NNW (11:12:30 UTC),
while the second command will alert you when the node approaches:
Alert: YO3XYZ-7 is 43.9 miles 347.22 deg NNW (11:16:05 UTC)
Now that you know that node is moving, maybe you wish to know when it will approach the YO9C repeater. You need to know at which distance is the repeater from you position, so send a message to WHERE with the text YO9C-C4FM. The answer will be:
YO9C-C4FM: 71.41 miles 339.41 deg NNW (4m ago)
then, to the same WHERE, send the message
alert YO3XYZ-7 > 66
which means that you will be alerted when the node approaches closer to less than 5 miles (around 9 km) from YO9C.
If you wish to cancel the created alerts for call sign YO3XYZ-7, send a message to WHERE, with the text cancel YO3XYZ-7. This command will be confirmed with the following answer:
Alert for YO3XYZ-7 canceled
All these commands will not allow that the geographic position of the APRS node to be displayed on a map, in case that your transceiver is interfaced with an application which are able to perform such map. Even that, could be possible if, knowing the active call sign and the SSID, you send any text message to it. If the node is able to reply an automatic or a manual message to you, the digipitears between you and the remote APRS node will "transport" also the information regarding the geographic coordinates.
This feature is very useful to display on a map or to have on your transceiver's screen even call signs which enters the APRS network via Internet, which normally would not be possible even the APRS-IS node is in the same room with you. But, again, this feature is possible only if the tracked APRS node is able to transmit (manually or automatically) a reply message.
Another useful command can provides, for an APRS node, the geographical coordinates, in decimal format. Send a message to WHERE, with the text pos YO9C-C4FM and you will receive the answer:
YO9C-C4FM: 45.400667 25.469667 (4m ago)
A similar result you will obtain if you use the text loc callsign-SSID.
The utility is obvious: supposing you don't have Internet access, but you can run an application for offline maps, the command will offer you the necessary coordinates to show the APRS node on a map.
To the WHERE service (or WHERE-IS) you can also send the following commands:
- dir callsign-SSID provides the azimuth to the APRS node:
YO9-C4FM: 339.44 deg NNW (2m ago)
- last callsign-SSID provides the date and time when the APRS node sent last beacon:
YO3XYZ-9: 2019-01-13 17:42:19 UTC
2. Information about an APRS node
The data transmitted in the APRS network for a radio or Internet node, no older than two hours, can be obtained by sending a message to the QRZ service, with the text callsign-SSID. For example, for YO3KXL-10 digipeater you will get the following information:
YO3KXL-10 3.52mi E IGate Bucuresti Tint 36.1 °C, Text 35.2 ... 1 Hop TX Gate
Sent YO3KXL-10 (9m10s) IGATE[6] Digi[0] RemRF WB2OSZ DireWolf (15)
In this example, we obtain the distance and the azimuth to the repeater, general information and telemetry, when the beacon was sent and that was transmitted by radio and, in the and, the software used for the digipeater.
If a call sign used more SSIDs in the last two hours, the QRZ command helps also to identify them, by sending the text callsign* or callsign-*. For example, send to QRZ the message YO3D*. You will receive the following answer:
YO3D YO3D-DP
So, two YO3D nodes sent beacons in the last two hours and, in order to gather information about each one, you have to send again to QRZ the text YO3D and YO3-DP, respectively.
Keep in mind that, if there is a call sign YO3DXY, active in the last two hours, this will be displayed in the answer to the message containing the wildcard *, together with all the active SSIDs in the mentioned frame time. If the number of the returned call signs is to big, you will receive an answer like this:
12 Matches, Respecify
In this case, adding a dash before the wildcard (-*) became very necessary to eliminate the YO3DXY from the answer.RZ
The QRZ service can be very useful to find the wheater conditions provided by the WX APRS nodes. For example, a message to QRZ with the text LROP (which is the call sign of the APRS wheater station near the Otopeni airport), will return an answer like the following:
LROP 6.38mi NE WX: T:20°C H:94% W:7km/h_E HI:27 @ Bucur... WX Service
Sent LROP (24m35s) de YO8RXT-WX
Information about an APRS node can be fetched from www.qrz.com webpage, if the owner call sign is registered on this server. WHO-IS is the APRS service which allows the fetching of those information a nd accepts two commands: callsign and F callsign. The call sign is used without SSID, this parameter being unnecessary for QRZ server interrogation.
As example, send to WHO-IS the text message YO3KXL and you will obtain information about the owner and the origin country:
Faculty of Electronics & Telecommunications Amateur Radio Club/Romania
Using the second comand, F YO3KXL, you will obtain more detalied information, if are available in QRZ.com:
YO3KXL:Faculty of Electronics & Telecommunications Amateur Radio Club
YO3KXL:Bd. Iuliu Maniu 1-3, complex Leu - corp A, et.3, sector 6
YO3KXL:Bucharest Romania
3. The Announcement Server (ANSRVR)
The ANSRVR is a way to transmit announcements between APRS users, grouped on interest categories. The predecessor of this service was CQSRVR and, although was not closed, is very less used, because the ANSRVR functions are more evolved.
Using a simple analogy, but ignoring that the exchanged messages are not encrypted, the ANSRVR service is similar with the Whatsup application, making it possible to create groups and join them according to the topics of interest, in order to transmit or receive announcements, almost in real time.
To find out what groups are already available, send to ANSRVR a simple question mark, ?. The server will return a list with the existing groups, with the number of members in line with the each entry:
ANSRVR(2) APRS(2) APRSDROID(4) APRSFLYING(1)
APRSIS32(8) APRSISCAFE(4) APRSISCE(1) APRSSATS(3)
BALLOON(7) CQ (6) .....................................................
PLANES(4) PSAT(2) ROCKETS(6) RPRNET(6) SIBIU(2)
SKYWARN(2) ...............................................................
UPDATE: At the time of publication of this material, the ? command was disabled. At the first glance, the decision could be motivated by the too large number of groups to be displayed, which can lead to the congestion of the digipeaters in the radio networks. However. the D command generates a more detailed lists, which contains not only the name of groups and number of the members, but also the description and the owners of these groups. In these conditions, the provided information being more larger, try to use as little as possible (best, not at all) over a radio APRS network. But, being useful to have a list with the available ANSRVR groups, execute the D command only over the APRS-IS, identify the groups of interest and note them for future use.
More details about a group can be obtained if is sent to ANSRVR the test ? GROUP. For example, the text ? BALLOON will return the group description, the owner (the one who created the group) and the number of members:
BALLOON HA Balloon alerts Own:G6UIM
7 Members In BALLOON
Same details, but with a list of the group members, will be obtained if the text D GROUP will be send to ANSRVR. For APRSDROID group, will be returned:
APRSDROID(4) ANDROID APRS PLATFORM Own:KB1ZGF
Members[APRSDROID]: KB1ZGF N7FMH-15 GW8SZL-2 YO3FVR
4 Members In APRSDROID
If you intend to join a group, send to ANSRVR the command J GROUP. The joining to the group will be confirmed with the message
Now monitoring GROUP
To join more groups using a single command, send to ANSRVR the text K GROUP1 GROUP2 GROUP3 ..... The confirmation message will be:
Now monitoring GROUP1 GROUP2 GROUP3 .........
Both commands perform a silent join, the members of the mentioned groups being not aware about your action.
In case of this last command, remember that the maximum text length accepted for an APRS message is 67 characters.
There is another command that allows joining to a single group, but informing the members of the group. It is about the CQ command, which comes with the following additional features:
- Joining to an existing group and sending a mass message to the group
Send to ANSRVR server the text CQ GROUP TEXT. This command will send to the all GROUP members the desired TEXT message. For example, if you want to salute the members of the BALLOON group, send the command:
CQ BALLOON Hello dear Hams!
and all members connected to this group will receive your message. If you are not already a member of the group, the CQ command will also join you to it.
After you join a group, the membership is kept for 12 hours from the last joining command (J, K or CQ) or from the last message sent (CQ command). With other words, if you don't send a message for 12 hours within a group, you will be excluded and informed with the following message
GROUP_name Removed from Group
This exclusion is not a permanent one. You can join again, in any moment, by using any of the above commands: J, K or CQ.
Now, as a member of this group, you can inform the members about a balloon launching, by sending the command in the same way:
CQ Balloon YO3XYZ-11 launched
- Creating a new group
This is the next important feature of the CQ command: if the group's name, specified in the CQ body command, does not exists, a new group, with the mentioned name, will be created and the text message will become the description of this new group. If YO3XYZ wants to create an APRS information group for Romania, will send to ANSRVR the text:
CQ APRSYO APRS Romania
The confirmation message will be:
APRSYO New Group Description (APRS Romania)
An APRS user who will send the command ? APRSYO will receive:
APRSYO APRS Romania Own: YO3XYZ
23:44:23> 1 Members in APRSYO
If the owner (YO3XYZ) wants to change the group's description, will send to ANSRVR the text:
D APRSYO New description.
Supposing that the new description is Grup APRS Romania, the confirmation message will be:
Group (APRSYO) Description (Grup APRS Romania)
If the group's owner send the ? or D command to list all groups, his group will be prefixed by O:, which confirms that he is the owner of the group. In our case, YO3XYZ will see in the list O:APRSYO.
One important mention: the ownership over a group does not expire. A group can be deleted only if the owner discard it explicitly, by using the U command, described below.
The last two important ANSRVR commands are the following:
- L: lists the groups you belong to. The groups created by you will be included in this list and will be prefixed by O:
- U GRUP : send the command to leave a group. The confirmation message will be:
GRUP Removed From Group
If GRUP is the group owned by you, the U command will cause the group to be deleted, if is empty. If the group is not empty, you will be exclude and the new owner will become the oldest member of the group.
4. E-Mail Message
A special category of APRS commands is the one which allows the exchange of messages between the APRS network and E-Mail addresses from the Internet. Besides the obvious utility, of being able to send an e-mail message without having Internet access, there is another very important aspect: if a regular APRS message is transmitted to a node which does not "listen" to the network at that time (by radio or IS), the correspondent will not know that you have sent this message unless he access, separately, through the Internet, specialized WEB services, such as aprs.fi. The chances of your message to be read by the correspondent are much higher if it has been sent to an e-mail address, which is a much more convenient service and regularly accessed by the most "modern" users.
The communication with E-Mail servers is possible through several services, presented in the following:
4.1. The EMAIL-2 Service (managed by AE5PL)
It is so named because it is the successor of the EMAIL service, managed by WU2Z which, at the time of publication of this material, was no longer active. A very brief message could be sent to an E-Mail address, if a text was sent to the EMAIL service, with the following form:
mail@domain.com Text message
The EMAIL-2 service is similar with EMAIL, but with some additional facilities, including shortening destination email addresses, by creating "aliases", so that the E-mail message sent through APRS "wins" some characters, because the entire text sent through APRS cannot exceed the length of 67 characters.
So, if YO3DXY transmits to EMAIL-2 the text yo3xyz yo3xyz@gmail.com, he will create an yo3xyz alias for the GMail mentioned address. If YO3DXY wants to send an E-Mail message to YO3XYZ, he must transmit to EMAIL-2 the following text:
yo3xyz Listening on 145.225 MHz
The recipient E-Mail client will show a message with the subject
YO3DXY: Listening on 145.225 MHz
and the following header and body message:
YO3DXY <aprsemail2@ae5pl.net>
Sun 5/26/2017 9:42 PM
From: YO3DXY Listening on 145.225 MHz DO NOT REPLY Find YO3DXY at http://www.jfindu.net/find/YO3DXY Track YO3DXY at http://www.jfindu.net/track/YO3DXY Received from YO3DXY via APRS by EMAIL-2 More info at http://www.aprs-is.net/email.aspx
It is very useful to create an alias also for your own E-Mail address. For example:
yo3you yo3you@yahoo.com
Is useful because will be more easy to find your own aliases list, if you will send to EMAIL-2 the text
yo3you l
where the character “l” is the lower L letter. After you execute this command, on the E-Mail address mentioned behind your alias, will be send a message with the subject
YO3YOU-7: Shortcut List
the header
YO3YOU-7 <aprsemail2@ae5pl.net>
Sun 5/26/2017 9:50 PM
and body text
userid=>email
yo3xyz=>yo3xyz@gmail.com
yo3dxy=>yo3dxy@hotmail.com
In order to delete an entry from list of aliases, send to the EMAIL-2 the text
yo3xyz r
where yo3xyz is the alias which you want to remove from the list.
The service provided by AE5PL also offers another important feature: sending of E-Mail messages to an APRS node. In order to do this, the following conditions must be fulfilled:
- to create an alias for your own E-mail address, like was described above;
- the E-Mail address defined in this alias must be the exactly address configured on your E-Mail client. Do not use in this alias “E-Mail Forward” addresses, like QSL.NET.
- your E-mail address must be authorized by the destination APRS node. To do this, your correspondent must have previously created an alias, on EMAIL-2, with the address from which you will send the message. This means that the messages exchange between an E-mail server and an APRS node is possible only if both correspondents already exchange their E-mail addresses and associated them in appropriate aliases.
With other words, if YO3DXY wants to send an E-mail message to the YO3XYZ APRS node, he must tell to the last one, the E-mail address from where messages will come. If this address would be yo3dxy@yahoo.com, YO3XYZ will create an alias, by sending to EMAIL-2 the text
yo3dxy yo3dxy@yahoo.com
Only after YO3XYZ created this alias, YO3DXY will be able to send the E-mail message to the YO3XYZ node.
If all above conditions are fulfilled, YO3DXY can send to the node YO3XYZ-7, an E-mail message with the following structure:
Recipient:
aprsemail2@ae5pl.net
Subject:
YO3XYZ-7:Leave location in 5 mins
Body message:
userid:yo3dxy:
IMPORTANT: The recipient APRS callsign must be written only with capital letters in the subject, while the body message must not contains spaces.
It should also be mentioned that, the maximum length of the text entered as a subject (without taking into account the APRS node code), must not exceed 67 characters.
If all went well, meaning the message arrived at the destination and automatically confirmed (ACK) by the APRS node, YO3DXY will receive an E-mail a confirmation message with the following form:
Sender:
aprsemail2@ae5pl.net
Subject:
Delivered: YO3XYZ-7:Leave location in 5 mins
Body message:
APRS message "yo3dxy Leave location in 5 mins" sent to YO3XYZ-7 was acknowledged.
yo3dxy Leaving location in 5 mins.iode will look like this:
yo3dxy Leaving location in 5 mins.
If the the EMAIL-2 service does not receive the ACK confirmation from the recipient APRS node, after the first try, the sender will receive the following message:
Sender:
aprsemail2@ae5pl.net
Subject:
Delivery delayed: YO3XYZ-7:Leaving location in 5 mins
Body message:
APRS message "yo3dxy Leaving location in 5 mins" sent to YO3XYZ-7 is delayed.
The EMAIL-2 service will keep trying 4 times to send the message at intervals of one minute. When the number of tries will expire, the EMAIL-2 will assume that the APRS node service has no access to the radio network and will store the message for the next 24 hours. The recipient can check during these 24 hours if he received any message, by sending the text get to EMAIL-2. In case of YO3XYZ-7, he will read the following message:
yo3dxy Leaving location in 5 mins
while the sender (YO3DXY) will receive an E-mail message with the following content:
Sender:
aprsemail2@ae5pl.net
Subject:
Relayed: YO3XYZ-7:Leaving location in 5 mins
Body message:
APRS message "yo3dxy Leaving message in 5 mins" sent to YO3XYZ-7 was requested.
Same results will be obtained with the command ?APRSM sent to EMAIL-2.
If the message is not read by the recipient even after 24 hours, the sender will receive the following message in the mail:
Sender:
aprsemail2@ae5pl.net
Subject:
Undeliverable: YO3XYZ-7:Leaving location in 5 mins
Body message:
APRS message "yo3dxy Leaving location in 5 mins" sent to YO3XYZ-7 expired.
If the sender sent the E-mail message to another node, YO6ZYX- for example, and this last one did not authorize YO3DXY (meaning did not create an alias), the error message will be:
Subject:
Undeliverable: YO6ZYX-9:Leaving location in 5 mins
Body message:
Unable to send APRS message because Invalid Subject
If the used syntax in the message body (userid:alias:) is misspelled or alias is not a valid E-mail address or is not the E-mail address configured in the sender's mail client application, the error message will be:
Subject:
Undeliverable: YO3XYZ-7:Leaving location in 5 mins
Body message:
Unable to send APRS message because Invalid Sender
Credits
<will be filled very soon>