No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-18 17:23:12 +02:00
trigger_scripts Remove absolute path 2026-09-18 16:50:30 +02:00
.gitignore Initial commit 2026-08-20 22:35:29 +02:00
enb.conf Added reliable gain 2026-09-18 16:49:28 +02:00
epc.conf Added missing files 2026-09-18 10:42:57 +02:00
RAYHUNTER_ALERTS.md Fixed path 2026-09-18 16:59:58 +02:00
rayhunter_triggers.patch Added missing files 2026-09-18 10:42:57 +02:00
rb.conf Added missing files 2026-09-18 10:42:57 +02:00
README.md Fixed paths 2026-09-18 17:23:12 +02:00
rr.conf Added missing files 2026-09-18 10:42:57 +02:00
sib.conf Added missing files 2026-09-18 10:42:57 +02:00
user_db.csv Added missing files 2026-09-18 10:42:57 +02:00

srsRAN_4G Setup for These Configs

Self-contained private LTE test cell: PLMN 999/70, Band 3, EARFCN 1575.

Relative paths (./sib.conf, ./rr.conf, ./rb.conf, ./user_db.csv) resolve against the cwd at launch, not the .conf file's location — always cd into this folder first!

1. Prerequisites

  • Ettus USRP (B210/B205mini) on a true USB3 port (lsusb -t → 5000M, not 480M, after firmware load).
  • Build packages:
    sudo apt install -y cmake g++ git libfftw3-dev libmbedtls-dev \
      libconfig++-dev libsctp-dev uhd-host libuhd-dev \
      libboost-program-options-dev libboost-system-dev \
      libboost-test-dev libboost-thread-dev
    
  • UHD firmware/FPGA images (uhd_images_downloader.py, or UHD_IMAGES_DIR pointing at an existing copy).

2. Clone and build

git clone --depth 1 --branch release_23_11 https://github.com/srsRAN/srsRAN_4G.git
cd srsRAN_4G

# GCC 14/15: fix a hard C++20 compile error, then disable the project's own -Werror
sed -i 's/explicit block_queue<myobj>(int capacity_ = -1)/explicit block_queue(int capacity_ = -1)/' \
  lib/include/srsran/common/block_queue.h
mkdir build && cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF
make -j$(nproc)

3. Capabilities (no root needed at runtime)

sudo setcap cap_net_admin+ep srsepc/src/srsepc
sudo setcap cap_sys_nice+ep  srsenb/src/srsenb

Needed for TUN setup (srsepc) and real-time PHY/MAC scheduling (srsenb). Reapply after every rebuild relinking strips them.

4. Running (from this directory)

cd /path/to/raybench/

# terminal 1
/path/to/srsRAN_4G/build/srsepc/src/srsepc epc.conf

# terminal 2 — needs UHD_IMAGES_DIR set
export UHD_IMAGES_DIR=/path/to/uhd_images
/path/to/srsRAN_4G/build/srsenb/src/srsenb enb.conf

Success: srsepc logs MME Initialized then SP-GW Initialized; srsenb logs eNodeB started; srsepc then logs Sending S1 Setup Response.