Difference between revisions of "OpenBTS: Ubuntu Install OpenBTS 2.6 Clock 52MHz"

From OnnoWiki
Jump to navigation Jump to search
Line 118: Line 118:
 
'''SOLUSI:'''
 
'''SOLUSI:'''
  
 +
 +
 +
jl*******
 +
*** openbts-2.6.0Mamou.orig/Transceiver52M/USRPDevice.cpp    2010-07-16 17:01:45.000000000 -0700
 +
--- openbts-2.6.0Mamou/Transceiver52M/USRPDevice.cpp    2011-04-05 15:59:06.279967994 -0700
 +
***************
 +
*** 607,613 ****
 +
  bool USRPDevice::setTxFreq(double wFreq) {
 +
    // Tune to wFreq+LO_OFFSET, to prevent LO bleedthrough from interfering with transmitted signal.
 +
    double actFreq;
 +
!  if (!tx_setFreq(wFreq+9*LO_OFFSET,&actFreq)) return false;
 +
    bool retVal = m_uTx->set_tx_freq(0,(wFreq-actFreq));
 +
    LOG(INFO) << "set TX: " << wFreq-actFreq << " actual TX: " << m_uTx->tx_freq(0);
 +
    return retVal;
 +
--- 607,613 ----
 +
  bool USRPDevice::setTxFreq(double wFreq) {
 +
    // Tune to wFreq+LO_OFFSET, to prevent LO bleedthrough from interfering with transmitted signal.
 +
    double actFreq;
 +
!  if (!tx_setFreq(wFreq+LO_OFFSET,&actFreq)) return false;
 +
    bool retVal = m_uTx->set_tx_freq(0,(wFreq-actFreq));
 +
    LOG(INFO) << "set TX: " << wFreq-actFreq << " actual TX: " << m_uTx->tx_freq(0);
 +
    return retVal;
 +
***************
 +
*** 621,627 ****
 +
    //        in front of the ADC.  This possibly gives us an extra 10-20dB Tx/Rx isolation.
 +
    double actFreq;
 +
    // FIXME -- This should bo configurable.
 +
!  if (!rx_setFreq(wFreq-5*LO_OFFSET,&actFreq)) return false;
 +
    bool retVal = m_uRx->set_rx_freq(0,(wFreq-actFreq));
 +
    LOG(DEBUG) << "set RX: " << wFreq-actFreq << " actual RX: " << m_uRx->rx_freq(0);
 +
    return retVal;
 +
--- 621,627 ----
 +
    //        in front of the ADC.  This possibly gives us an extra 10-20dB Tx/Rx isolation.
 +
    double actFreq;
 +
    // FIXME -- This should bo configurable.
 +
!  if (!rx_setFreq(wFreq-2*LO_OFFSET,&actFreq)) return false;
 +
    bool retVal = m_uRx->set_rx_freq(0,(wFreq-actFreq));
 +
    LOG(DEBUG) << "set RX: " << wFreq-actFreq << " actual RX: " << m_uRx->rx_freq(0);
 +
    return retVal;
 +
 +
Referensi
 +
 +
http://www.mentby.com/Group/openbts-discuss/openbts-error-tx-failed-to-tune-with-52m-clock.html
  
 
==Pranala Menarik==
 
==Pranala Menarik==

Revision as of 10:41, 15 April 2012

Instalasi paket / library pendukung tambahan

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

Compile osip

LANGKAH INI SEBAIKNYA DI SKIP

Kadang kala untuk bisa mengcompile SMS queue tampaknya osip dari Ubuntu tidak bisa di gunakan kita harus compile dari scratch

apt-get remove --purge libosip2-4 libosip2-dev

Download osip

http://ftp.gnu.org/gnu/osip/
http://ftp.gnu.org/gnu/osip/libosip2-3.6.0.tar.gz
http://mirrors.kernel.org/gnu/osip/libosip2-3.6.0.tar.gz
ftp://mirrors.kernel.org/gnu/osip/

Compile

cp libosip2-3.6.0.tar.gz /usr/local/src
cd /usr/local/src
tar zxvf libosip2-3.6.0.tar.gz
mkdir linux-build
cd /usr/local/src/linux-build/
../libosip2-3.6.0/configure 
make clean
make all
make
make install

Install OpenBTS

Download source code dari

http://www.openbts.org
http://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.gz
cd /usr/local/src/openbts-2.6.0Mamou/
./configure 
make clean
make all
make 
make install

Compile smqueue

Install g++ 4.3 karena versi 4.4 tidak bisa digunakan untuk compile smqueue

apt-get install g++-4.3

Edit Makefile.standalone

vi /usr/local/src/openbts-2.6.0Mamou/smqueue/Makefile.standalone 
g++ -o smqueue $(CPPFLAGS) $(INCLUDES) smqueue.cpp smnet.cpp smcommands.cpp ../HLR/HLR.cpp $(LIBS)

menjadi

g++-4.3 -o smqueue $(CPPFLAGS) $(INCLUDES) smqueue.cpp smnet.cpp smcommands.cpp ../HLR/HLR.cpp $(LIBS)

Compile smqueue

cd /usr/local/src/openbts-2.6.0Mamou/smqueue/
make -f Makefile.standalone

Instalasi OpenBTS Selesai :)

OpenBTS 2.6 masih belum sempurna, setiap kali kita mengubah user di asterisk, kita perlu mengcompile ulang smqueue, silahkan baca-baca OpenBTS: SMS


Error g++ 4.4

Jika kita menggunakan g++ 4.4 maka akan terjadi error sebagai berikut

smnet.cpp:423: error: invalid conversion from ‘const char*’ to ‘char*’
make: *** [smqueue] Error 1


Di OpenBTS 2.6 masih belum sempurna, setiap kali kita mengubah user di asterisk, kita perlu mengcompile ulang smqueue, silahkan baca-baca OpenBTS: SMS

Edit Konfigurasi smqueue

Copy smqueue.config.example ke smqueue.config

cd /usr/local/src/openbts-2.6.0Mamou/smqueue/
cp smqueue.config.example smqueue.config

Konfigurasi smqueue berada di ./smqueue/smqueue.config. Tambahkan sedikit di smqueue.config agar:

vi /usr/local/src/openbts-2.6.0Mamou/smqueue/smqueue.config

tambahkan supaya tidak crash waktu mengirim SMS registrasi

Log.Alarms.Max 10

buat savedqueue.txt di directory ./smqueue

touch /usr/local/src/openbts-2.6.0Mamou/smqueue/savedqueue.txt

Error

Error: TX failed to tune

Ada error

1334320383.8824 ALARM 3079592816 Transceiver.cpp:551:driveControl: TX failed to tune
1334320383.8827 ALARM 3079555296 TRXManager.cpp:349:tune: TXTUNE failed with status 1

SOLUSI:


jl*******

      • openbts-2.6.0Mamou.orig/Transceiver52M/USRPDevice.cpp 2010-07-16 17:01:45.000000000 -0700

--- openbts-2.6.0Mamou/Transceiver52M/USRPDevice.cpp 2011-04-05 15:59:06.279967994 -0700

      • 607,613 ****
 bool USRPDevice::setTxFreq(double wFreq) {
   // Tune to wFreq+LO_OFFSET, to prevent LO bleedthrough from interfering with transmitted signal.
   double actFreq;

! if (!tx_setFreq(wFreq+9*LO_OFFSET,&actFreq)) return false;

   bool retVal = m_uTx->set_tx_freq(0,(wFreq-actFreq));
   LOG(INFO) << "set TX: " << wFreq-actFreq << " actual TX: " << m_uTx->tx_freq(0);
   return retVal;

--- 607,613 ----

 bool USRPDevice::setTxFreq(double wFreq) {
   // Tune to wFreq+LO_OFFSET, to prevent LO bleedthrough from interfering with transmitted signal.
   double actFreq;

! if (!tx_setFreq(wFreq+LO_OFFSET,&actFreq)) return false;

   bool retVal = m_uTx->set_tx_freq(0,(wFreq-actFreq));
   LOG(INFO) << "set TX: " << wFreq-actFreq << " actual TX: " << m_uTx->tx_freq(0);
   return retVal;
      • 621,627 ****
   //        in front of the ADC.  This possibly gives us an extra 10-20dB Tx/Rx isolation.
   double actFreq;
   // FIXME -- This should bo configurable.

! if (!rx_setFreq(wFreq-5*LO_OFFSET,&actFreq)) return false;

   bool retVal = m_uRx->set_rx_freq(0,(wFreq-actFreq));
   LOG(DEBUG) << "set RX: " << wFreq-actFreq << " actual RX: " << m_uRx->rx_freq(0);
   return retVal;

--- 621,627 ----

   //        in front of the ADC.  This possibly gives us an extra 10-20dB Tx/Rx isolation.
   double actFreq;
   // FIXME -- This should bo configurable.

! if (!rx_setFreq(wFreq-2*LO_OFFSET,&actFreq)) return false;

   bool retVal = m_uRx->set_rx_freq(0,(wFreq-actFreq));
   LOG(DEBUG) << "set RX: " << wFreq-actFreq << " actual RX: " << m_uRx->rx_freq(0);
   return retVal;

Referensi

http://www.mentby.com/Group/openbts-discuss/openbts-error-tx-failed-to-tune-with-52m-clock.html

Pranala Menarik

Persiapan

OpenBTS 2.6

OpenBTS 2.8

Ettus E110

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah