Open source UE

Build srsUE for conformance testing

Configure a conformance-ready srsUE build: RF vs ZMQ, log verbosity, PCAP capture, USIM parameters, and the flags a TTCN-3 campaign expects.

7 min read

A default srsUE build works for demos but hides most of what a TTCN-3 campaign needs. Conformance runs want maximum log detail, MAC/NAS PCAP capture, and a deterministic USIM.

Build flags

bashbash
cmake ../ \
  -DCMAKE_BUILD_TYPE=RelWithDebInfo \
  -DENABLE_UHD=ON \
  -DENABLE_SOAPYSDR=ON \
  -DENABLE_ZEROMQ=ON \
  -DENABLE_SRSUE=ON \
  -DENABLE_ASAN=OFF

Conformance-oriented ue.conf

ue.confini
[rf]
device_name = uhd
device_args = type=b200,master_clock_rate=23.04e6
tx_gain = 70
rx_gain = 40

[usim]
mode = soft
algo = milenage
opc  = 63BFA50EE6523365FF14C1F45F88737D
k    = 00112233445566778899aabbccddeeff
imsi = 001010123456789
imei = 353490069873319

[log]
all_level = debug
phy_lib_level = info
all_hex_limit = 32
filename = /tmp/ue.log

[pcap]
enable      = mac,mac_nr,nas
mac_filename    = /tmp/ue_mac.pcap
mac_nr_filename = /tmp/ue_mac_nr.pcap
nas_filename    = /tmp/ue_nas.pcap

Package it as an AEON build

bashbash
tar czf srsue-bundle.tar.gz \
  -C build/srsue/src srsue \
  -C ../../.. ue.conf

aeon builds push ./srsue-bundle.tar.gz --tag srsue-main --entrypoint srsue --config ue.conf

noteSet all_level = debug. The Copilot's failure explanations are only as good as the log detail it receives.

Run this against a real SDR lane

The tester is a service, not a box. Push a build, reserve a lane, get a verdict.