НЕТ НОСИТЕЛЯ с Huawei ME906s

НЕТ НОСИТЕЛЯ с Huawei ME906s

С моим Huawei ME906s на Linux (проверено с Debian sid, Debian experimental, Fedora 24 и Ubuntu 16.04, но результат тот же под Windows 10), я получаю сообщения ERRORили NO CARRIER(в зависимости от того, какое устройство я использую). В отличие отэтот вопрос, поведение постоянное и также происходит, когда я запускаю wvdial долго после загрузки. Я удалил PIN-код SIM-карты и проверил, что мобильная сеть работает со смартфоном 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.

Последние 5 строк повторяются более 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выходвыглядит вполне нормально.

Как подключить Huawei ME906s?

решение1

Вы проверили статус AT^RFSWITCH?? Он должен вернуть AT^RFSWITCH: 1,1. Если есть нули, то модем находится в режиме rfkill "в самолете".

Модем huawei имеет две настройки rfswitch (также известные как rflock или rfkill): одну аппаратную и одну программную. Программную rf-kill можно отключить, выполнив AT^RFSWITCH=1.

Аппаратная настройка должна быть отключена на вашей материнской плате/платформе, так как она фактически понижает уровень контакта на разъеме 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. И интерфейс получил IP через DHCP:

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

Связанный контент