本教程使用Ubuntu16.04,使用的开发板为瑞芯微RV1109、4G模块为合宙推出的Air724UG Cat1。在瑞芯微官方SDK源码不做任何配置或修改再编译的话,开发板是不能正确识别4G模块的。为了能让开发板正确识别4G网卡以及能够上网,则有必要对源码进行配置和修改。
不同的4G模块有不同的VID和PID,合宙Cat1 Air724UG的VID和PID为(0x1782,0x4e00),Cat4系列PID和VID为(0x1286,0x4e3d)。这将在一.1.①中涉及,即在内核源码中添加设备VID和PID。
然后执行指令sudo vim option.c
打开option.c文件,在相应位置添加如下代码,即上文提到的添加设备VID和PID(Vim编辑器的使用这里就不做过多说明)
在相应位置添加以下代码:
到这里,内核所有文件代码已经修改完成。接下来再来进行图形化配置。
在内核源码根目录中执行make menuconfig
指令:
在图形化界面中在键盘上按下/键,再输入RNDIS进行搜索。并且将与RNDIS相关的选项配置为y或者m,即配置后相关驱动编译到内核中,启动时自动加载。
PPP拨号驱动同样如此,在图形化界面中在键盘上按下/键,再输入PPP进行搜索。并且将与PPP相关的选项配置为y或者m。
cd /home/lihq/RV1109 进入内核源码根目录
再进行编译
编译完成后,将得到的update.img镜像文件通过瑞芯微开发工具烧录到开发板。
将4G模块通过USB连接开发板,给开发板上电。在终端输入ls /dev/ttyUSB*
,如果能识别到三个USB端口,即ttyUSB0、ttyUSB1、ttyUSB2,则表明开发板已经成功识别到4G模块。
再在终端输入ifconfig
,则能看到RNDIS驱动提供的eth1网卡,并且已成功分配IP。
再终端输入ping www.baidu.com
,也能成功ping通百度。
1:配置RNDIS 4G网卡主要有两个步骤,其一是修改相关的内核源码,其二是make menuconfig进行图形化配置,然后再重新编译内核。
2:修改内核源码时,注意不要输错了,否则可能配置失败。