Difference between revisions of "OpenBTS: RangeNetwork Compile"

From OnnoWiki
Jump to navigation Jump to search
 
(13 intermediate revisions by the same user not shown)
Line 38: Line 38:
 
  autoreconf -i
 
  autoreconf -i
 
  export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
 
  export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
  ./configure
+
  # ./configure --with-uhd --with-resamp
 +
./configure --with-uhd
 +
make clean
 +
make
 +
 
 +
cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
 
  make clean
 
  make clean
 
  make
 
  make
Line 66: Line 71:
 
  cp runloop.OpenBTS.sh /OpenBTS/
 
  cp runloop.OpenBTS.sh /OpenBTS/
  
  mkdir /var/run/OpenBTS/
+
  mkdir -p /var/run/OpenBTS/
 
  touch /var/run/OpenBTS/TransactionTable.db
 
  touch /var/run/OpenBTS/TransactionTable.db
  
Line 93: Line 98:
 
  cp runloop.sipauthserve.sh /OpenBTS/
 
  cp runloop.sipauthserve.sh /OpenBTS/
  
 +
rm -Rf /etc/OpenBTS/sipauthserve.db
 
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
 
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
 
 
  sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
 
  sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
  
Line 106: Line 111:
 
  make install
 
  make install
  
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk
+
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
 
  rm -Rf /etc/OpenBTS/smqueue.db
 
  rm -Rf /etc/OpenBTS/smqueue.db
  sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
+
  sudo sqlite3 -init smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
  
 
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
 
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
Line 123: Line 128:
 
'''[[OpenBTS: RangeNetwork Yate Compile | Pastikan Yate sudah di Instalasi.]]'''
 
'''[[OpenBTS: RangeNetwork Yate Compile | Pastikan Yate sudah di Instalasi.]]'''
  
Lakukan di tiga (3) windows yang berbeda
+
/usr/local/bin/uhd_usrp_probe
 
+
 +
sleep 10
 
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
 
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
 
  ./sipauthserve &
 
  ./sipauthserve &
 
+
 +
sleep 10
 
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
 
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
 
  ./smqueue &
 
  ./smqueue &
 
+
  # /etc/init.d/asterisk restart
+
  sleep 10
 
 
 
  cd /usr/local/src/yate
 
  cd /usr/local/src/yate
 
  rm -Rf /var/log/yate
 
  rm -Rf /var/log/yate
 
  rm -Rf /var/log/VBTS.log  
 
  rm -Rf /var/log/VBTS.log  
 
  ./run -t -l /var/log/yate -vvvv -c /usr/local/etc/yate -m /usr/local/lib/yate -e /usr/local/share/yate -d
 
  ./run -t -l /var/log/yate -vvvv -c /usr/local/etc/yate -m /usr/local/lib/yate -e /usr/local/share/yate -d
 
+
 +
sleep 10
 
  mkdir /var/run/OpenBTS/
 
  mkdir /var/run/OpenBTS/
 
  touch /var/run/OpenBTS/TransactionTable.db
 
  touch /var/run/OpenBTS/TransactionTable.db
 
  cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
 
  cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
 
  ./OpenBTS &
 
  ./OpenBTS &
 +
 +
 +
atau letakan di /etc/rc.local
  
 
==Inisialisasi SubscriberRegistry==
 
==Inisialisasi SubscriberRegistry==
Line 275: Line 285:
 
* [[OpenBTS: Database SQLite]]
 
* [[OpenBTS: Database SQLite]]
 
* [[OpenBTS: Set SQLite Subscriber Registry secara manual]]
 
* [[OpenBTS: Set SQLite Subscriber Registry secara manual]]
 +
* [[OpenBTS: Set SQLite parameter smqueue]]
 
* [[OpenBTS: FreeSWITCH]]
 
* [[OpenBTS: FreeSWITCH]]
  
Line 281: Line 292:
 
* [[OpenBTS: Pola Multi OpenBTS]] '''RECOMMENDED'''
 
* [[OpenBTS: Pola Multi OpenBTS]] '''RECOMMENDED'''
 
* [[Multi OpenBTS: Catatan Konfigurasi]] '''RECOMMENDED'''
 
* [[Multi OpenBTS: Catatan Konfigurasi]] '''RECOMMENDED'''
 +
* [[Multi OpenBTS: Catatan BSIC=NCC+BCC]]
 +
* [[Multi OpenBTS: Catatan Frekuensi Planning di GSM]]
 +
* [[Multi OpenBTS: Catatan BTS Color Code BCC di GSM]]
 +
* [[Multi OpenBTS: Catatan Network Color Code NCC di GSM]]
 +
* [[Multi OpenBTS: Catatan BCCH]]
 +
* [[Multi OpenBTS: Catatan Public Land Mobile Network PLMN]]
  
 
===OpenBTS 3.1.x===
 
===OpenBTS 3.1.x===
Line 322: Line 339:
  
 
* [[OpenBTS: RangeNetwork Foto]]
 
* [[OpenBTS: RangeNetwork Foto]]
 +
* [[OpenBTS: RangeNetwork menggunakan USB recovery image]]
 
* [[OpenBTS: RangeNetwork Default Setting]]
 
* [[OpenBTS: RangeNetwork Default Setting]]
 +
* [[OpenBTS: RangeNetwork Instalasi UHD]]
 
* [[OpenBTS: RangeNetwork Compile GNURadio UHD]]
 
* [[OpenBTS: RangeNetwork Compile GNURadio UHD]]
 
* [[OpenBTS: RangeNetwork Compile]]
 
* [[OpenBTS: RangeNetwork Compile]]
* [[OpenBTS: RangeNetwork Compile OpenBTS 3.1.3]] '''*RECOMMENDED*'''
+
* [[OpenBTS: RangeNetwork Compile OpenBTS 2.8.0]]
 +
* [[OpenBTS: RangeNetwork Compile OpenBTS 3.1.3]]
 
* [[OpenBTS: RangeNetwork Yate Compile]] '''*RECOMMENDED*'''
 
* [[OpenBTS: RangeNetwork Yate Compile]] '''*RECOMMENDED*'''
 
* [[OpenBTS: RangeNetwork Web Interface]]
 
* [[OpenBTS: RangeNetwork Web Interface]]

Latest revision as of 14:10, 2 March 2014

Install Pendukung

apt-get update
sudo apt-get install autoconf libtool libosip2-dev libortp-dev \
libusb-1.0-0-dev g++ erlang libreadline6-dev libboost-all-dev \
cmake build-essential subversion libncurses5-dev libncurses5
rm /usr/local/bin/sqlite3
apt-get install sqlite3 libsqlite3-dev

Update Jika di Perlukan

ROOT_OPENBTS berada di /usr/local/src/openbts-2.8.0

mkdir -p /OpenBTS/
sudo su
cd /usr/local/src
svn co http://wush.net/svn/range/software/public openbts-2.8.0

Install liba53

cd /usr/local/src/openbts-2.8.0/a53/trunk
make
make install

Stop OpenBTS

cd /home/openbts
killBTS

Building OpenBTS

Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:

sudo su
cd /usr/local/src/openbts-2.8.0/openbts/trunk
autoreconf -i
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
# ./configure --with-uhd --with-resamp 
./configure --with-uhd
make clean
make
cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
make clean
make

Buat link

cd /usr/local/src/openbts-2.8.0/openbts/trunk
cd apps
make
ln -s ../TransceiverRAD1/transceiver .
ln -s ../TransceiverRAD1/ezusb.ihx .
ln -s ../TransceiverRAD1/fpga.rbf .
cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
cp transceiver /OpenBTS/
cp ezusb.ihx /OpenBTS/
cp fpga.rbf /OpenBTS/
cd /OpenBTS/
cp ezusb.ihx /usr/local/share/uhd/images/usrp1_fw.ihx
cp fpga.rbf /usr/local/share/uhd/images/usrp1_fpga.rbf
cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
cp OpenBTS /OpenBTS/
cp OpenBTSDo /OpenBTS/
cp OpenBTSCLI /OpenBTS/
cp runloop.OpenBTS.sh /OpenBTS/
mkdir -p /var/run/OpenBTS/
touch /var/run/OpenBTS/TransactionTable.db

Inisialisasi /etc/OpenBTS/OpenBTS.db

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

Build & Install Subscriber Registry dan Sipauthserve

sudo mkdir -p /var/lib/asterisk/sqlite3dir
sudo rm -Rf /var/lib/asterisk/sqlite3dir/sqlite3.db
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/features/a3a8/configFiles
sudo sqlite3 -init subscriberRegistryInit.sql /var/lib/asterisk/sqlite3dir/sqlite3.db ".quit"
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
make clean
make

cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
cp comp128 /usr/local/bin/
cp comp128 /OpenBTS/ 
cp sipauthserve /OpenBTS/
cp runloop.sipauthserve.sh /OpenBTS/
rm -Rf /etc/OpenBTS/sipauthserve.db
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"

Build & Install Smqueue

cd /usr/local/src/openbts-2.8.0/smqueue/trunk
autoreconf -i
./configure 
make clean
make 
make install
cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
rm -Rf /etc/OpenBTS/smqueue.db
sudo sqlite3 -init smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
cp runloop.smqueue.sh /OpenBTS/
cp smqueue /OpenBTS/

Cek RAD1

cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
./RAD1ping

Menjalankan OpenBTS

Pastikan Yate sudah di Instalasi.

/usr/local/bin/uhd_usrp_probe

sleep 10
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
./sipauthserve &

sleep 10
cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
./smqueue &

sleep 10
cd /usr/local/src/yate
rm -Rf /var/log/yate
rm -Rf /var/log/VBTS.log 
./run -t -l /var/log/yate -vvvv -c /usr/local/etc/yate -m /usr/local/lib/yate -e /usr/local/share/yate -d

sleep 10
mkdir /var/run/OpenBTS/
touch /var/run/OpenBTS/TransactionTable.db
cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
./OpenBTS &


atau letakan di /etc/rc.local

Inisialisasi SubscriberRegistry

sudo su
sqlite3 /var/lib/asterisk/sqlite3dir/sqlite3.db
DELETE from DIALDATA_TABLE where ID = 1;
DELETE from DIALDATA_TABLE where ID = 2;
DELETE from DIALDATA_TABLE where ID = 3;
DELETE from DIALDATA_TABLE where ID = 4;
DELETE from DIALDATA_TABLE where ID = 5;
DELETE from DIALDATA_TABLE where ID = 6;

DELETE from SIP_BUDDIES where ID = 1;
DELETE from SIP_BUDDIES where ID = 2;
DELETE from SIP_BUDDIES where ID = 3;
DELETE from SIP_BUDDIES where ID = 4;
DELETE from SIP_BUDDIES where ID = 5;
DELETE from SIP_BUDDIES where ID = 6;

INSERT INTO dialdata_table (exten, dial) VALUES ('2001', 'IMSI001010000000001');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values  ('IMSI001010000000001','IMSI001010000000001','2001','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2002', 'IMSI001010000000002');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI001010000000002','IMSI001010000000002','2002','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2003', 'IMSI510110052460084');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI510110052460084','IMSI510110052460084','2003','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2004', 'IMSI510112410440152');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI510112410440152','IMSI510112410440152','2004','127.0.0.1','friend','phones','dynamic');

Referensi


Pranala Menarik

Persiapan

Script

OpenBTS 2.6

OpenBTS 2.8

Multi OpenBTS 2.8

OpenBTS 3.1.x

Ettus E110

Ettus N210

RangeNetworks

GPRS

Briker OpenBTS

FreeSWITCH OpenBTS

Power Amplifier

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah

Dokumentasi Video

Perjuangan OpenBTS