Monday, December 3, 2012

RTLSDR and High Altitude Ballooning

As I mentioned earlier, I have a vested interest in Amateur Radio and High Altitude Ballooning.  This past summer, I came across the existence of a new device called the RTLSDR, or RealTek Software Defined Radio.  It's a little USB device that you can plug a pigtail to an antenna into.  Mine came with a little magnet-mount antenna, but it's not very big, therefore it gets poor reception.  To remedy this, I acquired an MCX-to-SMA adapter, which I was able to link to an SMA-to-SO239 adapter, and finally onto a groundplane antenna that I built earlier this year and installed outside.  Reception increased significantly, as a result.  While it is not very efficient at picking up satellite transmissions, it's terrific for picking up AM/FM radio and Ham Radio transmissions.  Since APRS generally works in the area of 146Mhz, and that is what the groundplane antenna was built for, I was in luck.

A Groundplane antenna.  This is not mine, it belongs to KC8YVF.  This looks similar to mine.

Here is the completed groundplane antenna as I am holding it, before it was installed.

Recently, the California Near Space Project sent a high altitude balloon across the Atlantic Ocean.  It came to rest somewhere in the western portion of the Mediterranean Sea, breaking a world record.  Two days ago, they sent another long duration flight up.  Now that I knew about it, I was able to prepare.  I set GQRX to listen on the APRS frequency of 144.390Mhz.  Since we get some APRS traffic around, I was able to test it out to see how big of a window to set it to.  15khz seemed about right for the packets I was receiving, and since I wasn't getting any mangled packets, I figured it was a good place to keep it at.  Usually I run GQRX for a short amount of time - usually an hour or less.  I typically don't keep it running, as it is prone to the occasional crash.  However, since I was keeping it in one place, I didn't think that a crash was likely, so when CNSP-18 was over Colorado around 6:00AM CDT, I turned down my master volume after setting everything up, turned off the monitor and left for the day.  When I got home in the afternoon, I had a lot of traffic logged.  I didn't see K6RPT-12 right away, so I saved a copy of the log and searched it.  Sure enough, there were more than a few handfuls of telemetry!

Ubuntu 12.04 with Google Chrome running in the background and GQRX running in the foreground, complete with packet decoder window.  Enlightenment 17 is the window manager of choice.
Below is the traffic that I was able to collect.  It looks like there may have been some congestion on the APRS network since received packets were spaced apart about 10 minutes or so, while tracking via aprs.fi were generally about 2 minutes apart.  However, as the balloon got closer, the received signal grew, thus allowing less packet loss.  Conversely, as the balloon floated away toward Detroit, the number of packets decreased.  A lot of factors go into good and bad signals.  Distance is usually the key factor, but things such as wind gusts can throw some monkey wrenches into the works.


07:49:58$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-1 UI^ PID=F0
          }KC8SFQ-14>APWW10,TCPIP,N0AN*::K6RPT-12 :?APRSP
07:50:29$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          }KC8SFQ-14>APRS,TCPIP,N0AN*::K6RPT-12 :?APRSP
07:50:42$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4000.26N/09736.01WO082/150/A=103726V1D4    CNSP-18    CNSP-Inc.com.700
08:01:53$ fm K0SXY-0 to APU25N-0 via WA0ROI-1,W0ISU-0,WIDE2-0 UIv PID=F0
          }KC6VVT>APWW10,TCPIP,K0SXY*::K6RPT-12 :?APRSP
08:01:54$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-1 UI^ PID=F0
          }KC6VVT>APWW10,TCPIP,N0AN*::K6RPT-12 :?APRSP
08:01:56$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-1 UI^ PID=F0
          }KC6VVT>APRS,TCPIP,N0AN*::K6RPT-12 :?APRSP
08:10:44$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4007.27N/09633.39WO072/158/A=107579V1E5    CNSP-18    CNSP-Inc.com.700
08:27:06$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4016.34N/09553.40WO066/204/A=000095V1F6    CNSP-18    CNSP-Inc.com.700
08:50:42$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4024.13N/09412.49WO050/142/A=000101V200    CNSP-18    CNSP-Inc.com.700
08:52:34$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4047.54N/09409.75WO069/174/A=110837V211    CNSP-18    CNSP-Inc.com.700
08:54:34$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4031.37N/09405.15WO068/159/A=000101V211    CNSP-18    CNSP-Inc.com.700
08:56:34$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4051.56N/09355.87WO070/171/A=109987V211    CNSP-18    CNSP-Inc.com.700
08:56:37$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4051.56N/09355.87WO070/171/A=109987V211    CNSP-18    CNSP-Inc.com.700
09:02:58$ fm K0SXY-0 to APU25N-0 via WA0ROI-1,W0ISU-0,WIDE2-0 UIv PID=F0
          }W7BOZ-10>APWW10,TCPIP,K0SXY*::K6RPT-12 :?APRSP
09:06:54$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4101.42N/09320.35WO071/176/A=110673V211    CNSP-18    CNSP-Inc.com.700
09:24:33$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4118.17N/09214.06WO067/184/A=111368V211    CNSP-18    CNSP-Inc.com.700
09:24:36$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4118.17N/09214.06WO067/184/A=111368V211    CNSP-18    CNSP-Inc.com.700
09:26:33$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4113.38N/09206.77WO068/175/A=000108V200    CNSP-18    CNSP-Inc.com.700
09:28:28$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-1 UI^ PID=F0
          }N8NJ>APWW10,TCPIP,N0AN*::K6RPT-12 :?APRSP
09:28:33$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4122.91N/09158.98WO069/182/A=111736V200    CNSP-18    CNSP-Inc.com.700
09:32:33$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4127.01N/09143.91WO070/181/A=111516V200    CNSP-18    CNSP-Inc.com.700
09:34:33$ fm K6RPT-12 to APBL10-0 via WIDE2-1 UI^ PID=F0
          !4128.87N/09136.29WO072/182/A=111647V200    CNSP-18    CNSP-Inc.com.700
09:34:40$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4128.87N/09136.29WO072/182/A=111647V200    CNSP-18    CNSP-Inc.com.700
09:44:36$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4138.14N/09057.43WO072/185/A=111277V211    CNSP-18    CNSP-Inc.com.700
09:46:41$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4140.04N/09049.68WO072/181/A=111011V200    CNSP-18    CNSP-Inc.com.700
09:52:37$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4144.76N/09015.04WO072/198/A=000111V211    CNSP-18    CNSP-Inc.com.700
09:58:49$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4149.69N/09001.80WO076/191/A=110889V200    CNSP-18    CNSP-Inc.com.700
10:12:35$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4145.27N/08910.26WO080/187/A=000111V200    CNSP-18    CNSP-Inc.com.700
10:15:48$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4200.16N/08856.54WO078/182/A=111047V200    CNSP-18    CNSP-Inc.com.700
10:19:41$ fm N0AN-0 to APU25N-0 via W0ISU-0,WIDE2-1 UI^ PID=F0
          }VE3PWD-1>APRS,TCPIP,N0AN*::K6RPT-12 :?APRSP
10:26:35$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4154.51N/08812.68WO075/179/A=000111V200    CNSP-18    CNSP-Inc.com.700
10:34:37$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4159.33N/08741.31WO078/171/A=000114V211    CNSP-18    CNSP-Inc.com.700
10:36:39$ fm K6RPT-12 to APBL10-0 via W0ISU-0,WIDE2-0 UI^ PID=F0
          !4216.55N/08732.04WO075/168/A=109908V211    CNSP-18    CNSP-Inc.com.700
10:51:53$ fm K0SXY-0 to APU25N-0 via W0ISU-0,WIDE2-0 UIv PID=F0
          }DL2SCH>APRS,TCPIP,K0SXY*::K6RPT-12 :?APRSP