Automatic Activation, Hotplug and UDEV, Configuration
Post Reply
linky
Posts: 4
Joined: 30 Oct 2012, 18:38

Huawei E171 modem switching problem

Post by linky » 30 Oct 2012, 18:56

Recieve: ATI
Recieve: Manufacturer:
Recieve: Model: E171
Recieve: Revision: 21.157.00.01.143
Recieve: IMEI: xxxxxxxxxxxxxx
Recieve: +GCAP: +CGSM,+DS,+ES
Recieve: OK

I was find through USBlyzer

Code: Select all

00000000  55 53 42 43 00 00 00 00 00 00 00 00 00 00 00 11  USBC............
00000010  06 00 00 00 01 00 00 00 00 00 00 00 00 00 00 

Code: Select all

lsusb
Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001
Bus 001 Device 003: ID 12d1:155b
Tray start switching....

Code: Select all

root@stlinux]#/etc/ppp/usb_modeswitch -W -c /etc/ppp/switch/12d1:155b

Reading config file: /etc/ppp/switch/12d1:155b

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

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x155b
TargetVendor=   0x12d1
TargetProduct=  0x1506
TargetClass=    not set
TargetProductList=""

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

InquireDevice enabled (default)
Success check disabled
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 004 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 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
  searching devices, found USB ID 1d6b:0002
 No devices in target mode or class found
Looking for default devices ...
  searching devices, found USB ID 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
   found matching product ID
   adding device
  searching devices, found USB ID 1d6b:0002
 Found device in default mode, class or configuration (1)
Accessing device 004 on bus 001 ...
Getting the current device configuration ...
 OK, got current device configuration (1)
Using interface number 0
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:
   Model String: Mass Storage
Revision String: 2.31
-------------------------

USB description data (for identification)
-------------------------
Manufacturer:
     Product: Mobile Connect
  Serial No.: not provided
-------------------------
Setting up communication with interface 0
Using endpoint 0x01 for message sending ...
Trying to send message 1 to endpoint 0x01 ...
USB error: error reaping URB: No such device
 Device seems to have vanished right after sending. Good.
 Device is gone, skipping any further commands
-> Run lsusb to note any changes. Bye.
After that I see

Code: Select all

lsusb
Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001
Bus 001 Device 003: ID 12d1:1506
But I didn't see any port

Code: Select all

<4>usb 1-1: usbfs: process 1335 (usb_modeswitch) did not claim interface 0 befor                                                                                                                                                              e use
<6>usb 1-1: USB disconnect, address 2
<6>usb 1-1: new high speed USB device using stm-ehci and address 3
<6>usb 1-1: configuration #1 chosen from 1 choice
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usb-storage
<6>scsi2 : SCSI emulation for USB Mass Storage devices
<7>usb-storage: device found at 3
<7>usb-storage: waiting for device to settle before scanning
<4>[usb_probe_interface]drive name=usb-storage
<6>scsi3 : SCSI emulation for USB Mass Storage devices
<7>usb-storage: device found at 3
<7>usb-storage: waiting for device to settle before scanning
<5>scsi 2:0:0:0: CD-ROM                     Mass Storage     2.31 PQ: 0 ANSI: 2
<7>usb-storage: device scan complete
<5>scsi 3:0:0:0: Direct-Access              SD Storage       2.31 PQ: 0 ANSI: 2
<7>usb-storage: device scan complete
<5>sd 3:0:0:0: [sda] Attached SCSI removable disk
[root@stlinux]#
[root@stlinux]#dmesg | grep ttyUSB
[root@stlinux]#
I was add 12d1:1506 to option.ko

Any idea?
Thanks

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

Re: Huawei E171 modem switching problem

Post by Josh » 31 Oct 2012, 01:15

If you run manually, try to add the -I parameter.

linky
Posts: 4
Joined: 30 Oct 2012, 18:38

Re: Huawei E171 modem switching problem

Post by linky » 31 Oct 2012, 19:52

Code: Select all

[root@stlinux]#/etc/ppp/usb_modeswitch -I -W -c /etc/ppp/switch/12d1:155b

Reading config file: /etc/ppp/switch/12d1:155b

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

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x155b
TargetVendor=   0x12d1
TargetProduct=  0x1506
TargetClass=    not set
TargetProductList=""

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

InquireDevice disabled
Success check disabled
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 006 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 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
  searching devices, found USB ID 1d6b:0002
 No devices in target mode or class found
Looking for default devices ...
  searching devices, found USB ID 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
   found matching product ID
   adding device
  searching devices, found USB ID 1d6b:0002
 Found device in default mode, class or configuration (1)
Accessing device 006 on bus 001 ...
Getting the current device configuration ...
 OK, got current device configuration (1)
Using interface number 0
Using endpoints 0x01 (out) and 0x81 (in)

USB description data (for identification)
-------------------------
Manufacturer:
     Product: Mobile Connect
  Serial No.: not provided
-------------------------
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 ...
USB error: error reaping URB: No such device
 Device seems to have vanished right after sending. Good.
 Device is gone, skipping any further commands
-> Run lsusb to note any changes. Bye.
Still haven't ttyUSB port

linky
Posts: 4
Joined: 30 Oct 2012, 18:38

Re: Huawei E171 modem switching problem

Post by linky » 31 Oct 2012, 19:56

Aslo I try without -I
/etc/ppp/usb_modeswitch -W -c /etc/ppp/switch/12d1:155b

Code: Select all

Reading config file: /etc/ppp/switch/12d1:155b

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

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x155b
TargetVendor=   0x12d1
TargetProduct=  0x1506
TargetClass=    not set
TargetProductList=""

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

InquireDevice enabled (default)
Success check disabled
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 004 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 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
  searching devices, found USB ID 1d6b:0002
 No devices in target mode or class found
Looking for default devices ...
  searching devices, found USB ID 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
   found matching product ID
   adding device
  searching devices, found USB ID 1d6b:0002
 Found device in default mode, class or configuration (1)
Accessing device 004 on bus 001 ...
Getting the current device configuration ...
 OK, got current device configuration (1)
Using interface number 0
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:
   Model String: Mass Storage
Revision String: 2.31
-------------------------

USB description data (for identification)
-------------------------
Manufacturer:
     Product: Mobile Connect
  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: No such device
 Could not reset endpoint (probably harmless): -19
Resetting message endpoint 0x01
USB error: could not clear/halt ep 1: No such device
 Could not reset endpoint (probably harmless): -19
USB error: could not release intf 0: No such device
 Device is gone, skipping any further commands
-> Run lsusb to note any changes. Bye.

linky
Posts: 4
Joined: 30 Oct 2012, 18:38

Re: Huawei E171 modem switching problem

Post by linky » 02 Nov 2012, 08:43

The solution is found :!:

Send:AT ^ SETPORT?
Recieve: ^SETPORT:A1,1,2
Recieve: OK

Send:AT ^ GETPORTMODE
Recieve: ^GETPORTMODE: TYPE: WCDMA: ,MDM:0,PCUI:1
Recieve: OK

Code: Select all

[root@stlinux]#/etc/ppp/usb_modeswitch -I -W -c /etc/ppp/switch/12d1:155b

Reading config file: /etc/ppp/switch/12d1:155b

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

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x12d1
DefaultProduct= 0x155b
TargetVendor=   0x12d1
TargetProduct=  0x1506
TargetClass=    not set
TargetProductList=""

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

InquireDevice disabled
Success check disabled
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 002 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 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
  searching devices, found USB ID 1d6b:0002
 No devices in target mode or class found
Looking for default devices ...
  searching devices, found USB ID 1d6b:0001
  searching devices, found USB ID 12d1:155b
   found matching vendor ID
   found matching product ID
   adding device
  searching devices, found USB ID 1d6b:0002
 Found device in default mode, class or configuration (1)
Accessing device 002 on bus 001 ...
Getting the current device configuration ...
 OK, got current device configuration (1)
Using interface number 0
Using endpoints 0x01 (out) and 0x81 (in)

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


[root@stlinux]#dmesg | tail -n40
<4>save exit: isCheckpointed 1
<4>smart_ioctl------------------------->set handle
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<4>save exit: isCheckpointed 1
<6>usb 1-1: new high speed USB device using stm-ehci and address 2
<6>usb 1-1: configuration #1 chosen from 1 choice
<4>[usb_probe_interface]drive name=usb-storage
<6>scsi0 : SCSI emulation for USB Mass Storage devices
<7>usb-storage: device found at 2
<7>usb-storage: waiting for device to settle before scanning
<4>[usb_probe_interface]drive name=usb-storage
<6>scsi1 : SCSI emulation for USB Mass Storage devices
<7>usb-storage: device found at 2
<7>usb-storage: waiting for device to settle before scanning
<5>scsi 0:0:0:0: CD-ROM                     Mass Storage     2.31 PQ: 0 ANSI: 2
<7>usb-storage: device scan complete
<5>scsi 1:0:0:0: Direct-Access              SD Storage       2.31 PQ: 0 ANSI: 2
<5>sd 1:0:0:0: [sda] Attached SCSI removable disk
<7>usb-storage: device scan complete
<6>usb 1-1: USB disconnect, address 2
<6>usb 1-1: new high speed USB device using stm-ehci and address 3
<6>usb 1-1: configuration #1 chosen from 1 choice
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=usbserial_generic
<4>[usb_probe_interface]drive name=option
<6>option 1-1:1.0: GSM modem (1-port) converter detected
<6>usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
<4>[usb_probe_interface]drive name=option
<6>option 1-1:1.1: GSM modem (1-port) converter detected
<6>usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
<4>[usb_probe_interface]drive name=option
<6>option 1-1:1.2: GSM modem (1-port) converter detected
<6>usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
[root@stlinux]#

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

Re: Huawei E171 modem switching problem

Post by Josh » 02 Nov 2012, 09:43

This is a new device which was not known to usb_modeswitch before.

If you follow these steps you can make it work automatically (assuming the full usb_modeswitch package is installed):

1. Create a file named "12d1:155b" in "/etc/usb_modeswitch.d" and fill it with this content:

Code: Select all

# Huawei E171

TargetVendor=  0x12d1
TargetProduct= 0x1506

MessageContent="55534243123456780000000000000011062000000100000000000000000000"
2. Duplicate one of the existing ZTE lines in "/lib/udev/rules.d/40-usb_modeswitch.rules" and edit the new line to reflect the product ID of your device (... ATTRS{idProduct}=="1542" ...).

Note: the target ID may be different with this switching command (which is recommended for all recent Huawei devices) so you might have to re-edit the config file.

Post Reply