OpenBTS: RangeNetwork Compile: Difference between revisions

From OnnoCenterWiki
Jump to navigationJump to search
Onnowpurbo (talk | contribs)
Onnowpurbo (talk | contribs)
 
(22 intermediate revisions by the same user not shown)
Line 10: Line 10:
  apt-get install sqlite3 libsqlite3-dev
  apt-get install sqlite3 libsqlite3-dev


==Update==
==Update Jika di Perlukan==


ROOT_OPENBTS berada di /home/openbts/software/public
ROOT_OPENBTS berada di /usr/local/src/openbts-2.8.0


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


==Install liba53==
==Install liba53==


  cd /home/openbts/software/public
  cd /usr/local/src/openbts-2.8.0/a53/trunk
  cd a53/trunk
  make
  sudo make install
  make install


==Stop OpenBTS==
==Stop OpenBTS==
Line 34: Line 34:
Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:
Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:


  cd /home/openbts/software/public/openbts/trunk
sudo su
  cd /usr/local/src/openbts-2.8.0/openbts/trunk
  autoreconf -i
  autoreconf -i
  ./configure
  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
  make


Buat link
Buat link


  cd /home/openbts/software/public/openbts/trunk
  cd /usr/local/src/openbts-2.8.0/openbts/trunk
  cd apps
  cd apps
  make
  make
Line 48: Line 56:
  ln -s ../TransceiverRAD1/fpga.rbf .
  ln -s ../TransceiverRAD1/fpga.rbf .


  cd /home/openbts/software/public/openbts/trunk/TransceiverRAD1
  cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
  cp transceiver /OpenBTS/
  cp transceiver /OpenBTS/
  cp ezusb.ihx /OpenBTS/
  cp ezusb.ihx /OpenBTS/
  cp fpga.rbf /OpenBTS/
  cp fpga.rbf /OpenBTS/


  cd /home/openbts/software/public/openbts/trunk/apps
  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 OpenBTS /OpenBTS/
  cp OpenBTSDo /OpenBTS/
  cp OpenBTSDo /OpenBTS/
Line 59: Line 71:
  cp runloop.OpenBTS.sh /OpenBTS/
  cp runloop.OpenBTS.sh /OpenBTS/


mkdir -p /var/run/OpenBTS/
touch /var/run/OpenBTS/TransactionTable.db


==Inisialisasi /etc/OpenBTS/OpenBTS.db==
==Inisialisasi /etc/OpenBTS/OpenBTS.db==


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


Line 68: Line 84:


  sudo mkdir -p /var/lib/asterisk/sqlite3dir
  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 /home/openbts/software/public/subscriberRegistry/trunk
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
make clean
  make
  make
   
   
  cd /home/openbts/software/public/subscriberRegistry/trunk
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
  cp comp128 /usr/local/bin/
  cp comp128 /usr/local/bin/
  cp comp128 /OpenBTS/  
  cp comp128 /OpenBTS/  
Line 78: Line 98:
  cp runloop.sipauthserve.sh /OpenBTS/
  cp runloop.sipauthserve.sh /OpenBTS/


  cd /home/openbts/software/public/subscriberRegistry/trunk
rm -Rf /etc/OpenBTS/sipauthserve.db
  sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
  sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"


==Build & Install Smqueue==
==Build & Install Smqueue==


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


  cd /home/openbts/software/public/smqueue/trunk
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue/
  sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
rm -Rf /etc/OpenBTS/smqueue.db
  sudo sqlite3 -init smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"


  cd /home/openbts/software/public/smqueue/trunk/smqueue
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
  cp runloop.smqueue.sh /OpenBTS/
  cp runloop.smqueue.sh /OpenBTS/
  cp smqueue /OpenBTS/
  cp smqueue /OpenBTS/
==Cek RAD1==
cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
./RAD1ping


==Menjalankan OpenBTS==
==Menjalankan OpenBTS==
Line 100: 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
 
  cd /home/openbts/software/public/subscriberRegistry/trunk/
sleep 10
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
  ./sipauthserve &
  ./sipauthserve &
 
  cd /home/openbts/software/public/smqueue/trunk/smqueue/
sleep 10
  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 /home/openbts/software/public/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 252: 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 258: 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 298: Line 338:
===RangeNetworks===
===RangeNetworks===


* [[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]]
* [[OpenBTS: RangeNetwork Trunk ke Asterisk Lain]]
* [[OpenBTS: RangeNetwork Trunk ke Asterisk Lain]]
* [[VoIP: Trunk]]
* [[VoIP: Trunk]]


===GPRS===
===GPRS===

Latest revision as of 07: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 Sejarah

Dokumentasi Video

Perjuangan OpenBTS