Setting up, running and tuning OpenBTS

NOTE: This page is outdated, the OpenBTS project is abandoned. Please, use Osmocom software which is actively maintained and has reliable UmTRX support.

First ensure that you have the hardware set up correctly.

Software setup

UHD with UmTRX support

UHD must be installed along with the UmTRX UHD module. For details see the Driver page.

OpenBTS

Download

git clone https://github.com/fairwaves/openbts-2.8.git

Follow the standard build instructions.

Run OpenBTS

Follow the standard instructions at http://wush.net/trac/rangepublic/wiki/BuildInstallRun

Tune OpenBTS for hardware

To get the best performance you need to ensure your cell has good uplink/downlink (UL/DL) balance. Which is to say, it should not be UL- or DL-limited. OpenBTS has several parameters for this purpose and which should be tuned for specific hardware.

Note that the following procedure requires that you have a working OpenBTS setup with at least one connected handset.

  1. Run the noise command in the OpenBTS CLI several times to get the worst value (largest) for the noise RSSI of your setup. It should be a negative value, e.g. -44dB.
    OpenBTS> noise
    noise RSSI is -44 dB wrt full scale
    MS RSSI target is -37 dB wrt full scale
  2. Add 6-8dB to the noise RSSI value to get the RSSI level we need to receive phone signal on the BTS without errors. This is called target RSSI in OpenBTS and is set with GSM.Radio.RSSITarget value in the config. If noise RSSI is -44dB, then you could set target RSSI to -37dB:
    OpenBTS> config GSM.Radio.RSSITarget -37
  3. Make a call from your test mobile to another mobile or a soft-switch. During the next steps we will use the active channel between the mobile and the base station to estimate link quality, and to tune Rx gain and Tx attenuation.
  4. Adjust rxgain to provide good reception at the edge of the base station reception area, while at the same time avoiding saturation — and thus bad reception — close to the base station. The easiest way to estimate reception quality is to use UPFER value at the chans CLI command output. Zero UPFER means good reception, non-zero “`UPFER`” means errors on UL channel:
    OpenBTS> chans
    CN TN chan      transaction UPFER RSSI TXPWR TXTA DNLEV DNBER
    CN TN type      id          pct    dB   dBm  sym  dBm    pct
     0 1  TCH/F     1788614112  0.00   -5   5    0    -101   0.00
                                ^^^^
                          Good UL quality!
    
    OpenBTS> chans
    CN TN chan      transaction UPFER RSSI TXPWR TXTA DNLEV DNBER
    CN TN type      id          pct   dB   dBm   sym  dBm   pct
     0 1  TCH/F     22843555    56.80 -27  5     0    -59   0.00
                                ^^^^^
                          Bad UL reception.
  5. The power CLI command sets attenuation of the Tx power relative to the maximum base station power. It has two values, max and min, but for a small base station it’s easier to set them to the same value. Place the test mobile phone at the edge of good reception area and increase power value until DNBER starts to increase. It should happen when DNLEV reaches around -105dB.
    OpenBTS> power 55 55
    current downlink power -50 dB wrt full scale
    current attenuation bounds 50 to 50 dB
    new attenuation bounds 55 to 55 dB
    
    OpenBTS> chans
    CN TN chan      transaction UPFER RSSI TXPWR TXTA DNLEV DNBER
    CN TN type      id          pct   dB   dBm   sym  dBm   pct
     0 1  TCH/F     1788614112  0.00  -5   5     0    -107  2.26
                                                      ^^^^^^^^^^^
                                                 DL signal is too weak.
  6. If you need to limit the radius of your base station it’s better to do so by decreasing the base station Tx power, i.e. by increasing attenuation with the power command.