Kyocera KE 301 и Linux

    Год назад ко мне в руки попал телефон японского производства Kyocera KE 301 станратра CDMA2000 (Skylink, Белсел/Diallog). Телефон прекрасно работает как CDMA-1x модем, однако ни Ubuntu, ни Xandros(eee pc 1000) «из коробки» его не понимают.

    Для использования как модем, к телефону поставляется USB-кабель и диск с windows драйверами.
    Найти путь по хлебным крошкам удалось не сразу.
    Первое, что стало понятно — выглядит нормально подключеный модем примерно вот так:
    набрав dmesg | tail после подкючения USB-кабеля в консоли должна появиться строка вида:
    [ хх.ххх ] usb х-х: pl2303 converter now attached to ttyUSB0
    Ни одной конкретной статьи по подключению именно этой модели найдено не было, поэтому просмотрев свой dmesg и увидев:
    [ 738.220000] usb 1-2: new full speed USB device using uhci_hcd and address 2
    [ 738.380000] usb 1-2: configuration #1 chosen from 1 choice

    пошёл «бараньими» тропами.

    Начав с того, что уже есть, windows-драйвер состоит из 2х файлов:
    MDMSAUSB.inf
    SER2PL.sys
    Из inf-файла я узнал, что кабель — вовсе не простой(иначе говоря прямой) кабель, а USB-Serial.
    Поиск по SER2PL — показал, что конвертер базируется на микросхеме Prolific PL2303, которая теоретически поддерживается Debian, что уже большой плюс.

    Нижеприведённое решение одинаково верно для xandros (применялась версия установленная на eeepc 1000) и ubuntu 9.04(установлена на десктопе), в случае с xandros вышло немного сложнее, об этом будут пометки по тексту.

    Понадобиться консоль, утилиты lsmod, depmod, lsusb, modprobe, модуль ядра pl2303, административный доступ по sudo(или в случае с xandros sudo su), и какой-нибудь текстовый редактор.

    Шаг первый: выполнив в консоли lsusb до подключения
    Bus 001 Device 001: ID 0000:0000
    Bus 002 Device 001: ID 0000:0000
    Bus 003 Device 001: ID 0000:0000
    Bus 005 Device 001: ID 0000:0000
    Bus 004 Device 001: ID 0000:0000

    и после подключения
    Bus 001 Device 001: ID 0000:0000
    Bus 001 Device 004: ID 2900:0016
    Bus 002 Device 001: ID 0000:0000
    Bus 003 Device 001: ID 0000:0000
    Bus 005 Device 001: ID 0000:0000
    Bus 004 Device 001: ID 0000:0000

    Мы идентифицируем устройство по 2 параметрам vid и pid (сокращённо от vendor id и product id), они выделены жирным. Пока USB кабель можно отключить.

    Шаг второй: Для поддержки linux-системой PL2303 устройства надо загрузить модуль ядра pl2303
    для этого необходимо выполнить комманду
    sudo modprobe pl2303 sudo для этой операции обязательно
    Если никаких сообщениях об ошибках не было, можно проверяить загружен ли у Вас в системе модуль ядра pl2303.
    Выполнив команду lsmod | grep pl2303, если среди появившихся строк присутствует строка pl2303 в первой колонке и нуль — в последней, двигаемся к следующему шагу.
    Важное примечание для Xandros: из коробки модуль pl2303 недоступен. Включить его можно проведя несколько манипуляций:
    в папке /lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/serial/
    вместо /2.6.21.4-eeepc/ следует искать Вашу версию ядра, если вы его обновляли
    есть файл pl2303.ko.huawei, который надо переименовать или скопировать в эту же папку с именем pl2303.ko и выполнить комманду sudo depmod и только после этого продвигаться к следующему шагу.

    Шаг третий: Определение USB устройства с заданным vid:pid как pl2303-устройство.
    Важное замечание: загрузить модуль PL2303 необходимо до выполнения следующей комманды
    Строкой
    sudo echo 2900 0016 >/sys/bus/usb-serial/drivers/pl2303/new_id
    к устройствам pl2303 добавляется заданная комбинация vid:pid, при следующем подключении кабеля система будет использовать модуль/драйвер pl2303 для взаимодействия.
    В случае с xandros придётся сначала выполнить sudo su, а потом echo 2900 0016 >/sys/bus/usb-serial/drivers/pl2303/new_id

    Теперь кабель можно подключить и выполнить lsmod |grep pl2303, среди строк должна оказаться такая, в которой pl2303 окажется в первой колонке и 1 — в последней.
    и смотреть dmesg |tail
    [10442.180000] usb 1-2: new full speed USB device using uhci_hcd and address 5
    [10442.340000] usb 1-2: configuration #1 chosen from 1 choice
    [10442.350000] pl2303 1-2:1.0: pl2303 converter detected
    [10442.350000] usb 1-2: pl2303 converter now attached to ttyUSB0

    Выделеное жирным означает, что устройство успешно опознано и подключено.

    Чтобы «закрепить» результат проделанного (если всё заработало): добавьте строку pl2303 в файл /etc/modules — это включит автозагрузку модуля при старте системы.

    Остальная настройка по подключению к интернету неоднократно описана и не представляет интереса.
    К слову сказать в xandros следует проверить файл /etc/ppp/peers/cdma, чтобы /dev/xxx вместо xxx было именно ttyUSB0 (соблюдайте регистр символов), выполнив sudo pppd call cdma после всего вышеописанного можно будет установить связь с интернетом без доводки(работает на Белсел/Diallog, не было возможности проверить у Skylink)

    p.s.: в xandros после перезагрузки мне пришлось снова вводить sudo su; echo 2900 0016 >/… это пока единственное, что сделать не удалось(ваши предложения в комментарии).
    p.p.s.: пока решился написать статью — телефон убрали из продажи(на сайте skylink уже нету, а у Diallog он не только остался на сайте, так ещё и в акции участвует).

    Спасибо FRAGIL3 за возможность публикации этой статьи.
    Спасибо АЕР и ЛОРу за решение описанное в третьем шаге

    Похожие публикации

    Средняя зарплата в IT

    110 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 8 550 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    Реклама
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее

    Комментарии 7

      0
      Молодой человек, а не проще ли купить для этого вопроса за 30-35$ USB-модем типа Sierra Wireless Compass 597, который с лету видит и убунта и все остальные системы. Да и evdo будет, а телефон оставить телефоном, а?
        0
        Всё не так просто. В на рубеже 2007-2008, была возможность купить новый телефон по акции которая обеспечивала 500mb в месяц бесплатно в течении года, при 6000 бел. рублей абонентской платы (сейчас чуть больше 2$), а учитывая сломавшийся корпус и переполненную память GCP-5000 и отсутствие(на тот момент) более дешёвых предложений мобильного интернета в Белорусии. Это казалось вполне разумным решением.
          0
          GCP 5000, правильная ссылка.
            0
            Так и думал что станет вопрос цены. С этим я согласен.
            Но ведь сегодня не 2007-2008 год?.. В 2007 сам покупал за «бешенные» деньги телефон с 1х LG TD686, и пользовался кабелем. Но со временем таки надоело вечно быть привязанным к кабелю. И потому был выбран модем другой (Novatel UM170) с поддержкой EVDO и скоростью доступной на Украине 600-800Кбит, и в 2009 был взят Sierra Wireless Compass 597, маленький и компактный. Хороший сигнал связи и т.д. Что один что второй модем из коробки ловятся в Ubuntu и MacOS X.
            PS: Посмотрел что Ваш оператор поддерживает EVDO… ну честно, меня лично жаба бы душила, что есть ВОЗМОЖНОСТЬ, а не используется. :)
              0
              досмотрел ваши тарифы, дороговатые конечно по сравнению с нашими. Поэтому наверное прийдется взять свои слова обратно. Ибо за 500Мб траффика платить 30$, это перебор цены…
          0
          набрав dmesg | tail после подкючения USB-кабеля в консоли должна появиться строка вида:
          [ хх.ххх ] usb х-х: pl2303 converter now attached to ttyUSB0

          Уже после слов «pl2303 converter» можно было искать в гугле по условию «pl2303 + linux». pl2303 — один из самых известных конвертеров RS232->USB.

          Статья ни о чём.
            0
            Спасибо за критику, тем не меннее, решение с добавлением новой связки vid:pid не так широко распространено и повсеместно описано.
            добавил ссылку на источник идеи.

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

          Самое читаемое