4G模块的使用

news/2024/11/7 6:44:07/

一、4G相关知识

4G是第四代通讯技术。能够传输高质量视频图像。4G的下载速度达100Mbps,比目前的拨号上网快2000倍,上传的速度也能达到20Mbps,并能够满足几乎所有用户对于无线服务的要求。此外,4G可以在DSL和有线电视调制解调器没有覆盖的地方部署,然后再扩展到整个地区。

4G的联网通路

4G终端直接通过和基站连接,基站通过电缆和运营商的机房连接,机房连接到核心网,核心网最后连接到互联网。示意图如下:


二、4G模块介绍

4G模块有几种,单m模和多模,单模只支持一种模式,即支持一种运行商的网络,多模可支持任意运营商的网络。可支持的接口有串口和USB两种。一般情况不用串口,速度太慢。

  • EC20模块
    EC20 R2.1 Mini PCIe-C 模块支持主要功能如下。
     支持 1 路 UART 接口
     支持 1 路 USB 2.0 接口
     支持 1 路(U)SIM 接口
     支持 1 路模拟音频接口
     支持 LED 状态指示
     支持飞行模式控制功能
     支持外部复位功能
     支持睡眠控制和睡眠指示功能
     支持 3 个射频天线接口

实物图:

安装到USB转接座上:

三、在windows上使用4G模块上网

1、安装模块附件中的windows驱动
2、在模块中插入一张电话卡(注意是4G卡)
3、把带有USB接口的4G模块插入电脑
4、在无线网络中就发现了CMCC网络

现在就可以通过模块上网了。



四、4G模块在Linux下的移植

4G模块驱动的添加

1、添加VID和PID

本模块是USB接口,使用的是USB类,所以不用添加驱动,但是根据内核的版本,需要添加VID和PID。
先查看USB的VID 和 PID信息:

[root@lin ~]# lsusb
Bus 001 Device 004: ID 2c7c:0125

得到VID 和 PID后,修改文件 /kernel/drivers/usb/serial/option.c,添加位置如下:

#define EC20_VID 0X2C7C
#define EC20_PID 0X0125
static const struct usb_device_id option_ids[] =
{{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA_LIGHT) },...... { USB_DEVICE(EC20_VID , EC20_PID ) }, // EC20 4G 模块{ } /* Terminating entry */
}
2、内核配置

本4G模块是USB接口设备,内核配置为:

Device Drivers —>
  [ * ] USB support —>
   < * > USB Serial Converter support —>
     <*> USB driver for GSM and CDMA modems

ppp拨号支持:

Device Drivers —>
  [ * ] Network device support —>
   < * > PPP (point-to-point protocol) support

配置完成后,编译内核,再下载内核到开发板,启动开发板,出现下面信息,表示配置完成。

[root@li ~]# ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1   /dev/ttyUSB2   /dev/ttyUSB3 /dev/ttyUSB4

3、测试设置情况

驱动是否工作:

[root@lin ~]# cat /dev/ttyUSB2 &
+QIND: SMS DONE
+QIND: PB DONE

网络连接测试:

[root@lin ~]# echo -e “AT\r\n” > /dev/ttyUSB2
[root@lin ~]# AT
OK
AT
OK

信号测试:

[root@lin ~]# echo -e “AT+CSQ\r\n” > /dev/ttyUSB2
[root@lin ~]# AT+CSQ
+CSQ: 17,99     //信号强度17,信号良好
OK
AT+CSQ
+CSQ: 17,99

以上完成驱动移植工作,模块正常工作起来,随后开始拨号上网。

拨号上网

拨号上网友两种方式,ppp和运营商自己(GobiNet)的方式。

1、PPP拨号

pppd和pppoe说明

pppd 支持串行的拨号上网方式,也就是说,如果我们用4G 模块进行拨号上网,仅需要pppd 就可以了。

pppoe 是通过调用pppd 来实现 p-to-p 协议的,简单来说,pppoe 为了解决pppd 不能直接用于网口拨号上网而写的软件,pppoe 在工作时仍然需要调用pppd。

本模块的拨号已经提供了拨号脚本,所以不需要pppoe ,只需要移植pppd。

移植pppd

1、下载ppp
  ppp是开源项目,从官网下载:https://ppp.samba.org/,当前最新版本是 ppp-2.4.9.tar.gz。
  
2、配置生成Makefile

sudo ./configure

3、编译

make CC= arm-none-linux-gnueabi-gcc

4、部署ppp
编写.sh文件,用来创建文件夹和拷贝上面编译生成的文件。

#!/bin/sh
mkdir -p /home/lin/x210/rootfs/usr/local/lib/pppd
cd pppd/plugins
cp *.so /home/lin/x210/rootfs/usr/local/lib/pppd
cd rp-pppoe
cp rp-pppoe.so /home/lin/x210/rootfs/usr/local/lib/pppd
cp pppoe-discovery /home/lin/x210/rootfs/usr/sbin
cd ../pppoatm
cp pppoatm.so /home/lin/x210/rootfs/usr/local/lib/pppd/
cd ../radius
cp radius.so radattr.so radrealms.so /home/lin/x210/rootfs/usr/local/lib/pppd/cd ../..
cp pppd /home/lin/x210/rootfs/usr/sbincd ../pppstats
cp pppstats /home/lin/x210/rootfs/usr/sbincd ../pppdump
cp pppdump /home/lin/x210/rootfs/usr/sbincd ../chat
cp chat /root/rootfs/usr/sbin  [In this way, the original chat directory is overwritten when copying]//先删除以前的chat,再运行这一句。因为它是链接到busybox的文件,直接覆盖时好,会把busybox替换掉,引起错误。mkdir /home/lin/x210/rootfs/etc/ppp
cd ../etc.ppp
cp chap-secrets options pap-secrets /home/lin/x210/rootfs/etc/ppp

从4G模块厂家的文件夹中拷贝下面的文件:

  • 拷贝quectel-chat-connect quectel-chat-disconnect quectel-ppp quectel-pppd.sh到根文件系统的/etc/ppp/peers目录下

  • 拷贝ip-up到根文件系统的/etc/ppp目录下

  • 修改/etc/ppp/peers/quectel-chat-connect 中的修改APN为cmnet(移动公司网络)
    OK AT+CGDCONT=1,“IP”,“APNnet”,0,0
    OK AT+CGDCONT=1,“IP”,“cmnet”,0,0

在根目录下创建 /var/lock 和run

mkdir /var/lock
mkdir /var/run
(问题:创建lock run后,重启动开发板就不见了,需要启动后临时创建)

网络测试

1、拨号

pppd call quectel-ppp &
quectel-pppd.sh   //或者使用厂家提供的拨号脚本

拨号后节选部分输出信息:

send (AT^M)
expect (OK)
^M
OK-- got itsend (ATE0^M)
expect (OK)
^M
^M
OK-- got itsend (ATI;+CSUB;+CSQ;+CPIN?;+COPS?;+CGREG?;&D2^M)
expect (OK)

2、测试网络:

ppp0      Link encap:Point-to-Point Protocol  inet addr:10.79.106.202  P-t-P:10.67.67.67  Mask:255.255.255.255UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1RX packets:4 errors:0 dropped:0 overruns:0 frame:0TX packets:4 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:3 RX bytes:52 (52.0 B)  TX bytes:58 (58.0 B)

发现网卡ppp0。

3、查看网络状态

netstat -nr

发现2条路由表

[root@lin var]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.67.67.67     0.0.0.0         255.255.255.255 UH        0 0          0 ppp0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 eth0

删除默认路由
route del default

[root@lin var]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.67.67.67     0.0.0.0         255.255.255.255 UH        0 0          0 ppp0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

将ppp0设置为默认路由,route add default dev ppp0

[root@lin var]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.67.67.67     0.0.0.0         255.255.255.255 UH        0 0          0 ppp0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
0.0.0.0         0.0.0.0         0.0.0.0         U         0 0          0 ppp0

ping百度域名测试

[root@lin var]# ping baidu.com
PING baidu.com (220.181.38.251): 56 data bytes
64 bytes from 220.181.38.251: seq=0 ttl=48 time=96.244 ms
64 bytes from 220.181.38.251: seq=1 ttl=48 time=84.331 ms
64 bytes from 220.181.38.251: seq=2 ttl=48 time=99.816 ms

以上完成.。


http://www.ppmy.cn/news/172200.html

相关文章

linux网络状态 4g模块,Linux手动识别4G模块

参考&#xff1a; 以下手动识别方式&#xff0c;同样适用于嵌入式linux系统&#xff0c;openwrt&#xff0c;centos等其他linux内核系统 Ubuntu 下使用 ZTE ME3630 4G 模块 1、加载驱动 sudo modprobe option 2、使能设备 sudo echo 19d2 1476 > /sys/bus/usb-serial/driver…

4G模块发送短信流程

一、英文短信 发&#xff1a;AT 收&#xff1a;OK 发&#xff1a;ATCMGF1 &#xff08;设置短信格式&#xff0c;1为文本格式&#xff1b;0为PDU格式&#xff09; 收&#xff1a;OK 发&#xff1a;ATCMGS13902433649 收&#xff1a;> 发&#xff1a;data→ // data 为发送内…

4G、以太网、无线同时使用

在有线&#xff0c;4G&#xff0c;wifi多个网络接入开发板的情况下&#xff0c;路由表中就会存在多个默认网关我们如果需要某一个线路优先可以上外网&#xff0c;我们需要修改路由规则&#xff0c;修改完后的路由规则是可以保证指定网卡的时候某一路也可以ping通外网。不过可能…

手机4g网速测试用什么软件,测手机4g网速(4g手机上网速度测试)

您好,4G网络按照国际通信技术标准的规范表述,其下行速率理论峰值可达100Mbps,但网络速率与上下行网络配置以及终端(如手机、数据卡等)能力有关,根据北京. 下载个手机测速的,打开4G网络,测试就行了。前提是你4G流量套餐要有很多流量哦。 1m 4G网速的下载速度最高达到4.4 M…

服务器通过无线modem接入4g网络,24-4G Modem管理配置

Cellular接口可以派生出工作在协议模式下的Serial和Eth-channel两种接口。Serial接口链路层协议为PPP,Eth-channel接口链路层协议为以太网,两者网络层都支持IP协议。 目前,4G Modem只支持Cellular接口派生出来的Eth-channel接口。 1.2 4G Modem配置限制和指导 本章关于4G M…

linux usb总线接4g,Linux下4G LTE连接

http://ycool.com/post/3z82za6 1. 插入U盘拷贝4G模块到系统中 2.加载USB驱动模块(如何让内核USB驱动模块支持4G卡,请查找以前usb_modeswitch日志) mount /dev/sdb /mnt cp –arf /mnt/4G_MANUAL.tar.gz /home umount /home cd /home tar –zxvf 4G_MANUAL.tar.gz cd /home/4…

4g通信模块怎么连接sim卡_车载模块 4G LTE通信模块

产品名称:车载模块 4G LTE通信模块 产品链接:http://cn.trustexporter.com/cp-xfwy1688/o4497949.htm 手机版链接:https://m.trustexporter.com/cz4497949.htm 车联网是物联网在汽车领域的具体应用,它借助装载在车辆上的传感设备和信丰伟业无线通讯模块,收集车与人、车与车…

4g网络标准 计算机网络,4G网络是什么 4G LET是什么?

4G网络是什么 4G LET是什么&#xff1f; 一、4G LET是什么意思&#xff1f; 简单的说&#xff0c;4G LET就是指4G网络&#xff0c;全程为第四代移动通信及其技术&#xff0c;目前多数用户使用的均是3G或者2G网络。4G LET网络的最大特点就是上网速度的大幅提升&#xff0c;可以给…