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

1803
phihag

С моей Huawei ME906s на Linux (протестировано с Debian Sid, в экспериментальном дистрибутиве, 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, но отвечает на ошибку вместо 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?

3
Вы пытались использовать инструмент Sakis3g, он чудесно работал для моего модема Huawei http://www.sakis3g.com/ Harvey 8 лет назад 0
Я обновил вопрос: да, я пробовал sakis3g и ModemManager & NetworkManager, но безуспешно. Я считаю, что оба гораздо более высокого уровня, чем мой подход. phihag 8 лет назад 0

3 ответа на вопрос

2
Harald Welte

Did you check the AT^RFSWITCH? status? It should return AT^RFSWITCH: 1,1. If there are any zeroes, then the modem is in rfkill "airplane" mode.

The huawei modem has two rfswitch (also known as rflock or rfkill) settings: one hardware and one software. The Software rf-kill can be disabled by issuing AT^RFSWITCH=1.

The hardware setting must be disabled from your mainboard/platform, as it actually pulls low a pin on the M.2/mPCIe connector. On laptops this is often controlled by a ACPI function key. On my X260, this is exposed on Linux as /sys/class/rfkill/rfkill3/state

Спасибо за ответ! К сожалению, на моем модеме выводится `^ RFSWITCH: 1,1` (без` AT`, но я думаю, это правильно). Кроме того, `rfkill` везде показывает` no`, а `cat / sys / class / rfkill / * / state` выводит кучу` 1 `. phihag 8 лет назад 0
2
user3549596

Возможно, вы захотите попробовать более новый метод подключения:

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

Затем используйте клиент DHCP на вашем enp0s20f0u5c2интерфейсе, который вы видите.

Если вы подключены, то AT^DHCP?также должны дать ответ с вашим IP в шестнадцатеричном формате.

Это получило два отзыва, мне было бы интересно, если этот метод работает, как задумано. user3549596 8 лет назад 0
Я прошу прощения за задержку. Мне потребовалось некоторое время, чтобы проверить SIM-карту в телефоне, выяснить, что срок действия договора истек, и приобрести новую. Я обновил вопрос с результатом использования NDISDUP вместо этого - к сожалению, я не вижу существенной разницы. phihag 8 лет назад 0
Нет проблем, я бы просто использовал NDISDUP и никакой команды после этого, похоже, что вы использовали ATD * 99 # после входа в NDISDUP. user3549596 8 лет назад 0
Я удалил `ATD` (я не подключаюсь вручную, используя minicom вместо wvdial), но я все еще вижу то же поведение - устройство` enp0s20f0u5c2` помечено как NO-CARRIER, и я не могу подключиться. Удивительно, но `AT ^ DHCP?` Отвечает 'ERROR`. Это когда-нибудь должно было случиться? phihag 8 лет назад 0
Я не уверен в последнем. Какой драйвер использует ваш интерфейс? `ethtool -i enp0s20f0u5c2` это может быть` cdc_mbim`, и если да, то `mbimcli` может быть следующим подходом. DHCP не является обязательным, если я правильно помню для передачи IP на интерфейс, особенно с MBIM. Однако он использовался в предыдущих вещах Ethernet, таких как NCM. Мой модем - E3372, который использует NCM, и я предположил сходство между моделями. user3549596 8 лет назад 0
Я добавил этот вывод и к вопросу, в самом конце. `cdc_ether`, похоже, связан с WWAN. phihag 8 лет назад 0
Спасибо, это было неожиданно для меня, однако. Какую версию ядра вы используете? user3549596 8 лет назад 0
Я пробовал с различными последними ядрами, в настоящее время на 4.6.0-1, который я считаю довольно недавним. phihag 8 лет назад 0
Вы используете устройство с ноутбуком? Я бы предположил, что, но состояние `ip link`` DOWN` удивляет меня. Может ли быть радио-переключатель не работает правильно? Может быть, вы можете проанализировать `dmesg`, чтобы узнать, что делает модем во время загрузки, или вывод` lsusb`. Причиной для ядра был этот коммит: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/net/usb?id=c5b5343cfbc9f46af65033fa4f407d7b7d98371d user3549596 8 лет назад 0
Да, это на Lenovo T460p. Я воспроизвел поведение с самым последним ядром 4.7.0-rc4, которое включает это исправление. [Вывод lsusb] (https://gist.github.com/phihag/7c045976849bccbc2ebf5fcd3d4e2e4c#file-lsusb-output) и dmesg (добавлено внизу вопроса) выглядят нормально для меня. Может быть, это простая аппаратная ошибка, как антенна не подключена? phihag 8 лет назад 0
Возможно, но я бы предположил, что даже при отсутствии подключенных антенн иногда бывают очень слабые сигналы, здесь кажется, что «ОШИБКА» появляется мгновенно. У меня нет идей, если честно. Вы можете попытаться связаться с разработчиками ModemManager / libqmi / libmbim. Bjorn обычно очень дружелюбный и услужливый, я думаю, что список рассылки [this] (https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel) будет место для начала и ссылку на эту ветку, если вы напишите ей письмо. user3549596 8 лет назад 1
1
Kirill Bushminkin

У меня была такая же проблема с моим модемом 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