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

From OnnoWiki
Jump to navigation Jump to search
 
(36 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
==Handling USRP==
 
==Handling USRP==
  
'''Khusus untuk Ubuntu 12.04 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
+
'''Khusus untuk Ubuntu 13.04 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.
 
[[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.
Line 30: Line 30:
 
Harusnya akan keluar seperti
 
Harusnya akan keluar seperti
  
  crw-rw---- 1 root usrp 189, 1 2010-12-09 17:38 002
+
  crw-rw-r-- 1 root usrp 189, 263 Jun  5 09:09 008
 
 
  
 
Setiap [[USRP]] yang terpasang akan terdaftar pada group 'usrp' dan mode 'crw-rw----'.
 
Setiap [[USRP]] yang terpasang akan terdaftar pada group 'usrp' dan mode 'crw-rw----'.
Line 41: Line 40:
 
  sudo apt-get update
 
  sudo apt-get update
  
Instal untuk Ubuntu 12.04.1
+
Instal untuk Ubuntu 13.04
  
 
  sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
 
  sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
Line 56: Line 55:
 
  apache2 php5 php5-xmlrpc php5-mysql php5-gd php5-cli php5-curl \
 
  apache2 php5 php5-xmlrpc php5-mysql php5-gd php5-cli php5-curl \
 
  mysql-client mysql-server libphp-adodb libgd2-xpm libgd2-xpm-dev \
 
  mysql-client mysql-server libphp-adodb libgd2-xpm libgd2-xpm-dev \
  php5-curl php-pear
+
  php5-curl php-pear autoconf libtool libosip2-dev libortp-dev \
 +
libusb-1.0-0-dev g++ erlang libreadline6-dev libboost-all-dev \
 +
cmake build-essential subversion \
 +
build-essential autoconf cvs sox pkg-config git-core subversion \
 +
libgsm1-dev libgsm1 php5-cli python-setuptools python-pip
 +
sudo pip install smspdu
  
 
==Instal SWIG==
 
==Instal SWIG==
Line 63: Line 67:
  
 
  Download dari http://sourceforge.net/projects/swig/files/swig/
 
  Download dari http://sourceforge.net/projects/swig/files/swig/
  cp swig-2.0.9.tar.gz /usr/local/src/
+
  cp swig-2.0.12.tar.gz /usr/local/src/
 
  cd /usr/local/src/
 
  cd /usr/local/src/
  tar zxvf swig-2.0.9.tar.gz  
+
  tar zxvf swig-2.0.12.tar.gz  
  cd /usr/local/src/swig-2.0.9/
+
  cd /usr/local/src/swig-2.0.12/
 
  ./configure
 
  ./configure
 
  make
 
  make
Line 76: Line 80:
  
 
  Download dari http://sourceforge.net/projects/qwt/files/
 
  Download dari http://sourceforge.net/projects/qwt/files/
  cp qwt-6.0.2.tar.bz2 /usr/local/src/
+
  cp qwt-6.1.0.tar.bz2 /usr/local/src/
 
  cd /usr/local/src/
 
  cd /usr/local/src/
  tar jxvf qwt-6.0.2.tar.bz2  
+
  tar jxvf qwt-6.1.0.tar.bz2  
  cd /usr/local/src/qwt-6.0.2/
+
  cd /usr/local/src/qwt-6.1.0/
 
  qmake
 
  qmake
 
  make
 
  make
Line 86: Line 90:
 
==Instal SDCC==
 
==Instal SDCC==
  
===SDCC 32 bit===
+
===SDCC 64bit===
  
Untuk Ubuntu 12.04.1 terpaksa harus instalasi Binary seperti langkah di berikut. Download binary dari
+
Agar bisa di compile 64 bit. Download dari
  
* http://sourceforge.net/projects/sdcc/files/sdcc-linux-x86/
+
* http://sourceforge.net/projects/sdcc/files/sdcc/
 
 
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===
+
Compile untuk sdcc 3.3.0 (tampaknya bermasalah compile 3.3.0 di Ubuntu 13.04)
  
Jika tidak bisa juga, dan terpaksa, maka install secara manual SDCC. Download dari
+
cp sdcc-src-3.3.0.tar.bz2 /usr/local/src
 
 
* http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-src/
 
* http://sourceforge.net/projects/sdcc/files/snapshot_builds/amd64-unknown-linux2.5/sdcc-snapshot-amd64-unknown-linux2.5-20121219-8246.tar.bz2/download
 
* http://sourceforge.net/projects/sdcc/files/
 
* http://sourceforge.net/projects/sdcc/files/sdcc-linux-x86/3.2.0/
 
 
 
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
 
  cd /usr/local/src
  tar jxvf sdcc-src-20121221-8260.tar.bz2
+
  tar jxvf sdcc-src-3.3.0.tar.bz2
  cd sdcc
+
  cd sdcc-3.3.0
 
  ./configure
 
  ./configure
 
  make
 
  make
 
  make install
 
  make install
 
beberapa versi source yang error saat di compile adalah: 20121219-8246, 20121221-8260
 
 
===SDCC 64bit===
 
 
Agar bisa di compile 64 bit. Download dari
 
 
* http://sourceforge.net/projects/sdcc/files/sdcc/
 
  
 
Compile untuk sdcc 3.2.0
 
Compile untuk sdcc 3.2.0
Line 145: Line 126:
 
  make install
 
  make install
  
Versi yang tidak bisa: versi 2.9.0
+
 
 +
===Install dari .deb===
 +
 
 +
 
 +
cd /usr/local/src
 +
wget -c http://launchpadlibrarian.net/38703081/sdcc_2.9.0-5_amd64.deb
 +
wget -c http://launchpadlibrarian.net/38689168/sdcc-libraries_2.9.0-5_all.deb
 +
dpkg -i sdcc_2.9.0-5_amd64.deb sdcc-libraries_2.9.0-5_all.deb
  
 
===Test===
 
===Test===
Line 159: Line 147:
 
Untuk sdcc 2.8.0 akan keluar kurang lebih
 
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 23 2012) (UNIX)
+
  SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.8.0 #5117 (Jun  4 2013) (UNIX)
  
 
==Install GNURadio==
 
==Install GNURadio==
Line 175: Line 163:
 
  cd /usr/local/src/
 
  cd /usr/local/src/
 
  tar zxvf gnuradio-3.4.2.tar.gz  
 
  tar zxvf gnuradio-3.4.2.tar.gz  
  cd /usr/local/src/gnuradio-3.4.2/
+
  cd /usr/local/src/gnuradio/
  
 
===Patch untuk 52MHz===
 
===Patch untuk 52MHz===
Line 181: Line 169:
 
Edit
 
Edit
  
  vi /usr/local/src/gnuradio-3.4.2/usrp/host/lib/usrp_basic.cc
+
  vi /usr/local/src/gnuradio/usrp/host/lib/usrp_basic.cc
  
 
Ubah line 110 menjadi
 
Ubah line 110 menjadi
Line 190: Line 178:
 
Edit
 
Edit
  
  vi /usr/local/src/gnuradio-3.4.2/usrp/host/lib/db_bitshark_rx.cc
+
  vi /usr/local/src/gnuradio/usrp/host/lib/db_bitshark_rx.cc
  
 
Ubah line 151 menjadi
 
Ubah line 151 menjadi
Line 196: Line 184:
 
  // set_clock_scheme(0,64000000);
 
  // set_clock_scheme(0,64000000);
 
  set_clock_scheme(0,52000000);
 
  set_clock_scheme(0,52000000);
 +
 +
===Perbaiki error: ‘intptr_t’===
 +
 +
vi /usr/local/src/gnuradio/gnuradio-core/src/lib/filter/qa_gri_mmse_fir_interpolator_cc.cc 
 +
 +
tambahkan
 +
 +
#include <unistd.h>
  
  
Line 205: Line 201:
 
===Compile & Install===
 
===Compile & Install===
  
  cd /usr/local/src/gnuradio-3.4.2
+
  cd /usr/local/src/gnuradio
 
  ./configure --disable-usrp2 --enable-usrp
 
  ./configure --disable-usrp2 --enable-usrp
 
  make clean
 
  make clean
make all
 
 
  make
 
  make
 
  make check
 
  make check
Line 224: Line 219:
  
 
  PYTHONPATH=/usr/local/lib/python2.7/dist-packages
 
  PYTHONPATH=/usr/local/lib/python2.7/dist-packages
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
 
 
  PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
 
  PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
  
Line 232: Line 226:
 
  sudo ldconfig
 
  sudo ldconfig
 
  export PYTHONPATH=/usr/local/lib/python2.7/dist-packages
 
  export PYTHONPATH=/usr/local/lib/python2.7/dist-packages
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
 
 
  export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
 
  export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
  
Line 240: Line 233:
 
Lakukan
 
Lakukan
  
  cd /usr/local/src/gnuradio-3.4.2/gnuradio-examples/python/usrp
+
 
 +
  cd /usr/local/src/gnuradio/gnuradio-examples/python/usrp
 
  ./usrp_benchmark_usb.py  
 
  ./usrp_benchmark_usb.py  
  
Line 295: Line 289:
 
* http://gnuradio.org/redmine/wiki/gnuradio/Download
 
* http://gnuradio.org/redmine/wiki/gnuradio/Download
 
* http://gnuradio.org/redmine/wiki/gnuradio/UbuntuInstall
 
* http://gnuradio.org/redmine/wiki/gnuradio/UbuntuInstall
 +
* http://www.jenkinssoftware.com/forum/index.php?topic=724.0;wap2
  
 
==Pranala Menarik==
 
==Pranala Menarik==
Line 307: Line 302:
 
* [[USRP: Kalibrasi ClockTamer]]
 
* [[USRP: Kalibrasi ClockTamer]]
 
* [[USRP: ClockTamer Control Protocol]]
 
* [[USRP: ClockTamer Control Protocol]]
 +
* [[USRP: ClockTamer Flashing]]
 
* [[USRP: Instalasi Board]]
 
* [[USRP: Instalasi Board]]
 
* [[OpenBTS: GIT Source Code]]
 
* [[OpenBTS: GIT Source Code]]
Line 312: Line 308:
 
* [[OpenBTS: Tethr untuk Bencana Alam]]
 
* [[OpenBTS: Tethr untuk Bencana Alam]]
 
* [[USRP: Tip Pemesanan]]
 
* [[USRP: Tip Pemesanan]]
 +
 +
===Script===
 +
 +
* [[OpenBTS: Script Membuat GNURadio 3.4.2 di Ubuntu 13.04]]
 +
* [[OpenBTS: Script Membuat OpenBTS dan yate di Ubuntu 13.04]]
 +
  
 
===OpenBTS 2.6===
 
===OpenBTS 2.6===
Line 320: Line 322:
 
* [[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]] ''NOT RECOMMENDED''
 
* [[GNURadio: Contoh Aplikasi]]
 
* [[GNURadio: Contoh Aplikasi]]
 
* [[GNURadio: Spectrum Analizer GSM]]
 
* [[GNURadio: Spectrum Analizer GSM]]
Line 326: Line 329:
 
* [[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]] ''NOT RECOMMENDED''
 
* [[OpenBTS: Konfigurasi]] '''RECOMMENDED'''
 
* [[OpenBTS: Konfigurasi]] '''RECOMMENDED'''
 
* [[OpenBTS: Kalibrasi]]
 
* [[OpenBTS: Kalibrasi]]
Line 367: Line 371:
 
* [[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 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 Softswitch install Ubuntu 12.10]] '''RECOMMENDED'''
 +
* [[OpenBTS: Yate Softswitch install Ubuntu 13.04]] '''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'''
 
* [[OpenBTS: 2.8 Menjalankan]] '''RECOMMENDED'''
 
* [[OpenBTS: 2.8 Menjalankan]] '''RECOMMENDED'''
 
* [[OpenBTS: 2.8 Konfigurasi]]
 
* [[OpenBTS: 2.8 Konfigurasi]]
 +
* [[OpenBTS: 2.8 Konfigurasi Cognitive Radio Elsabagh]]
 
* [[OpenBTS: 2.8 Konfigurasi Subscriber Registery]]
 
* [[OpenBTS: 2.8 Konfigurasi Subscriber Registery]]
 
* [[OpenBTS: Database SQLite]]
 
* [[OpenBTS: Database SQLite]]
 +
* [[OpenBTS: Set SQLite Subscriber Registry secara manual]]
 +
* [[OpenBTS: FreeSWITCH]]
  
 
===Multi OpenBTS 2.8===
 
===Multi OpenBTS 2.8===
Line 390: Line 399:
 
* [[OpenBTS: E110 Mengubah Master Clock]]
 
* [[OpenBTS: E110 Mengubah Master Clock]]
 
* [[OpenBTS: E110 Kalibrasi Clock]]
 
* [[OpenBTS: E110 Kalibrasi Clock]]
 +
* [[OpenBTS: E110 Konfigurasi Jaringan]]
 
* [[OpenBTS: E110 Bekerja dengan opkg]]
 
* [[OpenBTS: E110 Bekerja dengan opkg]]
 +
* [[OpenBTS: E110 Instalasi iptables]]
 
* [[OpenBTS: E110 GNURadio]]
 
* [[OpenBTS: E110 GNURadio]]
* [[OpenBTS: E110 Compile UHD]] '''*RECOMMENDED*'''
+
* [[OpenBTS: E110 Compile UHD]] ''Not Recommended''
* [[OpenBTS: E110 UHD burn EEPROM RFX Board]] '''*RECOMMENDED*'''
+
* [[OpenBTS: E110 Compile UHD dari Release Bukan git]] ''Not Recommended''
* [[OpenBTS: E110 Install UHD Image]] '''*RECOMMENDED*'''
+
* [[OpenBTS: E110 UHD burn EEPROM RFX Board]] ''Not Recommended''
 +
* [[OpenBTS: E110 Install UHD Image]] ''Not Recommended''
 
* [[OpenBTS: E110 Instalasi OpenBTS]]
 
* [[OpenBTS: E110 Instalasi OpenBTS]]
 
* [[OpenBTS: E110 Instalasi OpenBTS 2.6]] ''NOT RECOMMENDED''
 
* [[OpenBTS: E110 Instalasi OpenBTS 2.6]] ''NOT RECOMMENDED''
 
* [[OpenBTS: E110 Instalasi OpenBTS 2.8 untuk MultiBTS]] '''*RECOMMENDED*'''
 
* [[OpenBTS: E110 Instalasi OpenBTS 2.8 untuk MultiBTS]] '''*RECOMMENDED*'''
 +
* [[OpenBTS: E110 Yate Softswitch]]
 +
 +
===Ettus N210===
 +
 +
* [[OpenBTS: N210 Instalasi GPSDO Kit]]
 +
* [[OpenBTS: N210 GNURadio]]
 +
* [[OpenBTS: N210 GNURadio 3.7.0]]
 +
* [[OpenBTS: N210 Instalasi OpenBTS]]
 +
* [[OpenBTS: N210 Instalasi Yate]]
 +
* [[OpenBTS: N210 Yate Config Test]]
 +
* [[OpenBTS: N210 Burn Firmware]]
 +
 +
===RangeNetworks===
 +
 +
* [[OpenBTS: RangeNetwork Default Setting]]
  
 
===GPRS===
 
===GPRS===
  
 
* [[OpenBTS: GPRS]]
 
* [[OpenBTS: GPRS]]
 +
* [[OpenBTS: GPRS Konfigurasi]]
 +
* [[OpenBTS: GPRS untuk dibelakang Router dengan NAT]]
 +
 +
===Briker OpenBTS===
 +
 +
* [[OpenBTS: Briker]]
 +
 +
===FreeSWITCH OpenBTS===
 +
 +
* [[OpenBTS: FreeSWITCH]]
  
 
===Power Amplifier===
 
===Power Amplifier===
Line 441: Line 478:
 
* [[OpenBTS: Permohonan Kanal dan DID untuk OpenBTS]]
 
* [[OpenBTS: Permohonan Kanal dan DID untuk OpenBTS]]
 
* [[OpenBTS: 2013/02/19 - OpenBTS TelkomSel Mengudara di Muscat Oman]]
 
* [[OpenBTS: 2013/02/19 - OpenBTS TelkomSel Mengudara di Muscat Oman]]
 +
* [[OpenBTS: Beroperasi di Papua]]
  
 
===Dokumentasi Video===
 
===Dokumentasi Video===
Line 451: Line 489:
 
* http://youtu.be/6LCuoeI57ak (5/6)
 
* http://youtu.be/6LCuoeI57ak (5/6)
 
* http://youtu.be/-dEqcHoIlYk (6/6)
 
* http://youtu.be/-dEqcHoIlYk (6/6)
 +
* http://www.youtube.com/watch?v=Ff_rw4kAOZg&feature=share
 +
 +
===Perjuangan OpenBTS===
 +
 +
* http://www.technologyreview.com/news/522371/how-remote-places-can-get-cellular-coverage-by-doing-it-themselves/?utm_campaign=socialsync&utm_medium=social-post&utm_source=twitter
 +
 +
  
 
[[Category: Wireless]]
 
[[Category: Wireless]]
 
[[Category: Selular]]
 
[[Category: Selular]]

Latest revision as of 07:43, 21 February 2014

Handling USRP

Khusus untuk Ubuntu 13.04 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, 263 Jun  5 09:09 008

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

Instal Library

Update

sudo apt-get update

Instal untuk Ubuntu 13.04

sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
gcc-4.7 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 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 autoconf libtool libosip2-dev libortp-dev \
libusb-1.0-0-dev g++ erlang libreadline6-dev libboost-all-dev \
cmake build-essential subversion \
build-essential autoconf cvs sox pkg-config git-core subversion \
libgsm1-dev libgsm1 php5-cli python-setuptools python-pip
sudo pip install smspdu

Instal SWIG

Install secara manual SWIG

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

Instal QWT

Install secara manual QWT

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

Instal SDCC

SDCC 64bit

Agar bisa di compile 64 bit. Download dari

Compile untuk sdcc 3.3.0 (tampaknya bermasalah compile 3.3.0 di Ubuntu 13.04)

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

Compile untuk sdcc 3.2.0

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

Agar GNURadio 3.4.2 dapat di compile dengan baik, tampaknya kita harus turun ke versi 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


Install dari .deb

cd /usr/local/src
wget -c http://launchpadlibrarian.net/38703081/sdcc_2.9.0-5_amd64.deb
wget -c http://launchpadlibrarian.net/38689168/sdcc-libraries_2.9.0-5_all.deb
dpkg -i sdcc_2.9.0-5_amd64.deb sdcc-libraries_2.9.0-5_all.deb

Test

Test menggunakan perintah

/usr/local/bin/sdcc -v

Untuk sdcc 3.2.0 akan keluar kurang lebih

SDCC : mcs51/gbz80/z80/z180/r2k/r3ka/ds390/pic16/pic14/TININative/ds400/hc08/s08 3.2.0 #8008 (Dec 23 2012) (Linux)

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 (Jun  4 2013) (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/

Patch untuk 52MHz

Edit

vi /usr/local/src/gnuradio/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/usrp/host/lib/db_bitshark_rx.cc

Ubah line 151 menjadi

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

Perbaiki error: ‘intptr_t’

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

tambahkan

#include <unistd.h>


OpenBTS 2.6 JANGAN LUPA

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

Compile & Install

cd /usr/local/src/gnuradio
./configure --disable-usrp2 --enable-usrp
make clean
make
make check
make install
sudo ldconfig

Edit bashrc

Untuk 64bit dibutuhkan path ke /usr/local/lib64/pkgconfig/. Masukan PYTHONPATH dengan cara mengedit

vi ~/.bashrc

Tambahkan

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


Untuk memastikan ada baiknya lakukan

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

Test

Boot komputer. Sambungan USRP. Lakukan


cd /usr/local/src/gnuradio/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

Error:

make[5]: Entering directory `/usr/local/src/gnuradio-3.4.2/usrp/firmware/lib'
sdcc -mmcs51 --no-xinit-opt -I../../../usrp/firmware/include  -c delay.c -o delay.rel
delay.c:27: syntax error: token -> '_naked' ; column 21

Solusi:

Ini naga-naganya urusannya dengan versi sdcc. Entah versi yang mana yang cocok dengan GNURadio 3.4.2.

Referensi

Pranala Menarik

Persiapan

Script


OpenBTS 2.6

OpenBTS 2.8

Multi OpenBTS 2.8

Ettus E110

Ettus N210

RangeNetworks

GPRS

Briker OpenBTS

FreeSWITCH OpenBTS

Power Amplifier

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah

Dokumentasi Video

Perjuangan OpenBTS