Sunday, January 06, 2013

Raspberry Pi progress (RTL_ADSB, WSPR, WSJT and Dump1090 all compiled)

This year, Santa was kind enough to bring me a Raspberry Pi computer for Christmas. I'd been aware of them throughout the year, but had become much more interested recently when I started to see some real solid amateur radio applications for the device.

The idea of having a £25 computer which could be tasked with running programs like WSJT or WSPR was very attractive, as well as being a handy machine for web browsing and general internet use (I'm writing this post on the Pi, for example).

Pete 2E0SQL had posted about getting RTL_SDR running on the Pi which was a very useful and interesting. The only issue that I had was with libusb1.0 - because I was compiling it seemed that I needed to install the libusb-1.0.0-dev package. Once I did that, everything worked well.

Initially, I tried the Remote_SDR which certainly worked, although was a little stuttery. What was more interesting to me was the rtl_adsb program, which I was able to use to decode ADSB messages from aircraft and send these across the network to the Windows laptop running ADSBScope. This was done simply by piping the output of rtl_adsb using netcat as follows:

rtl_adsb |netcat -lp portnumber (where the portnumber is where ADSBScope is pointing)

I was impressed and this worked pretty well and the receiver and decoder seemed sensitive - considering the antenna was downstairs and away from a window.

Dave G4FRE had posted about compiling WSPR on his Raspberry Pi which made a great basis for getting WSPR going.

I had to amend my configure statement as follows:

./configure -with-portaudio-include-dir=/usr/include -with-portaudio-lib-dir=/usr/lib/arm-linux-gnueabihf

Finally, when I ran the make install, I got an error which was quite terminal!

(no rule to make target mept162.f needed by Stop

However, Googling around a little, I found that a number of people had had the same issues compiling the latest release of WSPR, so I downloaded the 2840 version from the repository using the following command:

svn co -r2840

I still needed to use the amended configure statement but this seemed to work ok. The program compiles up and starts and I was able to select a USB sound card. I haven't yet tried a decode (the Pi is in the lounge and not the shack!) but will aim to do that soon.

Next to compile was WSJT and I used Dave G4FRE's post to guide me. There were no nasty surprises requiring too much thought and the process was simple and straightforward.

Finally, was a new ADSB decoder that could be used with an RTLSDR device. Called Dump1090 it was written by Salvatore Sanfilippo that I saw mention of on Twitter - this was very simple to get going:

git clone git://

cd dump1090

Once the program was built, I particularly liked running Dump1090 in interactive mode with the RTLSDR dongle in one of the USB Hub slots connected to the Pi

./dump1090 --interactive

This produces a simple, but interesting list of aircraft that the the decoder is seeing. Unlike any of the other decoders I've used recently, it gives an interesting indication of the sheer volume of messages that are being decoded.

It was good fun getting these different programs working and remembering some of my lost Unix skills!

Thanks particularly to Pete 2E0SQL and Dave G4FRE for their inspiration for these experiments.


Anonymous said...


exept WJST I tested all of the stuff you did. If you are realy interested in ADS-B you have to use dump1090 at the moment. I does a better job then rtl_adsb. It just takes about 30% CPU in 700MHz mode of RPi. RTL_ADSB takes 100% CPU there.

You can do dump1090 --raw | nc -lp port, too. Then plug Planeplotter, adsbScope or VirtualRadar to it.


Tim said...

Hi - by the way - it was your question about the WSPR compile that led to me finding the problem - thank you!

Just exploring dump1090 and it looks good.

73, Tim

NZGolly said...

I've also installed and made dump1090 but everytime I run it it says that no RTLSDR device found. It is plugged in to a USB port! Running ADSBox with my Beast receiver works fine. Is there something other than just dump1090 I'm supposed to install? I'm running Ubuntu 12.04 LTE. Any advice would be very welcome.


Tim said...

Hi Mike,

Hmm - that's a good question. Have you tried installing RTL_SDR. I wonder if that would help?



Related Posts with Thumbnails