Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
APRSdroid can be used in different ways, according to your requirements. By default, it connects to APRS via the Internet (APRS-IS) and deploys SmartBeaconing™ for position reports. If you want to change its configuration, there are three main areas you should consider:
- APRS Settings (your callsign and SSID, plus eventual passcode for APRS-IS)
- Position Reports (how and how often your position is reported)
- APRS Connection (how you connect to a radio or the APRS-IS network)
For your own position reports, you can choose among the following configurations (“Location Source”):
- SmartBeaconing™ (position is posted automatically depending on your movement speed)
- Periodic position reports (you can use the GPS or the network location feature here, reducing the position precision)
- Manual position entry (e.g. for tablets which stay at home; use this to completely disable position reporting)
There are also several ways to connect to the APRS network (“Connection Protocols”):
- APRS-IS – APRS over the Internet, using a WiFi or mobile data connection
- Connection with a TNC (currently supported only using a Bluetooth-Serial adapter, “Bluetooth-TNC”) attached to a radio
- Direct audio connection to a radio (AFSK)
- Kenwood APRS-capable HT/Mobile integration (APRSdroid simulates a NMEA-GPS to feed the Kenwood and parses its waypoint output)
Callsign and passcode
These values are used to identify you as a HAM radio operator.
The passcode is required by the APRS-IS network and not specific to APRSdroid. You can use your existing APRS-IS passcode or request a passcode if you are new to APRS-IS.
No passcode is required if you want to directly connect APRSdroid to a radio or TNC.
The SSID represents the basic type of device you want to represent. Typical values are 5 for a 3G device, 7 for handheld, 9 for mobile or 10 for APRS-IS.
Symbol and Comment
In the APRS symbol field you can enter the text representation of your symbol.
/$ represents a Phone (booth) icon,
/[ is a running person. Please check the APRS symbol reference for a full list and encoding rules. You can use overlay symbols as well!
The comment can contain information about yourself, it is recommended to add your QRG in it: just write the frequency as xxx.xxxMHz or use other optional fields.
Location Source and Settings
Choose how APRSdroid will obtain your geographic location, and how often it will report it.
Your position is posted according to your movement speed and direction. Currently, no settings are possible, the update interval is between 15s (corner-pegging) and 20min.
You can set the Minimum update time interval in minutes and update distance in km. The values for distance and interval are always checked together, before an update is sent. This is meant to reduce the traffic on the APRS radio band.
If you want to send updates every minute, regardless of your movement, you have to set the following:
- Update interval: 1 [min]
- Update distance: 0 [km]
Unfortunately, there is no easy way in Android to receive location updates when either condition is met, without using too much battery.
The GPS precision setting allows to tune position quality vs. battery use. Low will use the first GPS result available; Medium will keep GPS on for 30 seconds and use the latest result; High will keep GPS on all the time. It is recommended to use SmartBeaconing™ instead of the High setting.
The Network location option allows to use GSM/3G and WiFi networks to obtain your position. This data is not very precise (100m..10km) and can cause duplicate position reports. However, it has a significantly lower battery use than GPS.
You can enter your coordinates as decimal values. Enter negative values for south and west. As an example, the center of Los Angeles would be:
- Latitude: 34.052222
- Longitude: -118.243611
If you want to keep your position private, disable Automatic Posting. Your position will only be announced if you use the Single Shot button. However, you may not receive messages to your callsign without posting your position.
You can “hide your tracks” by setting the position ambiguity of your reports or disable the posting of speed and/or direction.
It is not recommended to use this in combination with SmartBeaconing™.
Use this setting to choose how APRSdroid should connect into the APRS network. You can configure the chosen protocol using Connection Preferences.
The following protocols are available as of 1.2.2:
This connects you to the APRS-IS network. It is the default and suggested connection type and allows to fully utilize APRSdroid over the Internet.
This setting maintains a bidirectional connection to an APRS-IS server, as long as the tracking service is running.
You can use the Neighbor radius to set the area you are interested in, and the Message filter to receive selected packets, e.g. from your buddies or for balloon tracking.
UDP (not recommended)
The packet is sent via UDP to port 8080. This is unreliable and packets may be lost without a message. Nevertheless, because there is no feedback, APRSdroid shows them as “UDP OK”. You need to check an external reference like aprs.fi to see if your packets actually arrived.
Possible server: srvr.aprs-is.net
HTTP POST (not recommended)
Packets are sent via HTTP. This is more reliable than UDP, however causes higher traffic.
Possible server: srvr.aprs-is.net
This allows to connect APRSdroid to a TNC using a Bluetooth serial (SPP) adapter.
You need to pair the bluetooth serial adapter in the Android Bluetooth preferences, then you can use it to connect to a TNC in KISS mode.
It is possible to set the Bluetooth channel to connect to the TNC (leave empty for auto-discovery of SPP).
To initialize the TNC, you can set a TNC init string. Multiple lines can be entered, APRSdroid will wait the init delay time after each newline.
In some cases you might have a Bluetooth device operating in client mode (initiating a connection to your smartphone). For these seldom situations (or to directly connect two Androids), you can disable Client Mode.
AFSK via Speaker/Mic
You can connect an audio cable (or a bluetooth headset) to your radio transceiver. APRSdroid will modulate its packets directly via AFSK and decode incoming transmissions.
The High-Quality Demodulator is based on javAX25 by Sivan, 4X6IZ and requires Android 2.2 and a modern CPU to operate. However, it provides a significant boost in decoding quality and allows to use a Bluetooth headset.
Set the Frame Sync Prefix in [ms] to fine-tune your VOX control. AFSK output is on the left channel. Be sure to turn off ring tones and notifications from your phone/tablet to keep them from being transmitted inadvertently.
Enable this to see additional information from the connection backend in the APRSdroid Log.
Display and Notifications
Keep screen on
When APRSdroid is the foreground activity, the screen will be kept on. This has a significant effect on the battery!
You can configure notifications for incoming messages and outgoing position reports.