您尚未登录。

楼主 #1 2020-03-23 09:21:36

木子猫
会员
注册时间: 2018-03-27
已发帖子: 63
积分: 22.5

V3S挖坑EC20

一、内核修改

*内核为荔枝派的zero-4.13y版本
*参考文件Quectel_WCDMA&LTE_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 $KERNELDIR

patch $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

内核配置:

二、编译GobiNet

*使用版本Quectel_WCDMA&LTE_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

*进入目录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

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn


东莞哇酷科技有限公司开发