Activation Codes and Methods, Hardware Details, Sniffing
Post Reply
aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

ONDA MT503HS can't dial

Post by aaa37 » 16 Nov 2009, 12:47

hi~
I plug ONDA MT503HS modem, found it will auto change mode,

Code: Select all


usb 2-2: new full speed USB device using ohci_hcd and address 74
scsi45 : SCSI emulation for USB Mass Storage devices                               
  Vendor: ONDA      Model: USB Storage       Rev: 2.31
  Type:   CD-ROM                             ANSI SCSI revision: 02
sr0: scsi-1 drive                                                  
Attached scsi generic sg0 at scsi45, channel 0, id 0, lun 0,  type 5

after about 1x seconds later.....

Code: Select all


usb 2-2: USB disconnect, address 74                                 
usb 2-2: new full speed USB device using ohci_hcd and address 75
scsi46 : SCSI emulation for USB Mass Storage devices            
  Vendor: ONDA      Model: MMC Storage       Rev: 2.31
  Type:   Direct-Access                      ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi46, channel 0, id 0, lun 0 
Attached scsi generic sg0 at scsi46, channel 0, id 0, lun 0,  type 0

And in this mode, can get id.
Vendor=19d2 ProdID=0002 Rev= 0.00
so just register.

Code: Select all

# modprobe usbserial vendor=0x19d2 product=0x0002

  <6>usbcore: registered new driver usbserial   
drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic
usbserial_generic 2-2:1.1: Generic converter detected                     
usb 2-2: Generic converter now attached to ttyUSB0   
usbserial_generic 2-2:1.2: Generic converter detected
usb 2-2: Generic converter now attached to ttyUSB1   
usbserial_generic 2-2:1.3: Generic converter detected
usb 2-2: Generic converter now attached to ttyUSB2   
usbserial_generic 2-2:1.4: Generic converter detected
usb 2-2: Generic converter now attached to ttyUSB3   
usbcore: registered new driver usbserial_generic  
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0

But when I use pppd's script to dial on ttyUSB0 , it will get failed,no ack.

so I try ttyUSB1(sometimes ttyUSB2) , can get some ack,but still failed on dial process.

Code: Select all

# pppd call UMTS
AT
OK
ATZ
ERROR
Connect script failed
Here are pppd script

Code: Select all

ECHO ON
TIMEOUT 10
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "DELAYED"
ABORT "BUSY"
"" "n"
"" "AT"
OK "ATZ"
OK "AT&F"
OK "AT+CSQ"
OK "AT+COPS?"
OK "AT+CGATT=1"
OK 'AT+CGDCONT=1,"IP","internet","0.0.0.0",0,0'
OK "AT+CGQREQ"
OK "ATQ0 V1 E1 S0=0 &C1 &D1 S11=55 +FCLASS=0"
SAY "Calling UMTS n"
OK "ATDT*99**1#"
TIMEOUT 60
CONNECT ""


I also try usb_modswitch to switch on storge mode manually,
Vendor=19d2 ProdID=2000 Rev= 0.00

to
Vendor=19d2 ProdID=0002 Rev= 0.00


but still can't not dial, if have any idea, please help, thanks a lot.


Code: Select all

#usb_modeswitch -v 0x19d2 -p 0x2000 -W

Taking all parameters from the command line


 * usb_modeswitch: handle USB devices with multiple modes
 * Version 1.0.5 (C) Josua Dietze 2009
 * Based on libusb 0.1.12

DefaultVendor=  0x19d2
DefaultProduct= 0x2000
TargetVendor=   not set
TargetProduct=  not set
TargetClass=    not set

DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
MessageEndpoint= not set
MessageContent= not set
NeedResponse=0
ResponseEndpoint= not set
Interface=0x00

InquireDevice enabled (default)
Success check disabled

usb_os_init: Found USB VFS at /proc/bus/usb
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 085 on 002
usb_os_find_devices: Found 001 on 002
error obtaining child information: Inappropriate ioctl for device
usb_os_find_devices: Found 001 on 001

Looking for default devices ...
 Found default devices (1)
Accessing device 085 on bus 002 ...
Using endpoints 0x08 (out) and 0x87 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
 OK, driver found ("usb-storage")
 OK, driver "usb-storage" detached

Received inquiry data (detailed identification)
-------------------------
  Vendor String: ONDA
   Model String: USB Storage     
Revision String: 2.31
-------------------------

Device description data (identification)
-------------------------
Manufacturer: Qualcomm, Incorporated
     Product: USB ONDA Storage
  Serial No.: not provided
-------------------------
Warning: no switching method given.
-> Run lsusb to note any changes. Bye.
Last edited by aaa37 on 16 Nov 2009, 13:01, edited 3 times in total.

aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

Post by aaa37 » 16 Nov 2009, 12:57

If I use the offical config
########################################################
# ONDA MT503HS (most likely a ZTE model)
#
# Contributor: Lucio Asnaghi a.k.a. kRAkEn/gORe

########################################################
# ONDA MT503HS (most likely a ZTE model)
#
# Contributor: Lucio Asnaghi a.k.a. kRAkEn/gORe

DefaultVendor= 0x19d2
DefaultProduct= 0x2000

TargetVendor= 0x19d2
TargetProduct= 0x0002

# only for reference and 0.x versions
MessageEndpoint=0x08

MessageContent="55534243b0c8dc812000000080000a85010101180101010101000000000000"
I will get hangon

Code: Select all

 * usb_modeswitch: handle USB devices with multiple modes
 * Version 1.0.5 (C) Josua Dietze 2009
 * Based on libusb 0.1.12

DefaultVendor=  0x19d2
DefaultProduct= 0x2000
TargetVendor=   0x19d2
TargetProduct=  0x0002
TargetClass=    not set

DetachStorageOnly=0
HuaweiMode=0
SierraMode=0
SonyMode=0
MessageEndpoint=0x08
MessageContent="55534243b0c8dc812000000080000a85010101180101010101000000000000"
NeedResponse=0
ResponseEndpoint= not set
Interface=0x00

InquireDevice enabled (default)
Success check disabled

usb_os_init: Found USB VFS at /proc/bus/usb
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 088 on 002
usb_os_find_devices: Found 001 on 002
error obtaining child information: Inappropriate ioctl for device
usb_os_find_devices: Found 001 on 001

Looking for target devices ...
 No devices in target mode or class found
Looking for default devices ...
 Found default devices (1)
Accessing device 088 on bus 002 ...
Using endpoints 0x08 (out) and 0x87 (in)
Inquiring device details; driver will be detached ...
Looking for active driver ...
 OK, driver found ("usb-storage")
 OK, driver "usb-storage" detached
here hangon about 1x seconds. I believe the mode switched automatically

Code: Select all

Received inquiry data (detailed idenusb 2-2: usbfs: process 16836 (usb_modeswitch) did not claim interface 0 before use
tification)                                                                                                            
-------------------------usb 2-2: USB disconnect, address 88
                                                            
  Vendor String: 
   Model String: USB Storage     
Revision String: 2.31
-------------------------
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"

Device description data (identification)
-------------------------
Manufacturer: 
     Product: 
  Serial No.: not provided
-------------------------
Setting up communication with interface 0 ...
USB error: could not clear/halt ep 8: Connection timed out
Trying to send the message to endpoint 0x08 ...
USB error: error submitting URB: No such file or directory
 Sending the message returned error -2. Trying to continue
USB error: could not clear/halt ep 8: Connection timed out
 Device is gone, skipping any further commands
-> Run lsusb to note any changes. Bye.

usb 2-2: new full speed USB device using ohci_hcd and address 89
scsi54 : SCSI emulation for USB Mass Storage devices                               
  Vendor: ONDA      Model: MMC Storage       Rev: 2.31
  Type:   Direct-Access                      ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi54, channel 0, id 0, lun 0 
Attached scsi generic sg0 at scsi54, channel 0, id 0, lun 0,  type 0


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

Post by Josh » 16 Nov 2009, 20:51

Don't take the "generic serial" driver.

Use the "option" driver; see the following thread (and many others) and adapt the ID to your's:
http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?p=1247#1247

And just use the AT command that you need - usually less is better.

aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

Post by aaa37 » 17 Nov 2009, 09:25

thanks Josh,
My kernenl is 2.6.14, there is no "option" driver when I use menuconfig, so I enable the "airprime" driver in this version,
and build for test.
hope this work><"

aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

Post by aaa37 » 18 Nov 2009, 09:41

aaa37 wrote:thanks Josh,
My kernenl is 2.6.14, there is no "option" driver when I use menuconfig, so I enable the "airprime" driver in this version,
and build for test.
hope this work><"
it is pity that airprime is also failed.><
I add in airprime.c
static struct usb_device_id id_table [] = {
{ USB_DEVICE(0xf3d, 0x0112) }, /* AirPrime CDMA Wireless PC Card */
{ USB_DEVICE(0x1410, 0x1110) }, /* Novatel Wireless Merlin CDMA */
{ USB_DEVICE(0x12d1, 0x1003) }, //Huawei E220 & Co
{ USB_DEVICE(0x19d2, 0x0002) }, //ONDA MT503HS
{ },
};
and after change mode, apply airprime dirver, and also can get 4 ttyUSB ports, but still dial failed on "ATZ" commmand.

I am not sure how to port "option" driver form 2.6.20 to 2.6.14, I will try this way.
If there is any suggestion, please help me, thanks a lot~

aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

Post by aaa37 » 19 Nov 2009, 10:41

Finally, I found "option" driver on 2.6.14 .
need to enable PCCARD, then can see the "option" item on menuconfig,

I still fill vender id on option.c
static struct usb_device_id option_ids[] = {
{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_OLD) },
{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_FUSION) },
{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_FUSION2) },
{ USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E600) },
{ USB_DEVICE(ONDA_VENDOR_ID, ONDA_PRODUCT_MT503HS) },
{ USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220) },
{ USB_DEVICE(AUDIOVOX_VENDOR_ID, AUDIOVOX_PRODUCT_AIRCARD) },
{ } /* Terminating entry */
};
then insmod option.ko,
also get
option 2-2:1.1: Option 3G data card converter detected
usb 2-2: Option 3G data card converter now attached to ttyUSB0
option 2-2:1.2: Option 3G data card converter detected
usb 2-2: Option 3G data card converter now attached to ttyUSB1
option 2-2:1.3: Option 3G data card converter detected
usb 2-2: Option 3G data card converter now attached to ttyUSB2
option 2-2:1.4: Option 3G data card converter detected
usb 2-2: Option 3G data card converter now attached to ttyUSB3
still have few ack on ttyUSB1,but can't dial,
is there anyone use ONDA MT503HS successful?

I got onad's offical linux driver, but can't make correct><"
still struggle on this, I need to build for arm-plarform.

if having interesting on offical driver, please download here.

http://www.box.net/shared/gd4gk7xtr5

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

Post by Josh » 19 Nov 2009, 12:02

Did you try using minicom (or annother serial terminal program) on the ports? Entering the AT commands manually?

Is it only the ATZ command giving an error?

If there is no change after using a different serial driver then the error can hadrly be in the driver.

Hardware? Cable? Try on a different system?

aaa37
Posts: 23
Joined: 08 Oct 2009, 07:59

Post by aaa37 » 23 Nov 2009, 10:29

Josh wrote:Did you try using minicom (or annother serial terminal program) on the ports? Entering the AT commands manually?

Is it only the ATZ command giving an error?

If there is no change after using a different serial driver then the error can hadrly be in the driver.

Hardware? Cable? Try on a different system?
Hi, I have tried other AT command on ttyUSB1, but almost AT command can't got OK, so can't set APN.
maybe this modem use their own AT command?

If skip AT commant, then can dial up,
but I don't have sim card now,
depen on pppd message
sent [LCP ConfReq id=0x1 <mru 1492> <asyncmap 0x0> <magic 0x2f6e471e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <mru 1492> <asyncmap 0x0> <magic 0x2f6e471e> <pcomp> <accomp>]
maybe this can dial success if having sim card.

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

Post by Josh » 23 Nov 2009, 12:48

Did you try on a different machine? Or with Windows (HyperTerminal)?

Post Reply