APRS
目录 |
1 Modem
- MicroModem: http://unsigned.io/
2 Decode APRS with RTL SDR
RTL2832U
- sdr windows driver: http://rtlsdr.org/softwarewindows
- sdr-radio V2: http://v2.sdr-radio.com/Support/RTLSDRs.aspx
- AGW Packet Engine http://www.sv2agw.com/downloads/default.htm
- AGWTracker
pi@raspberrypi ~ $ rtl_fm -f 144640000 -s 22050 - | multimon -a AFSK1200 -t raw /dev/stdin multimod (C) 1996/1997 by Tom Sailer HB9JNX/AE4WA available demodulators: POCSAG512 POCSAG1200 POCSAG2400 EAS AFSK1200 AFSK2400 AFSK2400_2 HAPN4800 FSK9600 DTMF ZVEI SCOPE Enabled demodulators: AFSK1200 Found 1 device(s): 0: Realtek, RTL2838UHIDIR, SN: 00000013 Using device 0: ezcap USB 2.0 DVB-T/DAB/FM dongle Found Rafael Micro R820T tuner Oversampling input by: 46x. Oversampling output by: 1x. Buffer size: 8.08ms Tuned to 144893575 Hz. Sampling at 1014300 Hz. Output at 22050 Hz. Exact sample rate is: 1014300.020041 Hz Tuner gain set to automatic. AFSK1200: fm BH1RBH-7 to SYUYT9-0 via WIDE1-1,WIDE2-1 UIv pid=F0 `,6gl-+K\>= AFSK1200: fm BH1RBH-7 to SYUYT7-0 via WIDE1-1,WIDE2-1 UIv pid=F0 `,6glA,K\>=
pi@raspberrypi ~ $ rtl_fm -f 144640000 -s 22050 - | multimon-ng -a AFSK1200 -A -t raw /dev/stdin Found 1 device(s): 0: Realtek, RTL2838UHIDIR, SN: 00000013 Using device 0: ezcap USB 2.0 DVB-T/DAB/FM dongle multimon-ng (C) 1996/1997 by Tom Sailer HB9JNX/AE4WA (C) 2012/2013 by Elias Oenal available demodulators: POCSAG512 POCSAG1200 POCSAG2400 EAS UFSK1200 CLIPFSK AFSK1200 AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTMF ZVEI1 ZVEI2 ZVEI3 DZVEI PZVEI EEA EIA CCIR SCOPE Enabled demodulators: AFSK1200 Found Rafael Micro R820T tuner Oversampling input by: 46x. Oversampling output by: 1x. Buffer size: 8.08ms Tuned to 144893575 Hz. Sampling at 1014300 Hz. Output at 22050 Hz. Exact sample rate is: 1014300.020041 Hz Tuner gain set to automatic. APRS: BH1RBH-7>SYUYT9,WIDE1-1,WIDE2-1:',6fl##K\>=
SDR Gateway:
pi@raspberrypi ~/pymultimonaprs $ rtl_fm -f 144640000 -s 22050 -p 0 -g 42 - | multimon-ng -a AFSK1200 -A -t raw /dev/stdin Found 1 device(s): multimon-ng (C) 1996/1997 by Tom Sailer HB9JNX/AE4WA (C) 2012/2013 by Elias Oenal available demodulators: 0: Realtek, RTL2838UHIDIR, SN: 00000013 Using device 0: ezcap USB 2.0 DVB-T/DAB/FM dongle POCSAG512 POCSAG1200 POCSAG2400 EAS UFSK1200 CLIPFSK AFSK1200 AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTR SCOPE Enabled demodulators: AFSK1200 Found Rafael Micro R820T tuner Oversampling input by: 46x. Oversampling output by: 1x. Buffer size: 8.08ms Tuned to 144893575 Hz. Sampling at 1014300 Hz. Output at 22050 Hz. Exact sample rate is: 1014300.020041 Hz Tuner gain set to 42.00 dB. APRS: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1:'vX K\>EPRS=
pi@raspberrypi ~/pymultimonaprs $ pymultimonaprs -v [2013-05-26 00:26:42] INFO: connecting... 192.168.1.200:14580 [2013-05-26 00:26:42] INFO: connected [2013-05-26 00:26:42] INFO: # aprsc 2.0.3-g898e4b5 [2013-05-26 00:26:42] INFO: login BH1RBH-1 (PyMultimonAPRS 0.8.4) [2013-05-26 00:26:42] INFO: # logresp BH1RBH-1 verified, server COMCAT [2013-05-26 00:26:44] DEBUG: sending: BH1RBH-1>APRS,TCPIP*:=3959.40N/11627.00 [2013-05-26 00:26:44] DEBUG: sending: BH1RBH-1>APRS,TCPIP*:>Running on Raspberry Pi [2013-05-26 00:26:49] DEBUG: sending: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1,qAR,BH1 [2013-05-26 00:27:50] DEBUG: sending: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:'vX K\>EPRS= [2013-05-26 00:34:40] DEBUG: sending: BH1RBH-7>APK003,WIDE1-1,WIDE2-1,qAR,BH1RBH-1::EPRS :test{0
2013-05-23 14:43:17 CST: BH1RBH-7>SYUYQ1,WIDE1-1,WIDE2-1,qAS,BY1WJ:`,7ml*<K\>= 2013-05-23 14:52:01 CST: BH1RBH-7>SYUYQ1,WIDE1-1,WIDE2-1,qAS,BY1WJ:',7ll,'K\>= 2013-05-23 14:53:12 CST: BH1RBH-7>SYUYQ1,WIDE1-1,WIDE2-1,qAS,BY1WJ:`,7ll"-K\>= 2013-05-23 14:53:54 CST: BH1RBH-7>SYUYQ0,WIDE1-1,WIDE2-1,qAS,BY1WJ:',7ml"-K\>= 2013-05-23 14:54:56 CST: BH1RBH-7>SYUYQ0,WIDE1-1,WIDE2-1,qAS,BY1WJ:',7ll"-K\>= 2013-05-26 00:26:49 CST: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:'vX<0x1c><0x1c> <0x1c>K\>EPRS= [Latitude and longitude are both 0] 2013-05-26 00:27:50 CST: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:'vX<0x1c><0x1c> <0x1c>K\>EPRS= [Latitude and longitude are both 0]
3 结构
Tier 2 Network: http://www.aprs2.net/
Tier 2 Network Server Monitor: http://www.aprs2.net/mon.htm
Tier 2 Server List: http://www.aprs2.net/APRServe2.txt
4 网关 (iGate)
4.1 Windows
- aprsg, aprx, or aprs4r in Linux
- APRSIS32 in Windows
http://www.g4ilo.com/usblink.html
4.2 Linux
Intro: http://www.aprs-is.net
- javAPRSSrvr for all platform
- aprsc for UNIX/Linux
5 协议
5.1 AFSK
音频频移键控,物理层协议。用两个音频音调表示 0 和 1
5.2 AX.25
数据链路层协议
- RAW data: http://aprs.fi/?c=raw
5.3 向 APRS-IS 直接推送消息
1. 连接服务器
$ nc 66.109.111.25 14580 # aprsc 2.0.0-gf5e3f21
2. 登陆
直接向 APRS 网络推送消息,需要身份验证,需要业余无线电呼号和 passcode。passcode 的申请,请写一个申请 email 给 pete@ae5pl.net
$ nc 66.109.111.25 14580 # aprsc 2.0.0-gf5e3f21 user YOUR_CALL_SIGNE pass YOUR_PASSCODE -1 ver "manual login".net
成功后会看到服务器返回:
# logresp YOUR_CALL_SIGNE verified, server FIFTH
3. 推送消息
YOUR_CALL_SIGNE>APDR12,TCPIP*,qAC,T2CSNGRAD::EMAIL :aprs-go@gmail.com testing via aprs{1
很快你就能在推送消息的服务器监控页里: http://66.109.111.25:14501 看到有你呼号的那一行的 'Packets Rx' 列,记数加了一个
可以在这个地址直接查看:http://aprs.fi/?c=raw&call=YOUR_CALL_SIGNE 刚刚推送的消息
5.4 RAW Data 分析
APRSdroid 发送:
2013-04-15 07:20:39 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2GYOR::EMAIL :help.eprs@gmail.com testing via aprs{1 2013-04-15 07:22:09 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2GYOR::EMAIL :help.eprs@gmail.com testing via aprs{1 2013-04-15 07:43:11 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2GYOR:=4000.00N/11631.20E$ http://aprsdroid.org/ 2013-04-15 07:43:11 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2GYOR::EMAIL :help.eprs@gmail.com testing via aprs{1 2013-04-15 23:06:00 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM:=4000.00N/11631.20E$ http://aprsdroid.org/ 2013-04-15 23:06:00 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM::EMAIL :help.eprs@gmail.com testing via aprs{1 2013-04-15 23:06:00 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM::SMS :help.eprs@gmail.com testing msg {1 2013-04-15 23:08:58 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM:=4000.00N/11631.20E$ http://aprsdroid.org/ 2013-04-15 23:08:58 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM::SMS :help.eprs@gmail.com testing msg {1 2013-04-15 23:08:58 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2HAM::EPRS :tesing msg msg{1 2013-04-16 06:45:48 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD:=4000.00N/11631.20E$ http://aprsdroid.org/ 2013-04-16 06:45:48 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD::EMAIL :help.eprs@gmail.com testing via aprs{1 2013-04-16 06:45:48 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD::EPRS :tesing msg msg{1 2013-04-17 02:42:03 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD:=4000.00N/11631.20E$ http://aprsdroid.org/ 2013-04-17 02:42:03 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD::EPRS :tesing msg msg{1 2013-04-17 03:04:20 CDT: BY1WJ-5>APDR12,TCPIP*,qAC,T2CSNGRAD::EPRS :tesing messages{1
手持台发送:
2013-05-22 23:52:01 PDT: BH1RBH-7>SYUYQ1,WIDE1-1,WIDE2-1,qAS,BY1WJ:',7ll,'K\>= 2013-05-25 09:26:49 PDT: BH1RBH-7>0PPPZZ,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:'vX<0x1c><0x1c> <0x1c>K\>EPRS= [Latitude and longitude are both 0] 2013-05-25 09:38:42 PDT: BH1RBH-7>APK003,WIDE1-1,WIDE2-1,qAR,BH1RBH-1::EPRS :test{0 2013-05-25 19:57:51 PDT: BH1RBH-7>APK003,WIDE1-1,WIDE2-1,qAR,BH1RBH-1::EMAIL :liuhelga@gmail.com eprs testing msg via aprs{3 2013-05-25 20:33:32 PDT: BH1RBH-7>APK003,WIDE1-1,WIDE2-1,qAR,BH1RBH-1::BH1DCY-9 :73{5 2013-05-26 19:03:32 PDT: BH1RBH-7>3YUYZL,WIDE1-1,WIDE2-1,qAS,BY1WJ:`,6tl?XK\>EPRS= 2013-05-26 19:04:21 PDT: BH1RBH-7>3YUYZL,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:`,6zlR}K\>EPRS= 2013-05-28 23:26:08 PDT: BH1RBH-7>3YUYQ1,APRSAT,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:`,7ll"H[/>EPRS= 2013-05-28 23:27:55 PDT: BH1RBH-7>3YUYQ1,APRSAT,WIDE2-1,qAR,BH1RBH-1:`,7ml!t[/>EPRS= 2013-05-29 18:36:08 PDT: BH1RBH-7>3YUYS6,WIDE1-1,qAR,BH1RBH-1:`,6ulRg[/>EPRS= 2013-05-29 20:40:40 PDT: BH1RBH-7>0PPPPP,BH1RBH-1,WIDE2-1,qAS,BY1WJ:'vX<0x1c><0x1c> <0x1c>[/>EPRS= [Latitude and longitude are both 0] 2013-05-29 20:41:59 PDT: BH1RBH-7>0PPPPP,BH1RBH-1,qAS,BY1WJ:'vX<0x1c><0x1c> <0x1c>[/>EPRS= [Latitude and longitude are both 0] 2013-05-30 20:58:33 PDT: BH1RBH-7>APK003,WIDE1-1,WIDE2-1,qAS,BY1WJ::BH1RBH-7 :home alarm!{9 2013-05-30 21:18:59 PDT: BH1RBH-7>3YUYQ1,WIDE1-1,WIDE2-1,qAR,BH1RBH-1:`,7ml"q[/>EPRS= 2013-05-30 21:42:38 PDT: BH1RBH-7>3YUYQ0,WIDE1-1,WIDE2-1,qAS,BY1WJ:`,7ml5![/>EPRS=
5.5 MIC-E
http://www.tapr.org/kits_mic-e.html#message_format
https://github.com/hessu/aprsc/blob/master/src/parse_aprs.c [parse_aprs_mice]
5.6 APRS PATH
http://www.kd5om.com/aprspaths.htm
6 APRS Satellites
Operational: GO32, semi: PCSAT1, Echo, ISS2, decayed: PCSAT2, ANDE, RAFT, and in-work, P-sat
APRS on ISS: http://www.ariss.net/index.cgi?absolute=1
APRS on NO-44: http://www.findu.com/cgi-bin/pcsat.cgi?absolute=1
ISS/APRS FAQ: http://www.aprs.org/iss-faq.html
7 HF APRS