RM5XXX ECM 拨号上网
来自Waveshare Wiki
硬件连接
首先安装上文连接好硬件后,模块上电后,PWR指示灯亮红灯,等获取到网络后,NET指示灯亮绿灯,如下图所示:
配置网卡
- 模块接入Linux 主机的USB口后,可通过指令查询识别情况:
lsusb ls /dev/ttyUSB*
- Open ttyUSB2 port via minicom:
ls /dev/ttyUSB* sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2
- 通过minicom发送以下指令,然后等待模组重启
AT+QENG="servingcell" AT+QCFG="usbnet",1 AT+CFUN=1,1
- 如果是RM500U,多加一个指令
AT+QNETDEVCTL=1,3,1 // RM500U专属指令
测试网络
- ifconfig 查看是否有识别出一个新的的网卡,enxxxx usbx 等,这里以 usb0 为例
ifconfig -a
- 可以用指令确认对应的网卡的参数
udevadm info /sys/class/net/usb2
- 获取ip地址,xxx替换为实际网卡,比方说enxf6d5122e3851
sudo dhclient -v xxx sudo apt-get install udhcpc sudo udhcpc -i xxx sudo route add -net 0.0.0.0 xxx
有些系统可能获取不到对应网卡,请用以下指令获取下xxx网卡:
- 查询 ECM 驱动
lsmod | grep cdc_ether
- 加载驱动
sudo modprobe cdc_ether
- 打开对应网卡
sudo ifconfig xxx up
- 测试下通过usb0无线网卡ping百度能否正常联网:
ping -I usb0 www.baidu.com
- 如果还不能联网,可以设置下dns,如下:
sudo route add -net 0.0.0.0 usb0
加载USB设备描述符
为了识别模块,需要将模块的 VID 和 PID 信息添加到文件 [内核]
方案一(临时)
- 查看模组的VID和PID
lsusb
- 添加VID和PID
sudo su sudo modprobe option sudo sh -c 'echo "2c7c 0801" > /sys/bus/usb-serial/drivers/option1/new_id' sudo sh -c 'echo "2c7c 0800" > /sys/bus/usb-serial/drivers/option1/new_id' sudo sh -c 'echo "2c7c 0900" > /sys/bus/usb-serial/drivers/option1/new_id'
方案二(掉电保存)
- 创建 udev 规则(推荐)
sudo nano /etc/udev/rules.d/99-usb-modem.rules
- 添加以下内容
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="1e0e", ENV{ID_MODEL_ID}=="9018", RUN+="/sbin/modprobe option", RUN+="/bin/sh -c 'echo $env{ID_VENDOR_ID} $env{ID_MODEL_ID} > /sys/bus/usb-serial/drivers/option1/new_id'"
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="2c7c", ENV{ID_MODEL_ID}=="0801", RUN+="/sbin/modprobe option", RUN+="/bin/sh -c 'echo $env{ID_VENDOR_ID} $env{ID_MODEL_ID} > /sys/bus/usb-serial/drivers/option1/new_id'"
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="2c7c", ENV{ID_MODEL_ID}=="0900", RUN+="/sbin/modprobe option", RUN+="/bin/sh -c 'echo $env{ID_VENDOR_ID} $env{ID_MODEL_ID} > /sys/bus/usb-serial/drivers/option1/new_id'"
SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}=="1e0e", ENV{ID_MODEL_ID}=="901e", RUN+="/sbin/modprobe option", RUN+="/bin/sh -c 'echo $env{ID_VENDOR_ID} $env{ID_MODEL_ID} > /sys/bus/usb-serial/drivers/option1/new_id'"
- 保存后重新加载 udev 规则:
sudo udevadm control --reload-rules sudo udevadm trigger



