LINUX.ORG.RU

Network Manager vs ZTE MF626


0

0

Система Xubuntu, имеется 3G-модем ZTE MF626 из комплекта Билайн, но перешитый прошивкой от МТС. В системе модем определяется как 4 устройства: /dev/ttyUSB[0-3] Работает модем хорошо, но только через раз (в лучшем случае): устройства появляются без проблем, NM вроде бы видит модем, но вот подключаться отказывается, ничем это не аргументируя. Помогает только передергивание модема в порте - тогда возможно NM подключится, если нет - повторяем процедуру передергивания модема заново. Раза с 3 срабатывает.
С помощью утилиты nm-tool выяснил, что в те моменты, когда оно не подключается, NM «садится» на устройство ttyUSB1, а если он «увидел» ttyUSB3 - значит все ок, значит подключится.

- Device: ttyUSB3 --------------------------------------------------------------
Type: Mobile Broadband (GSM)
Driver: option1
State: disconnected
Default: no

Capabilities:

Внимание - вопрос: каким образом можно указать Network Manager'у конкретное устройство, с которым ему работать? В гуишном конфигураторе такого нигде нету, в настройках соединения (/etc/NetworkManager/system-connections/MTS) тоже ничего не нашел. Подскажите.

ЗЫ: пользоваться wavedial'ом или скриптами - не предлагать. Работают они конечно замечательно, но хочется удобную и красивую гуевину.

А kppp попробовать не хочется? Там можно устройство выбирать?

gserg ★★ ()
Ответ на: комментарий от gserg

kppp все-таки КДЕшный. Не хочется тянуть в xfce половину КДЕ ради звонилки.

InfectedM ()

каким образом можно указать Network Manager'у конкретное устройство, с которым ему работать?

Никаким, он сам ищет модем, и если находит - подключает.

Насчет ttyUSB1 и т.д - у этого модема несколько портов? Вроде раньше были проблемы, там не так просто определить, какой именно порт использовать, но мне кажется, что их пофиксили. Какая версия NM? Что будет если поставить 0.8.1?

vga ★★ ()
Ответ на: комментарий от vga

Никаким,

Поторопился, как раз для ZTE есть способ - /lib/udev/rules.d/77-mm-zte-port-types.rules

В этом файле прописаны правила для определения правильного порта на ZTE. Но опять же, мне кажется, что там все правильно написано.

vga ★★ ()
Ответ на: комментарий от vga

vga, спасибо за ответ. У модема действительно несколько портов. Раньше у него была другая прошивка - с подключением проблем не было, но были проблемы с самим модемом - он иногда беспричинно выключался. Прошил его в МТС - выключаться перестал, но начались проблемы с NM.
Кстати, NM последней на данный момент версии из daily ppa.
Я временно это лечу так: после втыка модема в порт, но еще до того, как NM его определит, пишу:

# sudo rm /dev/ttyUSB1

Тогда NM более ничего не остается, как использовать ttyUSB3, и тогда он работает :) Но это жуткий костыль.
Спасибо за ссылки, буду пробовать.

InfectedM ()
Ответ на: комментарий от InfectedM

Кстати, NM последней на данный момент версии из daily ppa.

Гм, значит таки не поправили. Тогда желательно его закинуть на ту же редхатовскую багзиллу, если Dan Williams там появится - он может помочь, конечно инфы попросит много. Я как-то с Anydata там просил помощи - он пофиксил за пару дней.

vga ★★ ()
Ответ на: комментарий от InfectedM

Попробовал поменять номера портов через правила udev - не помогло. Думаю, проблема в том, что сразу 2 устройства модема «выглядят» как правильные, т.е. отправлять и принимать AT-команды можно как через ttyUSB1, так и через ttyUSB3 - именно это и сбивает с толку NM. Соединение однако можно поднять только через ttyUSB3.

InfectedM ()
Ответ на: комментарий от vga

Спасибо, время будет - напишу багрепорт. Правда мод английский хромает...

InfectedM ()
Ответ на: комментарий от InfectedM

Ну вот в этом правиле и указывается, какой порт правильный

ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"

В данном случае правильный тот, что на первом интерфейсе, на третьем - дополнительный (там через него какую-то еще инфу можно вытащить)

Можно взлянуть на

lsusb -v -d 19d2:

?

Мало ли, вдруг что-то понятно станет.

vga ★★ ()
Ответ на: комментарий от vga

И еще udevadm info -a -p /sys/class/tty/ttyUSB1 и udevadm info -a -p /sys/class/tty/ttyUSB3

vga ★★ ()
Ответ на: комментарий от vga

> Ну вот в этом правиле и указывается, какой порт правильный
Пробовал менять местами тот, что 01 с тем, что 03 - никакого эффекта не дало. Кстати, с новой этой прошивкой от МТС как раз и появилось еще одно устройство ttyUSB3, раньше их было только 3 (0-2). Фича прошивки - возможность совершать и принимать голосовые вызовы через модем. Видать теперь на одно из устройств и навешан голос, только чем его юзать в топике - не знаю, в оффтопике оно работает из родной софтины.

Прикладываю листинги.
http://dumpz.org/21352/
http://dumpz.org/21353/
http://dumpz.org/21354/

InfectedM ()
Ответ на: комментарий от InfectedM

Так, кажись понятно. Там в конце рулезов есть правило для 2002 устройства, оно даже с такими же номерами интерфейсов - 03 - это основной интерфейс, 01 - дополнительный. NM не знает такого для 2003, и пытается угадать, у него не получается.

Надо добавить такое же для 2003-го

ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"

Эти прошивки похоже меняют idProduct, подозреваю, что 2002 -это какая-то предыдущая прошивка, а 2003 - новая, и в правилах его еще нет.

Должно заработать, мне кажется.

vga ★★ ()
Ответ на: комментарий от vga

Ут хы, сработало! Большое спасибо за решение!
На всех ранее опробованных мною прошивках модема idProduct был 13, поэтому что-то я на факт смены id даже не обратил внимание.

InfectedM ()
Ответ на: комментарий от InfectedM

> На всех ранее опробованных мною прошивках модема idProduct был 13
Вру, 31 был.

InfectedM ()
Ответ на: комментарий от InfectedM

>он иногда беспричинно выключался

Это билайн прошивку так улучшил, чтобы с левых симок в большие минуса не уходили. А чем тебе родная прошивка оти zte не нравится? Не хочешь kppp, есть gnome-ppp, там и кнопочка есть - определение модема. Хотя это всё обёртки к wvidial, а там конфиг - кот наплакал. Сделать иконку для wvidial и пользоваться.

kraftello ★★★★★ ()
Ответ на: комментарий от InfectedM

Ут хы, сработало! Большое спасибо за решение!

Пожалуйста. Надо эти строчки как нибудь в апстрим закинуть, через рассылку или багзиллу.

vga ★★ ()
Ответ на: >он иногда беспричинно выключался от kraftello

> Это билайн прошивку так улучшил, чтобы с левых симок в большие минуса

не уходили. А чем тебе родная прошивка оти zte не нравится? Не хочешь

kppp, есть gnome-ppp, там и кнопочка есть - определение модема. Хотя


это всё обёртки к wvidial, а там конфиг - кот наплакал. Сделать


иконку для wvidial и пользоваться.


На самом деле с Билайновской прошивкой модем в Линуксе вообще работать отказывался - там залочка была под фирменную утилиту. Сразу же накатил на него прошивку от Telstra - вот с ней и выключался. Причем рандомно: мог несколько суток нормально проработать, а мог всего полчаса. Потом еще пробовал прошивку Globe - с ней не выключался, но связь была какая-то паршивая. Наверное что-то с MTU или в этом роде в ней намудрили.
Изначально хотелось продолжать пользоваться NM, т.к. привык к нему, да к тому же через него иногда подключаюсь к Wi-Fi-сетям.

Надо эти строчки как нибудь в апстрим закинуть, через рассылку или багзиллу.

У меня с этим опыта нет вообще, может поможете это сделать?

InfectedM ()
Ответ на: комментарий от InfectedM

Пишешь письмо на networkmanager-list@gnome.org (то есть в эту рассылку- http://mail.gnome.org/mailman/listinfo/networkmanager-list)

Содержание письма:

Hi, please add support for my ZTE modem to /lib/udev/rules.d/77-mm-zte-port-types.rules

ATTRS{idProduct}==«2003», ENV{.MM_USBIFNUM}==«03», ENV{ID_MM_ZTE_PORT_TYPE_MODEM}=«1» ATTRS{idProduct}==«2003», ENV{.MM_USBIFNUM}==«01», ENV{ID_MM_ZTE_PORT_TYPE_AUX}=«1»

Thanks

Ну и там дальше по обстоятельствам, может спросят чего

vga ★★ ()
Ответ на: комментарий от InfectedM

У меня прошивка от Telstra

Устраивает пока. Нормально работает. Только надо eject /dev/sr0 делать. Ибо он сразу как сидиром определяется. Есть пакет какой-то автоматом это делает. Мне проще руками. Ещё мегафоновский софт есть. Он на java, универсальный (не пробовал).

kraftello ★★★★★ ()
Ответ на: комментарий от vga

Окей, письмо в рассылку направил.

Только надо eject /dev/sr0 делать. Ибо он сразу как сидиром

определяется. Есть пакет какой-то автоматом это делает.



Вообще, если мне не изменяет мой склероз, это делает пакет usb-modeswitch. Но я решил вопрос кардинально, переведя модем навсегда в режим модема, отключив виртуальный cdrom с софтом. Это делается удалением файла во внутренней ФС модема через программу QPST (к сожалению, только под windows).
Подробное хауту здесь: http://habrahabr.ru/blogs/hardware/81971/

InfectedM ()
Ответ на: У меня прошивка от Telstra от kraftello

> Ещё мегафоновский софт есть. Он на java, универсальный (не пробовал).

Я его пробовал. Поплевался, и выпилил. Глючит, тормозит. В общем, штука бесполезная. Да и зачем оно - вон Network Manager допиливают до нужного состояния потихоньку. Новые версии уже умеют показывать уровень сигнала и название оператора. Думаю, скоро оно научится отправлять USSD-запросы (проверять баланс, например), отправлять/принимать СМС и т.д. Задача-то на самом деле не сложная (я это делаю самописными скриптами), осталось реализовать.

InfectedM ()
Ответ на: комментарий от InfectedM

Hi, please add support for my ZTE MF626 modem
to /lib/udev/rules.d/77-mm-zte-port-types.rules

ATTRS{idProduct}==«2003», ENV{.MM_USBIFNUM}==«03»,
ENV{ID_MM_ZTE_PORT_TYPE_MODEM}=«1»
ATTRS{idProduct}==«2003», ENV{.MM_USBIFNUM}==«01»,
ENV{ID_MM_ZTE_PORT_TYPE_AUX}=«1»

Done, thanks.

7e2d63d2c20a6ad540d4bb1e404f001b9f47a360

Dan

Так что все отлично, твоя прошивка уже в апстриме, в следующей версии все будет «искаропки».

vga ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.