华为 ME906s 无运营商

华为 ME906s 无运营商

使用我的 Linux 上的华为 ME906s(使用 debian sid、debian experiments、Fedora 24 和 Ubuntu 16.04 进行测试,但在 Windows 10 下结果相同),我收到或ERROR消息NO CARRIER(取决于我使用的设备)。相比之下这个问题,这种行为是一致的,并且在我启动后很长时间运行 wvdial 时也会出现这种情况。我已删除 SIM PIN 并验证移动网络是否适用于 Android 智能手机。

使用 Linux 4.7.0-rc4,我看到 5 个可以关联到卡的设备:

  • /dev/ttyUSB0- 讲 AT,输出如下所示
  • /dev/ttyUSB1- 无输出(用于 GPS?)
  • /dev/ttyUSB2- 讲的是 AT,但回答的是 ERROR,而不是 NO CARRIER 拨号
  • /dev/ttyUSB3- 与 /dev/ttyUSB0 行为相同
  • /dev/ttyUSB4- 无输出(用于 GPS?)

这是我得到的输出精心制作的 wvdial.conf

--> WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: AT+CFUN=1
AT+CFUN=1
OK
--> Sending: ATQ0 V1 E1 S0=0
ATQ0 V1 E1 S0=0
OK
--> Sending: AT+CGDCONT=1,"IP","internet.t-mobile"
AT+CGDCONT=1,"IP","internet.t-mobile"
OK
--> Sending: ATI
ATI
Manufacturer: Huawei Technologies Co., Ltd.
Model: ME906s-158
Revision: 11.617.00.00.00
IMEI: 8<snip by @phihag>0
+GCAP: +CGSM,+DS,+ES
OK
--> Sending: AT+CPIN?
AT+CPIN?
+CPIN: READY
OK
--> Sending: AT+CFUN?
AT+CFUN?
+CFUN: 1
OK
--> Sending: AT+CSQ
AT+CSQ
+CSQ: 99,99
OK
--> Sending: AT+CREG?
AT+CREG?
+CREG: 0,2
OK
--> Modem initialized.
--> Sending: ATD*99#
--> Waiting for carrier.
ATD*99#
NO CARRIER
--> No Carrier!  Trying again.

最后五行重复了10多次。

尝试连接时,其他工具(例如 sakis3g 和 ModemManager/NetworkManager)也会挂起。

我还看到了与调制解调器关联的网络链接,但也无法访问:

$ ip link
...
6: enp0s20f0u5c2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 02:1e:10:1f:00:00 brd ff:ff:ff:ff:ff:ff

我认为rfkill不活跃:

$ rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
        Soft blocked: no
        Hard blocked: no
1: tpacpi_wwan_sw: Wireless WAN
        Soft blocked: no
        Hard blocked: no
3: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
10: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

(和......说话/dev/ttyUSB0

AT^RFSWITCH?
^RFSWITCH: 1,1

OK

根据建议,我尝试使用AT^NDISDUP,但无济于事(尽管接下来ATZ我看到了更多的行):

$ minicom -D /dev/ttyUSB0
ATZ
OK
^PDPSTATUS: 2
^NDISSTAT: 0,0,,"IPV4"
AT^NDISDUP=1,1,"internet.t-mobile"
OK

AT^DHCP?
ERROR

但是,ip link仍然显示 NO-CARRIER,并且dhclient -v enp0s20f0u5c2超时。ethtool我看到:

$ ethtool -i enp0s20f0u5c2
driver: cdc_ether
version: 22-Aug-2005
firmware-version: CDC Ethernet Device
expansion-rom-version: 
bus-info: usb-0000:00:14.0-5
supports-statistics: no
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no

dmesg 对我来说看起来不错:

[   11.674523] cdc_ether 1-5:2.0 usb0: register 'cdc_ether' at usb-0000:00:14.0-5, CDC Ethernet Device, 02:1e:10:1f:00:00
[   11.674630] usbcore: registered new interface driver cdc_ether
[   11.675451] option 1-5:2.2: GSM modem (1-port) converter detected
[   11.675746] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB0
[   11.675767] option 1-5:2.3: GSM modem (1-port) converter detected
[   11.676499] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB1
[   11.676528] option 1-5:2.4: GSM modem (1-port) converter detected
[   11.676569] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB2
[   11.676586] option 1-5:2.5: GSM modem (1-port) converter detected
[   11.676620] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB3
[   11.676637] option 1-5:2.6: GSM modem (1-port) converter detected
[   11.676672] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB4

同样地,lsusb输出看起来很正常。

如何让我的华为 ME906s 连接?

答案1

您是否检查过 AT^RFSWITCH? 状态?它应该返回 AT^RFSWITCH: 1,1。如果有任何零,则调制解调器处于 rfkill“飞机”模式。

华为调制解调器有两个 rfswitch(也称为 rflock 或 rfkill)设置:一个硬件和一个软件。可以通过发出 AT^RFSWITCH=1 来禁用软件 rf-kill。

必须从主板/平台禁用硬件设置,因为它实际上会拉低 M.2/mPCIe 连接器上的引脚。在笔记本电脑上,这通常由 ACPI 功能键控制。在我的 X260 上,这在 Linux 上显示为 /sys/class/rfkill/rfkill3/state

答案2

您可能需要尝试更新的连接方法:

AT^NDISDUP=1,1,"internet.t-mobile"

然后在您看到的接口上使用 DHCP 客户端enp0s20f0u5c2

如果您已连接,则AT^DHCP?还应该以十六进制表示法给出带有您的 IP 的答案。

答案3

我的 ME906s-158 调制解调器也遇到了同样的问题。尝试通过 MBIM 使用它 - 没有成功。调制解调器的固件已过时 - 所以我将其更新为最新版本,从 techship.com。更新后,ME906s 在 cdc_ether 模式下按预期工作。在启用调制解调器网络接口上的连接之前,如下所示:

26: enp0s29u1u2u5c2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
     link/ether 02:1e:10:1f:00:00 brd ff:ff:ff:ff:ff:ff

我需要通过 AT 命令启用连接AT^NDISDUP=1,1。并且接口通过 DHCP 获取 IP:

26: enp0s29u1u2u5c2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
     link/ether 02:1e:10:1f:00:00 brd ff:ff:ff:ff:ff:ff
     inet 10.173.107.197/30 brd 10.173.107.199 scope global dynamic enp0s29u1u2u5c2
       valid_lft 518398sec preferred_lft 518398sec
    inet6 fe80::ef85:b8f8:761e:b922/64 scope link 
         valid_lft forever preferred_lft forever

相关内容