Linux系统下使用4G模块EC20实现拨号上网

Posted bobuddy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统下使用4G模块EC20实现拨号上网相关的知识,希望对你有一定的参考价值。

驱动的实现过程

实现4G功能分为两步,第一步内核能成功识别出该设备,第二步实现拨号上网.最后提一下自带的定位功能

一.添加内核USB驱动

这里直接使用内核已经存在的USB驱动,只需要让内核能识别出该USB设备,并自动加载驱动生成对应的/devUSB*设备节点

获取EC20的PID和VID

把模块插入到开发板上,使用lsusb查看 lsusb

55ceec8e4b9cdef53f739f18fdf33841.png

根据USB的ID可以确定模块的版本号

d53bf91f7aa8caec625a1be37ef7066e.png

修改USB驱动源码,使之能识别到该设备

把它添加到源码的./driver/usb/serial/options.c文件里

#define EC20_VID 0x2c7c

#define EC20_PID 0x0125

在options_ids列表中增加: {USB_DEVICE(EC20_VID, EC20_PID)}

编译内核,并烧写到开发板

make meuconfig 配置:

i. USB相关:USB driver for GSM and CDMA modems

ii.PPP相关:PPP(point-to-point protocol)support

make得到zImage文件(arch/arm/boot目录下),烧写到开发板

二.拨号上网

开始拨号上网

此时插入模块,在/dev目录下映射出来的虚拟串口ttyUSB*

896e8d6b7dd3c134a74dce7af0e86873.png

证明USB驱动加载完成,MYiR的MYC-Y6UL自带EC20驱动(直接插入模块即可)

用AT指令测试EC20信号强度

i. cat /dev/ttyUSB3 &

ii.echo -e “AT+CSQ\\r\\n” > /dev/ttyUSB3

05cc3a70fddae70ce9fe6d372f3cfe8a.png

启动PPP拨号:ifup ppp0

1) 可查看日志 vi /var/log/quectel-dial.log

2) 查看拨号chat脚本 vi /etc/ppp/peers/quectel-dial

实际调用脚本:

拨号连接: /etc/ppp/chatscripts/quectel-chat-connect

退出拨号:/etc/ppp/chatscripts/quectel-chat-disconnect

ifconfig出现ppp0则表示拨号成功

a53e338e9e578ba19914d0906adc1d7c.png

添加DNS: vi /etc/resolv.conf

3a3297875fd5cb785d467d529e7766c8.png

不同营运商需要修改APN和拨号

移动APN备用:cmwap(版本较老不建议使用)

联通APN备用:wonet

电信APN备用:ctlte

dfd8374de453b4bfe9671b080177cb3b.png

不同运营商拨号的账号和密码也要修改

联通跟移动的user和password可以不要,但电信卡必须填写user “ctnet@mycdma.cn” password “vnet.mobi”

68c87f9043782ff1754215e27b3f69a5.png

EC20的GPS功能默认关闭

1) 手动打开:echo -e “AT+QGPS=1\\r\\n”> /dev/ttyUSB3

2) 地理位置信息输出:ttyUSB1是GPS用来输出NMEA信息

EC20各型号对比

CEHC

纯数据版本

CEFAG

有语音,短信,GPS,北斗,二次开发,可外接WIFI,有分集天线的全功能版本

CEFDG

有语音,可外接WIFI,无GPS,无北斗,无分集天线

写在最后

感谢以下各位文档的帮助,这里特注说明

参考链接

拨号:

https://www.cnblogs.com/liushuhe1990/articles/10237848.html

https://blog.csdn.net/wwt18811707971/article/details/54291747

GPS:

https://blog.csdn.net/u011195662/article/details/78624977

官方文档下载入口

链接地址:https://download.csdn.net/download/blog_xu/1156966

以上是关于Linux系统下使用4G模块EC20实现拨号上网的主要内容,如果未能解决你的问题,请参考以下文章

linux下EC20 4G模块驱动移植

嵌入式Linux系统---ppp拨号,4G模块上网

4G模块*99#拨号上网

在ARM-linux上实现4G模块PPP拨号上网

ec20一直连接不是网络

如何设置Linux服务器为PPP拨入服务器