Данная статья посвящена подключению и настройке модема ZyXEL Omni 56K Plus в ОС Linux через USB.
Статья:USB»
Автор: Дмитрий Шубадеев aka ppp
E-mail: [shubadeev hotbox ru]
Данная статья посвящена подключению и настройке модема ZyXEL Omni 56K Plus в ОС Linux через USB.
В ядре Linux нет драйвера для модема ZyXEL Omni 56K Plus, но зато есть драйвер для ZyXEL Omninet, который путем небольших изменений прекрасно работает и с ZyXEL Omni 56K Plus (и, возможно, с другими USB-модемами фирмы ZyXEL).
Подготовка ядра.
Файл, который мы будем изменять лежит здесь:
исходники ядра/drivers/usb/serial/omninet.c
Перед изменением мы должны узнать Vendor Id и Product Id нашего модема. Для ZyXEL Omni 56K Plus это будет 0x0586h и 0x1500 соответственно. Если вы пытаетесь настроить другой USB-модем, то для определения Vendor Id и Product Id можно воспользоваться утилитой "usbview".
Открываем наш файл и добавляем следующие строки:
#define ZYXEL_VENDOR_ID 0x0586 (или Vendor Id вашего модема )
#define ZYXEL_OMNIPLUS_ID 0x1500 (или Product Id вашего модема)
Находим структуру id_table, и добавляем новый элемент, который будет описывать наш модем:
{USB_DEVICE( ZYXEL_VENDOR_ID, ZYXEL_OMNIPLUS_ID)}
В итоге мы получаем такую структуру:
static struct usb_device_id id_table[] = {
{USB_DEVICE( ZYXEL_VENDOR_ID, ZYXEL_OMNINET_ID)},
{USB_DEVICE( ZYXEL_VENDOR_ID, ZYXEL_OMNIPLUS_ID)},
{}
};
Сохраняем файл. Вот и все изменения :).
Т.к. модем работает через USB, необходимо будет включить поддержку USB в ядре, а также USB serial convert и, конечно, сам драйвер USB ZyXEL omni.net LCD Plus Driver. Теперь перекомпилируем и устанавливаем ядро (как это делать я описывать не стал, так как об этом много написано) [например, см. статью «Новичкам: компилируем Linux-ядро» — прим. ред.].
reboot
Настройка /dev
Создаем файл устройства:
mknod /dev/ttyUSB0 c 188 0
Для второго модема — mknod /dev/ttyUSB0 c 188 1 и т.д.
Делаем символическую ссылку на файл устройства:
ln -s /dev/ttyUSB0 /dev/modem
Настройка программы
В программе, которой ты будешь звонить, в качестве устройства выбираем /dev/modem.
На этом все.
З.Ы. Данный модем у меня работал с ядром 2.4.x и 2.6.x. Насчет других USB-модемов за неимением оных ничего сказать не могу.
|