|
Activation Codes and Methods, Hardware Details, Sniffing
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 23 Dec 2015, 09:56
Hello,
I cannot get my zte 3g modem work and decided to ask here.
Code: Select all root@bayer:~# lsusb -vvv -d 19d2:1403
Bus 001 Device 002: ID 19d2:1403 ZTE WCDMA Technologies MSM
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x19d2 ZTE WCDMA Technologies MSM
idProduct 0x1403
bcdDevice f0.02
iManufacturer 3 ZTE,Incorporated
iProduct 2 ZTE WCDMA Technologies MSM
iSerial 4 P680A1ZTED010000
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 98
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 1 ZTE Configuration
bmAttributes 0xc0
Self Powered
MaxPower 500mA
Interface Association:
bLength 8
bDescriptorType 11
bFirstInterface 0
bInterfaceCount 2
bFunctionClass 224 Wireless
bFunctionSubClass 1 Radio Frequency
bFunctionProtocol 3 RNDIS
iFunction 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 3 RNDIS
iInterface 0
** UNRECOGNIZED: 05 24 00 10 01
** UNRECOGNIZED: 04 24 02 02
** UNRECOGNIZED: 05 24 01 03 01
** UNRECOGNIZED: 05 24 06 00 01
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 5
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 32
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 32
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Code: Select all T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=19d2 ProdID=1403 Rev=f0.02
S: Manufacturer=ZTE,Incorporated
S: Product=ZTE WCDMA Technologies MSM
S: SerialNumber=P680A1ZTED010000
C: #Ifs= 3 Cfg#= 1 Atr=c0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=e0(wlcon) Sub=01 Prot=03 Driver=(none)
I: If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=(none)
I: If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
Some how it gets bad CDC error message (most probably from cdc_ether module)
Code: Select all [ 2153.391253] usb 1-1: USB disconnect, device number 2
[ 2160.924415] usb 1-1: new high-speed USB device number 4 using ehci-pci
[ 2161.292534] usb 1-1: New USB device found, idVendor=19d2, idProduct=1225
[ 2161.292574] usb 1-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4
[ 2161.292610] usb 1-1: Product: ZTE WCDMA Technologies MSM
[ 2161.292643] usb 1-1: Manufacturer: ZTE,Incorporated
[ 2161.292673] usb 1-1: SerialNumber: P680A1ZTED000000
[ 2161.335930] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 2161.338699] scsi4 : usb-storage 1-1:1.0
[ 2162.352624] scsi 4:0:0:0: CD-ROM CWID USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[ 2162.357503] scsi 4:0:0:1: Direct-Access ZTE MMC Storage 2.31 PQ: 0 ANSI: 2
[ 2162.375170] sr1: scsi-1 drive
[ 2162.377882] sr 4:0:0:0: Attached scsi CD-ROM sr1
[ 2162.379286] sr 4:0:0:0: Attached scsi generic sg2 type 5
[ 2162.380668] sd 4:0:0:1: Attached scsi generic sg3 type 0
[ 2162.402670] sd 4:0:0:1: [sdb] Attached SCSI removable disk
[ 2162.498921] systemd-udevd[5340]: Failed to apply ACL on /dev/sr1: No such file or directory
[ 2162.499004] systemd-udevd[5340]: Failed to apply ACL on /dev/sr1: No such file or directory
[ 2163.832629] usb 1-1: USB disconnect, device number 4
[ 2164.334953] usb 1-1: new high-speed USB device number 5 using ehci-pci
[ 2164.709162] usb 1-1: New USB device found, idVendor=19d2, idProduct=1403
[ 2164.709176] usb 1-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4
[ 2164.709184] usb 1-1: Product: ZTE WCDMA Technologies MSM
[ 2164.709190] usb 1-1: Manufacturer: ZTE,Incorporated
[ 2164.709194] usb 1-1: SerialNumber: P680A1ZTED010000
[ 2164.747362] usb 1-1: bad CDC descriptors
[ 2164.748071] usb-storage 1-1:1.2: USB Mass Storage device detected
[ 2164.748391] scsi5 : usb-storage 1-1:1.2
[ 2165.758721] scsi 5:0:0:0: Direct-Access ZTE MMC Storage 2.31 PQ: 0 ANSI: 2
[ 2165.764443] sd 5:0:0:0: Attached scsi generic sg2 type 0
[ 2165.781727] sd 5:0:0:0: [sdb] Attached SCSI removable disk
I am really stuck and I have no idea what needs to be done. I just tired to switch it but no success. A help will be really appreciated.
-
Josh
- Site Admin
- Posts: 6570
- Joined: 03 Nov 2007, 00:30
Post
by Josh » 23 Dec 2015, 20:16
The modem is already in the switched mode. You can't switch it again.
What happens if you disable mode-switching in /etc/usb_modeswitch.conf ?
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 23 Dec 2015, 20:24
Hello,
I don't have 14.04 installed system with me.
An interesting fact that I can get it work in Ubuntu 12.04. I have done zero configuration but somehow it has been detected as 19d2:1405
here is the output of lsusb
Code: Select all
Bus 001 Device 040: ID 19d2:1405 ZTE WCDMA Technologies MSM
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 2 Communications
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x19d2 ZTE WCDMA Technologies MSM
idProduct 0x1405
bcdDevice f0.02
iManufacturer 4
iProduct 3
iSerial 5
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 103
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 2
bmAttributes 0xc0
Self Powered
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 6 Ethernet Networking
bInterfaceProtocol 0
iInterface 0
CDC Header:
bcdCDC 1.10
CDC Ethernet:
iMacAddress 1 (??)
bmEthernetStatistics 0x00000000
wMaxSegmentSize 8192
wNumberMCFilters 0x0001
bNumberPowerFilters 0
CDC Union:
bMasterInterface 0
bSlaveInterface 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 5
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 32
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 32
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Code: Select all T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 40 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=19d2 ProdID=1405 Rev=f0.02
S: Manufacturer=ZTE,Incorporated
S: Product=ZTE WCDMA Technologies MSM
S: SerialNumber=P680A1ZTED010000
C: #Ifs= 3 Cfg#= 1 Atr=c0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether
I: If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
I: If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
Code: Select all [307257.085015] usb 1-2: new full-speed USB device number 40 using ohci_hcd
[307257.372762] scsi4 : usb-storage 1-2:1.2
[307257.457803] cdc_ether 1-2:1.0: eth1: register 'cdc_ether' at usb-0000:00:06.0-2, CDC Ethernet Device, 00:a0:c6:00:00:00
[307257.459003] usbcore: registered new interface driver cdc_ether
[307258.395143] scsi 4:0:0:0: CD-ROM CWID USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[307258.403111] scsi 4:0:0:1: Direct-Access ZTE MMC Storage 2.31 PQ: 0 ANSI: 2
[307258.434542] sr1: scsi-1 drive
[307258.435613] sr 4:0:0:0: Attached scsi CD-ROM sr1
[307258.436423] sr 4:0:0:0: Attached scsi generic sg2 type 5
[307258.436544] sd 4:0:0:1: Attached scsi generic sg3 type 0
[307258.473860] sd 4:0:0:1: [sdb] Attached SCSI removable disk
Interesting fact that it seems no usb mode switching occurs. No usb mode switch related configuration installed or changed on the system.
I am really confused. I don't get why it is working on an 3 years old system but not working on up2date system. I am complete noob on this matter. I might ask dump questions but still don't get how it gets different product id on different operating systems.
Also one point to mention: 14.04 is virtual machine on windows host, 12.04 is virtual machine on mac host.
-
Josh
- Site Admin
- Posts: 6570
- Joined: 03 Nov 2007, 00:30
Post
by Josh » 23 Dec 2015, 23:41
bayer wrote:I am really confused. I don't get why it is working on an 3 years old system but not working on up2date system. I am complete noob on this matter. I might ask dump questions but still don't get how it gets different product id on different operating systems.
There is in fact a 'secret ingredient' here. This and probably other ZTE devices have something like an 'auto-mode-switch' built in.
On Linux, if plugged in and treated by usb_modeswitch with the standard eject sequence, they reach one mode. If they are plugged in and no action follows, they switch to annother mode after several seconds.
It's hard to say which mode is supported better on the respective system, so this is a somewhat open question.
Now you probably understand why I suggested to disable the mode switching temporarily. Let's see if you reach the mode with product ID 1405 and if it works better.
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 24 Dec 2015, 10:32
Hi Josh,
I have disabled usb_modeswitch by changing parameter from /etc/usb_modeswitch.conf
Code: Select all Configuration for the usb_modeswitch package, a mode switching tool for
# USB devices providing multiple states or modes
#
# Evaluated by the wrapper script /usr/sbin/usb_modeswitch_dispatcher
#
# To enable an option, set it to "1", "yes" or "true" (case doesn't matter)
# Everything else counts as "disable"
# Disable automatic mode switching globally (e.g. to access the original
# install storage)
DisableSwitching=1
# Enable logging (results in a extensive report file in /var/log, named
# "usb_modeswitch_<interface-name>" and probably others
EnableLogging=0
# Optional increase of "delay_use" for the usb-storage driver; there are hints
# that a recent kernel default change to 1 sec. may lead to problems, particu-
# larly with USB 3.0 ports. Set this to at least 3 (seconds) in that case.
# Does nothing if the current system value is same or higher
#SetStorageDelay=4
But it seems has no effect on device behaviour.
Code: Select all [ 1348.253157] usb 1-1: USB disconnect, device number 2
[ 1358.135651] usb 1-1: new high-speed USB device number 3 using ehci-pci
[ 1358.497762] usb 1-1: New USB device found, idVendor=19d2, idProduct=1225
[ 1358.497776] usb 1-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4
[ 1358.497787] usb 1-1: Product: ZTE WCDMA Technologies MSM
[ 1358.497798] usb 1-1: Manufacturer: ZTE,Incorporated
[ 1358.497808] usb 1-1: SerialNumber: P680A1ZTED000000
[ 1358.538377] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 1358.539339] scsi4 : usb-storage 1-1:1.0
[ 1359.103554] usb 1-1: USB disconnect, device number 3
[ 1359.583094] usb 1-1: new high-speed USB device number 4 using ehci-pci
[ 1359.942288] usb 1-1: New USB device found, idVendor=19d2, idProduct=1403
[ 1359.942317] usb 1-1: New USB device strings: Mfr=3, Product=2, SerialNumber=4
[ 1359.942343] usb 1-1: Product: ZTE WCDMA Technologies MSM
[ 1359.942345] usb 1-1: Manufacturer: ZTE,Incorporated
[ 1359.942346] usb 1-1: SerialNumber: P680A1ZTED010000
[ 1359.980128] usb 1-1: bad CDC descriptors
[ 1359.980411] usb-storage 1-1:1.2: USB Mass Storage device detected
[ 1359.980576] scsi5 : usb-storage 1-1:1.2
[ 1360.987071] scsi 5:0:0:0: Direct-Access ZTE MMC Storage 2.31 PQ: 0 ANSI: 2
[ 1360.988379] sd 5:0:0:0: Attached scsi generic sg2 type 0
[ 1361.002725] sd 5:0:0:0: [sdb] Attached SCSI removable disk
Is there any other way to force device to use 1405 as product id? If you suggest something I will be really appreciated.
-
LOM
- Posts: 1404
- Joined: 11 Jul 2012, 15:14
- Location: Koh Samui, TH
Post
by LOM » 24 Dec 2015, 11:45
bayer wrote:Also one point to mention: 14.04 is virtual machine on windows host, 12.04 is virtual machine on mac host.
Your USB host is therefore also virtual hardware emulated in software, probing of your dongle is done by windows and that is why you end up with it in rndis mode.
I have seen a few dmesg logs of 19d2:1403 in the past but never before seen the "bad CDC descriptor" error msg, I can only assume that you get that because of the hardware virtualization.
19d2:1403 (rndis mode) has been proven to work under linux in the past.
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 24 Dec 2015, 14:13
I does make sense. On mac I am using VirtualBox for 12.04 guest. I will try the 14.04 with VirtualBox on windows. I'm gonna share the results.
-
Josh
- Site Admin
- Posts: 6570
- Joined: 03 Nov 2007, 00:30
Post
by Josh » 24 Dec 2015, 16:11
But then you are still running under Windows, and this is what the stick will notice. Windows is always first to handle it unless you are running Linux natively ...
(I did not notice at first that you are on a virtual platform.)
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 24 Dec 2015, 23:21
As you have suggested, Virtualbox didn't change anything. I still don't get how some OS(MacOSX in that case) probes it as 1405 and other probes as 1403. I was thinking both VMWare and VirtualBox install their own USB drivers and virtual environment accesses USB device via this driver and host OS just acts like bridge between virtual environment and device itself. So I haven't installed ZTE windows drivers as a result of this thought. I looked at .inf files of ZTE windows driver which comes installed with the stick. I saw RNDIS ids of 1403 and 1404 but there is no sign related to 1405. Therefore, I don't think installing windows drivers will help. Still do I need to give it a chance? Do you have any further suggestion?
-
LOM
- Posts: 1404
- Joined: 11 Jul 2012, 15:14
- Location: Koh Samui, TH
Post
by LOM » 25 Dec 2015, 05:39
The initial id (virtual cd-rom with windows connection manager) of your dongle is 19d2:1225 and the dongle is autoswitching, doesn't really need usb_modeswitch.
It senses how it gets probed and most likely also senses what the storage driver does to the virtual cd-rom and then decides what mode it should enter, 19d2:1403 Microsoft RNDIS or 19d2:1405 cdc_ether.
Linux and Mac will not probe it like MS Windows does so it will auto switch into 19d2:1405.
Linux has the rndis_host driver and the cdc_ether driver so any of the dongles modes will work, none is better than the other.
MS Windows native ethernet protocol is RNDIS so no driver is needed there, this is the main reason for having the RNDIS mode in the dongle.
Do boot a linux live cd instead of linux in virtualbox and you will see the cdc_ether mode of the dongle.
-
bayer
- Posts: 6
- Joined: 23 Dec 2015, 09:45
Post
by bayer » 25 Dec 2015, 13:31
Thanks for the replies. So it turns out that problem is related to vmware or virtual box. Actually it is not matter of this forum but if you have such experience before, I would like to hear your thoughts.
-
Josh
- Site Admin
- Posts: 6570
- Joined: 03 Nov 2007, 00:30
Post
by Josh » 25 Dec 2015, 15:08
All our thoughts are in the posts above. Boot from a native Linux. There is no known method to override the auto-switch and force the Ethernet mode.
|
|