owp 2011-01-01 teknik membuat bts gsm sendiri

Upload: kerasaktibanget

Post on 29-Oct-2015

35 views

Category:

Documents


5 download

DESCRIPTION

eknik Membuat BTS GSM Sendiri

TRANSCRIPT

Teknik Membuat Base Station (BTS) GSM Sendiri

Onno W. Purbo YC0MLC

Tulisan ini mungkin agak diluar pakem Amatir Radio (ORARI), tulisan ini lebih ditujukan untuk membuka wawasan kita semua bahwa pembuatan BTS GSM dapat dilakukan dengan mudah dan relatif sangat murah sekali jika kita menguasai teknologi Software Defined Radio (SDR) dan Open Source.

Sekedar gambaran saja, BTS GSM yang normal harganya sekitar Rp. 3 milyard / buah. Dengan SDR dan Open Source kita dapat membuat sebuah BTS GSM dengan daya pancar sekitar 10W seharga US$2000-3000 (tergantung bea masuk di cengkareng).

Jika kita dapat mengoperasikan BTS sendiri, maka handphone GSM yang kita gunakan dapat langsung mendaftarkan diri ke BTS tersebut dan menelepon antar handphone yang terdaftar di BTS tersebut tanpa pulsa sama sekali.

Tulisan ini akan sangat teknis sekali memperlihatkan cara konfigurasi software dan peralatannya. Bagi para pembaca yang mempunyai background ORARI dan minat untuk mendalami Linux / Open Source akan sangat mudah untuk membuat BTS tersebut.

Teknologi OpenBTSOpenBTS (Open Base Transceiver Station) adalah sebuah BTS GSM berbasis software, yang memungkinkan handphone GSM untuk menelepon tanpa menggunakan jaringan operator selular. OpenBTS dikenal sebagai implementasi open source pertama dari protokol standard industri GSM.

OpenBTS mengganti tradisional infrastruktur operator GSM, dari Base Transceiver Station (BTS) ke belakangnya. Dari yang biasanya traffik diteruskan ke Mobile Switching Center (MSC), pada OpenBTS trafik di terminasi pada box yang sama dengan cara mem-forward data ke Asterisk PBX melalui SIP dan Voice-over-IP (VoIP).

air interface (Um) referensi menggunakan software-defined radio (SDR) pada Universal Software Radio Peripheral (USRP) USB board.

Proyek ini mulai dijalankan oleh Harvind Samra http://www.linkedin.com/in/harvindsamra dan David A. Burgess http://ecommconf.com/2009/speakers/davidburgess/. Tujuan yang ingin dicapai adalah untuk mengurangi biaya layanan GSM di wilayah rural di negara berkembang agar di bawah US$1 / bulan / pelanggan.

Gambaran Umum GSM Open SourceGambaran umum sistem GSM murah meriah ini di perlihatkan pada gambar. Proyek ini di kenal di Internet dengan keyword GNURadio pada situs http://gnuradio.org.

Kunci base station GSM open source adalah sebuah Universal Software Radio Peripheral (USRP) yang merupakan software radio yang berbasis Digital Signal Processing (DSP) berkecepatan tinggi. USRP berupa hardware, ada beberapa versi USRP. Versi yang paling baru tampaknya menggunakan Gigabit Ethernet sehingga kita dapat meletakannya di atas tower dengan mudah agar dapat mengcover wilayah yang luas. USRP ini dapat di peroleh dengan harga sekitar US$1500-an dari Amerika Serikat, tepatnya dari Ettus Research pada alamat http://www.ettus.com/. Versi yang tampaknya akan mendominasi GSM murmer ini adalah USRP2 yang menggunakan Gigabit Ethernet. USRP2 membutuhkan power amplifer sampai sekitar 1 Watt pada frekuensi 915MHz untuk dapat memberikan layanan dengan baik. Modul power amplifier ini cukup banyak di pasaran dan dapat dicari di Google. Tanpa modul power amplier USRP2 tetap dapat digunakan dengan daya pancar sekitar 200mW saja.

Open Source SoftwareYang menarik, semua software ini dapat di ambil secara cuma-cuma di alamat di bawah ini,

Sistem operasi, Ubuntu, dapat di ambil di http://kambing.ui.edu.

OpenBTS, dapat di ambil di http://gnuradio.org/trac/wiki/Download

Asterisk, dapat di ambil di http://www.asterisk.org/downloads

Jabber, dapat di ambil di http://xmpp.org/software/servers.shtml. Ada banyak pilihan software server Jabber yang dapat digunakan. Salah satu yang mungkin cocok untuk aplikasi Asterisk mungkin adalah ejabberd.

Selanjutnya akan di tulis secara detail teknik instalasi dan konfigurasi OpenBTS bagi mereka yang ingin ngoprek dan membuat sendiri BTS GSM.

Instalasi GNURadio di Ubuntu

Development Tool yang dibutuhkan adalah g++, subversion, make, autoconf, automake, libtool, sdcc, guile, ccache

Kita perlu menginstalasi berbagai library yang dibutuhkan. Langkah yang dapat dilakukan adalah

sudo apt-get update

Instal untuk Maverick (10.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 sdcc sdcc-libraries \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

Install secara manual SWIG

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

Install secara manul QWT

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

Install GNURadio

cp gnuradio-3.3.0.tar.gz /usr/local/src/cd /usr/local/src/tar zxvf gnuradio-3.3.0.tar.gz cd /usr/local/src/gnuradio-3.3.0/./configuremakemake checkmake install

Untuk handling USRP, Ubuntu menggunakan udev untuk menanganihotplug 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 usrpsudo usermod -G usrp -a echo 'ACTION=="add", BUS=="usb", SYSFS{idVendor}=="fffe", SYSFS{idProduct}=="0002", GROUP:="usrp", MODE:="0660"' > tmpfilesudo chown root.root tmpfilesudo 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 stopsudo /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---- 1 root usrp 189, 1 2010-12-09 17:38 002

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

Selanjutnya kita perlu memverifikasi apakah GNURadio dapat bekerja dengan USRP. Untuk tahapan ini kita perlu menyambungkan USRP ke komputer.

Cek kecepatan sambungan USB ke USRP

cd /usr/local/src/gnuradio-3.3.0/gnuradio-examples/python/usrp./usrp_benchmark_usb.py

C++ interface ke USRP, memberikan estimasi throughput maksimum antara PC ke USRP

cd /usr/local/src/gnuradio-3.3.0/usrp/host/apps./test_usrp_standard_tx./test_usrp_standard_rx

Jika di butuhkan, kita dapat mengupgrade seluruh sistem. Tapi ini lumayan riskan.

sudo apt-get -y upgrade

Instalasi Software OpenBTS di Ubuntu

Pastikan kita sudah mengcompile dan menginstalasi software GNURadio dengan baik. Karena tanpa GNURadio terinstall maka OpenBTS tidak mungkin di instalasi.

Instalasi paket / library pendukung tambahan

apt-get install libosip2-4 libosip2-dev libortp8 libortp-dev

Download source code dari

http://www.openbts.orghttp://sourceforge.net/projects/openbts/

Lakukan

cp openbts-2.6.0Mamou.tar.gz /usr/local/src/cd /usr/local/src/tar zxvf openbts-2.6.0Mamou.tar.gzcd /usr/local/src/openbts-2.6.0Mamou/./configure make make allmake install

Selesai :)

Konfigurasi Asterisk untuk OpenBTS

Kunci dari keberhasilan operasi OpenBTS adalah sentral telepon di belakangnya. Kita biasanya menggunakan asterisk sebagai sentral telepon. Asterisk sendiri adalah sentral telepon berbasis Session Initiation Protocol (SIP) yang saat ini banyak digunakan oleh para operator telekomunkasi di Indonesia, baik itu Telkom, Indosat, XL, Esia, Bakrie Telecom dll. Pembahasan tentang Asterisk atau sentral telepon berbasis SIP ini dapat di baca di

http://opensource.telkomspeedy.com/wiki/index.php/VoIPhttp://opensource.telkomspeedy.com/speedyorari/index.php?dir=ebook-voip

Integrasi OpenBTS ke Asterisk sangat sederhana secara prinsip. Setiap SIM akan di konfigurasi sebagai SIP user menggunakan IMSI sebagai username. Proses memasukan pelanggan OpenBTS melalui dua tahap:

Mendapatkan IMSI dari SIM, hal ini di implementasi dengan mengirim SMS saat handphone tersambung ke OpenBTS

Masukan ke sip.conf dan extensions.conf untuk mendukung SIP user baru tersebut.

Pada dasarnya tidak banyak yang perlu di konfigurasi di Asterisk agar dia dapat berbicara dengan OpenBTS. Kita terutama perlu mengedit file

/etc/asterisk/sip.conf/etc/asterisk/extensions.conf

Conth konfigurasi ada di folder

/usr/local/src/openbts-2.6.0Mamou/AsteriskConfig

Contoh isi /etc/asterisk/sip.conf adalah sebagai berikut

[IMSI520010104743577]callerid=21011canreinvite=notype=friendallow=gsmcontext=sip-externalhost=dynamic

[IMSI510110301694405]callerid=21019canreinvite=notype=friendallow=gsmcontext=sip-externalhost=dynamic

Contoh isi /etc/asterisk/extensions.conf adalah sebagai berikut

[sip-external]exten => 21011,1,Dial(SIP/IMSI520010104743577)exten => 21022,1,Dial(SIP/IMSI520010201115028)exten => 21023,1,Dial(SIP/IMSI520012391814084)exten => 21024,1,Dial(SIP/IMSI520990400939846)exten => 21025,1,Dial(SIP/IMSI520189200141327)exten => 21025,1,Dial(SIP/IMSI520189200141327)exten => 21019,1,Dial(SIP/IMSI510110301694405)exten => 21018,1,Dial(SIP/IMSI520154100006647)

Angka IMSI520154100006647 di peroleh dari SMS yang di terima oleh user OpenBTS.

Membuat Telkom SendiriAgar kita dapat membuat Telkom sendiri sebetulnya selain ilmu OpenBTS, sisanya kebanyakan berbentuk software, yaitu,

Membuat sentral telepon sendiri, seperti Asterisk atau opensips

Membuat ENUM, agar dapat mengenali penomoran +62.

Analog Telepon Adapter bagi mereka yang membutuhkan sambungan ke telepon konvensional.