Automatic Activation, Hotplug and UDEV, Configuration
Post Reply
miru
Posts: 3
Joined: 25 Nov 2011, 05:08

E173

Post by miru » 25 Nov 2011, 05:22

I have HUAWEI E173 modem from zain. (Model : E173u-1)

I think, I was failed on usb_modeswitch.

this is 3g-modem's vendor and product id

Code: Select all

bash-3.00# lsusb
Bus 001 Device 015: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800 (HSPA modem)
And, this I used this data.

Code: Select all

DefaultVendor= 0x12d1
DefaultProduct=0x1446
                     
TargetVendor=  0x12d1
TargetProductList="1001,1406,140b,140c,1412,141b,1433,14ac,1506"
                                                                
CheckSuccess=20                                                      
               
MessageContent="55534243123456780000000000000011062000000100000000000000000000"
this is result of usb_modeswitch!

Code: Select all

bash-3.00# usb_modeswitch -W -c /1446

Reading config file: /1446

 * usb_modeswitch: handle USB devices with multiple modes
 * Version 1.2.0 (C) Josua Dietze 2011
 * Based on libusb0 (0.1.12 and above)

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x1446
TargetVendor=   0x12d1
TargetProduct=  not set
TargetClass=    not set
TargetProductList="1001,1406,140b,140c,1412,141b,1433,14ac,1506"

DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
QisdaMode=0
GCTMode=0
KobilMode=0
SequansMode=0
MobileActionMode=0
CiscoMode=0
MessageEndpoint=  not set
MessageContent="55534243123456780000000000000011062000000100000000000000000000"
NeedResponse=0
ResponseEndpoint= not set

InquireDevice enabled (default)
Success check enabled, max. wait time 20 seconds
System integration mode disabled


usb_set_debug: Setting debugging level to 15 (on)
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 015 on 001
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
Looking for target devices ...
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1446
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 No devices in target mode or class found
Looking for default devices ...
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1446
   found matching vendor ID
   found matching product ID
   adding device
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Found devices in default mode, class or configuration (1)
Accessing device 015 on bus 001 ...
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

SCSI inquiry data (for identification)
-------------------------
  Vendor String: HUAWEI  
   Model String: Mass Storage    
Revision String: 2.31
-------------------------

USB description data (for identification)
-------------------------
Manufacturer: HUAWEI Technology
     Product: HUAWEI Mobile
  Serial No.: not provided
-------------------------
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
USB error: could not clear/halt ep 129: Protocol error
 Could not reset endpoint (probably harmless): -71
Resetting message endpoint 0x01
USB error: could not clear/halt ep 1: Protocol error
 Could not reset endpoint (probably harmless): -71
USB error: could not release intf 0: No such device
 Device is gone, skipping any further commands

Checking for mode switch (max. 20 times, once per second) ...
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 Searching for target devices ...
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 016 on 001
skipping descriptor 0xB
skipped 1 class/vendor specific endpoint descriptors
skipped 3 class/vendor specific interface descriptors
usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000
 No new devices in target mode or class found

Mode switch has failed. Bye.
this is my kernel version.

Code: Select all

 
bash-3.00# uname -r
2.6.23.17_stm23_A25C-SAT7111_7111-STSDK
How can I using this modem? T.T

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 26 Nov 2011, 00:29

Fortunately, this is easy.

Just add "1436" to the TargetProductList in your file.

Then move your "1446" file to /etc/usb_modeswitch.d but be sure to rename it to "12d1:1446".

This should make everything working automatically. You have the usb-modeswitch-data package installed, right?


miru
Posts: 3
Joined: 25 Nov 2011, 05:08

Post by miru » 28 Nov 2011, 04:51

Josh wrote:Fortunately, this is easy.

Just add "1436" to the TargetProductList in your file.

Then move your "1446" file to /etc/usb_modeswitch.d but be sure to rename it to "12d1:1446".

This should make everything working automatically. You have the usb-modeswitch-data package installed, right?
I think it seems to working.

Code: Select all

bash-3.00# usb_modeswitch -W -c /etc/usb_modeswitch.d/12d1\:1446 

Reading config file: /etc/usb_modeswitch.d/12d1:1446

 * usb_modeswitch: handle USB devices with multiple modes
 * Version 1.2.0 (C) Josua Dietze 2011
 * Based on libusb0 (0.1.12 and above)

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x1446
TargetVendor=   0x12d1
TargetProduct=  not set
TargetClass=    not set
TargetProductList="1001,1406,140b,140c,1412,141b,1433,14ac,1506,1436"

.....


usb_os_find_devices: Found 003 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
  searching devices, found USB ID 0000:0000
  searching devices, found USB ID 12d1:1436
   found matching vendor ID
   found matching product ID from list
  searching devices, found USB ID 05e3:0608
  searching devices, found USB ID 0000:0000

Found target device, now opening

Found target device 012 on bus 001

Target device description data
-------------------------
Manufacturer: HUAWEI Technology
     Product: HUAWEI Mobile
  Serial No.: not provided
-------------------------
 Found correct target device

Mode switch succeeded. Bye.
this is right?

But, the result was same before using usb_modeswitch.

Code: Select all

bash-3.00# cat /var/log/messages
Jan  1 01:20:05 SRT user.info kernel: usb 1-1.1: USB disconnect, address 10
Jan  1 01:20:15 SRT user.info kernel: usb 1-1.1: new high speed USB device using stm-ehci and address 11
Jan  1 01:20:15 SRT user.info kernel: usb 1-1.1: configuration #1 chosen from 1 choice
Jan  1 01:20:15 SRT user.info kernel: scsi12 : SCSI emulation for USB Mass Storage devices
Jan  1 01:20:15 SRT user.debug kernel: usb-storage: device found at 11
Jan  1 01:20:15 SRT user.debug kernel: usb-storage: waiting for device to settle before scanning
Jan  1 01:20:15 SRT user.info kernel: scsi13 : SCSI emulation for USB Mass Storage devices
Jan  1 01:20:15 SRT user.debug kernel: usb-storage: device found at 11
Jan  1 01:20:15 SRT user.debug kernel: usb-storage: waiting for device to settle before scanning
Jan  1 01:20:20 SRT user.notice kernel: scsi 12:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31 PQ: 0 ANSI: 2
Jan  1 01:20:20 SRT user.debug kernel: usb-storage: device scan complete
Jan  1 01:20:20 SRT user.notice kernel: scsi 13:0:0:0: Direct-Access     HUAWEI   SD Storage       2.31 PQ: 0 ANSI: 2
Jan  1 01:20:20 SRT user.notice kernel: sd 13:0:0:0: [sda] Attached SCSI removable disk
Jan  1 01:20:20 SRT user.debug kernel: usb-storage: device scan complete
Jan  1 01:21:53 SRT user.warn kernel: usb 1-1.1: usbfs: process 1512 (usb_modeswitch) did not claim interface 0 before use
Jan  1 01:21:53 SRT user.info kernel: usb 1-1.1: USB disconnect, address 11
Jan  1 01:21:57 SRT user.info kernel: usb 1-1.1: new high speed USB device using stm-ehci and address 12
Jan  1 01:21:57 SRT user.info kernel: usb 1-1.1: configuration #1 chosen from 1 choice
Jan  1 01:21:57 SRT user.info kernel: scsi14 : SCSI emulation for USB Mass Storage devices
Jan  1 01:21:57 SRT user.debug kernel: usb-storage: device found at 12
Jan  1 01:21:57 SRT user.debug kernel: usb-storage: waiting for device to settle before scanning
Jan  1 01:21:57 SRT user.info kernel: scsi15 : SCSI emulation for USB Mass Storage devices
Jan  1 01:21:57 SRT user.debug kernel: usb-storage: device found at 12
Jan  1 01:21:57 SRT user.debug kernel: usb-storage: waiting for device to settle before scanning
Jan  1 01:22:02 SRT user.notice kernel: scsi 14:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31 PQ: 0 ANSI: 2
Jan  1 01:22:02 SRT user.debug kernel: usb-storage: device scan complete
Jan  1 01:22:02 SRT user.notice kernel: scsi 15:0:0:0: Direct-Access     HUAWEI   SD Storage       2.31 PQ: 0 ANSI: 2
Jan  1 01:22:03 SRT user.notice kernel: sd 15:0:0:0: [sda] Attached SCSI removable disk
Jan  1 01:22:03 SRT user.debug kernel: usb-storage: device scan complete
I'm using this on embedded machine.

And, I was insert modules cdc-acm, usb-serial and option.

Code: Select all

## part of dmesg
drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.1
There are no usb serial devices like /dev/ttyUSB0 after usb_modeswitch.

Could you tell me what can I do?

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 28 Nov 2011, 09:06

Ah, I thought you were on a desktop system where the usb_modeswitch package would bind the driver automatically ...

You can do the following, provided your kernel version is higher than 2.6.26:

Code: Select all

# modprobe -v option
# echo "12d1 1436" > /sys/bus/usb-serial/drivers/option1/new_id
If your kernel is older or doesn't have the "option" module, this is the second best way:

Code: Select all

# modprobe usbserial vendor=0x12d1 product=0x1436

miru
Posts: 3
Joined: 25 Nov 2011, 05:08

Post by miru » 29 Nov 2011, 15:29

WOW!!!!

I create a USB Serial!!

I don't know how to thank you. :D

I have one more question.

Code: Select all

 # dmesg | tail
option 1-1.1:1.0: GSM modem (1-port) converter detected
usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1.1:1.1: GSM modem (1-port) converter detected
usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB1
option 1-1.1:1.2: GSM modem (1-port) converter detected
usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB2
option 1-1.1:1.3: GSM modem (1-port) converter detected
usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB3
option 1-1.1:1.4: GSM modem (1-port) converter detected
usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB4

Code: Select all

 # ls -al /dev/ttyUSB* 
crw-rw----    1 root     root     188,   0 Jan  1 00:29 /dev/ttyUSB0
crw-rw----    1 root     root     188,   1 Jan  1 00:04 /dev/ttyUSB1
crw-rw----    1 root     root     188,   2 Jan  1 00:28 /dev/ttyUSB2
crw-rw----    1 root     root     188,   3 Jan  1 00:29 /dev/ttyUSB3
crw-rw----    1 root     root     188,   4 Jan  1 00:29 /dev/ttyUSB4
Is that right?!!

and I tested with minicom.

Code: Select all

 # minicom -D/dev/ttyUSB0 -o -l

Welcome to minicom 2.5

OPTIONS: I18n 
Compiled on Nov 29 2011, 20:43:51.
Port /dev/ttyUSB0

Press CTRL-A Z for help on special keys

AT
OK
is this modem working?

Other usb-serial(/dev/ttyUSB1, /dev/ttyUSB2, /dev/ttyUSB3, /dev/ttyUSB4) was no response.

Is "/dev/ttyUSB0" real modem? What others are fake? or something?

Josh
Site Admin
Posts: 6593
Joined: 03 Nov 2007, 00:30

Post by Josh » 29 Nov 2011, 17:15

The multiple interfaces of your device can be anything really, their class is 255 which means "vendor-specific".

The manual driver binding method does not make any difference between interfaces, not even between their classes. It binds the driver to all interfaces that are still "unbound". So there is a good chance most of them are not working with the serial protocol, despite the device name they are getting. It's purely a matter of testing which one of them (if any) does accept AT commands.

That said, ports for the actual internet connection usually have an interrupt transfer endpoint. This is true for the vast majority of known modems. Huawei devices provide this port almost always on the first interface.

Sometimes there are other interfaces responding to AT commands as well, but are only usable for diagnostic purposes, e.g. polling the signal quality while connected. There is also the Qualcomm diagnostic protocol which many modems are using. See this page for more information about the various proprietary protocols:
http://blogs.gnome.org/dcbw/2010/04/15/ ... protocols/


Post Reply