编辑语:
芯片开放社区面向广大开发者推出应用实战系列内容,通过分享开发者实战开发案例,总结应用开发经验,梳理开发中的常见问题及解决方案,为后续参与的开发者提供更多参考与借鉴。
本文是第二届玄铁杯大赛中 tcexeexe队 基于哪吒D1开发板实战开发的项目系列文章中的一篇,主要介绍了适配4G模块。下滑到文末扫码一键报名第三届“玄铁杯”大赛,期待你的创意!
01 代码替换
4G上网是嵌入式设备的常见功能,本文介绍了如何在哪吒D1开发板上适配4G模块实现4G上网,并开源了所需的PPP拨号上网驱动,用Quectel_Linux_USB_Serial_Option_Driver_20210205中linux 5.4.51文件夹下的代码,替换Tina SDK中lichee/linux-5.4/drivers/usb/serial/ 中对应的文件,Quectel_Linux_USB_Serial_Option_Driver_20210205的下载链接,02 打开linux中对应的USB driver
03 烧录
04 验证驱动
驱动安装成功以后,插入设备,应出现如下log:,
输入>
应该出现如下提示>
则表示EC20的驱动已经成功安装。
05 PPP拨号
由于目前没有针对C906内核的ppp拨号软件,因此需要从源码重新编译;链接开源的是针对C906内核从PPP源码编译以后的PPP拨号软件,如果觉得好用,烦请点个Star>
https://github.com/tcexeexe/pppForC906/,使用方法>
将pppd 和 chat 上传到 /usr/bin,将 quectel-ppp,quectel-chat-connect,quectel-chat-disconnect 上传到 /etc/ppp/peers/.默认的拨号脚本是针对联通的,使用 pppd call quectel-ppp 拨号联网,拨号成功后,输入ifconfig,出现ppp0相关网络配置,则标识拨号成功,此时就可以顺利上网,
由于4G模块基本都是使用3GPP的标准AT指令,所以例如高新兴,SIMCOM等厂家的模组,也可以适用上述流程,区别在于USB的vender ID和Product ID不同,这个需要根据模组的手册修改。
玄铁杯全球RISC-V应用创新大赛,由平头哥芯片开放社区发起,已连续举办至第三届。过去两年,大赛共吸引近3000名开发者参赛,产生500余份创意方案,涵盖工业智能、泛机器人、视觉及可穿戴设备、车载设备、碳中和、智慧社区、智慧家居等领域。
第三届玄铁杯大赛火热报名中