๐ This is the NA7Q enhanced build of the original APRSdroid developed by NA7Q with extensive additional features and improvements specifically designed for advanced amateur radio operators. This is a work in progress with active development and regular updates.
NA7Q APRSdroid is a powerful, extensively enhanced Android application developed by NA7Q based on the original APRSdroid. This version adds numerous professional-grade features while maintaining seamless integration with the APRS (Automatic Packet Reporting System) network. This build is a work in progress, and some features may be incomplete or broken at the time of download as development actively continues.
- ๐ Real-time Position Reporting - Share your location with the APRS network
- ๐บ๏ธ Interactive Station Map - Visualize nearby amateur radio stations with offline mapping
- ๐ฌ APRS Messaging - Send and receive messages through the network
- ๐ Network Integration - Full compatibility with APRS infrastructure
- ๐จ Modern Android UI - Clean, intuitive interface designed for mobile use
Based on the official feature list from NA7Q:
- ๐ Digipeater - Direct or full digipeating capabilities
- ๐ 2-Way IGating - Full Internet Gateway functionality
- ๐ถ Flexible Packet Routing - Send packets via RF and APRS-IS, or RF only while IGating
- ๐๏ธ Radio Control - Support for Vero, BTech, Radioddity, and other radios
- ๐ป DigiRig Support - Seamless integration with DigiRig interfaces
- ๐ต Bluetooth Low Energy - Stable BLE support (now stable and near completion!)
- ๐บ๏ธ Offline Maps with MBTiles - Complete offline operation capability
- ๐ MapsForge V3 Support - NEW! Enhanced offline mapping with MapsForge
- ๐ OpenStreetMap Integration - Full OSM compatibility for mapping
โ ๏ธ Note: This version does not include the Google Maps API for enhanced privacy and reduced dependencies
- ๐๏ธ Mic-E Compression - Efficient position encoding
- ๐จ Mic-E Emergency Status - Including EMERGENCY status support
- ๐ Standard Compression - Multiple compression formats supported
- ๐ Unit Options - Choose between Metric or Imperial units
- ๐ง Hardware Control - Option to disable hardware acceleration
- ๐ Enhanced Station Viewer - Added speed and course information
- ๐ฌ Advanced Messaging Tweaks - Features for power users
- ๐ Message ID Control - Option to disable Message ID
- ๐ Smart Hub Log - Sort by distance or newest stations
- ๐ Under-the-Hood Improvements - Numerous performance and stability enhancements
NA7Q is actively developing additional features, including:
- ๐ค๏ธ Improved APRS Parser - Enhanced data parsing capabilities
- โ๏ธ Weather Readability - Better weather data display
- ๐ Altitude in Hub Log - Show altitude information
- ๐ฅ๏ธ Full Screen Mode - Immersive display option
- ๐ฑ Mobile HUD Integration - Enhanced heads-up display
- ๐ Device Identifier in Hub - Better station identification
- ๐ง BLE Bug Fixes - Crash fixes for BLE device selection
- ๐ APRS Message Query Commands - Support for ?APRSM and similar
- ๐ญ MICE Code Cleanup - Improved Mic-E implementation
- ๐ Enhanced Beacon Types - List menu for beacon selection
- ๐จ MICE Emergency Alerts - Alert system for emergency status
- ๐ก Station Path Display - Show direct vs digipeated stations
- โ And Much More!
โ ๏ธ Important: Uninstall any previous OFFICIAL version of APRSdroid before installing NA7Q's version
- Download the latest APK from release page
- Optional: Download the Mobile HUD APK from https://na7q.com/aprsdroid-osm/ (experimental, landscape mode recommended)
- Install both APKs on your Android device
For Android 11+ devices, manual storage permissions are required for offline mapping files:
- In APRSdroid settings, go to OSM Maps category
- Tap "Grant Storage Permissions"
- Grant ALL file permissions for device storage access
- Set map viewer to OpenStreetMap.org to use offline maps
- Configure offline maps in the OSM Maps preferences section
NA7Q provides several tools for downloading offline maps:
- ๐ World Map - Ready-to-use world map
- ๐ฅ๏ธ OSM Map Maker (Windows) - Windows GUI tool
- ๐ Python Map Maker - Python script version
- ๐บ๏ธ Multi-Map Maker - Advanced mapping tool
- ๐๏ธ Map Viewer - Preview downloaded maps
- ๐ BBBike MapsForge - Alternative map source
Map Requirements:
- Use MBTiles format (PNG or JPG, NOT Vector/PBF)
- Specify precise locations like "Portland, Oregon" or "Texas USA"
- Zoom levels 1-18 (recommend 13-14 for states)
- Note: Large areas at high zoom can be 2-5GB+
- ๐ NA7Q APRSdroid Homepage
- ๐ Changelog
- ๐ Original APRSdroid FAQ
- โ๏ธ Original APRSdroid Configuration Guide
- ๐ง Contact NA7Q - Check QRZ for contact information
NA7Q APRSdroid has had over 1851 downloads and the Mobile HUD has had 400 downloads, making it a valuable resource for the amateur radio community. This project is developed and maintained by NA7Q as a labor of love for fellow amateur radio enthusiasts.
Your support helps fund continued development, new features, and keeps NA7Q APRSdroid free for the amateur radio community! ๐
If you like the work NA7Q has put into this enhanced APRSdroid, please consider supporting on Patreon!
APRSdroid is crafted in Scala using the gradle-android-scala-plugin. While the compilation process is robust, please note:
- โฑ๏ธ Full builds take approximately 3 minutes
- ๐ Incremental builds may occasionally produce non-functional APKs
- ๐บ๏ธ Google Maps API key required for map functionality
- โ Java 8 JDK
- ๐ Git for version control
- ๐บ๏ธ Google Maps API Key (Get yours here) - Optional, only if you want Google Maps support
โ ๏ธ This enhanced fork does NOT include the Google Maps API for improved privacy and reduced dependencies. The app uses offline mapping solutions (MBTiles and MapsForge) instead. If you require Google Maps functionality, you can build the app from source and add your own API key following the build instructions below.
sudo apt-get install -y git openjdk-8-jdk vim-nox wget unzip
cmdline_tool_file="commandlinetools-linux-6609375_latest.zip"
export ANDROID_SDK_ROOT="$(pwd)/android"
mkdir -p "${ANDROID_SDK_ROOT}"
wget "https://dl.google.com/android/repository/${cmdline_tool_file}"
unzip "${cmdline_tool_file}" -d "${ANDROID_SDK_ROOT}/cmdline-tools"
rm -f "${cmdline_tool_file}"
export PATH="${ANDROID_SDK_ROOT}/cmdline-tools/tools/bin:${PATH}"
export PATH="${ANDROID_SDK_ROOT}/platform-tools:${PATH}"
export PATH="${ANDROID_SDK_ROOT}/emulator:${PATH}"
mkdir "${ANDROID_SDK_ROOT}/licenses"
echo 24333f8a63b6825ea9c5514f83c2829b004d1fee > "${ANDROID_SDK_ROOT}/licenses/android-sdk-license"
echo 84831b9409646a918e30573bab4c9c91346d8abd > "${ANDROID_SDK_ROOT}/licenses/android-sdk-preview-license"
sdkmanager --install emulator 'system-images;android-24;default;armeabi-v7a'
git clone https://github.com/na7q/aprsdroid/
cd aprsdroid
git submodule update --init --recursive
# replace AI... with your API key:
echo "mapsApiKey=AI..." > local.properties
# for a debug build:
./gradlew assembleDebug
# for a release build:
./gradlew assembleRelease
This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details.
We welcome contributions from the amateur radio community! Whether you're fixing bugs, adding features, or improving documentation, your help makes APRSdroid better for everyone.
Made with โค๏ธ by Amateur Radio operators, for Amateur Radio operators
73 and happy APRSing! ๐ก