Linux 上的 Verizon USB551L 4G 棒

Linux 上的 Verizon USB551L 4G 棒

我一直在尝试让 Verizon USB551L 4G USB 棒在 Debian Linux 上运行。我能够连接它,但它总是在 10 秒到 2.5 分钟后断开连接,然后它无法在没有电源循环或重新连接棒的情况下再次连接。我知道这不是信号强度问题,因为我在 Windows 下没有遇到同样的问题,Verizon 客户端显示 4 条信号。

有人知道问题出在哪里吗?更多详细信息如下。

使用同一台 Windows XP 系统,我可以使用 Verizon 的 VzAccessManager 建立稳定的连接,但使用串行端口上手动配置的 DUN 时,我遇到了与 Linux 上相同的断开连接症状。

我使用安装了 Debian GNU/Linux wheezy 3.2.27+ 的 Raspberry Pi 执行了以下操作。我还尝试在 Mac 上使用 Ubuntu Linux VirtualBox VM 执行此操作,但效果不佳,因为驱动程序无法正确识别卡。

使用 Raspberry Pi,该棒被识别,“cdc_ether”驱动程序为其创建了一个 wwan0 接口,“option”驱动程序创建了 /dev/ttyUSB0、/dev/ttyUSB1、/dev/ttyUSB2 和 /dev/ttyUSB3。详细信息如下所示。

为了在 Linux 上建立连接,我从 VZAccessManager 中获取了一些信息,并使用名为 HHD Free Serial Port Monitor 的程序嗅探 Windows COM 端口来显示 Verizon 通过串行端口向调制解调器发送的命令:

ATS0=0
好的
好的
AT&F&D2&C1E0V1S0=0
好的
在+ IFC = 2,2
好的
AT + CGDCONT = 3,“IP”,“vzwinternet”,“0.0.0.0”,0,0
好的
ATD*99***3#
连接边缘

此后,还有一些我无法阅读的非文本通信,其中一些可能是 CHAP 或 PAP 身份验证,提供我无法看到的凭证。其中一些是我的互联网访问。

根据以上内容以及我从 VZAccessManager 屏幕获得的信息,我拼凑了以下 /etc/pppd/verizon-gprs 和 /etc/pppd/verizon-gprs-connect 聊天脚本,使我能够在 Linux 上进行连接。

verizon-gprs:(?????????? 是我的手机的 10 位电话号码)

隐藏密码
沒有授權
用户[电子邮件保护]
密码 vzw
连接“/usr/sbin/chat -v -t3 -f /etc/ppp/peers/verizon-gprs-connect-chat”
调试
/dev/ttyUSB0
默认的
預設路由
替换默认路由
坚持
使用peerdns
不分离

verizon-gprs-连接-聊天:

暂停 35
回音开启
中止‘\nBUSY\r’
中止‘\nERROR\r’
中止‘\n无答案\r’
中止‘\n无载体\r’
中止‘\n无拨号音\r’
中止‘\nRINGING\r\n\r\nRINGING\r’
阿特兹
确定‘ATS0=0’
确定‘AT&F&D2&C1E1V1S0=0’
确定‘AT+IFC=2,2’
确定‘AT+CGDCONT=3,"IP","vzwinternet","0.0.0.0",0,0’
好的‘ATD*99***3#’
连接 ''

我尝试了上述参数,但 2.5 分钟内无法连接任何东西。断开连接后,它再也无法连接——我必须断开连接并重新连接,然后上述连接脚本才能工作。我在 Windows XP 上也有类似的经历,将 DUN 设置为拨号99***3# 使用与上面相同的用户名和密码,并设置“AT + CGDCONT = 3,“IP”,“vzwinternet”,“0.0.0.0”,0,0”作为要发送到调制解调器的额外初始化参数。

在我的 Rasbpery Pi 上,我还尝试通过在 /etc/networking/interfaces 中配置 wwan0 然后调用 来直接连接它sudo ifup wwan0。但它从未获得 IP 地址。无论我是否首先尝试使用上述技术使用 pppd 连接调制解调器,情况都是如此。

目前我还没有其他可以尝试的方法。我在网上找不到任何在 Linux 上成功完成此操作的人。

$ lsusb | grep Novatel
总线 001 设备 005:ID 1410:b001 Novatel Wireless
$ ls /dev/ttyUSB*
/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3
$ ifconfig wwan0
wwan0 链路封装:以太网 HWaddr 00:a0:c6:00:00:00  
          上行广播运行多播 MTU:1500 度量:1
          RX 数据包:0 错误:0 丢弃:0 溢出:0 帧:0
          TX 数据包:2 错误:0 丢弃:0 超限:0 载波:0
          碰撞:0 txqueuelen:1000
          RX字节:0(0.0 B)TX字节:684(684.0 B
$ dmesg
...
[13.325406]usbcore:注册的新接口驱动程序usbserial
[ 13.513047] cdc_ether 1-1.3.2:1.6: wwan0: 在 usb-bcm2708_usb-1.3.2、移动宽带网络设备处注册‘cdc_ether’,00:a0:c6:00:00:00
[13.903537]已注册通用的 USB 串行支持
[13.998983]usbcore:注册的新接口驱动程序cdc_ether
[14.039185]usbcore:注册的新接口驱动程序usbserial_generic
[14.163290]usbserial:USB串行驱动程序核心
[ 14.193011] cfg80211:呼吁 CRDA 更新世界监管域
[14.282386]为 GSM 调制解调器注册了 USB 串行支持(1 端口)
[ 14.435364] 选项 1-1.3.2:1.0: 检测到 GSM 调制解调器(1 端口)转换器
[ 14.536530] usb 1-1.3.2: GSM 调制解调器(1 端口)转换器现已连接到 ttyUSB0
[ 14.610970] 选项 1-1.3.2:1.1: 检测到 GSM 调制解调器(1 端口)转换器
[ 14.680940] usb 1-1.3.2: GSM 调制解调器(1 端口)转换器现已连接到 ttyUSB1
[ 14.733917] 选项 1-1.3.2:1.2: 检测到 GSM 调制解调器(1 端口)转换器
[14.778622]usb 1-1.3.3:使用dwc_otg重置高速USB设备编号6
[ 14.798339] usb 1-1.3.2: GSM 调制解调器(1 端口)转换器现已连接到 ttyUSB2
[ 14.846967] 选项 1-1.3.2:1.4: 检测到 GSM 调制解调器(1 端口)转换器
[ 14.917340] usb 1-1.3.2: GSM 调制解调器(1 端口)转换器现已连接到 ttyUSB3
[15.011231]usbcore:注册的新接口驱动程序选项
...

答案1

我相信我在 Debian 上运行这些。尝试安装 wvdial,并编辑 /etc/wvdial.conf 使其如下所示。然后运行 ​​wvdial 并查看它的内容。

[Dialer Defaults]
Stupid mode = 1
Dial Command = atdt
Carrier Check = no
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = USB Modem
Phone = *99***3#
ISDN = 0
Password = 1
New PPPD = yes
Username = 1
Modem = /dev/ttyACM0
Baud = 460800

答案2

我认为您的问题是缺少对驱动程序和 Verizon 4G USB 密钥周围所有其他内容的内核支持。Debian 是一款很酷的操作系统,但它在支持尖端设备方面已经很晚了。您可能想尝试使用Arch LinuxArch Linux 的主要优势是 AUR。它是一个存储库,每个人都可以在数据库中添加自己的软件包,然后您可以下载并构建它。因此,如果您的驱动程序不在主存储库中,则它可能在 AUR 中。顺便说一句,这是关于 USB 3G 调制解调器的 Arch Linux 页面:https://wiki.archlinux.org/index.php/USB_3G_Modem。 就这样

相关内容