OpenBTS: 2.8 dari SVN Install

From OnnoWiki
Jump to navigation Jump to search

Instalasi Paket Pendukung dan Asterisk

Instalasi paket / library pendukung tambahan

sudo apt-get install autoconf libtool libosip2-dev libortp-dev \
libusb-1.0-0-dev g++ sqlite3 libsqlite3-dev erlang \
asterisk asterisk-mysql


Load GNURadio

sudo ldconfig
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

Download Source Code OpenBTS via SVN

sudo su
cd /usr/local/src
svn co http://wush.net/svn/range/software/public openbts

Hacking Source Code 2.8.0 untuk Clock 64MHz

Untuk clock 64MHz nampaknya kia perlu menghack source code

sudo su
cd /usr/local/src/openbts/openbts/trunk/Transceiver52M

Edit file berikut & kalimat berikut

UHDDevice.cpp:  const double master_clk_rt = 52e6;
USRPDevice.cpp: const double USRPDevice::masterClockRate = 52.0e6;
USRPping.cpp:   RadioDevice *usrp = RadioDevice::make(52.0e6/192.0);

agar menjadi

UHDDevice.cpp:  const double master_clk_rt = 64e6;
USRPDevice.cpp: const double USRPDevice::masterClockRate = 64.0e6;
USRPping.cpp:   RadioDevice *usrp = RadioDevice::make(64.0e6/236.0);

Ubah TransceiverRAD1

sudo su
cd /usr/local/src/openbts/openbts/trunk/TransceiverRAD1

Edit file berikut & kalimat berikut

RAD1Device.cpp:const double RAD1Device::masterClockRate = (double) 52.0e6;
RAD1ping.cpp:  RAD1Device *usrp = new RAD1Device(52.0e6/192.0);
RAD1RxRawPower.cpp:  RAD1Device *rad1 = new RAD1Device(52.0e6/192.0);
rnrad1Core.cpp:  mFpgaMasterClockFreq = 52000000;

Agar menjadi

RAD1Device.cpp:const double RAD1Device::masterClockRate = (double) 64.0e6;
RAD1ping.cpp:  RAD1Device *usrp = new RAD1Device(64.0e6/236.0);
RAD1RxRawPower.cpp:  RAD1Device *rad1 = new RAD1Device(64.0e6/192.0);
rnrad1Core.cpp:  mFpgaMasterClockFreq = 64000000;

Install OpenBTS

Compile & Instalasi OpenBTS

sudo su
cd /usr/local/src/openbts/openbts/trunk
autoreconf -i
./configure --with-usrp1  # digunakan kalau kita pakai xtal 52MHz
make clean
make
make install

Instalasi Database Konfigurasi

cd /usr/local/src/openbts/openbts/trunk
sudo mkdir /etc/OpenBTS
rm /etc/OpenBTS/OpenBTS.db
sudo sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db
.exit

Beberapa catatan minimal yang harus di set dari database OpenBTS

  • GSM.Radio.Band - Set this to the GSM band appropriate for your hardware.
  • GSM.Radio.C0 - This is the ARFCN. Set it to something appropriate for your band.
  • Control.LUR.OpenRegistration - Set this to a regular expression matching the IMSIs of your test phones. This tells OpenBTS to not reject your handset just because your registration server (below) isn't responding. Useful for debugging and initializing the system. Tentang Regular Expression bisa di baca di http://en.wikipedia.org/wiki/Regular_expression

Instalasi Smqueue

Lakukan

cd /usr/local/src/openbts/smqueue/trunk
autoreconf -i
./configure 
make clean
make 
make install

Selanjutnya, inisialisasi konfigurasi database OpenBTS

cd /usr/local/src/openbts/smqueue/trunk
rm -Rf /etc/OpenBTS/smqueue.db
sudo sqlite3 -init  smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db
.exit

Instalasi Subscriber Registry

Lakukan

cd /usr/local/src/openbts/subscriberRegistry/trunk/configFiles
sudo mkdir /var/lib/asterisk/sqlite3dir
sudo sqlite3 -init subscriberRegistryInit.sql /var/lib/asterisk/sqlite3dir/sqlite3.db
.exit

Yang agak repot adalah menginstalasi Asterisk Real Time

Instalasi Sipauthserve

Sipauthserve adalah daemon yang memberikan SIP authentication services. Variabel SIP.Proxy.Registration di openbts harus menunjuk pada hostname & port Sipauthserve. OpenBTS harus sudah di buat sebelum membuat Sipauthserve.

Compile Sipauthserve

cd /usr/local/src/openbts/subscriberRegistry/trunk
make

Setup database untuk Sipauthserve

rm /etc/OpenBTS/sipauthserve.db
cd /usr/local/src/openbts/subscriberRegistry/trunk
sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db
.exit

Menjalankan OpenBTS

Lakukan di tiga (3) windows yang berbeda

cd /usr/local/src/openbts/
openbts/trunk/apps/OpenBTS
smqueue/trunk/smqueue/smqueue
subscriberRegistry/trunk/sipauthserve

Referensi

Pranala Menarik

Persiapan Hardware

OpenBTS 2.6

OpenBTS 2.8

Ettus E110

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah