ADS-B SDR and Dump1090 performance

August 29th, 2013 -- Posted in SDR | No Comments »

Quite some time ago I’ve been testing ADS-B Mode S reception with a RTL-SDR dongle and various embedded devices using SoC. The results were very good, and therefore I dediced to make an outdoor enclosure to be as closer to the antenna as possible. At first I was experimenting with the raspberry pi, but I soon figured that on busy places with lot of air traffic the raspberry processor was not enough. So I went with RK3066 solution and managed to capture even more airplanes passing by. The problem was that RK3066 stick was overheating and CPU speed was throttled by the kernel so hypothetically there were some signals I was missing. All this until I discovered a fork of antirez dump1090 on github by MalcomRobb. The GUI looked better, with more features, and then I read on github that the whole Mode S decoding part had been re-written with performance in mind.
When I installed this fork of dump1090 (that is in my opinion the best ADS-B software until now) I was excited to find out that my CPU load had dropped! Take a look below:

RK3066 load before and after

You can clearly see that dump1090 was lighter now, and the processor was working less. This has also a side effect on board temperature that decreased drastically after this software upgrade:
RK3066 CPU temperature

Also the next day I figured that indeed I had a problem with kernel clock throttling and that this new fork of dump1090 is much better in terms of performance because I was able to capture much more ADS-B messages!
Unique planes above

Now what remains is to integrate dump1090 to a web site and show it to you 🙂

Asterisk GSM 3G voice gateway (FCT) using Raspberry pi and huwaei modem for under $100!

October 24th, 2012 -- Posted in voip | No Comments »

A success story today!
After playing for about one month with chan_dongle and Huawei dongles I’ve managed to compile and run it to raspberry! It makes a brilliant lightweight portable open source PBX with a GSM module consuming under 5W!!!

You have to take the following steps in order to make it work 🙂

Download the latest raspberry pi disto from http://www.raspberrypi.org/downloads
I used the wheezy 2012-09-18
After installing login via SSH and do:

apt-get update
upgrade
apt-get install gcc g++ make libnewt-dev libncurses5-dev openssl libssl-dev zlib1g-dev libxml2-dev
wget http://downloads.asterisk.org/pub/telephony/asterisk/old-releases/asterisk-1.6.2.24.tar.gz
tar xzf asterisk-1.6.2.24.tar.gz
cd asterisk-1.6.2.24/
vi makeopts.in and set PROC=arm
./configure
make
make install
make samples
cd
apt-get install subversion automake
svn checkout http://asterisk-chan-dongle.googlecode.com/svn/trunk/ dongle-read-only
cd dongle-read-only/
aclocal && autoconf && automake -a
./configure
make
make install
apt-get install usb-modeswitch
cp etc/dongle.conf /etc/asterisk/
vi /etc/asterisk/dongle.conf and set dongle0 to user /dev/ttyUSB1 for audio and /dev/ttyUSB2 for data

plug in you Huawei modem (make sure it has voice feature enabled and is chan_dongle compatible)
start asterisk and make a test call to your mobile number inserted in the dongle!!!

That’s it! Asterisk welcomes you to the world of open source software PBX!

GNUradio on Raspberry Pi

July 23rd, 2012 -- Posted in SDR | No Comments »

After about 2 days of messing with Debian on the Raspbery Pi I got an out of memory error during the compilation of UHD.
Seems like I have to cross compile. AGAIN…

[ 58%] Building CXX object lib/CMakeFiles/uhd.dir/usrp/usrp1/soft_time_ctrl.cpp.o
[ 59%] Building CXX object lib/CMakeFiles/uhd.dir/usrp/usrp1/usrp1_iface.cpp.o
[ 59%] Building CXX object lib/CMakeFiles/uhd.dir/usrp/usrp1/usrp1_impl.cpp.o

cc1plus: out of memory allocating 708240 bytes after a total of 22532096 bytes
make[2]: *** [lib/CMakeFiles/uhd.dir/usrp/usrp1/usrp1_impl.cpp.o] Error 1
make[1]: *** [lib/CMakeFiles/uhd.dir/all] Error 2
make: *** [all] Error 2
pi@raspberrypi:~/uhd/host/build$