概述
调试流程如下
- 识别模块
- 内核添加相关配置
- 核对驱动加载情况
- 核对模块注册情况
- 调用拨号脚本拨号
识别模块
域格CLM920 NC5模块VID、PID分别为05c6、9025。确认使用lsusb可以找到模块。
内核添加相关配置
域格CLM920 NC5 interface分布如下
interface 0 → DIAG
interface 1 → ADB
interface 2 → Modem
interface 3 → AT
interface 4 → RMNET
一般使用场景,仅需加载AT口及modem口,其他无用端口可以过滤掉,即interface 0、1、4可以设置为不加载成ttyUSB。
因选用的系统kernel版本支持blacklist,所以在option.c中的option_ids里直接添加blacklist,让驱动在加载时自动跳过blacklist指定的interface。(option.c一般位于内核目录下的drivers/usb/serial/option.c)
在文件中找到option_ids[]的数组,添加域格模块的VID和PID,VID 0x05C6一般已存在,可根据实际情况,参照以下方法添加VID、PID:
设置interface 0、1、4不加载option驱动,添加内容如下:
添加blacklist到option_ids数组中:
核对驱动加载情况
编译完成后,通过查询命令:ls /dev/ttyU*,应有ttyUSB0、ttyUSB1两个端口,如下图:
interface 2加载成了ttyUSB0,interface 3加载成了ttyUSB1,对应功能如下
ttyUSB0 -> Modem
ttyUSB1 -> AT
核对模块注册情况
可以通过minicom直接给模块发AT,如给AT口发,输入minicom -D /dev/ttyUSB1
核对以下AT
1、AT+CPIN?
—— 应返回ready
2、AT+CSQ
—— 一般要在10以上
3、AT^SYSINFO
—— 第一位是2,第二位是2或3(即数据域要注册上)
4、AT+CGREG?
—— 第二位参数应返回1或5,如0,1 或 0,5
以上返回值确认无误后,再进行以下操作。
调用拨号脚本拨号
可以直接使用域格提供的拨号脚本yuga.lte-pppd,点空格点杠执行,即. ./yuga.lte-pppd
或者
分别写pppd脚本和chat脚本:
(1) /etc/ppp/peers/lte 文件,内容如下:
#Usage: root>pppd call lte&
/dev/ttyUSB0
115200
crtscts
modem
debug
nodetach
usepeerdns
noipdefault
defaultroute
user card
password card
connect '/usr/sbin/chat -s -v -f /etc/ppp/lte-connect-chat'
(2) /etc/ppp/lte-connect-chat 文件,内容如下:
#/etc/ppp/lte-connect-chat
#chat script for LTE.
TIMEOUT 15
ABORT "DELAYED"
ABORT "BUSY"
ABORT "ERROR"
ABORT "NO DIALTONE"
ABORT "NO CARRIER"
"" AT
OK ATE0
OK ATDT*99***1#
CONNECT
两个脚本写好后,执行pppd call lte&,拨号上网。
最后
以上就是美满钻石为你收集整理的linux下调试域格CLM920 NC5 pppd拨号识别模块内核添加相关配置核对驱动加载情况核对模块注册情况调用拨号脚本拨号的全部内容,希望文章能够帮你解决linux下调试域格CLM920 NC5 pppd拨号识别模块内核添加相关配置核对驱动加载情况核对模块注册情况调用拨号脚本拨号所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复