1.第一步安装适合的UHD这里建议安装UHD3.14
git clone https://github.com/EttusResearch/uhd
cd uhd/
sudo git checkout UHD-3.14
cd host
mkdir build
cd build
cmake ../
make -j8 //由于编译比较慢,所以选择使用8个”处理器”来提速
make test
sudo make install
sudo ldconfig
下载对应UHD-3.14的镜像,提供下载地址:
https://github.com/EttusResearch/uhd/releases/tag/v3.14.0.0
下载之后:
sudo tar -zxvf uhd-images_3.14.0.0.tar.gz
sudo mkdir /usr/local/share/uhd
sudo cp –r uhd-images_3.14.0.0 /usr/local/share/uhd
2.X310与电脑通过网线连接,x310使用OAI-NR的话,注意必须使用万兆网口,不然会出现gNB一直打印“LLLL....”的错误;
x310如何使用万兆网口请打开连接:http://www.ettus.com.cn/peixun/28/
当执行uhd_usrp_probe时报x310镜像不匹配时,执行如下指令就会将之前拷贝的·uhd-3.14的镜像加载到x310.
uhd_image_loader --args="type=x300,addr=192.168.40.2"
3.OAI-NR代码的下载和处理:
下载:
sudo apt-get update
sudo git clone https://gitlab.eurecom.fr/oai/openairinterface5g.git
cd openairinterface5g
sudo git checkout develop-nr (切换到nr的分支)
为了编译时快速下载注释掉部分代码,不影响后续运行
sudo vim ~/openairinterface5g/cmake_targets/tools/build_helper
注释掉以下两行代码:
$SUDO rm -rf /opt/ssh
$SUDO git clone https://gist/github.com/2190472.git /opt/ssh
使用x310的话,由于X310速度不及N310,需要更改源码的两个参数为6(使用n310不用修改):
sudo vim openairinterface5g/executables/nr-gnb.c
4.oai执行:
运行X310先修改配置文件:
sudo vim targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
将网卡名称改为你自己的网卡名,ip设为网卡所对应的ip
编译运行,首次编译的话可以加"-I",之后就可不加了,不然编译速度过慢
gNB侧:
cd cmake_targets
sudo ./build_oai -I --gNB -w USRP
cd ran_build/build
sudo ./nr-softmodem -O ../../../targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf -phy_test -E
gNB运行截图(UE还未接入):
5.UE侧
同123部分:修改nr-gnb.c参数不用进行了,这个文件是属于gnb侧的:
编译:
sudo ./build_oai -I --nrUE -w USRP
执行:
cd ran_build/build
sudo ./nr-uesoftmodem --numerology 1 -r 106 --phy-test -C 3510000000 --ue-rxgain 40 -d --usrp-args "addr=192.168.40.2"
UE运行截图:
ue端接入几十秒后就会因为同步不上而导致ue崩溃