Hi, My Huawei E220 is definitively dead, so I bought the ZTE which is supposed to work. It allowed me to test why usb_modeswitch stop in the middle. I also updated usb-modeswitch from 1.1.2-3 to 1.1.3-1, and usb-modeswitch-data from 20100418-1 to 20100623-1. The usb-modeswitch Squeeze Debian package is dependent to tcl or tclsh packages without a version number. In my Squeeze EeePC I have tcl8.3 which provided tclsh, and the "/lib/udev/usb_modeswitch" script doesn't work with tcl8.3. After installing the tcl package which depends on the tcl8.4 package logs were filled : USB_ModeSwitch log from Tue Jul 20 19:13:08 CEST 2010 Using global config file: /etc/usb_modeswitch.conf raw args from udev: /1-2:1.0 Bus ID for device not given by udev. Trying to determine it from kernel name (1-2:1.0) ... USB dir exists: /sys/bus/usb/devices/1-2 Warning: USB attribute "serial" not found. ---------------- USB values from sysfs: manufacturer ZTE, Incorporated product ZTE CDMA Technologies MSM serial ---------------- SCSI attributes not needed, moving on checking config: /etc/usb_modeswitch.d/19d2:2000 ! matched, now switching (running command: /usr/sbin/usb_modeswitch -I -W -c /etc/usb_modeswitch.d/19d2:2000) verbose output of usb_modeswitch: -------------------------------- usb_set_debug: Setting debugging level to 15 (on) usb_os_find_busses: Found 005 usb_os_find_busses: Found 004 usb_os_find_busses: Found 003 usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 004 on 001 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device Reading config file: /etc/usb_modeswitch.d/19d2:2000 * usb-modeswitch: handle USB devices with multiple modes * Version 1.1.3 (C) Josua Dietze 2010 * Based on libusb0 (0.1.12 and above) ! PLEASE REPORT NEW CONFIGURATIONS ! DefaultVendor= 0x19d2 DefaultProduct= 0x2000 TargetVendor= 0x19d2 TargetProduct= not set TargetClass= not set TargetProductList="0001,0002,0015,0016,0017,0031,0037,0052,0055,0063,0064,0128" DetachStorageOnly=0 HuaweiMode=0 SierraMode=0 SonyMode=0 GCTMode=0 MessageEndpoint= not set MessageContent="5553424312345678000000000000061b000000020000000000000000000000" NeedResponse=1 ResponseEndpoint= not set Interface=0x00 InquireDevice disabled Success check enabled, max. wait time 20 seconds System integration mode enabled Looking for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 19d2:2000 found matching vendor ID searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 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 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 19d2:2000 found matching vendor ID found matching product ID adding device searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Found devices in default mode or class (1) Accessing device 004 on bus 001 ... Using endpoints 0x01 (out) and 0x81 (in) USB description data (for identification) ------------------------- Manufacturer: ZTE, Incorporated Product: ZTE CDMA Technologies MSM 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 Reading the response to the message (CSW) ... OK, response successfully read (13 bytes). Resetting response endpoint 0x81 Resetting message endpoint 0x01 Checking for mode switch (max. 20 times, once per second) ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Original device still present after the timeout Mode switch most likely failed. Bye. fail: -------------------------------- (end of usb_modeswitch output) All done, exiting The switch has not be done with the file "/etc/usb_modeswitch.d/19d2:2000" of package "usb-modeswitch-data" version 20100623-1, the file contains: DefaultVendor= 0x19d2 DefaultProduct= 0x2000 TargetVendor= 0x19d2 TargetProductList="0001,0002,0015,0016,0017,0031,0037,0052,0055,0063,0064,0128" MessageContent="5553424312345678000000000000061b000000020000000000000000000000" NeedResponse=1 CheckSuccess=20 I test with the file of "usb-modeswitch-data" version 20100418-1 DefaultVendor= 0x19d2 DefaultProduct= 0x2000 TargetVendor= 0x19d2 TargetProductList="0001,0002,0015,0016,0017,0031,0037,0052,0055,0063" CheckSuccess=20 MessageContent="55534243123456782000000080000c85010101180101010101000000000000" And the switch went well : USB_ModeSwitch log from Tue Jul 20 19:18:32 CEST 2010 Using global config file: /etc/usb_modeswitch.conf raw args from udev: /1-2:1.0 Bus ID for device not given by udev. Trying to determine it from kernel name (1-2:1.0) ... USB dir exists: /sys/bus/usb/devices/1-2 Warning: USB attribute "serial" not found. ---------------- USB values from sysfs: manufacturer ZTE, Incorporated product ZTE CDMA Technologies MSM serial ---------------- SCSI attributes not needed, moving on checking config: /etc/usb_modeswitch.d/19d2:2000 ! matched, now switching (running command: /usr/sbin/usb_modeswitch -I -W -c /etc/usb_modeswitch.d/19d2:2000) verbose output of usb_modeswitch: -------------------------------- usb_set_debug: Setting debugging level to 15 (on) usb_os_find_busses: Found 005 usb_os_find_busses: Found 004 usb_os_find_busses: Found 003 usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 005 on 001 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device Reading config file: /etc/usb_modeswitch.d/19d2:2000 * usb-modeswitch: handle USB devices with multiple modes * Version 1.1.3 (C) Josua Dietze 2010 * Based on libusb0 (0.1.12 and above) ! PLEASE REPORT NEW CONFIGURATIONS ! DefaultVendor= 0x19d2 DefaultProduct= 0x2000 TargetVendor= 0x19d2 TargetProduct= not set TargetClass= not set TargetProductList="0001,0002,0015,0016,0017,0031,0037,0052,0055,0063" DetachStorageOnly=0 HuaweiMode=0 SierraMode=0 SonyMode=0 GCTMode=0 MessageEndpoint= not set MessageContent="55534243123456782000000080000c85010101180101010101000000000000" NeedResponse=0 ResponseEndpoint= not set Interface=0x00 InquireDevice disabled Success check enabled, max. wait time 20 seconds System integration mode enabled Looking for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 19d2:2000 found matching vendor ID searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 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 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 19d2:2000 found matching vendor ID found matching product ID adding device searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Found devices in default mode or class (1) Accessing device 005 on bus 001 ... USB description data (for identification) ------------------------- Manufacturer: ZTE, Incorporated Product: ZTE CDMA Technologies MSM 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: could not clear/halt ep 0: No such file or directory USB error: could not claim interface 0: No such device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device usb_os_find_devices: Found 001 on 005 usb_os_find_devices: Found 001 on 004 usb_os_find_devices: Found 001 on 003 usb_os_find_devices: Found 001 on 002 usb_os_find_devices: Found 006 on 001 usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 16 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device error obtaining child information: Inappropriate ioctl for device USB error: error sending control message: Connection timed out Error: could not get description string "manufacturer" USB error: error sending control message: Connection timed out Error: could not get description string "product" USB error: error sending control message: Connection timed out Error: could not get description string "serial number" OK, message successfully sent Resetting response endpoint 0x00 Error resetting endpoint: -2 Resetting message endpoint 0x01 Checking for mode switch (max. 20 times, once per second) ... Waiting for original device to vanish ... Waiting for original device to vanish ... Waiting for original device to vanish ... Original device can't be accessed anymore. Good. Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Searching for target devices ... searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 1d6b:0001 searching devices, found USB ID 19d2:0052 found matching vendor ID found matching product ID from list searching devices, found USB ID eb1a:2761 searching devices, found USB ID 0951:1606 searching devices, found USB ID 1d6b:0002 Found target device 006 on bus 001 Target device description data ------------------------- Manufacturer: Product: Serial No.: ------------------------- Found correct target device Mode switch succeeded. Bye. ok:19d2:0052 -------------------------------- (end of usb_modeswitch output) Driver module is "option", ID path is /sys/bus/usb-serial/drivers/option1 Now checking for newly created serial devices ... new serial devices found, driver has bound Checking for AVOID_RESET_QUIRK attribute AVOID_RESET_QUIRK activated All done, exiting Thank you for your time and your help. Do you notify the Debian maintainer for dependence of tcl8.4? I'm going to test your new version of usb-modeswitch-data Regards. |