*内核为荔枝派的zero-4.13y版本
*参考文件Quectel_WCDMA<E_Linux_USB_Driver_User_Guide_V1.8.pdf
将修改部分整理为补丁文件,主要有以下几个
option.patch
qcserial.patch
qmi_wwan.patch
usb_wwan.patch
补丁内容:
#!/bin/sh
#KERNELDIR=/home/zero-4.13y
KERNELDIR=$(cd "$(dirname "$0")"; pwd)
echo $KERNELDIRpatch $KERNELDIR/drivers/usb/serial/option.c < option.patch
patch $KERNELDIR/drivers/usb/serial/qcserial.c < qcserial.patch
patch $KERNELDIR/drivers/usb/serial/usb_wwan.c < usb_wwan.patch
patch $KERNELDIR/drivers/net/usb/qmi_wwan.c < qmi_wwan.patch
内核配置:
*使用版本Quectel_WCDMA<E_Linux&Android_GobiNet_Driver_V1.3.0.zip
*修改交叉编译工具
编译报错
因为for_each_process函数在不同内核版本中声明位置不同,解决办法:在QMIDevice.c文件中添加头文件包含
#include<linux/sched/signal.h>
还有一个错误
仿佛是内核版本不同导致的,解决办法:将QMIDevice.c中所以的atomic_read替换为refcount_read
编译完成
*进入目录quectel-cm/目录 修改makefile更改交叉编译工具为arm-linux-gnueabihf-gcc
*make编译出quectel-CM
*将quectel-CM放入/usr/bin/目录
模块开机后在/dev/目录下会出现ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3其中ttyUSB2可用于AT通信
cat /dev/ttyUSB2 &
echo -e "AT+CSQ\r\n" >/dev/ttyUSB2
或者
microcom -t 5000 -s 115200 /dev/ttyUSB2
AT
加载驱动,GobiNet也可以直接编译进内核
insmod GobiNet.ko
quectel-CM -s cmnet &
果然还是不那么顺利
udhcpc不能自动获取IP
原因:内核驱动和GobiNet中需要将DTR设置为上拉
将内核部分修改 重新编译内核
将GobiNet重新编译生成驱动 烧录测试
安装驱动、测试,正常了
文件打包在附件:EC20_20200323-0920.rar
离线
感谢楼主分享!
离线
学习了,以后应该能用到
离线
SIM7600CE的我填好了
离线
Good
离线
感谢楼主分享!
离线
Good
离线
看起来和合宙官方的air720修改差不多
离线
今天随手翻帖子看到这篇。 咋没早点发现这么好的dd呢。
4.9号开始自己摸索了一遍,12号才调通。
如果早看到这篇,也不用浪费几个通宵了。
当时愣是没搜出来。
离线
EC20的OpenCPU方案 不知道是不是也是这样的开发环境?
离线
nano 能兼容直接使用吗
离线
nano 能兼容直接使用吗
可以, 我 AIR720和EC20都用上了。
离线
#!/bin/sh
#KERNELDIR=/home/zero-4.13y
KERNELDIR=$(cd "$(dirname "$0")"; pwd)
echo $KERNELDIRpatch $KERNELDIR/drivers/usb/serial/option.c < option.patch
patch $KERNELDIR/drivers/usb/serial/qcserial.c < qcserial.patch
patch $KERNELDIR/drivers/usb/serial/usb_wwan.c < usb_wwan.patch
patch $KERNELDIR/drivers/net/usb/qmi_wwan.c < qmi_wwan.patch
这一步的补丁获取可以不用打,用shell命令就可以了:
移远 EC200s 居然不能自动联网, 还得串口敲命令才行.
http://whycan.cn/t_5086.html#p52081
(出处:哇酷开发者社区【NB-IoT/2G模块/4G模块/GPRS模块/GPS/北斗】)
离线
建议大家都用合宙的,别用ec20,为什么呢?
移远官方脑子有病,下载个资料都是需要注册,好吧注册,收集完你的个人信息后,让你联系FAE,CTMD,
一个连资料都藏着掖着的模块,还强行去用是有多犯贱?
相反合宙的资料随便下,
离线
为什么不用RNDIS?Gobi太老了
离线
【填坑求精】荔枝派rndis-host驱动合宙4G模块,荔枝派插入WIN/Unbutu识别为Rndis网卡
http://whycan.com/t_5919.html
(出处:哇酷开发者社区)
还是rndis用着爽!
离线
你好,你的EC20模块是用串口跟V3S连接还是用UDB OTG和V3S连接呢?
离线
@木子猫
/usr/quectel-CM: /lib/libc.so.6: version `GLIBC_2.27' not found (required by /usr/quectel-CM)
请问大哥我编译好的再设备里面运行出现这个情况,是什么原因导致的
离线
建议大家都用合宙的,别用ec20,为什么呢?
移远官方脑子有病,下载个资料都是需要注册,好吧注册,收集完你的个人信息后,让你联系FAE,CTMD,
一个连资料都藏着掖着的模块,还强行去用是有多犯贱?
相反合宙的资料随便下,
虽然他的政策对个人开发者不太友好,但不得不说移远产品是做的最好的,我们做外销的产品都用EC20 EC21 EC25,网络频段的支持做得很好,技术支持也很棒。当然首先得是企业用户,或者小批量购买模块。
不少公司都是这样,比如天煞的全志。。。。
合宙国内做的也很好,比如他们的air724,实惠。
离线
老哥你这个不是用GobiNet拨号的,如果是GobiNet,应该是 usb0 或者是eth0,你这用的应该是qmi拨号
离线
# insmod GobiNet.ko
[ 19.687744] GobiNet: loading out-of-tree module taints kernel.
[ 19.696252] GobiNet: Quectel_Linux&Android_GobiNet_Driver_V1.6.2.9
[ 19.705343] GobiNet 1-1:1.4 usb0: register 'GobiNet' at usb-1c1a000.usb-1, GobiNet Ethernet Device, 02:50:f4:00:00:00
[ 19.719261] creating qcqmi0
[ 19.722508] usbcore: registered new interface driver GobiNet
#
#
# /quectel-CM -s cenet &
# [01-01_00:00:54:688] Quectel_QConnectManager_Linux_V1.6.0.16
[01-01_00:00:54:690] Find /sys/bus/usb/devices/1-1 idVendor=0x2c7c idProduct=0x125, bus=0x001, dev=0x002
[01-01_00:00:54:691] Auto find qmichannel = /dev/qcqmi0
[01-01_00:00:54:691] Auto find usbnet_adapter = usb0
[01-01_00:00:54:691] netcard driver = GobiNet, driver version = V1.6.2.9
[01-01_00:00:54:691] ioctl(0x89f3, qmap_settings) failed: No such file or directory, rc=-1
[01-01_00:00:54:692] Modem works in QMI mode
[01-01_00:00:54:723] Get clientWDS = 7
[01-01_00:00:54:755] Get clientDMS = 8
[01-01_00:00:54:786] Get clientNAS = 9
[01-01_00:00:54:818] Get clientUIM = 10
[01-01_00:00:54:851] Get clientWDA = 11
[01-01_00:00:54:883] requestBaseBandVersion EC20CEFASGR08A05M2G
[01-01_00:00:55:011] requestGetSIMStatus SIMStatus: SIM_READY
[01-01_00:00:55:012] requestSetProfile[1] cenet///0
[01-01_00:00:55:075] requestGetProfile[1] cenet///0
[01-01_00:00:55:107] requestRegistrationState2 MCC: 460, MNC: 0, PS: Attached, DataCap: LTE
[01-01_00:00:55:139] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED
[01-01_00:00:55:139] ifconfig usb0 0.0.0.0
[01-01_00:00:55:150] ifconfig usb0 down
[01-01_00:00:56:163] requestSetupDataCall WdsConnectionIPv4Handle: 0x8707ab90
[01-01_00:00:56:323] ifconfig usb0 up
[01-01_00:00:56:336] busybox udhcpc -f -n -q -t 5 -i usb0
udhcpc: started, v1.33.2
udhcpc: sending discover
udhcpc: sending select for 10.190.187.228
udhcpc: lease of 10.190.187.228 obtained, lease time 7200
[01-01_00:00:56:422] deleting routers
[01-01_00:00:56:459] adding dns 211.138.180.2
[01-01_00:00:56:459] adding dns 211.138.180.3
#
#
#
# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
usb0 Link encap:Ethernet HWaddr 02:50:F4:00:00:00
inet addr:10.190.187.228 Mask:255.255.255.248
UP RUNNING NOARP MTU:1500 Metric:1
RX packets:7 errors:0 dropped:0 overruns:0 frame:0
TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1355 (1.3 KiB) TX bytes:856 (856.0 B)
# [ 92.672731] random: crng init done
离线