基于华为巴龙MH5000-31 5G工业/商业模组开发(二)
验证华为巴龙5000基带芯片基本功能、性能测试(Ubuntu/Linux端)
5G-第五代移动通信技术(英语:5th generation mobile networks或5th generation wireless systems、5th-Generation,简称5G或5G技术)是最新一代蜂窝移动通信技术,也是继4G(LTE-A、WiMax)、3G(UMTS、LTE)和2G(GSM)系统之后的延伸。5G的性能目标是高数据速率、减少延迟、节省能源、降低成本、提高系统容量和大规模设备连接。Release-15中的5G规范的第一阶段是为了适应早期的商业部署。Release-16的第二阶段将于2020年4月完成,作为IMT-2020技术的候选提交给国际电信联盟(ITU)。
ITU IMT-2020规范要求速度高达20 Gbit/s,可以实现宽信道带宽和大容量MIMO。
2019年10月31日,三大运营商公布5G商用套餐,并于11月1日正式上线5G商用套餐
2020年各大运营商和各大手机厂商将在5G网络、5G终端继续发力。基于高通骁龙856平台配合X55基带、麒麟9905G、天玑1000系列的终端发售,也使得5G市场开始正式开启商用。当然其中也不乏像麒麟820、天玑820、高通765G等中端5GSOC的上市,进一步拉低了5G的门槛
目前市面上只有华为MH5000、基于高通骁龙X55基带的SIM8200EA-M2两家有5G模组在售,价格上华为的性价比高一些,也是本次选择这款模块的主要原因
上篇我详细说明了MH5000-31的技术参数、windows端的相关配置说明以及性能测试,本篇来探究一下Ubuntu/Linux下如何配置使用
当然第一次看这篇教程的可以先阅读一下第一篇,免得一脸蒙蔽:链接在此
闲话不多扯,我们进入正题…
一、修改Linux kernel驱动
该部分为华为自研接口,包括:Modem、PCUI、Diag、GPS和GPS Control等:
● Modem端口用于Linux侧和华为模块进行PPP-Modem拨号命令及数据业务的交互
● PCUI端口用于Linux侧与华为模块进行普通AT命令的交互
● Diag端口用于抓取华为模块侧log信息
● GPS和GPS Control端口用于下发GPS相关命令和获取GPS NMEA信息
这部分集成涉及修改的Linux内核源码文件为:
linux_src/drivers/usb/serial/option.c
linux_src/drivers/usb/serial/usb_wwan.c
linux_src/include/linux/usb.h
文本配置方式,修改linux_src/目录下的.config文件
USB串口驱动相关的配置项:
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_OPTION=y
CONFIG_USB_SERIAL_WWAN=y
CONFIG_USB_USBNET=y
CONFIG_NETDEVICES=y
CONFIG_USB_NET_CDCETHER=y
CONFIG_USB_USBNET=y
CONFIG_NETDEVICES=y
CONFIG_USB_NET_CDC_MBIM=y
编译并且替换linux kernel
二. 硬件连接
5G模组单独电源供电5V限流6A,打开电源然后按下5G模组power key 1秒以上,然后松开。连接USB到Ubuntu主机 USB口上,注意需要支持USB3.0。如图:
三. 拨号上网
编辑网络连接
添加一个网络连接
选择Mobile Broadband
区域选择China
默认next
选择SIM卡对应的运营商
选择默认APN节点
选择save保存
点击刚才新添加的网络连接
输入密码,默认1111
连接ok,现在就可以上网测试一下网速啦
四. 性能测试
1.测试设备:华为MH5000-31模组
2.测试地点:中国人民大学西门对面,人大楼顶目测有一批5G基站,测试直线距离约150米
3.SIM卡为中国联通4G卡:目前卡没有开5G套餐(后续会更新5G卡速度),上限为300Mbps,冰激凌套餐
4.测试天线:4根(包括主天线一根)
华为巴龙MH5000
至此,Ubuntu/Linux端的调试就全部结束了,有疑惑的小伙伴欢迎评论区交流,其他平台的调试已经进行中,未完待续哟…
本文地址:https://blog.csdn.net/u011501321/article/details/106397334
下一篇: Python学习笔记-数据库的使用(一)