OpenBTS-UMTS Quick Install & Usage (Ubuntu, USRP)ο
1. Requirementsο
OS: Ubuntu 20.04/22.04 (also works on 18.04)
SDR: USRP B200/B210, N210, X310, etc.
Dependencies: UHD, libosip2, libsctp, asterisk (optional for SIP/voice)
2. Install UHD (USRP driver)ο
sudo apt update
sudo apt install -y libuhd-dev uhd-host
sudo uhd_images_downloader
Check your USRP:
uhd_find_devicesuhd_usrp_probe
3. Install build dependenciesο
sudo apt install -y build-essential git cmake autoconf automake libtool \
libosip2-dev libsctp-dev libuhd-dev libsqlite3-dev libboost-all-dev \
libreadline-dev libncurses5-dev asterisk
4. Build and install OpenBTS-UMTSο
a) Clone the repository
git clone https://github.com/RangeNetworks/openbts-umts.git
cd openbts-umts
b) Compile
./autogen.sh
./configure
make -j$(nproc)
sudo make install
5. Prepare configurationο
Copy example configs from
apps/to/etc/OpenBTSUMTSif needed.Edit:
NodeB.tab: cell configuration
OpenBTSUMTS.db: SQLite database (allowed IMSIs/users)
Main config: OpenBTSUMTS.config
Tip: For first tests, use open mode (accept all IMSIs).
6. Start OpenBTS-UMTSο
sudo OpenBTSUMTS
Monitor the console: check for USRP detection and cell creation.
Use the interactive CLI for logs and control (
helpfor commands).
7. Connect a 3G phoneο
Use a 3G phone (rooted/dev mode preferred) or a programmable SIM.
The phoneβs IMSI must be in the database (
OpenBTSUMTS.db).For SIP + Asterisk:
Configure a SIP account in OpenBTS-UMTS and on your softphone.
Test calls between SIP devices and the phone.
8. Debug & logsο
Logs:
/var/log/OpenBTSUMTS/Interactive CLI (
helpcommand)Check: RF status, synchronization, attach/detach events
9. Stop cleanlyο
sudo pkill OpenBTSUMTS
Useful linksο
Need a sample config (NodeB.tab, users), an all-in-one script, or a comparison with OAI? Just ask!