Difference between revisions of "GNURadio: Ubuntu 12.10 Instal GNURadio 3.4.2"

From OnnoWiki
Jump to navigation Jump to search
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
'''ERROR:'''
 +
Waktu compile GNURadio 3.4.2 keluar 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:98:19: error: cast from ‘float*’ to ‘int’ loses precision [-fpermissive]
 +
 +
 +
'''Solusi''''
 +
 +
belum ada ... *pening*
 +
 +
 +
 +
 +
 +
 
==Handling USRP==
 
==Handling USRP==
  
Line 108: Line 124:
 
  apt-get remove --purge  sdcc sdcc-libraries sdcc-doc
 
  apt-get remove --purge  sdcc sdcc-libraries sdcc-doc
 
  apt-get install bison flex
 
  apt-get install bison flex
  cp sdcc-src-20121219-8246.tar.bz2 /usr/local/src
+
  cp sdcc-src-20121221-8260.tar.bz2 /usr/local/src
 
  cd /usr/local/src
 
  cd /usr/local/src
  tar jxvf sdcc-src-20121219-8246.tar.bz2
+
  tar jxvf sdcc-src-20121221-8260.tar.bz2
 
  cd sdcc
 
  cd sdcc
 
  ./configure
 
  ./configure
Line 116: Line 132:
 
  make install
 
  make install
  
===SDCC versi 2.9.0===
+
beberapa versi source yang error saat di compile adalah: 20121219-8246, 20121221-8260
 +
 
 +
===SDCC===
  
 
Agar bisa di compile 64 bit. Download dari
 
Agar bisa di compile 64 bit. Download dari
Line 122: Line 140:
 
* http://sourceforge.net/projects/sdcc/files/sdcc/
 
* http://sourceforge.net/projects/sdcc/files/sdcc/
  
Compile
+
Compile untuk sdcc 2.8.0
  
 
  cp sdcc-src-2.8.0.tar.bz2 /usr/local/src
 
  cp sdcc-src-2.8.0.tar.bz2 /usr/local/src
Line 132: Line 150:
 
  make install
 
  make install
  
beberapa versi source yang error saat di compole adalah: 2.9.0
+
beberapa versi source yang error saat di compile adalah: 2.9.0, 3.0.0, 3.1.0, 3.2.0
  
 
===Test===
 
===Test===
Line 140: Line 158:
 
  /usr/local/bin/sdcc -v
 
  /usr/local/bin/sdcc -v
  
Akan keluar seperti di bawah ini
+
Untuk sdcc 2.8.0 akan keluar kurang lebih
  
  DCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.7.0 #4818 (May 31 2007) (UNIX)
+
  SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.8.0 #5117 (Dec 22 2012) (UNIX)
  
 
==Install GNURadio==
 
==Install GNURadio==
Line 185: Line 203:
  
 
* modifikasi OpenBTS.config agar TRX.Path "../Transceiver52M/transceiver".
 
* modifikasi OpenBTS.config agar TRX.Path "../Transceiver52M/transceiver".
 +
 +
 +
===Patch untuk intptr_t===
 +
Edit
 +
 +
cd /usr/local/src/gnuradio-3.4.2
 +
vi gnuradio-core/src/lib/filter/qa_gri_mmse_fir_interpolator_cc.cc
 +
 +
Isi
 +
 +
#define intptr_t int
 +
intptr_t rval = 127;
  
 
===Compile & Install===
 
===Compile & Install===
Line 191: Line 221:
 
  ./configure --disable-usrp2 --enable-usrp
 
  ./configure --disable-usrp2 --enable-usrp
 
  make clean
 
  make clean
make all
 
 
  make
 
  make
 
  make check
 
  make check
Line 261: Line 290:
 
==ERROR SDCC==
 
==ERROR SDCC==
  
'''Keluar error:'''
+
'''ERROR:'''
  
 
  USRP requires sdcc version 2. sdcc not found. See http://sdcc.sf.net
 
  USRP requires sdcc version 2. sdcc not found. See http://sdcc.sf.net
Line 270: Line 299:
 
* Install binary sdcc 2.x
 
* Install binary sdcc 2.x
 
* Compile sdcc tidak jalan karena sdcc 3.x
 
* Compile sdcc tidak jalan karena sdcc 3.x
 +
 +
 +
'''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
 +
 +
'''Solusi:'''
 +
 +
Edit
 +
 +
cd /usr/local/src/gnuradio-3.4.2
 +
vi gnuradio-core/src/lib/filter/qa_gri_mmse_fir_interpolator_cc.cc
 +
 +
Isi
 +
 +
#define intptr_t int
 +
intptr_t rval = 127;
 +
  
 
==Referensi==
 
==Referensi==
Line 302: Line 353:
 
* [[GNURadio: Ubuntu Install GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu Install GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu Install GNURadio 3.4.2 Clock 52MHz]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu Install GNURadio 3.4.2 Clock 52MHz]] '''RECOMMENDED'''
 +
* [[GNURadio: Ubuntu 13.04 Install GNURadio 3.4.2 Clock 52MHz]] '''RECOMMENDED'''
 
* [[GNURadio: Contoh Aplikasi]]
 
* [[GNURadio: Contoh Aplikasi]]
 
* [[GNURadio: Spectrum Analizer GSM]]
 
* [[GNURadio: Spectrum Analizer GSM]]
Line 308: Line 360:
 
* [[OpenBTS: Ubuntu Install]] '''RECOMMENDED'''
 
* [[OpenBTS: Ubuntu Install]] '''RECOMMENDED'''
 
* [[OpenBTS: Ubuntu Install OpenBTS 2.6 Clock 52MHz]] '''RECOMMENDED'''
 
* [[OpenBTS: Ubuntu Install OpenBTS 2.6 Clock 52MHz]] '''RECOMMENDED'''
 +
* [[OpenBTS: Ubuntu 13.04 Install OpenBTS 2.6 Clock 52MHz]] '''RECOMMENDED'''
 
* [[OpenBTS: Konfigurasi]] '''RECOMMENDED'''
 
* [[OpenBTS: Konfigurasi]] '''RECOMMENDED'''
 
* [[OpenBTS: Kalibrasi]]
 
* [[OpenBTS: Kalibrasi]]
Line 328: Line 381:
 
* [[GNURadio: Install UHD]]
 
* [[GNURadio: Install UHD]]
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.3.0]]
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.3.0]]
 +
* [[GNURadio: Ubuntu 12.10 Instal GNURadio 3.3.0]]
 +
* [[GNURadio: Ubuntu 12.10 Instal GNURadio 3.4.1]] ''NOT RECOMMENDED''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu 12.04 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu 12.04 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 +
* [[GNURadio: Ubuntu 12.04.1 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 +
* [[GNURadio: Ubuntu 12.10 Instal GNURadio 3.4.2]] ''NOT RECOMMENDED''
 +
* [[GNURadio: Ubuntu 13.04 Instal GNURadio 3.4.2]] '''RECOMMENDED'''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.0]] ''NOT RECOMMENDED''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.0]] ''NOT RECOMMENDED''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.3.2]] ''NOT RECOMMENDED''
 
* [[GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.3.2]] ''NOT RECOMMENDED''
Line 343: Line 401:
 
* [[OpenBTS: 2.8 dari SVN Install]]
 
* [[OpenBTS: 2.8 dari SVN Install]]
 
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz]] '''RECOMMENDED'''
 
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz]] '''RECOMMENDED'''
 +
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz di Ubuntu 12.10]] '''RECOMMENDED'''
 +
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz di Ubuntu 13.04]] '''RECOMMENDED'''
 
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz dengan UHD tanpa GNURadio]] ''NOT RECOMMENDED''
 
* [[OpenBTS: 2.8 dari SVN Install Clock 52MHz dengan UHD tanpa GNURadio]] ''NOT RECOMMENDED''
 
* [[OpenBTS: 2.8 Edit User di sqlite3.db]] '''RECOMMEND'''
 
* [[OpenBTS: 2.8 Edit User di sqlite3.db]] '''RECOMMEND'''
 
* [[OpenBTS: Yate Softswitch]] '''RECOMMENDED'''
 
* [[OpenBTS: Yate Softswitch]] '''RECOMMENDED'''
 +
* [[OpenBTS: Yate Softswitch install Ubuntu 12.10]] '''RECOMMENDED'''
 
* [[OpenBTS: Yate Config Test]]
 
* [[OpenBTS: Yate Config Test]]
 
* [[OpenBTS: 2.8 Instalasi Real Time Asterisk]] '''RECOMMENDED'''
 
* [[OpenBTS: 2.8 Instalasi Real Time Asterisk]] '''RECOMMENDED'''
Line 383: Line 444:
 
* [[Power Amplifier 900MHz]]
 
* [[Power Amplifier 900MHz]]
 
* [[Duplexer]]
 
* [[Duplexer]]
 +
* [[OpenBTS: Menaikan Jangkauan OpenBTS]]
  
 
===Lain Lain===
 
===Lain Lain===
Line 413: Line 475:
 
* [[OpenBTS: Daftar Workshop atau Seminar yang pernah dilakukan]]
 
* [[OpenBTS: Daftar Workshop atau Seminar yang pernah dilakukan]]
 
* [[OpenBTS: Daftar Artikel di Media]]
 
* [[OpenBTS: Daftar Artikel di Media]]
 +
* [[OpenBTS: Permohonan Kanal dan DID untuk OpenBTS]]
 +
* [[OpenBTS: 2013/02/19 - OpenBTS TelkomSel Mengudara di Muscat Oman]]
  
 
===Dokumentasi Video===
 
===Dokumentasi Video===
  
 +
* http://www.metrotvnews.com/read/newsprograms/2012/10/14/14624/212/Teknologi-BTS
 
* http://youtu.be/8ogOcUSpINU (1/6)
 
* http://youtu.be/8ogOcUSpINU (1/6)
 
* http://youtu.be/F5d7HGuhppk (2/6)
 
* http://youtu.be/F5d7HGuhppk (2/6)

Latest revision as of 17:13, 2 June 2013

ERROR: Waktu compile GNURadio 3.4.2 keluar 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:98:19: error: cast from ‘float*’ to ‘int’ loses precision [-fpermissive]


Solusi'

belum ada ... *pening*




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.4.2.tar.gz /usr/local/src/
cd /usr/local/src/
tar zxvf gnuradio-3.4.2.tar.gz 
cd /usr/local/src/gnuradio-3.4.2/

Patch untuk 52MHz

Edit

vi /usr/local/src/gnuradio-3.4.2/usrp/host/lib/usrp_basic.cc

Ubah line 110 menjadi

//  d_verbose (false), d_fpga_master_clock_freq(64000000), d_db(2)
    d_verbose (false), d_fpga_master_clock_freq(52000000), d_db(2)

Edit

vi /usr/local/src/gnuradio-3.4.2/usrp/host/lib/db_bitshark_rx.cc

Ubah line 151 menjadi

// set_clock_scheme(0,64000000);
set_clock_scheme(0,52000000);


OpenBTS 2.6 JANGAN LUPA

  • modifikasi OpenBTS.config agar TRX.Path "../Transceiver52M/transceiver".


Patch untuk intptr_t

Edit

cd /usr/local/src/gnuradio-3.4.2
vi gnuradio-core/src/lib/filter/qa_gri_mmse_fir_interpolator_cc.cc

Isi

#define intptr_t int
intptr_t rval = 127;

Compile & Install

cd /usr/local/src/gnuradio-3.4.2
./configure --disable-usrp2 --enable-usrp
make clean
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

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


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

Solusi:

Edit

cd /usr/local/src/gnuradio-3.4.2
vi gnuradio-core/src/lib/filter/qa_gri_mmse_fir_interpolator_cc.cc

Isi

#define intptr_t int
intptr_t rval = 127;


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