英创信息技术Linux主板基于3G和4G的无线通讯方案

网友投稿 335 2022-11-26

英创信息技术Linux主板基于3G和4G的无线通讯方案

基础介绍

ESMARC系列主板和MINI-PCIe接口模块

目前测试过的3G和4G模块整理如下:

无线模块和英创公司主板在物理上是通过USB虚拟串口进行通讯的,而软件上通过ppp协议转换提供给客户一个标准的网络设备。英创公司在主板中已经添加了3G和4G模块的驱动(USB虚拟串口驱动)和ppp协议的支持。板卡中的驱动是以模块(usbserial.ko)的形式提供,usbserial.ko是一个通用的驱动,已经集成了大部分常用模块的支持。驱动加载成功后系统会生成多个虚拟串口,他们分别有不同的用处,比如作为数据通讯口(即modem口)、响应AT指令的设备口以及传输GPS信息的设备口等,生成USB虚拟串口后通过ppp调用modem口拨号即可连接上网,需要注意的是3G模块的modem口一般都为/dev/ttyUSB0,而4G模块的modem口一般为/dev/ttyUSB1。

无线信道 网络制式 对应拨号文件
3G 联通CDMA /etc/ppp/peers/wcdma-connect-script
3G 电信CDMA 2000 /etc/ppp/peers/cdma-connect-script
4G 通用 /etc/ppp/peers/lte-connect-script

使用步骤

接下来以4G模块MU909S-2作为例,说明具体的使用步骤:

2、加载驱动模块,需要代入上面的vender id和product id,英创Linux主板的驱动模块都放在/lib/modules//下面,例如使用ESM6800加载驱动模块,因为ESM6800的内核版本为4.1.15,输入命令为:insmode /lib/modules/4.1.15/usbserial.ko vendor=0x12d1 product=0x15c1,注意如果使用的主板为ESM7000,ESM6802,ESM6800H或者ESM6800V系列的板卡,可以使用命令:modprobe usbserial vendor=0x12d1 product=0x15c1,不需要代入路径了,输入驱动后会自动生成usb虚拟串口,如下:

转换成虚拟串口

可以看到系统生成了多个USB虚拟串口。注意,如果客户使用的无线模块不在上面的表格之中,可以通过模块的手册来确定vendor id和product id,或者使用一台装有Linux系统的PC,将模块连接到PC上使用lsusb命令也可以查看到两个id号。

3、接下来就可以拨号了,输入命令:pppd call lte-connect-script 使用4G网络的拨号文件lte -connect-script进行拨号,完成以后,可以使用ifconfig命令查询,如果成功联网,会有ppp0的网络信息。如图所示:

ppp0节点信息

常见问题

如果拨号后遇到无法生成ppp0节点的情况,客户可以通过修改拨号文件来查看调试信息,拨号文件中有一行为#nodetch,去掉前面的#,就可以输出调试信息了,如下图:

拨号文件内容

在生成ppp0节点之后,如果要通过ppp0访问外网,那么默认网关就需要设置为ppp0节点,客户可以使用route命令查看当前的默认网关。在没有默认网关的情况下,ppp拨号成功之后会自动将ppp0设置为默认网关,英创主板可以通过把userinfo.txt中DefaultGateway这一项的值填为0,来取消设置默认网关。如果主板在拨号的时候已经有了默认网关,或者需要设置多个网关,可以参考文章:《Linux主板多网络的优先级设置》进行设置。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:常用HiveQL
下一篇:SpringMVC @ResponseBody 415错误处理方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~