Openwrt 设置中兴 ZTE MF190 联通 3G拨号上网攻略
首先沉痛哀悼我的tplink wr720n,因为我换ram的时候,弄断了3根电路板上的焊盘引脚,导致挂了。。。
后来买了gl-inet 16M版本的小路由,直接ssh登陆mtd -r write刷了720n的op,完全好用。折腾成功在其上的3G上网,记录一下:
1.安装必要的软件:
opkg update opkg install ppp chat comgt luci-proto-3g kmod-usb-serial kmod-usb-serial-option kmod-usb-serial-wwan usb-modeswitch kmod-usb-serial-wwan kmod-usb-acm kmod-usb2 kmod-usb-ohci kmod-usb-uhci sdparm
注:usb-modeswitch-data 已经在14.07版本中与usb-modeswitch合并了,所以不需要了,后面设置也与前几个版本不太相同。
2.查看中兴 ZTE MF190 上网卡的vid和pid
就算都是叫MF190,其pid也有可能不同,如何查看呢,其实很简单,把它插到windows电脑的usb口,安装完驱动以后,在‘控制面板’-‘设备管理器’里面找到该设备,‘属性’-‘硬件ID’里面就有,记录下来,我的vendor=0x19d2 product=0x0117。
3.将上网卡插到路由器usb口,并重启路由器,重启完成后,进行如下操作:
cd /dev ls
如果有ttlUSB0,ttlUSB1,ttlUSB2设备说明识别了,否则说明上网卡有问题。
但是光识别没用,因为:
vi /etc/usb-mode.json
发现压根木有‘19d2:0117’这个硬件,这也是为啥我之前拨号都失败的原因,解决办法为:
由于看到别的网友的mf190是1224的,所以我就复制:
"19d2:1224": { "*": { "t_vendor": 6610, "t_product": [ 130 ], "mode": "StandardEject", "msg": [ ] } },
修改为:
"19d2:0117": { "*": { "t_vendor": 6610, "t_product": [ 130 ], "mode": "StandardEject", "msg": [ ] } },
贴入/etc/usb-mode.json,保存退出。
3.按照官网攻略将vid和pid写入new_id并自启动写入:
vi /etc/rc.local
在exit 0前加入
echo '19d2 0117 ff' > /sys/bus/usb-serial/drivers/option1/new_id
保存退出,重启路由。
4.打开192.168.1.1,找到接口,添加一个接口叫‘3g’,内容为:
保存并应用后查看系统日志。
Fri Mar 20 12:45:06 2015 daemon.notice pppd[7400]: pppd 2.4.7 started by root, uid 0 Fri Mar 20 12:45:07 2015 local2.info chat[7402]: abort on (BUSY) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: abort on (NO CARRIER) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: abort on (ERROR) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: report (CONNECT) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: timeout set to 30 seconds Fri Mar 20 12:45:07 2015 local2.info chat[7402]: send (AT&F^M) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: expect (OK) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: AT&F^M^M Fri Mar 20 12:45:07 2015 local2.info chat[7402]: OK Fri Mar 20 12:45:07 2015 local2.info chat[7402]: -- got it Fri Mar 20 12:45:07 2015 local2.info chat[7402]: send (ATE1^M) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: expect (OK) Fri Mar 20 12:45:07 2015 local2.info chat[7402]: ^M Fri Mar 20 12:45:07 2015 local2.info chat[7402]: ATE1^M^M Fri Mar 20 12:45:07 2015 local2.info chat[7402]: OK Fri Mar 20 12:45:07 2015 local2.info chat[7402]: -- got it Fri Mar 20 12:45:07 2015 local2.info chat[7402]: send (AT+CGDCONT=1,"IP","3gnet"^M) Fri Mar 20 12:45:08 2015 local2.info chat[7402]: timeout set to 30 seconds Fri Mar 20 12:45:08 2015 local2.info chat[7402]: expect (OK) Fri Mar 20 12:45:08 2015 local2.info chat[7402]: ^M Fri Mar 20 12:45:08 2015 local2.info chat[7402]: AT+CGDCONT=1,"IP","3gnet"^M^M Fri Mar 20 12:45:08 2015 local2.info chat[7402]: OK Fri Mar 20 12:45:08 2015 local2.info chat[7402]: -- got it Fri Mar 20 12:45:08 2015 local2.info chat[7402]: send (ATD*99#^M) Fri Mar 20 12:45:08 2015 local2.info chat[7402]: expect (CONNECT) Fri Mar 20 12:45:08 2015 local2.info chat[7402]: ^M Fri Mar 20 12:45:08 2015 local2.info chat[7402]: ATD*99#^M^M Fri Mar 20 12:45:08 2015 local2.info chat[7402]: CONNECT Fri Mar 20 12:45:08 2015 local2.info chat[7402]: -- got it Fri Mar 20 12:45:08 2015 local2.info chat[7402]: send (^M) Fri Mar 20 12:45:08 2015 daemon.info pppd[7400]: Serial connection established. Fri Mar 20 12:45:08 2015 daemon.info pppd[7400]: Using interface 3g-3g Fri Mar 20 12:45:08 2015 daemon.notice pppd[7400]: Connect: 3g-3g <--> /dev/ttyUSB2
注意,这里的拨号脚本为/etc/chatscripts/3g.chat,因为我是联通,所以拨号脚本如下:
ABORT BUSY ABORT 'NO CARRIER' ABORT ERROR REPORT CONNECT TIMEOUT 30 "" "AT&F" OK "ATE1" OK 'AT+CGDCONT=1,"IP","$USE_APN"' SAY "Calling UMTS/GPRS" TIMEOUT 30 OK "ATD*99#" CONNECT ''