
It is an APRS client application running on Google Android OS.
It has no interface to a radio transceiver.

Smart phone with Android OS 1.6 or later

I am using the Android emulator and Sony Ericsson SO-01B for the development and test of U2APRS. I am not sure if it works on other devices, but Kobashi-san JL1LCW reported me that he successfully got it to work on Samsung Galaxy S. Kowata-san JF7ELG reported me that U2APRS is working on his Toshiba REGZA phone. Cris G4HYG reported me that U2APRS is working on his HTC Hero. Howard VK4BS reported me that it is working on his LG Optima. Charlie AI4RI reported me that it is running on his HTC droid ERIS on Verizon. Ken G0PPM is using U2APRS on his Sony X10 mini. Krzysztof sp3fyk and Rick KD4KBO got it to work. Arnaldo PY4BL runs U2APRS on his Galaxy S and GT-I9000B. Curt WE7U reported got it to work on his Viewsonic G-table with Vegan-5.1.1 ROM.
Thanks to all who sent me reports. 73!

| Version | Date released | Note |
|---|---|---|
| 0.6.5 | July 31, 2011 | Added notification to the status bar for message and bud sensor. |
| 0.6.4 | July 13, 2011 | Added bud sensor (TNX to JF1UMK). Changed the APRS-IS connection protocol from HTTP to UDP. |
| 0.6.1 | June 25, 2011 | Added landscape view (TNX to KD4KBO). |
| NA | June 19, 2011 | JO7PRF reported that U2APRS stopped working after the OS update (2.1 to 2.2) on his REGZA PHONE. Uninstall and reinstall U2APRS will solve this problem. Thanks to Ohhashiba-san, JO7PRF. |
| 0.6.0 | June 18, 2011 | Added APRS symbol mode. |
| 0.5.8 | June 5, 2011 | Added a simple GPS viewer. Fixed minor bugs. |
| 0.5.6 | May 1, 2011 | Added an option that disables the GPS search when the GPS on-demand mode starts (TNX to
JL1LCW). Fixed minor bugs. |
| 0.5.2 | April 13, 2011 | Added a function that allows the user to change the button and text sizes on the main page Added a link to the U2APRS web page (this page) in the setup menu. |
| 0.5.1 | March 31, 2011 | Added "Keep screen on" mode (TNX to KD4KBO) |
| 0.4.8 | February 17, 2011 | Added the GPS on demand mode (TNX to KD0FTJ & JL1LCW). |
| 0.4.5 | February 11, 2011 | Added HTTP protocol for position uploading Added an option for vibration on receiving messages Cleaned up the setup window Improved the server reconnection routine Fixed several bugs |
| 0.4.2 | January 28, 2011 | Registered APDUxx to TOCALL of APRS (TNX to WB4APR). |
| 0.4.1 | January 13, 2011 | Fixed debug mode bug. |
| 0.3.9 | January 9, 2011 | Changed the IME mode (TNX to JL1LCW). |
| 0.3.8 | January 7, 2011 | Changed the prompt timing of callsign input (TNX to JF7ELG) |
| 0.3.7 | January 5, 2011 | Fixed an invalid APRS longitude/latitude problem. |
| 0.3.6 | January 4, 2011 | Added position ambiguity function. Fixed minor bugs. |
| 0.3.4 | December 30, 2010 | Fixed bugs in the version number for connecting the APRS server. |
| 0.3.1 | December 25, 2010 | Fixed minor bugs. |
| 0.3.0 | December 23, 2010 | Changed the start-up procedure according to the wireless networks and GPS satellite settings of the Android device. |
| 0.2.8 | December 18, 2010 | Fixed minor bugs. |
| 0.2.5 | December 13, 2010 | Added Japanese menu. |
| 0.2.4b | December 12, 2010 | Fixed GPS mode bug. However, Kobashi-san JL1LCW reported that the GPS on his Galaxy S (Android OS 2.2) is not turned off when U2APRS is terminated. |
| 0.2.0 | November 27, 2010 | Timestamp added to the message display. The screen orientation of the message composer changed to unspecified. TNX to JL1LCW. |
| 0.1.8 | November 27, 2010 | If the GPS on the phone is not turned on, U2APRS suggests you turn it on.
TNX to JA6CFI If U2APRS does not see any activities on the TCP/IP connection, it tries to reconnect to the server. |
| 0.1.6 | November 23, 2010 | Fixed the bug logging in by NOCALL call sign. |
| 0.1.4 | November 21, 2010 | Added AutoComplete for the message composer. |
| 0.1.3 | November 18, 2010 | Fixed the server error message. |
| 0.1.2 | November 15, 2010 | Restore the status bar. TNX to JL1LCW |
| 0.1.1 | November 14, 2010 | Fixed message transmission problems. Moved the beacon button. Increase the height of the tab. Changed the text size. TNX to JL1LCW. |
| 0.1.0 | November 13, 2010 | First release. |
Please note that U2APRS is available only on this page. It is not on the Android market.
Hit the button at the bottom left of your phone. Tap Settings.
You will see Settings window.
Tap Applications.

Check the Unknown sources checkbox in the Application settings.

Note: George K3RQ told me that his AT&T Galaxy S does not have the Unknown sources option. To install the applications that are not on the Android Market, you might want to try this procedure. Thank you, George!
Be sure to have "Use wireless networks" and "Use GPS satellites" in the Location & security settings checked.

Open this page with a browser of your android device. Click on the link to U2APRS.apk and download it. You will see the download history as shown below.

Tap and install it.
When you start U2APRS for the first time, it will ask you to input your callsign. Input your call there. You might want to add SSID following your call, such as JA7UDE-5.

Scroll down the view and locate APRS server, Port, and Passcode entries. Change them to proper values.

Make sure you have set your APRS validation number to Passcode. The APRS validation number consists of five digits.
Push the return key of the android device to go to the main window. You will soon see an Android robot with Mark R in the center of the window.

Mark R means U2APRS is locating your position using Radio (3G or WiFi). So your position is not exactly where you are. You can use GPS instead of Radio, which is explained later, for precisely locating your position.
If you have the following dialog "Connecting to APRS server," and get no response for a while, hit the return key of the device. Make sure your phone is connected to the Internet. Check the APRS server address and port in the Setting menu of U2APRS.


If you have successfully logged in an APRS server, the color of the Send beacon and Manual buttons become solid. If they are transparent, you failed to log in the APRS server. Check the APRS server address, port, and passcode settings.
U2APRS consists of three tabs: Main, aprs.fi, and Message.
The Main tab shows your position and trace.

Pushing the Send beacon button at the top left corner; then click on the aprs.fi tab to see if your beacon is stored in the APRS-IS database.
The default icon is PHONE, which can be changed in the menu.

By the way, many thanks to OH7LZB Hessu for your great contribution to the APRS world. We just cannot live without it.

If the text-to-speech tool is installed in your device, U2APRS reads the incoming messages for you.
You can compose a reply by tapping the message.

The microphone button triggers the speech recognition.
Press the menu button and tap Setup to open the setup menu.


| Title | Description | Default value | |
|---|---|---|---|
| Station definition |
Call sign | Your callsign, which is possibly followed by SSID (e.g., JR7BON-5) | NOCALL |
| Station symbol | APRS symbol | /$(PHONE) | |
| Use APRS symbol | Use an APRS symbol for the position icon in the main window | OFF | |
| Position | Beacon interval (sec) | Interval time (seconds) for beaconing | 600 seconds |
| Travelling distance (m) | When you have travelled this distance, U2APRS sends a beacon | 1000m | |
| Ambiguity | Mask one to four least significant digits of the position data | OFF | |
| Position source | Radio: 3G or WiFi GPS: GPS |
Radio | |
| GPS on demand | The GPS receiver is turned on when it is needed. | OFF | |
| Search GPS on start | Search GPS when the GPS on demand mode is started. | ON | |
| GPS search time (sec) | The time for GPS search | 10 seconds | |
| Direction change (deg) | Direction change limit for beacon triggering | 0 degrees | |
| Comment | Comment added to the beacon | U2APRS | |
| Bud sensor | Bud list | List of callsigns you want to track | Empty |
| Sensor operation | Turn the bud sensor on/off | OFF | |
| Voice notice | Speak the callsign when detected | OFF | |
| Vibrate | Vibrate when detected | OFF | |
| Message | Monitoring messages | Me: Only the messages to me are shown My country: The messages in your country are shown All: All the messages are shown |
Me |
| Auto message tab | When you receive a message, U2APRS displays the message tab | ON | |
| Vibration on receive | Vibrate the device when you received a message to you | OFF | |
| Voice synthesis | Speech synthesis | ON | |
| Voice recognition | Voice recognition | ON | |
| Automatic reply | Automatic reply to the incoming message | ON | |
| Automatic reply message | Automatic reply message | Thanks for your message | |
| Show message acknowledge | Show acknowledge | ON | |
| APRS server |
Protocol | Protocol for position uploading | TCP |
| Server address (TCP) | APRS server address for TCP | lax.aprs2.net | |
| Server port (TCP) | APRS server port for TCP | 14580 | |
| Server address (HTTP) | APRS server address for HTTP | srvr.aprs-is.net | |
| Passcode | APRS-IS server login code (five digits) | -1 | |
| Login filter | APRS-IS server login filter | t/m | |
| Show server messages | Show APRS-IS server messages | OFF | |
| Miscellaneous | Keep screen on | When U2APRS is running foreground, the screen lock is disabled. | OFF |
| U2APRS version | Version | 0.5.6 as of May 1, 2011 | |
| Credit | Thanks to | WB4APR for APRS, OH7LZB for aprs.fi |
Tapping the U2APRS entry of the setup menu brings you to the U2APRS web page (this page)

Long tapping on the map brings you to that position. The character on the android robot is changed to F.

You could send a beacon as if you were there (pretending mode?).
To return to the normal mode, push the Unfix button at the bottom right corner of the window.
The GPS receiver consumes a lot of battery energy. An idea to mitigate it is to activate the GPS receiver only when you want to get the position. That is to say, GPS on demand. However, an APRS mobile station is supposed to send a beacon when it has traveled more than the specified distance, for example, 500 meters. If the GPS is not operating, we cannot obtain the position, and therefore cannot know how long we have traveled. Without the information of the traveling distance, the APRS mobile station would have to power the GPS receiver on, get the position data, and send a beacon at the predefined regular intervals.
In addition, we have to take account of the GPS start-up time. It takes some time for the GPS receiver to capture the GPS satellites and calculate the current position. The time for GPS capturing depends on many factors, such as the satellites' position, radio wave strength, and GPS receiver sensitivity.
In the meantime, Rob KD0FTJ gave me an interesting idea (TNX Rob). Most Android phones have a direction sensor built in. Supposing the power dissipation of the direction sensor is less than that of the GPS receiver, the direction sensor could be used to trigger the beacon.
Here is the strategy. If the interval timer expires or if the device direction changes more than the preset value, U2APRS turns the GPS receiver on. It then waits for the GPS receiver to get the position. If the GPS receiver provides the position data to U2APRS in the predefined time, send an APRS beacon. If the GPS receiver does not, U2APRS gives up sending an APRS beacon and wait for the next trigger.
Go to the setup window.

Setting 0 to the direction change value disables the direction change trigger, and thus the beacons are always driven by the interval timer.

Likewise, you could change the size of other buttons and texts on the main page

To give Android OpenGL a try, I have implemented a simple GPS satellite viewer.
In the GPS mode (not Radio mode), tap the text at the bottom right corner of the main window.

Green circles represent GPS satellites. The brighter the green color, the stronger the radio strength.

I have added an option that displays your position by an APRS symbol instead of an Android robot.
Check Use APRS symbol checkbox in the setup menu.

Small R on the left shoulder of the ICON indicates that your position is located by using Radio. When you are using GPS to locate your position, small G is shown.

Bud sensor notifies you of activities of your buds in the APRS-IS net.
Open the setup menu. Scroll down to the Bud sensor category.

Tap Bud list to open the bud list editor. Input callsigns you want to "watch over" their activities. As you can see the figure below, you can use * as the wild card. The maximum number of callsigns is 20 (Enough? I do not have many friends, hi).

Check or uncheck each box left to the call sign field. Only checked call signs are watched over.

When you have finished the input, tap the device's return button.

Check Sensor operation. Check Voice notice if you want the device to speak the notice. Check Vibrate if you want the device to vibrate with the notice.

Tap the device's return button. It should be noted that U2APRS automatically attempts to reconnect to the APRS-IS server. So, hold on a second.
When U2APRS detects the activities of your buds, it displays an orange toast in the center of the device window. The screen shot below shows that JA7UDE-5 has just sent a beacon.

You want to send him an APRS message? Go to the message tab and tap his packet.

The message composer window pops up. Enter your message and hit the Send button.

You want to see where he is moving? Long tap his packet.

You will be directed to the aprs.fi tab.

OK, JA7UDE-5 is in the center of Sendai city.

Enjoy!

A few screen shots here.



U2APRS is freeware. The author of this software accepts no responsibility for damages resulting from the use of this product and makes no warranty or representation, either express or implied, including but not limited to, any implied warranty of merchantability or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume all risks when using it.
APRS is a registered trademark of APRS Software and Bob Bruninga, WB4APR.