Activation Codes and Methods, Hardware Details, Sniffing
Post Reply
hsdpafever
Posts: 42
Joined: 05 Jun 2008, 09:52

Vodafone ZTE K5008-Z LTE/4G Info

Post by hsdpafever » 04 Nov 2013, 12:33

This code works for Vodafone ZTE K5008-Z LTE/4G USB Stick

I added "19d2:1032" in the usb_modeswitch.d data folder and it has the following configuration.

###############################################################
# Vodafone (ZTE) K5008-Z
#
# 19d2:1032
#

TargetVendor= 0x19d2
TargetProduct= 0x1032

MessageContent="5553424312345678000000000000061b000000020000000000000000000000"

NeedResponse=1

###############################################################


Here's the USB device info - CDC and RnDIS protocols need to be enabled.

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 4 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=02(comm.) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=19d2 ProdID=1032 Rev=f0.55
S: Manufacturer=Vodafone
S: Product=ZTE WCDMA Technologies MSM
S: SerialNumber=MF823_ZTED000000
C:* #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=06 Prot=00 Driver=cdc_ether
E: Ad=82(I) Atr=03(Int.) MxPS= 16 Ivl=32ms
I: If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=125us

LOM
Posts: 1404
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by LOM » 04 Nov 2013, 14:40

Thanks for the report, this is most likely one of ZTE's new Win8 certified dongles and ZTE has a somewhat unconventional way of switching those.
The dongle will appear for a short time as 19d2:1030 (check your dmesg after hotplugging it) and will after some time (within 10 sec) switch automatically to 19d2:1032 without any help from usb_modeswitch, this will happen on all non-Win8 computers.

The dongle will. when connected to a Win8 computer, detect the way Win8 probes the dongle and will switch it into mbim mode instead.

Can you please verify these 2 id's and possibly also get a device listing for 19d2:1030 during the short time it is present?

bmork
Posts: 167
Joined: 15 Mar 2012, 22:47
Location: Oslo, Norway

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by bmork » 04 Nov 2013, 16:01

LOM wrote:Thanks for the report, this is most likely one of ZTE's new Win8 certified dongles and ZTE has a somewhat unconventional way of switching those.
The dongle will appear for a short time as 19d2:1030 (check your dmesg after hotplugging it) and will after some time (within 10 sec) switch automatically to 19d2:1032 without any help from usb_modeswitch, this will happen on all non-Win8 computers.

The dongle will. when connected to a Win8 computer, detect the way Win8 probes the dongle and will switch it into mbim mode instead.

Can you please verify these 2 id's and possibly also get a device listing for 19d2:1030 during the short time it is present?
It would also be very nice if someone was able to figure out which part of the Windows8 probing that makes these devices stay in MBIM mode. I wonder if that is as simple as sending an MBIM OPEN message within those 10 seconds? In which case it should be possible to fix that by calling mbimcli from an udev rule.

hsdpafever
Posts: 42
Joined: 05 Jun 2008, 09:52

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by hsdpafever » 04 Nov 2013, 19:52

LOM: Yes, you were right. The ProdID does come up as 1030 before "switching" and usb_modeswitch is not required . Here's the screenshot.

$cat /proc/bus/usb/devices
Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 6 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 3
P: Vendor=19d2 ProdID=1030 Rev=f0.55
S: Manufacturer=Vodafone
S: Product=ZTE WCDMA Technologies MSM
S: SerialNumber=MF823_ZTED000000
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
C: #Ifs= 3 Cfg#= 2 Atr=a0 MxPwr=500mA
A: FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
I: If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=
E: Ad=82(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
I: If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=
I: If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I: If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=
E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
C: #Ifs= 2 Cfg#= 3 Atr=a0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=
E: Ad=82(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I: If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=
E: Ad=84(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms


Here's the dmesg.
[ 86.140000] usb 1-1: new high-speed USB device number 2 using ehci-platform
[ 86.450000] scsi0 : usb-storage 1-1:1.0
[ 87.490000] scsi 0:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[ 91.360000] usb 1-1: USB disconnect, device number 2
[ 91.840000] usb 1-1: new high-speed USB device number 3 using ehci-platform
[ 92.030000] cdc_ether 1-1:1.0: usb0: register 'cdc_ether' at usb-ehci-platform-1, CDC Ethernet Device, 36:4b:50:b7:ef:71
[ 92.070000] scsi1 : usb-storage 1-1:1.2
[ 93.070000] scsi 1:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[ 93.080000] scsi 1:0:0:1: Direct-Access Vodafone Storage 2.31 PQ: 0 ANSI: 2
[ 93.090000] sd 1:0:0:1: [sda] Attached SCSI removable disk

bmork
Posts: 167
Joined: 15 Mar 2012, 22:47
Location: Oslo, Norway

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by bmork » 04 Nov 2013, 21:52

hsdpafever wrote:LOM: Yes, you were right. The ProdID does come up as 1030 before "switching" and usb_modeswitch is not required . Here's the screenshot.

$cat /proc/bus/usb/devices
Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 6 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 3
P: Vendor=19d2 ProdID=1030 Rev=f0.55
S: Manufacturer=Vodafone
S: Product=ZTE WCDMA Technologies MSM
S: SerialNumber=MF823_ZTED000000
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
C: #Ifs= 3 Cfg#= 2 Atr=a0 MxPwr=500mA
A: FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
I: If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=
E: Ad=82(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
I: If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=
I: If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I: If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=
E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
C: #Ifs= 2 Cfg#= 3 Atr=a0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=
E: Ad=82(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I: If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=
E: Ad=84(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms


Here's the dmesg.
[ 86.140000] usb 1-1: new high-speed USB device number 2 using ehci-platform
[ 86.450000] scsi0 : usb-storage 1-1:1.0
[ 87.490000] scsi 0:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[ 91.360000] usb 1-1: USB disconnect, device number 2
[ 91.840000] usb 1-1: new high-speed USB device number 3 using ehci-platform
[ 92.030000] cdc_ether 1-1:1.0: usb0: register 'cdc_ether' at usb-ehci-platform-1, CDC Ethernet Device, 36:4b:50:b7:ef:71
[ 92.070000] scsi1 : usb-storage 1-1:1.2
[ 93.070000] scsi 1:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
[ 93.080000] scsi 1:0:0:1: Direct-Access Vodafone Storage 2.31 PQ: 0 ANSI: 2
[ 93.090000] sd 1:0:0:1: [sda] Attached SCSI removable disk
Thanks a lot! That's extremely useful. I haven't seen the full device configuration before. Note that there are 3 different configurations there, where the MBIM one is #2. Cfg #1 has only a use-storage function, and I guess it's possible that the automatic modeswitching is triggered by the usb-storage driver binding to this function? Cfg #3 is unexpected. Wonder what those vendor specific functions are. Serial + QMI maybe? Or just two debug serial ports?

Anyway, it's quite possible that you can switch this device to MBIM mode by simply creating a usb_modeswitch rule for it. Or is that already tried out and failed?

hsdpafever
Posts: 42
Joined: 05 Jun 2008, 09:52

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by hsdpafever » 05 Nov 2013, 14:14

Here's the logread of the modem

kern.info kernel: [ 100.860000] usb 1-1: new high-speed USB device number 2 using ehci-platform
kern.info kernel: [ 101.170000] scsi0 : usb-storage 1-1:1.0
user.notice usb-modeswitch: 1-1:1.0: Manufacturer=Vodafone Product=ZTE_WCDMA_Technologies_MSM Serial=MF823_ZTED000000
kern.notice kernel: [ 102.210000] scsi 0:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
kern.info kernel: [ 106.080000] usb 1-1: USB disconnect, device number 2
kern.info kernel: [ 106.560000] usb 1-1: new high-speed USB device number 3 using ehci-platform
kern.info kernel: [ 106.760000] cdc_ether 1-1:1.0: usb0: register 'cdc_ether' at usb-ehci-platform-1, CDC Ethernet Device, 36:4b:50:b7:ef:71
kern.info kernel: [ 106.790000] scsi1 : usb-storage 1-1:1.2
user.notice usb-modeswitch: 1-1:1.0: Manufacturer=Vodafone Product=ZTE_WCDMA_Technologies_MSM Serial=MF823_ZTED000000
daemon.notice netifd: wan1 (2125): udhcpc (v1.19.4) started
daemon.notice netifd: wan1 (2125): Sending discover...
user.notice usb-modeswitch: 1-1:1.1: Manufacturer=Vodafone Product=ZTE_WCDMA_Technologies_MSM Serial=MF823_ZTED000000
user.notice usb-modeswitch: 1-1:1.2: Manufacturer=Vodafone Product=ZTE_WCDMA_Technologies_MSM Serial=MF823_ZTED000000
kern.notice kernel: [ 107.790000] scsi 1:0:0:0: CD-ROM Vodafone USB SCSI CD-ROM 2.31 PQ: 0 ANSI: 2
kern.notice kernel: [ 107.800000] scsi 1:0:0:1: Direct-Access Vodafone Storage 2.31 PQ: 0 ANSI: 2
kern.notice kernel: [ 107.810000] sd 1:0:0:1: [sda] Attached SCSI removable disk

LOM
Posts: 1404
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by LOM » 05 Nov 2013, 15:12

bmork wrote: It would also be very nice if someone was able to figure out which part of the Windows8 probing that makes these devices stay in MBIM mode. I wonder if that is as simple as sending an MBIM OPEN message within those 10 seconds? In which case it should be possible to fix that by calling mbimcli from an udev rule.
Hi Bjorn
I mentioned MBIM once in my post to trigger your automatic Google detection of the post :D

I think that someone of the gurus in linux_usb (= you or Dan W) should contact ZTE and get test devices + info direct from them, it is after all very much in their interest to get their dongles properly linux supported without us having to dig for the info all the time. Maybe it has already been tried?

bmork
Posts: 167
Joined: 15 Mar 2012, 22:47
Location: Oslo, Norway

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by bmork » 05 Nov 2013, 16:06

LOM wrote:I think that someone of the gurus in linux_usb (= you or Dan W) should contact ZTE and get test devices + info direct from them, it is after all very much in their interest to get their dongles properly linux supported without us having to dig for the info all the time. Maybe it has already been tried?
I don't think that will help.

They could just have dropped the crazy stuff from the firmware, and it would automatically just work in Linux. They deliberately broke it, and I am actually surprised that this hack passed Microsofts Windows8 compliance test. If it did? Not too sure about that.

EDIT: Seems they did pass: https://sysdev.microsoft.com/en-us/hard ... id=1602155
Not that it really changes anything of the below....


Anyway, all they need to do is just drop trying to invent stuff like this, and stick with the specs. There is nothing much we can do to force them there. We could of course implement yet-another-workaround-for-insane-firmware-bug, but I don't see that as a high priority.

Buy some working device instead.

(but I will of course try to help the innocent Linux users being stuck with one of these devices, if I can)

sifudean
Posts: 2
Joined: 07 Jan 2014, 07:34

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by sifudean » 07 Jan 2014, 07:45

Hi Bjorn & LOM (& Josh),

Dean from ZTE Australia here. Over on WP I asked if you can WHIM me all your details so I can try and get some support from R&D to sort out some of these issues you guys are working on for the ZTE MBIM modems. Can't promise anything but i will get it in front of the right people.

I will Private message you all my direct email address too.

Regards,

D.

sifudean
Posts: 2
Joined: 07 Jan 2014, 07:34

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by sifudean » 08 Jan 2014, 05:34

Hi,

According to the feedback from R&D - ZTE MBIM modems have been tested and work with 3.12.1 kernel with libmbim etc integrated.

I am waiting for some further info to fully describe the environment and configuration required.

Regards,

D.

bmork
Posts: 167
Joined: 15 Mar 2012, 22:47
Location: Oslo, Norway

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by bmork » 08 Jan 2014, 13:59

sifudean wrote:Hi,

According to the feedback from R&D - ZTE MBIM modems have been tested and work with 3.12.1 kernel with libmbim etc integrated.
Thanks a lot. That's good to know.

I wonder if this is just a matter of the Linux cdc_mbim driver not sending a MBIM OPEN when it binds to a device, but deferring this to the userspace applications? Which would be just fine, and actually a nice way to make things work.

The "normal" way to use a MBIM device in Linux, once the userspace support is properly integrated, should achieve the same: A running ModemManager with libmbim support will immediately start probing the new MBIM device as soon as the driver binds to it, sending the OPEN message.

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

Re: Vodafone ZTE K5008-Z LTE/4G Info

Post by Josh » 13 Jan 2014, 20:06

On a side note, my attempts to get my hands on a "normal" MF823 have been futile so far. The one I had ordered in Russia has probably been tampered with (it's an unlocked branded device from "Beeline").

This thing starts up in RNDIS mode right away - no mode-switching at all. Either the provider had it configured that way or someone who unlocked it had it set to the fixed mode.

Is there any way to set it back to default from the RNDIS mode? No AT port availiable ...

I wouldn't mind if it went back to "locked" mode; I don't intend to actually use it.

sifudean, if you know a way (or if you can provide a 'default' firmware), I'd be grateful for a PM.

Post Reply