4G模块串口时隐时现的解决方法

Delectate 合宙Luat 4天前


使用4G模块进行二次开发时,有的群友会碰到4G模块串口“时隐时现”的情况:


伴随系统发现新硬件的提示音,设备管理器中,串口经常“失踪”后又“诈尸”;Luatools也不能正确识别串口,无法打印任何Trace。




通常,造成串口无法识别或者频繁闪现的原因,是模块反复重启造成的。只有模块重启时,系统才会不断地“发现新硬件”。


那么,什么情况会造成模块反复重启呢?一般是供电不足和代码错误两个原因。今天我们将针对不同情况,给出相应的解决方法。





1


供电不足导致重启的解决方法





针对供电不足导致重启的情况,建议开发者检查供电问题。


如果是使用USB线供电,不要使用USB-Hub,也不要插在前面板,尽量使用机箱后边的插口。尽量使用足够粗的microUSB数据线,避免压降导致供电不足(必要时,可以双插USB线增强供电),模块反复重启。必要时,建议使用示波器查看供电情况。





2


代码错误导致重启的解决方法





代码错误导致的重启,通常AT模式不会遇到,只有Luat才会出现。


进行语法检测,可以有效避免由于代码错误导致的异常重启。



开发者在下载Lua脚本时,建议进行语法检测,避免常见的语法错误;另外可以使用UART1/2输出TRACE。


由于模块重启速度很快,但是Windows识别新硬件需要很久的时间,所以通常会错过模块输出的错误信息,没有错误信息就没有办法进一步跟踪调试程序。那么怎么办呢?


如果开发者没有使用UART1/2,那么可以使用UART1/2输出TRACE,打开串口调试助手查看模块输出的重启日志,进一步分析代码运行的错误(波特率115200)。


通过UART1/2查看TRACE,这样一来,就不会因为Windows识别新硬件速度慢,而错过模块输出的错误信息了。



3


其他原因导致重启的解决方法





仍然反复重启,且找不到错误原因,那么建议开发者使用S720开发板进行对比测试。通常可能是布线问题、供电问题等多种因素造成的反复重启。


如果开发者遇到无法解决又无法判断根源的反复重启问题,请参考文章《关于Windows/Linux系统下如何用USB口抓取4G模块底层Trace?》链接如下:

https://ask.openluat.com/article/931


抓取到相关底层日志后,请进QQ群交流:851800257










感谢阅览本期内容

欢迎文末留言互动


本期文末最先留言的五位同学

— 将获得合宙商城五折券一张 —


五折券有效期至2月29日

点击公众号菜单“合宙商城”即可使用

2月1日起合宙商城已恢复正常发货







- 粉丝专有福利 -


请由公众号菜单“合宙商城”进入或长按下图识别二维码直达,领取粉丝专有福利↓↓↓




- 往期官方教程 -



刘晨旭白话Lua零基础系列教程:

白话Lua教程第一期:初识Lua

白话Lua教程第二期:变量

白话Lua教程第三期:字符串

白话Lua教程第四期:逻辑运算

白话Lua教程第五期:分支判断

白话Lua教程第六期:函数

白话Lua教程第七期:Table



●  Luat系列官方教程1:下载调试工具LuaTools

●  Luat系列官方教程2:控制LED小灯

●  Luat系列官方教程3:Luat程序的基本时序

  Luat系列官方教程4:Luat程序的基本时序

●  Luat系列官方教程5:Socket代码详解

●  Luat系列官方教程6:MQTT代码详解

●  Luat系列官方教程7:串口收发




●  Luat程序如何实现延时运行

●  2G/4G系列模块Lua版本串口功能汇总

●  史上最详细的4G模块驱动安装教程

●  4G模块AT版本PDP使用汇总

●  4G模块AT版本MQTT应用说明

●  4G模块AT版本HTTP应用说明

●  4G模块在Linux 设备上的RNDIS网卡使用

●  4G模块Linux USB驱动以及PPP拨号说明





点亮在看,和更多人一起了解物联网

↓↓↓