GNURadio: Ubuntu 12.10 Instal GNURadio 3.3.0

From OnnoWiki
Jump to: navigation, search

ERROR:

qa_gri_mmse_fir_interpolator_cc.cc: In member function ‘void qa_gri_mmse_fir_interpolator_cc::t2_body()’:
qa_gri_mmse_fir_interpolator_cc.cc:91:9: error: ‘intptr_t’ was not declared in this scope
qa_gri_mmse_fir_interpolator_cc.cc:91:19: error: expected ‘)’ before ‘float_input’
qa_gri_mmse_fir_interpolator_cc.cc:92:60: error: expected ‘)’ before ‘;’ token
make[5]: *** [qa_gri_mmse_fir_interpolator_cc.lo] Error 1

Belum ada solusi


Handling USRP

Khusus untuk Ubuntu 12.10 kita tidak bisa menggunakan SYSFS, ganti menjadi ATTR, juga ada beberapa perubahan lainnya Referensi: http://ubuntuforums.org/showthread.php?t=1985915 dan http://askubuntu.com/questions/147272/problem-with-executing-udev-rules-for-olimexs-avr-usb-jtag

Ubuntu menggunakan udev untuk menangani hotplug devices, dan secara default tidak memberikan akses non-root ke USRP. Script berikut akan memberikan akses bagi user untuk menghandel USRP via USB baik secara live atau hot-plug.

sudo addgroup usrp
sudo usermod -G usrp -a <YOUR_USERNAME>
echo 'ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="fffe", ATTR{idProduct}=="0002", GROUP="usrp", MODE="0666"' > tmpfile
sudo chown root.root tmpfile
sudo mv tmpfile /etc/udev/rules.d/10-usrp.rules

Pada titik ini, Ubuntu telah di konfigurasi untuk tahu apa yang harus di kerjakan jika medeteksi USRP di USB tapi "udev" perlu me-reload rules untuk memasukan rules yang baru kita buat. Langkah berikut dapat dilakukan sehingga kita tidak perlu me-reboot komputer.

sudo udevadm control --reload-rules

atau

sudo /etc/init.d/udev stop
sudo /etc/init.d/udev start

atau

sudo killall -HUP udevd

Kita dapat mencek jika USRP telah di kenali dengan mengamati /dev/bus/usb setelah USRP di pasang menggunakan perintah

ls -lR /dev/bus/usb | grep usrp

Harusnya akan keluar seperti

crw-rw-r-- 1 root usrp 189, 131 Dec 20 09:40 004

Setiap USRP yang terpasang akan terdaftar pada group 'usrp' dan mode 'crw-rw----'.

Instal Library

Update

sudo apt-get update

Instal untuk Ubuntu 12.10

sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev swig \
g++ automake libtool python-dev libfftw3-dev \
libcppunit-dev libboost-all-dev libusb-dev fort77 \
libsdl1.2-dev python-wxgtk2.8 subversion git-core guile-1.8-dev \
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
python-cheetah python-lxml doxygen qt4-dev-tools \
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools \
libpcre3 libpcre3-dbg libpcre3-dev libpcrecpp0 \
python-wxgtk2.8 python-wxtools wx2.8-i18n libwxgtk2.8-dev libgtk2.0-dev \
autoconf libtool libosip2-dev libortp-dev \
libusb-1.0-0-dev g++ erlang qt4-qmake bison flex \
apache2 php5 php5-xmlrpc php5-mysql php5-gd php5-cli php5-curl \
mysql-client mysql-server libphp-adodb libgd2-xpm libgd2-xpm-dev \
php5-curl php-pear

Instal SWIG

Install secara manual SWIG

Download dari http://sourceforge.net/projects/swig/files/swig/
cp swig-2.0.9.tar.gz /usr/local/src/
cd /usr/local/src/
tar zxvf swig-2.0.9.tar.gz 
cd /usr/local/src/swig-2.0.9/
./configure
make
make install

Instal QWT

Install secara manual QWT

Download dari http://sourceforge.net/projects/qwt/files/
cp qwt-6.0.2.tar.bz2 /usr/local/src/
cd /usr/local/src/
tar jxvf qwt-6.0.2.tar.bz2 
cd /usr/local/src/qwt-6.0.2/
qmake
make
make install

Instal SDCC

SDCC 32 bit

Untuk Ubuntu 12.10 terpaksa harus instalasi Binary seperti langkah di berikut. Download binary dari

cp sdcc-3.1.0-i386-unknown-linux2.5.tar.bz2 /usr/local/src/
cd /usr/local/src/
tar jxvf sdcc-3.1.0-i386-unknown-linux2.5.tar.bz2 
cd /usr/local/src/sdcc
cp -r * /usr/local/

SDCC versi terbaru

Jika tidak bisa juga, dan terpaksa, maka install secara manual SDCC. Download dari

apt-get remove --purge  sdcc sdcc-libraries sdcc-doc
apt-get install bison flex
cp sdcc-src-20121221-8260.tar.bz2 /usr/local/src
cd /usr/local/src
tar jxvf sdcc-src-20121221-8260.tar.bz2
cd sdcc
./configure
make
make install

beberapa versi source yang error saat di compile adalah: 20121219-8246, 20121221-8260

SDCC

Agar bisa di compile 64 bit. Download dari

Compile untuk sdcc 2.8.0

cp sdcc-src-2.8.0.tar.bz2 /usr/local/src
cd /usr/local/src
tar jxvf sdcc-src-2.8.0.tar.bz2
cd sdcc
./configure
make
make install

beberapa versi source yang error saat di compile adalah: 2.9.0, 3.0.0, 3.1.0, 3.2.0

Test

Test menggunakan perintah

/usr/local/bin/sdcc -v

Untuk sdcc 2.8.0 akan keluar kurang lebih

SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.8.0 #5117 (Dec 22 2012) (UNIX)

Install GNURadio

Sebaiknya pada saat melakukan instalasi GNURadio, kita pasang USRP ke USB port-nya.

Download aplikasi GNURadio dari

http://gnuradio.org/redmine/attachments/download/261/gnuradio-3.4.1.tar.gz
http://gnuradio.org/redmine/attachments/download/279/gnuradio-3.4.2.tar.gz

Install GNURadio

cp gnuradio-3.3.0.tar.gz /usr/local/src/
cd /usr/local/src/
tar zxvf gnuradio-3.3.0.tar.gz 
cd /usr/local/src/gnuradio-3.3.0/
./configure --disable-usrp2 --enable-usrp
make clean
make all
make
make check
make install
sudo ldconfig

Edit bashrc

Masukan PYTHONPATH dengan cara mengedit

vi ~/.bashrc

Tambahkan

PYTHONPATH=/usr/local/lib/python2.7/dist-packages
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

Untuk memastikan ada baiknya lakukan

sudo ldconfig
export PYTHONPATH=/usr/local/lib/python2.7/dist-packages
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/


Test

Boot komputer. Sambungan USRP. Lakukan

cd /usr/local/src/gnuradio-3.4.2/gnuradio-examples/python/usrp
./usrp_benchmark_usb.py 

Hasilnya

Testing 2MB/sec... usb_throughput = 2M
ntotal    = 1000000
nright    = 998137
runlength = 998137
delta     = 1863
OK
Testing 4MB/sec... usb_throughput = 4M
ntotal    = 2000000
nright    = 1998117
runlength = 1998117
delta     = 1883
OK
Testing 8MB/sec... usb_throughput = 8M
ntotal    = 4000000
nright    = 3998437
runlength = 3998437
delta     = 1563
OK
Testing 16MB/sec... usb_throughput = 16M
ntotal    = 8000000
nright    = 7998859
runlength = 7998859
delta     = 1141
OK
Testing 32MB/sec... usb_throughput = 32M
ntotal    = 16000000
nright    = 15996766
runlength = 15996766
delta     = 3234
OK
Max USB/USRP throughput = 32MB/sec


ERROR SDCC

Keluar error:

USRP requires sdcc version 2. sdcc not found. See http://sdcc.sf.net
Unable to find firmware compiler SDCC.

Solusi:

  • Install binary sdcc 2.x
  • Compile sdcc tidak jalan karena sdcc 3.x

Referensi

Pranala Menarik

Persiapan

OpenBTS 2.6

OpenBTS 2.8

Multi OpenBTS 2.8

Ettus E110

GPRS

Power Amplifier

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah

Dokumentasi Video