移远4g模块调试笔记(代码片段)

hebbely hebbely     2023-02-02     589

关键词:

前言:

        在项目中集成 4G 网络模块,便可远程实时监控仪器运行状态、收集仪器数据等功能。EC20的USB接口符合USB2.0规范,支持高速(480Mbps)和全速(12Mbps)模式。该接口可用于AT 命令传送、数据传输、GNSS NMEA 输出、软件调试、软件升级和USB语音。

        系统:Ubuntu 16.04

        交叉编译器:arm-linux-gnueabihf-gcc-4.9.4

        Qt开发工具:qt-creator-5.12.8

        目标机:TWCore-IMX6UL

        目标机内核:linux 4.1.15

        网络模块:4G-EC20

1. 4G 模块介绍

        4G 模块如下图所示。4G 模块接口供电电压为DC-5V,EC20 芯片工作电压 3.3-4.3V,推荐工作电压 3.88V,不建议用边缘值电压,电压波动会造成模块工作不稳定。

         

        工作指示灯如下表所示:

LED2电源指示灯正常供电亮红色
LED1模块状态指示灯模块正常亮绿灯
LED3网络指示灯慢闪(200ms 高/1800ms 低)找网状态
慢闪(1800ms 高/200ms 低)待机状态
快闪(125ms 高/125ms 低)数据传输模式
高电平通话中

2. 4G 模块设备节点

        EC20支持三种驱动:USB Serial Driver,GobiNet Driver,QMI WWAN Driver,本项目使用USB Serial Driver
        4G模块的驱动加载后,在/dev下生成三个设备节点:

ttyUSB1GPS数据通讯设备节点,用于GPS输出
ttyUSB2AT指令通讯设备节点
ttyUSB3调制解调器,网络拔号设备节点

3. 4G 常用的AT指令

        1)常用的AT指令

    cat /dev/ttyUSB2 &
    echo -e "AT+QCCID\\r\\n" >/dev/ttyUSB2    //查询SIM卡
    echo -e "AT+CFUN=1,1\\r\\n" >/dev/ttyUSB2   //重启模块
    echo -e "AT+QSIMDET=1\\r\\n" >/dev/ttyUSB2   //开启SIM卡热插拔状态报告
    echo -e "AT+QSIMDET=1,1\\r\\n" >/dev/ttyUSB2  //开启SIM卡检测功能
    echo -e "AT+CSQ\\r\\n" >/dev/ttyUSB2  //查询信号强度
    echo -e "AT+QNWINFO\\r\\n" >/dev/ttyUSB2 //查询网络状态
    echo -e "AT+QCFG=\\"NWSCANMODE\\",3,1\\r\\n" >/dev/ttyUSB2 //设置4G LTE only
    echo -e "AT+QCFG=\\"NWSCANMODE\\",2,1\\r\\n" >/dev/ttyUSB2 //设置3G WCDMA only
    echo -e "AT+QCFG=\\"NWSCANMODE\\",1,1\\r\\n" >/dev/ttyUSB2 //设置2G GSM only
    echo -e "AT+QCFG=\\"NWSCANMODE\\",0,1\\r\\n" >/dev/ttyUSB2 //设置自动搜索网络

        2)AT 配置及测试

    cat /dev/ttyUSB2 &
    echo -e "AT+QSIMDET=1,1\\r\\n" >/dev/ttyUSB2  //开启SIM卡检测功能 本模块高电平有效
    echo -e "AT+CFUN=1,1\\r\\n" >/dev/ttyUSB2   //重启模块
    echo -e "AT+CSQ\\r\\n" >/dev/ttyUSB2 //查询信号强度
    echo -e "AT+QCCID\\r\\n" >/dev/ttyUSB2    //查询SIM卡

       

        信号强度值正常范围为0~31,数值越大表示强度越强,强度值99表示无信号。

 4. 4G 模块拨号前准备事项

        1)解压EC20_4G模块资料(linux-ppp-scripts_V1.2.zip),将里面的文件拷贝至/etc/ppp/peers目录;其中,quectel-pppd.sh为拨号脚本,ip-up用于设置 DNS(域名系统)。

[root@TWDZ-RK356X:/etc/ppp/peers]# ls
ip-up		      quectel-chat-disconnect  quectel-ppp-kill  readme
quectel-chat-connect  quectel-ppp	       quectel-pppd.sh


        2)复制libIoTPlugin_c.so到/usr/lib目录下;

        3)校准仪器上的时间;

        4)开通卡流量套餐;

5. 4G模块拨号测试

        1)禁用与模块冲突的eth0网卡;

        2)AT查询信号强度是否正常;

         3)执行移远提供的pppd配置脚本自动拨号

        4)拨号成功后生成ppp0网卡;

         5)配置DNS

        6)ping外网;

6. 常见问题

        1)4G 模块电源灯不亮

                解决方案:更新其核心板的固件程序。

        2)4G模块电源灯正常,但后台无法启动4G功能且无4G日志输出

                解决方案:仪器上配置仪器ID,并在lot后台服务器激活本仪器ID,完成后重启4G模块。

        3)/dev目录没有生成4G设备节点

                解决方案:检查4G连接线接线顺序是否正确

        4)后台日志循环打印错误“SSL peer certificate or SSH remote key was not OK

                解决方案:仪器上的时间与4G基站时间有误差(大于1天),需要校准仪器的时间。        

        5)后台日志循环打印错误“network not connect

                解决方案:请校正仪器上的时区为东八区。

        6)4G不稳定,其它网卡获取动态IP后自动断开

                解决方案:路由表的优先级(eth0 > 4g > wlan0)以及DNS影响到4G的稳定性,需要重新配置路由表及DNS,步骤如下。

                A. 4G开启成功后,配置DNS以及4G默认静态路由。

                        执行命令“/etc/ppp/peers/ip-up

                        执行命令“/sbin/route add default gw 10.64.64.64 dev ppp0

                B. 增加路由表心跳包(如30s),查询到有默认的eth0或wlan0路由,则删除默认eth0或wlan0路由,以及重新配置DNS。

                        执行命令“/sbin/ip route del default dev eth0

                        执行命令“/sbin/ip route del default dev wlan0

                        执行命令“/etc/ppp/peers/ip-up

        注意:所提供的解决方案只是有可能解决问题,并不绝对。

7.调试注意事项(4G模块与SIM卡)

       1.使用方法:直接放入使用

        2.注意事项:

                1)SIM卡会绑定模块,一旦使用就不能换

                2)一个月可以解绑一次,需要后台操作

                3)需要跟模组商确定模块固件(搜网机制因卡不同)

        3.调试方法

                1)先确定硬件,用手机卡测试模块

                2)再确定固件,用物联SIM卡调试模块固件

nb-iot移远bc95调试笔记01加网测试(代码片段)

一、前言移远BC95是最早推出的NB-IoT模块,目前厦门这边网络都已经覆盖了。自己拿个设备来玩玩,这篇笔记先记录下加网测试的心得。本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/二、加网总体思路... 查看详情

stm32f103学习笔记——4g模块ec200s使用(代码片段)

一、简介EC200S-CN是移远通信最近推出的LTECat1无线通信模块,支持最大下行速率10Mbps和最大上行速率5Mbps,具有超高的性价比;同时在封装上兼容移远通信多网络制式LTEStandardEC2x(EC25、EC21、EC20R2.0、EC20R2.1)和EC... 查看详情

a7600c4g和移远ec20

参考技术Aa7600c4g和移远ec20:SIM7600CE是一款LCC封装的模块,支持LTE-TDD/LTE-FDD/HSPA+/TD-SCDMA/EVDO和GSM/GPRS/EDGE等频段,支持LTECAT4(下行速度为150Mbps)。 参考技术B最近搞了移远的mc20和ec20模块,还应用了芯讯通的7600,对字符型数据...2017年12... 查看详情

小熊派4g开发板初体验(代码片段)

...们一起来学习学习:板子做得小巧精致,控制核心用的是移远的EC100YLTECat1无线通信模组,该模组可对所有用户开放二次开发;EC100YLTECat1模组两侧座子/排针是E53接口,可接小熊派的E53拓展模块,如:小熊派4G开发板与其E53接口拓... 查看详情

在基于瑞芯微rk3568的android12上添加移远4g通信模块ec200a

==============================以下修改已在开发板中验证OK====================【添加前... 查看详情

4g模块传输报文的常见局限性,粘包

...目,VCI设备和云端进行4Gtcp通信,VCI设备采用STM32主芯片+移远的4G模块。【1】4G模块,发送缓冲区里的报文数据,积攒到一定程度,然后发送到云端【2】4G模块,发送缓冲区的报文没有满,到一定时间期限,也发送到云端。当stm32... 查看详情

stm32f103学习笔记——nb-iot模块bc26使用(代码片段)

...客户减小产品尺寸并优化产品成本.BC26在封装设计上兼容移远通信GSM/GPRS系列M26模块以及NB-IoT系列BC28/BC25/BC260Y-CN模块, 查看详情

stm32f103学习笔记——nb-iot模块bc26使用(代码片段)

...客户减小产品尺寸并优化产品成本.BC26在封装设计上兼容移远通信GSM/GPRS系列M26模块以及NB-IoT系列BC28/BC25/BC260Y-CN模块, 查看详情

4g:sim7600ce-cnse4g模组调试(代码片段)

4G:SIM7600CE-CNSE4G模组调试一、内核配置打开内核以下配置CONFIG_USB_SERIAL=yCONFIG_USB_SERIAL_WWAN=yCONFIG_USB_SERIAL_OPTION=yCONFIG_USBNET=y二、拨号上网将模组插入板卡USB接口后,正常可以识别到设备及5个USB串口设备$lsusbBus008Device002:ID0e8d:7961Media... 查看详情

bes平台(恒玄)anc调试笔记(代码片段)

一 前言最近比较忙,昨天更新了EQ调试模块,今天就趁热打铁把ANC部分也写下。主要说一些基于恒玄平台2500的ANC环境搭配软件设置和常见问题分析,个人见解,有不足之处,敬请锤教。二环境搭配 (此... 查看详情

使用移远ec200n-cn模组ping谷歌(代码片段)

目录1.概述2.AT指令3.数据处理提取数据4.注意事项1.概述本文记录下使用EC200N-CN模组ping谷歌官网的测试过程。ping谷歌主要是摸底下设备在海外的联网丢包、延迟等情况。其实主要是为了记录下数据处理的过程,4G模组就一条AT... 查看详情

iot模组使用笔记:ec20bc20使用遇到的问题(代码片段)

...2ping谷歌5.4.3手动切换运营商5.4.4抓取TCP的log本文主要记录移远模组使用过程遇到的问题。五、EC20、BC20等模组指令和问题5.1EC205.1.1注册网络失败。如下图所示:将APN修改为SIM卡对应的运行商,多次发送AT+QICSGP=1,1,“CT... 查看详情

ec20minipcie版4g模块开发笔记

插在电脑上实验时若出现AT+CREG?+CREG:0,2可能是usb口供电不足所致,换至主机箱后面usb口后问题解决,返回值+CREG:0,1 查看详情

(清晰)androidril架构学习---[android6.0][rk3399]pcie接口4g模块ec20调试记录

(清晰)AndroidRIL架构学习---[Android6.0][RK3399]PCIe接口4G模块EC20调试记录参考链接:1、[Android6.0][RK3399]PCIe接口4G模块EC20调试记录https://blog.csdn.net/dearsq/article/details/740090692、QMIRil和Androidhttps://blog.csdn.ne 查看详情

资产监测设备中关于移远模块file功能介绍

移远作为模组厂商的领先者,对国内市场具有重要的引导作用。其业务模式为代理商合作。笔者团队作为使用移远模块的资产监测设备开发团队之一,对移远的模块较为熟悉,移远的模块也在资产监测设备的使用过程... 查看详情

8086debug调试学习笔记(代码片段)

8086DEBUG调试学习笔记安装路径:D:\\DOSBox①mountcD:\\DOSBox②输入c:③再输入masm④输入汇编的文件名(如test)⑤link⑥再输入汇编的文件名⑦debugtest.exe-r查看寄存器-a-q使用Q命令来退出debug调试-t单步调试DATASEGMENTBUFDB'HELLO... 查看详情

个人笔记rancher远程调试搭建(代码片段)

rancher远程调试搭建文章目录rancher远程调试搭建配置主机(关防火墙,关SELinux)安装docker安装go环境下载go配置环境变量安装dlv拉代码配置goland远程代码远程调试运行docker运行rancher-ui安装nodejs安装yarn拉代码启动访问dockerfile说句... 查看详情

omapl138调试笔记(代码片段)

...-function:Cre_ID:@Widic2018-1-23Mod_ID:三学习过程20170617uart2作为调试串口bandrate115200串口调试终端采用ZOC3.开发板启动开官如下:SD卡挂载boot分区挂载在/ 查看详情