ubuntu 16.04系统LimeSDR V1.4使用OpenAirInterface搭建LTE实验环境

操作系统调整
参考ubuntu 16.04低延迟内核安装低延时内核

CPU调整为最大性能模式,并且不允许降低频率

安装依赖包

编译安装SoapySDR

编译安装LimeSDR

编译安装USRP驱动

下载并解压缩需要的补丁,点击此处下载

下载并编译eNB

下载并编译EPC(核心网)

配置EPC

修改我们UE需要使用的配置文件

找到:

替换为:

测试功能,按照顺序打开四个独立Shell

 

 

 

正常启动之后,用手机(比如华为荣耀7)搜索运营型,可以找到一个名为20892的运营商,或者有些欧洲制式的手机可以正确的显示Eurecom这个法国电信运营商的名字。

设备使用的SIM卡建议从淘宝购买可以重复写入的LTE测试卡(大约30元每张的样子),卡内的内容请严格遵守下图的信息进行写入,包括灰色区域,看似不可写而无效,但是如果不设置成下图的样子,就会无法联网:

上述的代码如果下载困难,可以从本站下载一份拷贝。

SoapySDR源代码下载
LimeSuite源代码下载
USRP源代码下载
openairinterface5g源代码下载
openair-cn源代码下载
推荐使用LimeUtil刷新的固件

如果发生手机等设备无法连接到我们自己搭建的基站,在确定测试卡信息填写完全正确的前提下,如果lte-softmodem窗口出现下图的红色错误信息:

优先检查设备的MTU,如果设备的MTU大小超过1500,则会导致这种问题,/usr/local/etc/oai/spgw.conf里面配置的MTU大小就是1500,这个大小可以设置为1536,但是貌似会导致应用异常。
目前已知的是小米Note1会记录上次联网时候设备的MTU大小,如果恰好连接过MTU1536的基站,貌似会使用这个数字,导致问题。
一般建议Android手机执行adb shell ifconfig观察一下手机的输出。

手机如果要实现上网,需要手工创建一个APN,如下图,名字任意填写即可

主要的设置为下图,APN协议APN漫游协议承载系统,这三个要设置,否则MME会崩溃(src/nas/emm/sap/emm_cn.c:358 空指针异常),主要是协议不支持,导致处理异常。正常情况下,已经自动设置了MCCMNC,如果没有自动设置,请手工修改成MCC 208MNC 92

手机实验的时候有个小技巧,可以解决频繁插拔SIM卡的问题,就是把手机设置成飞行模式,再取消飞行模式,可以强制手机重新搜索基站并建立连接,因而减少对于SIM卡的插拔操作。

参考链接


发布者

《ubuntu 16.04系统LimeSDR V1.4使用OpenAirInterface搭建LTE实验环境》上有13条评论

  1. Did it possible to emulate the limesdr like usrp and use the command "sudo –E ./lte-softmodem –o $OPENAIR_DIR/targets/PROJECT/GENERIC-LTE-
    EPC/CONF/enb.band7.tm1.usrpb210.conf –d "with the same hardware but use only the soapyUHD like driver with the OAI !? what kind of command on the terminal should I do for doing it !?

  2. 博主你好,我最近入手了limesdr硬件,然后完全按照你的这篇博客进行操作(HostOS, 软件版本号等都和你保持一致),但是在enb的shell窗口中 显示一条红色错误信息:[SCTP][E][sctp_enb_read_from_socket] sctp_recvmsg(fd 41, len -1):connection time out:110, 然后显示[EMU][N]waiting for eNB application to be ready, 之后就没有进一步log输出了。接着继续等了10分钟左右也没有进一步进展。请问可能是什么原因造成的?谢谢!

      1. 检查了一下,mme的ip手误写错了,导致这个问题。
        还有一个问题,用了谷歌官方手机nexus 6p尝试搜网,按照博主的贴图写好白卡并插入白卡打开手机,nexus 6p报告找不到SIM卡,又尝试了其他几个手机nexus4/5/6都是同样的问题,感觉应该不是卡或者卡槽接触不良的问题,是不是白卡的设置参数上有点问题?博主尝过的成功的手机有哪些?多谢!

        1. 小米,华为都可以,这个应该不是卡的问题,估计是手机限制了,因为默认是法国电信的,貌似谷歌的手机在欧盟是有限制的,试试修改一下国家代码试试,另外就是这个要求FDD的,如果你手机只能使用TDD的话,确实是有问题的。

        2. 另外注意,你买的是4G SIM卡还是2G SIM卡,你必须使用4G的SIM卡,两者差价差不多一倍的,你联系一下买卡的卖家,确认一下这个事情才行。

  3. 多谢博主!应该是4G的白卡,30块左右一张的那种。
    还有, 博主,你有尝试过用limesdr+OAI+opencoreims 做端到端的VoLTE呼叫吗?还有博主,你有微信公众号或者微信方便加个好友吗?

  4. 博主你好, 再请教一个问题。我刚刚买了红米6A和华为荣耀畅玩7A,都是号称全网通手机,但是用红米6A可以手动搜网,并搜到20892的网,但是无法注册成功。用华为荣耀畅玩7A,连20892的网都搜不到。请问一下这可能是什么问题?难道手机太新了?得用老一点的手机才行?多谢!

    1. 这个没关系的,如果出现无法注册成功,一般说明是设备设置上存在问题,最常见的就是内核不是实时内核,而是非实时内核,或者机器上其他任务导致了处理器开销太大,请注意一下内核版本以及CPU利用率。
      设备需要跟基站进行一次通信,双方需要一次双向认证,这个认证时间的精度要求非常高,如果发生内核不实时,会造成时间精度不正确,导致双向认证不通过。

发表评论

电子邮件地址不会被公开。 必填项已用*标注