Project

General

Profile

Actions

Ettus USRP B2xx family » History » Revision 6

« Previous | Revision 6/26 (diff) | Next »
Anonymous, 02/19/2016 10:47 PM


This page will describe how to install and configure OpenBSC, Osmo-BTS, Osmo-TRX, Osmo-PCU and OpenGGSN to create an opensource 2G/GSM network with your Ettus USRP B200/B210 SDR hardware.

This page in under development, please stay tuned.

'''Pre-Req:'''

The following guide is created on Ubuntu 14.14.03 LTS 64bit with kernel 3.19.0-26-lowlatency

1. Installing the UHD driver stack for Ettus USRP SDRs:

http://files.ettus.com/manual/page_install.html#install_linux_ourbins

'''2. Installing dependencies:'''

{{{
apt-get install libdbi0-dev libdbd-sqlite3 build-essential libtool autoconf automake git-core pkg-config libpcsclite-dev libusb-1.0 libncurses5-dev libgsm1-dev
}}}

Create a folder, where all the projects files will be stored:

{{{
mkdir osmocom
cd osmocom
}}}

'''Get Opencore AMR:'''

{{{
wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz
tar xvzf opencore-amr-0.1.3.tar.gz
cd opencore-amr-0.1.3
./configure
make
make install
ldconfig
cd ..
}}}

'''Get ORTP:''

Note: 0.24.2 is not working with OpenBSC!

{{{
wget http://download.savannah.gnu.org/releases/linphone/ortp/sources/ortp-0.22.0.tar.gz
tar xvzf ortp-0.22.0.tar.gz
cd ortp-0.24.2
./configure
make
make install
ldconfig
cd ..
}}}

'''Get libosmocore (master):''' {{{
git clone git://git.osmocom.org/libosmocore.git
cd libosmocore
autoreconf -fi
./configure
make
make install
ldconfig
cd ..
}}}
'''Get libosmo-abis (master)''' {{{
git clone git://git.osmocom.org/libosmo-abis.git
cd libosmo-abis
autoreconf -fi
./configure
make
make install
ldconfig
cd ..
}}}
'''Get libosmo-netif (master):''' {{{
git clone git://git.osmocom.org/libosmo-netif.git
cd libosmo-netif
autoreconf -fi
./configure
make
make install
ldconfig
cd ..
}}}
'''Get OpenGGSN:''' {{{
git clone git://git.osmocom.org/openggsn.git
cd openggsn
autoreconf -i
./configure --prefix=/usr/local
make
make install
ldconfig
cd ..
}}}
'''Get libosmo-sccp (master):''' {{{
git clone git://git.osmocom.org/libosmo-sccp.git
cd libosmo-sccp
autoreconf -fi
./configure
make
make install
ldconfig
cd ..
}}}
'''Get OpenBSC (fairwaves/master):''' {{{
git clone git://git.osmocom.org/openbsc.git
cd openbsc/openbsc
git checkout fairwaves/master
autoreconf -fi
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
./configure
make
make install
ldconfig
cd ../..
}}}
'''Get Osmo-BTS (fairwaves/master):''' {{{
git clone git://git.osmocom.org/osmo-bts.git
cd osmo-bts
git checkout fairwaves/master
autoreconf -fi
./configure --enable-trx
make
make install
ldconfig
cd ..
}}}
'''Get Osmo-PCU (master):''' {{{
git clone git://git.osmocom.org/osmo-pcu.git
autoreconf -fi
./configure --enable-sysmocom-bts
make
make install
ldconfig
cd ..
}}}
'''Get Osmo-TRX (master):''' {{{
git clone git://git.osmocom.org/osmo-trx.git
cd osmo-trx
./autogen.sh
./configure
make
make install
ldconfig
cd ..
}}}

'''Get mISDN kernel and user space:'''

Note: if you see "configure: error: kernel build tree does not exist" then you need to install kernel headers. {{{
git clone git://git.misdn.eu/mISDN.git
cd mISDN
./configure
cp mISDN.cfg.default standalone/mISDN.cfg
make modules
make modules_install
ldconfig
cd ..

git clone git://git.misdn.eu/mISDNuser.git
cd mISDNuser
make
./configure
make
sudo make install
ldconfig
cd ..

depmod –a
modprobe mISDN_core
modprobe mISDN_dsp
modprobe mISDN_l1loop nchannel=30 interfaces=2
}}}

To auto-load the mISDN kernel modules do:

{{{
cd /etc/modules-load.d/
cat > misdn-modules.conf
mISDN_core
mISDN_dsp
mISDN_l1loop nchannel=30 interfaces=2
}}}
Hit Ctrl+C {{{
chmod 644 misdn-modules.conf
cd /
}}}

'''Install Asterisk (ver 1.8 !):'''

On Ubuntu 14.04 there is no version 1.8 Asterisk anymore, to get it, do the following: {{{
wget http://launchpadlibrarian.net/153943558/asterisk-modules_1.8.13.1~dfsg-3ubuntu3_amd64.deb
wget http://launchpadlibrarian.net/153943773/asterisk-config_1.8.13.1~dfsg-3ubuntu3_all.deb
wget http://launchpadlibrarian.net/153943772/asterisk-dev_1.8.13.1~dfsg-3ubuntu3_all.deb
wget http://launchpadlibrarian.net/153943557/asterisk_1.8.13.1~dfsg-3ubuntu3_amd64.deb
wget http://launchpadlibrarian.net/107480639/asterisk-core-sounds-en-gsm_1.4.22-1_all.deb
wget http://launchpadlibrarian.net/58272892/asterisk-moh-opsound-gsm_2.03-1_all.deb
dpkg -i *.deb
apt-get -f install
}}}

Otherwise the Asterisk channel driver (chan_lcr) will not compile.

'''Get LCR (master):''' {{{
git clone git://git.misdn.eu/lcr.git/
cd lcr
autoreconf -fi
./configure --with-gsm-bs --with-misdn --with-asterisk
make
make install
cp chan_lcr.so /usr/lib/asterisk/modules/
ldconfig
cd ..
}}}

Configure the LCR interfaces: {{{
cat > /usr/etc/lcr/interface.conf
[GSM]
gsm-bs
tones no
earlyb no
bridge ast

[ast]
remote asterisk
context from-lcr
earlyb no
tones yes
bridge GSM
}}}
Hit Ctrl+C

Add the following two lines to the bottom of options.conf: {{{
nano /usr/etc/lcr/options.conf

socketuser asterisk
socketgroup asterisk
}}}

Files (6)
ggsn.conf ggsn.conf 529 Bytes GGSN config file, put it to /etc/ggsn.conf , 09/23/2015 04:07 PM
extensions.conf extensions.conf 1.5 KB Asterisk config file, put it to /etc/asterisk/extensions.conf , 09/23/2015 04:08 PM
osmo-pcu.cfg osmo-pcu.cfg 1.04 KB Example Osmo-PCU config file , 09/23/2015 04:09 PM
sgsn.conf sgsn.conf 1.12 KB Example Osmo-SGSN config file , 09/23/2015 04:09 PM
openbsc.conf openbsc.conf 3.98 KB Example OpenBSC config file , 09/23/2015 04:09 PM
osmo-bts.cfg osmo-bts.cfg 593 Bytes Example OsmoBTS config file laforge, 04/12/2017 01:09 PM

Updated by about 8 years ago · 6 revisions

Add picture from clipboard (Maximum size: 48.8 MB)