Рассмотрим настройку вот такого вот модема. По паспорту он зовется ZTE AD3700.



Провайдер Intertelecom в свое время закупил видимо целый камаз таких списанных модемов. Похожие CDMA модемы используют и другие провайдеры, например PeopleNet. Да собственно для многих устройств на базе чипсета Qualcomm gobi это руководство должно сработать.

Нам понадобится вот этот вот архив:

В нем лежат firmware для модема, две версии. То какая версия firmware подойдет зависит от ревизии модема. Но к этому мы вернемся позже.

Сперва нужно установить wvdial:

apt-get install wvdial


Теперь в редакторе из под рута откройте файл "/etc/wvdial.conf", его содержимое для Intertelecom:

[Dialer Defaults]
Init1 = ATZ
Modem Type = USB Modem
ISDN = 0
New PPPD = yes
Stupid Mode = 1
 
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
Modem = /dev/ttyUSB0
Baud = 460800
Phone = #777
Username = IT
Password = IT

Вместо /dev/ttyUSB0 напишите имя устройства, которое модему выдало ядро. Логин и пароль «IT» одинаковы для всех пользователей. Телефон тоже. Если у вас другой провайдер, то поменяйте настройки на свои. Далее нам нужно добавить правила udev для того, чтобы при включении модема в него подгружалась правильная firmware. Для этого вам нужно перейти в папку «udev» из архива выше и там из под рута ввести команду:

make install


Теперь, если все отработало без ошибок, создадим директорию с именем "/lib/firmware/gobi". В архиве есть две директории — «variant1» и «variant2»: это разные версии firmware для разных модемов. Чтобы узнать какая из них подходит вашему модему нужно:

  1. Скопировать все файлы из директории «variant1» в директорию "/lib/firmware/gobi".
  2. Воткнуть модем в USB порт. Если он уже воткнут, то вытащите и воткните снова.
  3. Подождать около 10 секунд, чтобы он стал отвечать на команды.
  4. Убедиться, что модем определился с тем именем устройства, которое вы указали в "/etc/wvdial.conf", если нет, то исправить конфиг.
  5. Запустить из под рута «wvdial».

Если firmware выбрана неверно, то после непродолжительного ожидание wvdial вылетит с сообщением «Modem is not responding». В таком случае повторите все 5 пунктов заново, только скопируйте в "/lib/firmware/gobi" уже файлы из директории «variant2».

В случае рабочего firmware «wvdial» выплюнет в консоль адреса полученных DNS серверов, а также там будет присутствовать слово pppd. В теории теперь у вас есть интернет.

У меня не получилось заставить network-manager корректно работать с данным подключением. Также если вы прервете подключение по «Ctrl-C», то подключиться повторно без перевтыкания модема в USB порт не удастся. Также это значит, что после каждого перевтыкания вам скорее всего придется править файл "/etc/wvdial.conf", чтобы убедиться, что вместо /dev/ttyUSB0 там указан правильный файл модема.

Иногда бывает так, что «wvdial» начинает через разные промежутки времени писать в консоль всякую чепуху — это значит, что модем завис, нужно перевоткнуть. Не забывайте ждать 10-15 секунд каждый раз после втыкания, иначе подключение не пойдет. Если вы что-то качаете, то модем может очень сильно нагреваться, но на работоспособность это не влияет.

Комментарии (2)


  1. Renatk
    11.09.2015 17:45

    Может нужно добавить и решение программное по сбросу портов? Чтобы не писать про отключить на 15 секунд и снова подключить.

    askubuntu.com/questions/645/how-do-you-reset-a-usb-device-from-the-command-line


    1. PerlPower
      11.09.2015 20:50

      Пробовал этот вариант полгода назад и не сработало, т.е. программка компилировалась, но модем с ее помощью почему-то не сбрасывался. Если у кого-то этот способ сработает, отпишитесь пожалуйста.