Большинство современных USB-модемов при подключении к компьютеру эмулируют сетевую карту, что очень удобно в большинстве случаев, однако подобные модемы невозможно использовать совместно с пакетом smstools и инструментов на его основе.
В поисках модема который "по старинке" при подключении эмулирует последовательный порт была найдена недорогая модель DS Telecom DSU7. Однако "из коробки" модем не заработал и пришлось искать решение, которое пусть и не сразу, но было найдено.
Подключать модем мы будем к машине под управлением Ubuntu 18.04. При первом подключении модем в выводе утилиты lsusb виден примерно так:
Bus 002 Device 017: ID 05c6:1000 Qualcomm, Inc. Mass Storage Device
А в выводе утилиты dmesg при подключении модема появляются примерно такие строки:
[Сб апр 6 22:40:32 2019] usb 2-1: new high-speed USB device number 17 using xhci_hcd [Сб апр 6 22:40:33 2019] usb 2-1: New USB device found, idVendor=05c6, idProduct=1000 [Сб апр 6 22:40:33 2019] usb 2-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4 [Сб апр 6 22:40:33 2019] usb 2-1: Product: Qualcomm CDMA Technologies MSM [Сб апр 6 22:40:33 2019] usb 2-1: Manufacturer: Qualcomm, Incorporated [Сб апр 6 22:40:33 2019] usb 2-1: SerialNumber: 351602000025260
Как видим устройство определяется, но не переключается в нужный нам режим модема. За переключение в нужный режим отвечает утилита usb_modeswitch. Однако в данном конкретном случае она не помогает.
Правила для переключения хранятся в архиве /usr/share/usb_modeswitch/configPack.tar.gz. Изучение архива показало что для устройства с идентификатором 05c6:1000 доступно аж 11 вариантов переключения:
- 05c6:1000:sVe=GT
- 05c6:1000:sVe=Option
- 05c6:1000:uMa=AnyDATA
- 05c6:1000:uMa=CELOT
- 05c6:1000:uMa=Co.,Ltd
- 05c6:1000:uMa=DGT
- 05c6:1000:uMa=Option
- 05c6:1000:uMa=SAMSUNG
- 05c6:1000:uMa=SSE
- 05c6:1000:uMa=StrongRising
- 05c6:1000:uMa=Vertex
Судя по логам при подключении модема usb_modeswitch честно перебирает все одиннадцать вариантов, но ни один из них не оказывается подходящим для данного модема. Становится понятно что модемов на данной платформе существует великое множество и далеко не все описания добавлены.
После некоторого времени поиска была найден ещё одна конфигурация. Она оказалась рабочей и потому опишем решение чуть подробнее.
Для начала нужно создать файл "/etc/usb_modeswitch.d/05c6:1000", а ещё лучше "/etc/usb_modeswitch.d/05c6:1000:uMa=Qualcomm" (в этом случае Qualcomm это имя, которое видно в выводе утилиты dmesg в строке с указанием &quuot;Manufacturer:"). Содержимое файла должно иметь вид:
DefaultVendor= 0x05c6 DefaultProduct=0x1000 TargetVendor=0x05c6 TargetProduct=0x6000 MessageContent="5553424312345678000000000000061b000000020000000000000000000000" StandardEject=1
Теперь при подключении модема в dmesg появляются строки:
[Вс апр 7 00:22:42 2019] usb 2-1: new high-speed USB device number 26 using xhci_hcd [Вс апр 7 00:22:42 2019] usb 2-1: New USB device found, idVendor=05c6, idProduct=6000 [Вс апр 7 00:22:42 2019] usb 2-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4 [Вс апр 7 00:22:42 2019] usb 2-1: Product: Qualcomm CDMA Technologies MSM [Вс апр 7 00:22:42 2019] usb 2-1: Manufacturer: Qualcomm, Incorporated [Вс апр 7 00:22:42 2019] usb 2-1: SerialNumber: 351602000025260 [Вс апр 7 00:22:42 2019] option 2-1:1.0: GSM modem (1-port) converter detected [Вс апр 7 00:22:42 2019] usb 2-1: GSM modem (1-port) converter now attached to ttyUSB0 [Вс апр 7 00:22:42 2019] option 2-1:1.1: GSM modem (1-port) converter detected [Вс апр 7 00:22:42 2019] usb 2-1: GSM modem (1-port) converter now attached to ttyUSB1 [Вс апр 7 00:22:42 2019] option 2-1:1.2: GSM modem (1-port) converter detected [Вс апр 7 00:22:42 2019] usb 2-1: GSM modem (1-port) converter now attached to ttyUSB2 [Вс апр 7 00:22:42 2019] option 2-1:1.3: GSM modem (1-port) converter detected [Вс апр 7 00:22:42 2019] usb 2-1: GSM modem (1-port) converter now attached to ttyUSB3 [Вс апр 7 00:22:42 2019] usb-storage 2-1:1.4: USB Mass Storage device detected [Вс апр 7 00:22:42 2019] scsi host3: usb-storage 2-1:1.4 [Вс апр 7 00:22:43 2019] scsi 3:0:0:0: Direct-Access WCDMA MMC Storage 2.31 PQ: 0 ANSI: 2 [Вс апр 7 00:22:43 2019] sd 3:0:0:0: Attached scsi generic sg3 type 0 [Вс апр 7 00:22:43 2019] sd 3:0:0:0: [sdc] Attached SCSI removable disk
В выводе lsusb модем становится виден как:
Bus 002 Device 026: ID 05c6:6000 Qualcomm, Inc. Siemens SG75
А в системе появляются четыре дополнительных последовательных порта (/dev/ttyUSB[0-3]). После этого модем можно использовать как совместно с smstools, так и для подключения к интернету, с использованием Network Manager или без него.
Так же был создан баг в Launchpad и пост на форуме usb_modeswitch. Возможно через какое-то время поддержка данного модема появится в Ubuntu "из коробки".
На этом всё. Приятной работы!
Anonymous 2019-04-07 18:56:59 (#)
А не случалось что такие usb модемы виснут или ещё что?