APRS (Automatic Packet Reporting System) is a digital communications system used in amateur radio to transmit real-time tactical information, including GPS positions, weather data, messages, and telemetry.
An APRS passcode is a numeric code generated from your amateur radio callsign. It's used to authenticate your connection to the APRS-IS (APRS Internet Service) network, allowing you to transmit data to the global APRS network via the internet.
Yes. To transmit on APRS frequencies, you must hold a valid amateur radio license. However, you can receive APRS data and use this passcode generator without a license.
No. The APRS passcode is not a security mechanism. It's a simple validation code to confirm you have a callsign. Amateur radio operates on the principle of open communication, and all transmissions are public.
- Enter your amateur radio callsign in the input field
- Click "Get Passcode!" button
- Your passcode will be displayed immediately
Example:
- Callsign:
N0CALL - Passcode:
13023
Enter your callsign in any of these formats:
- Base callsign:
W1ABC - With dash:
W1ABC-9 - With SSID:
W1ABC-5 - Lowercase works too:
w1abc
The generator accepts:
- ✅ Letters (A-Z)
- ✅ Numbers (0-9)
- ✅ Dashes (-)
- ❌ Special characters (@, #, $, etc.)
- ❌ Spaces
Common reasons:
- Special characters in the callsign
- Spaces in the input
- Empty input
- Non-alphanumeric characters (except dash)
Yes! The passcode works with:
- APRS-IS servers
- APRS software (APRSdroid, APRSISCE/32, Xastir, etc.)
- IGates and digipeaters
- Web services (aprs.fi, aprsdirect.com)
- Any APRS-IS client
SSID (Secondary Station Identifier) indicates the type of station:
| SSID | Typical Use |
|---|---|
| -0 | Default (no SSID shown) |
| -1 | Fixed station, generic |
| -2 | Fixed station, alternate |
| -3 | Fixed station, alternate |
| -4 | Fixed station, alternate |
| -5 | Other network |
| -7 | Handheld |
| -8 | Marine/boats |
| -9 | Mobile (car, truck) |
| -10 | Internet gateway |
| -11 | Balloon |
| -12 | Emergency operations |
| -14 | Truck |
| -15 | Generic additional station |
The passcode uses a specific algorithm:
function generateAprsPasscode(callsign) {
let hash = 0x73e2; // Starting value: 29666
let i = 0;
while (i < callsign.length) {
hash ^= callsign.charCodeAt(i) << 8;
hash ^= callsign.charCodeAt(i + 1);
i += 2;
}
return hash & 0x7fff; // Mask to 15 bits
}No. The passcode is generated from the base callsign only:
W1ABC→ 12345W1ABC-9→ 12345W1ABC-5→ 12345
All generate the same passcode.
Depends on your country:
- North America: 144.390 MHz
- Europe: 144.800 MHz
- Australia: 145.175 MHz
- Japan: 144.640 MHz
- New Zealand: 144.575 MHz
See APRS-GUIDE.md for complete frequency list.
While technically possible, APRS is primarily a VHF (2-meter band) system. Most APRS activity is on VHF frequencies. UHF is rarely used for APRS.
- APRS: Radio frequency network (over-the-air)
- APRS-IS: Internet Service (TCP/IP network)
- IGate: Bridge between APRS RF and APRS-IS
Minimum requirements:
- Amateur radio license
- VHF radio (2-meter band)
- TNC (Terminal Node Controller) or smartphone
- GPS receiver
- APRS software
Budget setup (~$70):
- Baofeng UV-5R radio: $25
- USB GPS receiver: $30
- Sound card cable: $15
- Dire Wolf software: Free
Depends on your platform:
Mobile:
- Android: APRSdroid (free, excellent)
- iOS: PocketPacket (paid, $9.99)
Desktop:
- Windows: APRSISCE/32
- Mac: YAAC, Xastir
- Linux: Xastir, Dire Wolf
All platforms:
- YAAC (Java-based)
- Web: aprs.fi
Not necessarily. Options:
-
Software TNC (Recommended for beginners)
- Dire Wolf (free, excellent)
- Soundcard + radio + PC
-
Hardware TNC
- Mobilinkd TNC3 (Bluetooth)
- Traditional TNCs (KPC-3+, etc.)
-
Built-in APRS
- Some radios have APRS built-in
- Kenwood TM-D710GA, Yaesu FTM-400XDR
-
Smartphone
- APRSdroid + Bluetooth TNC
- APRSdroid + audio cable to radio
Connection string format:
user CALLSIGN-SSID pass PASSCODE vers SOFTWARE VERSION filter FILTER
Example:
user W1ABC-9 pass 12345 vers APRSClient 1.0 filter r/42.3/-71.1/100
Popular APRS-IS servers:
rotate.aprs2.net:14580(automatic routing)noam.aprs2.net:14580(North America)euro.aprs2.net:14580(Europe)
Check:
- ✅ Correct callsign entered
- ✅ No SSID in passcode generation (use base call)
- ✅ Server connection string format
- ✅ Internet connection
- ✅ APRS-IS server is online
Common issues:
-
No IGate coverage in your area
- Solution: Set up an IGate or use APRS-IS directly
-
Wrong frequency
- Check your country's APRS frequency
-
Incorrect path settings
- Use:
WIDE1-1,WIDE2-1
- Use:
-
Antenna issues
- Check connections and SWR
-
Low power
- Increase transmit power if possible
Smart beaconing recommended:
- Stopped: Every 30 minutes
- Slow movement: Every 10-15 minutes
- Highway speed: Every 1-2 minutes
- Turn > 30°: Immediate beacon
Never:
- Faster than every 10 seconds
- Use WIDE3-3 or higher paths
- Beacon when not needed
Tips to reduce power consumption:
- Increase beacon interval
- Lower transmit power (if range allows)
- Use smart beaconing
- Turn off unnecessary features
- Use GPS power save mode
Yes. All APRS data is public:
- Position reports
- Messages (unless using APRS encryption, which is rare)
- Weather data
- Telemetry
This is by design - amateur radio is an open service.
No, if you're transmitting APRS. Options:
- Don't transmit position reports
- Use receive-only mode
- Don't use APRS for privacy-sensitive applications
APRS itself is legal, but:
- You need an amateur radio license
- Frequency allocations vary by country
- Some countries restrict certain APRS uses
- Check your local regulations
No. Amateur radio is for:
- Personal wireless communications
- Technical investigations
- Emergency communications
- NOT for business or commercial use
No. This application:
- Runs entirely in your browser
- Doesn't send data to any server
- Doesn't store or log any information
- Doesn't use cookies or tracking
- Is completely client-side
Yes! After loading the page once:
- The app works offline
- Passcode generation is client-side
- No internet connection needed for generation
Currently 10 languages:
- 🇬🇧 English
- 🇪🇸 Spanish (Español)
- 🇨🇳 Chinese (中文)
- 🇮🇳 Hindi (हिन्दी)
- 🇸🇦 Arabic (العربية)
- 🇧🇷 Portuguese (Português)
- 🇧🇩 Bengali (বাংলা)
- 🇷🇺 Russian (Русский)
- 🇯🇵 Japanese (日本語)
- 🇫🇷 French (Français)
Yes! See CONTRIBUTING.md for guidelines.
Yes! Licensed under MIT:
- Source code on GitHub
- Free to use, modify, and distribute
- Contributions welcome
Yes! APRS is excellent for emergencies:
- Track emergency personnel
- Report damage and needs
- Coordinate resources
- Send messages when other systems fail
Use your region's standard APRS frequency:
- Don't change frequencies during emergencies
- Everyone monitors the standard frequency
- Consistency is critical for coordination
Most APRS software has an emergency button that:
- Sends high-priority beacon
- Includes "EMERGENCY" in the message
- May increase beacon rate
- Alerts nearby stations
Format: Status message starting with "EMERGENCY:"
- Current position
- Status updates
- Resource requests
- Shelter locations
- Damage reports
- Personnel tracking
- Weather conditions
- Documentation: docs/APRS-GUIDE.md
- Technical Specs: docs/TECHNICAL-SPECS.md
- Resources: docs/RESOURCES.md
- Issues: GitHub Issues
- aprs.org - Official APRS site
- aprs.fi - Global tracking
- Reddit /r/amateurradio - Community
- Local ham radio clubs - In-person help
José Carrillo (m@carrillo.app)
- Amateur radio enthusiast
- Open source contributor
Based on the original work by DO3SWW.
See CONTRIBUTING.md for:
- Bug reports
- Feature requests
- Code contributions
- Documentation improvements
- Translations
Please open an issue with:
- Description of the bug
- Steps to reproduce
- Expected behavior
- Screenshots (if applicable)
Last Updated: December 2025
Didn't find your question? Open an issue and ask!