- ainda estou trabalhando para obter atualizações com isso -
Eu tenho um Alcatel X230D fornecido pela O2. É um modem USB 3G.
Tem as seguintes credenciais em lsusb:
Bus 003 Device 003: ID 1bbb:f017 T & A Mobile Phones
Ao seguir / var / log / syslog, vejo o seguinte:
usb 3-2: new high-speed USB device number 5 using xhci_hcd
usb 3-2: New USB device found, idVendor=1bbb, idProduct=f017
usb 3-2: New USB device strings: Mfr=3, Product=2, SerialNumber=4
usb 3-2: Product HSPA Data Card
usb 3-2: Manufacturer: USBModem
usb 3-2: SerialNumber: 1234567890ABCDEF
scsi9: usb-storage 3-2:1.0
mtp-probe: checking bus 3, device 5: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2
mtp-probe: bus: 3, device: 5 was not an MTP device
kernel: [xxxxx.xxxxxx] scsi 9:0:0:0: Direct-Access ALCATEL Mass Storage 2.31 PQ: 0 ANSI: 2
kernel: [xxxxx.xxxxxx] scsi 9:0:0:1: CD-ROM ALCATEL Mass Storage 2.31 PQ: 0 ANSI: 2
kernel: [xxxxx.xxxxxx] sd 9:0:0:0: Attached scsi generic sg1 type 0
kernel: [xxxxx.xxxxxx] sd 9:0:0:0: [sdb] Attached SCSI removable disk
kernel: [xxxxx.xxxxxx] sr0: scsi-1 drive
kernel: [xxxxx.xxxxxx] sr 9:0:0:1: Attached scsi CD-ROM sr0
kernel: [xxxxx.xxxxxx] sr 9:0:0:1: Attached scsi generic sg2 type 5
usb_modeswitch: switching device 1bbb:f017 on 003/005
Eu tentei seguir esta sugestão: link que não fez nada. Eu tentei usar as versões "Binary Free" e AMD64 do script no link , que identificam o "HSPA Data Card" e ambos os estados "Falha ao conectar".
Eu liguei o registro avançado em /etc/usb_modeswitch.conf (EnableLogging = 1)
Os detalhes pertinentes (acredito) estão aqui:
Extracting config 1bbb:f017 from collection /usb/share/usb_modeswitch/configPack.tar.gz
config: TargetVendor set to 1bbb
config: TargetProduct set to 0017
Driver module is "option", ID path is /sys/bus/usb-serial/drivers/option1
! matched, now switching
Command to be run:
/usr/sbin/usb_modeswitch -I -W -D -s 20 -c /run/usb_modeswitch/current_cfg -u 1 -v 1bbb -p f017 2>&1
<SNIP>
* usb_modeswitch: handle USB devices with multiple modes
* Version 1.2.3 (C) Josua Dietze 2012
* Based on libusb0 (0.1.12 and above)
DefaultVendor= 0x1bbb
DefaultProduct= 0xf017
TargetVendor= 0x1bbb
TargetProduct= 0x0017
TargetClass= not set
TargetProductList=""
<SNIP>
Looking for target devices ...
searching devices, found USB ID 1bbb:f017
found matching vendor ID
No devices in target mode or class found
Looking for default devices ...
searching devices, found USB ID 1bbb:f017
found matching vendor ID
found matching product ID
adding device
Found device in default mode, class or configuration (1)
Accessing device 005 on bus 003
Skipping the check for the current configuration
using first interface: 0x00
Using endpoints 0x01 (out) and 0x81 (in)
<SNIP>
Looking for active driver ...
OK, driver found ("usb-storage")
OK, driver "usb-storage" detached
Setting up communication with interface 0
Using endpoint 0x01 for message sending
Trying to send message 1 to endpoint 0x01
OK, message successfully sent
Resetting response endpoint 0x81
Resetting message endpoint 0x01
Checking for mode switch (max. 20 times, once per second) ...
Searching for target devices ...
searching devices, found USB ID 1bbb:f017
found matching vendor ID
Searching for target devices ...
searching devices, found USB ID 1bbb:f017
found matching vendor ID
<SNIP>
Searching for target devices ...
searching devices, found USB ID 1bbb:f017
found matching vendor ID
No new devices in target mode or class found
Mode switch has failed. Bye.
Eu notei esta entrada: Alcatel O datacard X500 não reconhecerá no ubuntu 12.04 usando xhci , o que sugere que pode haver um problema com o xHCI; no entanto, diferentemente dessa pessoa, não consigo desativar o xHCI em minhas bios no meu Acer V5-171.
Então ... Eu fiz mais algumas pesquisas depois de postar isso, e encontrei este link: link
Encontrei uma máquina Windows XP adequada, executei a aplicação Sniff USB mencionada nessa página e (eventualmente - eu irei postar em algum lugar) obtive esses dados:
[196 ms] >>> URB 5 going down >>>
-- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER:
PipeHandle = 864fedf4 [endpoint 0x00000001]
TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK)
TransferBufferLength = 0000001f
TransferBuffer = f7911184
TransferBufferMDL = 00000000
00000000: 55 53 42 43 78 56 34 12 01 00 00 00 80 00 06 06
00000010: f5 04 02 52 70 00 00 00 00 00 00 00 00 00 00
UrbLink = 00000000
De acordo com este guia: link , você aceita valor do ponto final PipeHandle, e esse é o valor MessageEndpoint (0x01) mais o valor longo após TransferBufferMDL que é o MessageContent.
Isso me dá uma entrada para usb_modeswitch.conf:
DefaultVendor = 0x1bbb
DefaultProduct = 0xf017
MessageEndpoint = 0x01
MessageContent = 55534243785634120100000080000606f50402527000000000000000000000
No entanto, rodando o sudo usb_modeswitch -c usb_modeswitch.conf eu recebo
Looking for default devices ...
found matching product ID
adding device
Found device in default mode, class or configuration (1)
Accessing device 023 on bus 003 ...
Getting the current device configuration ...
OK, got current device configuration (1)
Using first interface: 0x00
Using endpoints 0x01 (out) and 0x81 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
OK, driver found ("usb-storage")
OK, driver "usb-storage" detached
E lá fica ...
OK ... parece que eu pulei um pouco a arma.
Eu descompactei /usr/share/usb_modeswitch/configPack.tar.gz e atualizei o 1bbb: f017 com as novas configurações. Eu desliguei e conectei novamente o dispositivo, e enquanto demorava um pouco para aparecer, eventualmente ... funcionou! Então, vou preencher um bug com o projeto USB_ModeSwitch para adicionar essa nova mensagem à sua distribuição.
Atualize depois de enviar o bug para o USB_ModeSwitch. Acontece que tudo isso é inútil. O arquivo de configuração existente funciona, mas você precisa executá-lo manualmente algumas vezes. Estou apenas esperando o feedback dos caras do USB_ModeSwitch para obter algumas idéias para consertar isso!