Установка и настройка USB-модемов

Обмен опытом по установке Линукс на разные аппаратные конфигурации

Модераторы: Olej, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 21 авг 2012, 18:54

Olej писал(а):
dmitriev писал(а):Я хочу это опубликовать в виде статьи. Можно вас включить в качестве соавтора?
Идея очень хорошая - оформить в виде статьи.
Меня включать в соавторы совсем не обязательно, я только тщательно вспомнил то, что читал раньше у других...
А вот в деталях и экспериментах, по выяснению подробностей для разных случаев, при подготовке текста для статьи - я с удовольствием приму участие ... для уточнения и обсуждения.
dmitriev, я вас только чего попрошу ;-) - вы если напишите статью такую, вы дайте знать, сообщите о том ... в разделе "Обсуждение статей, опубликованных на сайте", например.
Потому что не всегда хватает времени за всем уследить.
А это было бы и мне, и другим, думаю, интересно.


Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 07 сен 2012, 23:17

Olej писал(а): А вот так - именно то, что нам нужно - поддержка конкретной модели USB-модема:

Код: Выделить всё

[olej@notebook /]$ modprobe -c | grep -i 16d5 | grep 6502
alias usb:v16D5p6502d*dc*dsc*dp*ic*isc*ip* option
- здесь же вам и имя модуля (option), который объявляет поддержку этого устройства.
Попал мне в руки ещё один модем, контрактный, работающий (есть деньги на счету), оператор InterTelecom, Украина (есть в списке настроек Network Manager). Вот что про него известно, все его опознавательные знаки:
Al 100 EVDO Modem
MODEL: Al 100
FCC ID:U46-D3
Made in China
Вот он (в 3-й строке) - 2340:0004:

Код: Выделить всё

bash-4.2$ lsusb
Bus 001 Device 002: ID 0424:2503 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 005: ID 046d:080f Logitech, Inc. Webcam C120
Bus 003 Device 003: ID 2340:0004  
Bus 004 Device 002: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 006: ID 03f0:171d Hewlett-Packard Wireless (Bluetooth + WLAN) Interface [Integrated Module]
Bus 001 Device 007: ID 08ff:2580 AuthenTec, Inc. AES2501 Fingerprint Sensor
Ядро 3.5.2-1.fc17.i686.PAE (Fedora 17) такого устройства не знает:

Код: Выделить всё

bash-4.2$ modprobe -c | grep -i 2340
bash-4.2$ ls /dev/*USB*
ls: невозможно получить доступ к /dev/*USB*: Нет такого файла или каталога
Вот это и всё, что с этого устройства можно выжать в Linux?
(или слишком новое, или слишком noname)

P.S. Посмотрел исходный код модуля option.c ядра 3.5 (http://lxr.free-electrons.com/source/dr ... l/option.c) - такой код производителя 2340 в коде не встречается. :-o

dmitriev
Писатель
Сообщения: 461
Зарегистрирован: 12 янв 2009, 19:36
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение dmitriev » 08 сен 2012, 06:16

Для полноты картины хорошо бы еще посмотреть вывод

Код: Выделить всё

# dmesg | tail 
после подключения модема.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 08 сен 2012, 10:19

dmitriev писал(а):Для полноты картины хорошо бы еще посмотреть вывод

Код: Выделить всё

# dmesg | tail 
после подключения модема.
Да, верно ;-), вот от момента подключения :

Код: Выделить всё

bash-4.2$ dmesg
...
[  301.349044] usb 3-2: new full-speed USB device number 2 using uhci_hcd
[  301.500072] usb 3-2: New USB device found, idVendor=2340, idProduct=0004
[  301.500082] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=4
[  301.500088] usb 3-2: Product: USB MMC Storage
[  301.500093] usb 3-2: Manufacturer: Qualcomm, Incorporated
[  301.500099] usb 3-2: SerialNumber: 000000000002
[  301.705854] Initializing USB Mass Storage driver...
[  301.707313] scsi6 : usb-storage 3-2:1.0
[  301.707534] usbcore: registered new interface driver usb-storage
[  301.707538] USB Mass Storage support registered.
[  302.712207] scsi 6:0:0:0: CD-ROM            Open     Mobile  CDROM    2.31 PQ: 0 ANSI: 2
[  302.715189] scsi 6:0:0:1: Direct-Access     Open     Mobile SD Card   2.31 PQ: 0 ANSI: 2
[  302.728173] sr1: scsi-1 drive
[  302.728896] sr 6:0:0:0: Attached scsi CD-ROM sr1
[  302.729279] sr 6:0:0:0: Attached scsi generic sg2 type 5
[  302.729842] sd 6:0:0:1: Attached scsi generic sg3 type 0
[  302.746171] sd 6:0:0:1: [sdb] Attached SCSI removable disk
Вот теперь мы можем знать, что производитель VID=2340 - это: Qualcomm, Incorporated.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 08 сен 2012, 10:41

Olej писал(а):P.S. Посмотрел исходный код модуля option.c ядра 3.5 (http://lxr.free-electrons.com/source/dr ... l/option.c) - такой код производителя 2340 в коде не встречается. :-o
В принципе, раз уж эта тема сложилась так как "Установка и настройка USB-модемов" - т.е. не конкретного типа модема, а неизвестных модемов, то можно было бы:
- пробежаться по коду модуля option.c наиболее свежего ядра (3.5, скажем)...
- и составить полный список производителей и моделей всех видов USB модемов, которые будут поддерживаться ядром Linux,
- там по каждому производителю будет ограниченный набор моделей, вида:

Код: Выделить всё

317 /* ZTE PRODUCTS */
318 #define ZTE_VENDOR_ID                           0x19d2
319 #define ZTE_PRODUCT_MF622                       0x0001
320 #define ZTE_PRODUCT_MF628                       0x0015
321 #define ZTE_PRODUCT_MF626                       0x0031
322 #define ZTE_PRODUCT_CDMA_TECH                   0xfffe
323 #define ZTE_PRODUCT_AC8710                      0xfff1
324 #define ZTE_PRODUCT_AC2726                      0xfff5
325 #define ZTE_PRODUCT_AC8710T                     0xffff
326 #define ZTE_PRODUCT_MC2718                      0xffe8
327 #define ZTE_PRODUCT_AD3812                      0xffeb
328 #define ZTE_PRODUCT_MC2716                      0xffed
- все остальные USB модемы не будут работать в Linux без установки каких-то специальных (проприетарных?) модулей поддержки.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 08 сен 2012, 10:48

Olej писал(а):Вот теперь мы можем знать, что производитель VID=2340 - это: Qualcomm, Incorporated.
Очень интересно, что как производитель Qualcomm неоднократно встречается в коде option.c :

Код: Выделить всё

304 #define QUALCOMM_VENDOR_ID                      0x05C6

Код: Выделить всё

390 /* 4G Systems products */
391 /* This is the 4G XS Stick W14 a.k.a. Mobilcom Debitel Surf-Stick *
392  * It seems to contain a Qualcomm QSC6240/6290 chipset            */
393 #define FOUR_G_SYSTEMS_PRODUCT_W14              0x9603

Код: Выделить всё

803         { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x6000)}, /* ZTE AC8700 */
804         { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x6613)}, /* Onda H600/ZTE MF330 */
805         { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9000)}, /* SIMCom SIM5218 */
Но здесь у него совсем другой VID=0x05C6 !
Во китаёзы дают чаду :!: :lol: :-o

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 08 сен 2012, 11:10

Olej писал(а):
Olej писал(а):P.S. Посмотрел исходный код модуля option.c ядра 3.5 (http://lxr.free-electrons.com/source/dr ... l/option.c) - такой код производителя 2340 в коде не встречается. :-o
- пробежаться по коду модуля option.c наиболее свежего ядра (3.5, скажем)...
- и составить полный список производителей и моделей всех видов USB модемов, которые будут поддерживаться ядром Linux,
Но это только относительно тех модемов, которые поддерживаются модулем option.c, и который (модуль) создаёт в /dev имена /dev/ttyUSB0, /dev/ttyUSB1, /dev/ttyUSB2.

Другие модемы (может быть более старые модели?), которые поддерживаются другим модулем (usb_storage :?: ), которые отображаются в /dev/ttyACM0, /dev/ttyACM1, /dev/ttyACM2:
dmitriev писал(а):Примечание: Название соединения (sky), имя пользователя (mobile) и пароль (internet), а также порт (/dev/ttyACM0) приведены для моего соединения Skylink и моего модема. Не копируйте их слепо!
Уважаемый dmitriev, покажите (может ещё раз, но я не могу найти) для вашего Skylink модема:

Код: Выделить всё

$ ls /dev/*ACM*

Код: Выделить всё

$ lspci

Код: Выделить всё

modprobe -c | grep -i XXXX | grep YYYY
- где XXXX и YYYY - это те 4-х значные VIP:PID, которые вам выдаст lsusb в виде XXXX:YYYY

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение Olej » 08 сен 2012, 11:23

Olej писал(а): Но здесь у него совсем другой VID=0x05C6 !
Во китаёзы дают чаду :!: :lol: :-o
Но с таким характерным VID мы уже сталкивались в этой теме раньше! - стр. 3 этой же темы:
Olej писал(а): Что это значит? : модуль usb_storage поддерживает (будет загружаться для поддержки) USB устройства с фиктивными VID:PID = 05c6:1000 (нет в природе таких VID:PID!), и оперировать с этим фиктивным USB устройством модуль usb_storage будет как с реальным устройством 16d5:6502 ... если не найдётся раньше модуль, непосредственно поддерживающий устройство 16d5:6502, в нашем случае модуль option.
Т.е. конфигурационным файлом в /etc/usb_modeswitch.d вводятся фактически алиасы (синонимы) для USB устройств!

Код: Выделить всё

bash-4.2$ ls  /etc/usb_modeswitch.d | grep 05c6
05c6:1000:sVe=GT
05c6:1000:sVe=Option
05c6:1000:uMa=AnyDATA
05c6:1000:uMa=DGT
05c6:1000:uMa=Option
05c6:1000:uMa=SAMSUNG
05c6:1000:uMa=SSE
05c6:1000:uMa=Vertex
05c6:2000
05c6:2001
05c6:6503
05c6:f000

Код: Выделить всё

bash-4.2$ cat /etc/usb_modeswitch.d/05c6:f000 
# Siptune LM-75 ("LinuxModem")

TargetVendor=  0x05c6
TargetProduct= 0x9000

MessageContent="5553424312345678000000000000061b000000020000000000000000000000"
Это предположение... :oops: :
- что если взять совершенно левый китайский модем 2340:0004
- и создать для него файл /etc/usb_modeswitch.d/05c6:0004
- где прописать адекватные TargetVendor и TargetProduct, подобно которым функционирует данный левый продукт...
- то он (левый продукт) начнёт распознаваться и поддерживаться как TargetVendor:TargetProduct
- т.е. создастся алиас USB устройства.

Некоторые /etc/usb_modeswitch.d/* настолько любопытные, что просто просятся быть зацитированными ;-) :

Код: Выделить всё

bash-4.2$ cat /etc/usb_modeswitch.d/05c6:2001
# D-Link DWM-162-U5, Micromax MMX 300c

TargetVendor=  0x1e0e
TargetProductList="ce16,cefe"

MessageContent="5553424312345678000000000000061b000000020000000000000000000000"
NeedResponse=1

Код: Выделить всё

bash-4.2$ cat /etc/usb_modeswitch.d/05c6:6503
# AnyDATA APE-540H

TargetVendor=  0x16d5
TargetProduct= 0x6502

MessageContent="5553424312345678000000000000061b000000020000000000000000000000"
Прелюбопытно, правда?

dmitriev
Писатель
Сообщения: 461
Зарегистрирован: 12 янв 2009, 19:36
Контактная информация:

Re: Установка и настройка USB-модемов

Непрочитанное сообщение dmitriev » 08 сен 2012, 16:16

Уважаемый dmitriev, покажите (может ещё раз, но я не могу найти) для вашего Skylink модема:

Код: Выделить всё

[ya@antony ~]$ ls /dev/*ACM*
/dev/ttyACM0

[ya@antony ~]$ lspci
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 03)
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc M76 [Radeon Mobility HD 2600 Series]
01:00.1 Audio device: ATI Technologies Inc RV630/M76 audio device [Radeon HD 2600 Series]
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 01)
05:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
0c:04.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller
0c:04.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller
0c:04.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)
0c:04.3 SD Host controller: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller

[ya@antony ~]$ lsusb
Bus 001 Device 002: ID 04f2:b008 Chicony Electronics Co., Ltd USB 2.0 Camera
Bus 005 Device 002: ID 046d:c00c Logitech, Inc. Optical Wheel Mouse
Bus 007 Device 002: ID 1edf:6004  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

[ya@antony ~]$ modprobe -c | grep -i 1edf | grep 6004
[ya@antony ~]$ 

Ответить

Вернуться в «Железо для Linux»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей