日期:2014-05-16  浏览次数:20795 次

usb_modeswitch与E1750问题
平台:ARM920T
系统:linux 2.6.17
3G:华为E1750

在一款嵌入式linux系统的终端上做二次开发,需要使用E1750来进行无线通讯。采用usb_modeswitch来解决驱动问题。libusb-0.1.12和usb-modeswitch-1.1.2编译和安装都没问题。在执行usb-modeswitch -W 时也发现了E1750,但执行过程中出错。错误如下:
Trying to send message 1 to endpoint 0x01 ...
 OK, message successfully sent
USB error: could not clear/halt ep 1: Connection timed out
 Device is gone, skipping any further commands

有没有知道出错原因及解决办法的啊?我不是做linux底层的,都不知道问题出现在哪里。


------解决方案--------------------
对E1750的USB构成不了解。

interface 0 ...的endpoint 0x01是用来做数据通讯的么?

我看你的debug信息里面有:
XML code

Accessing device 009 on bus 001 ...
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)

------解决方案--------------------
# Huawei E1750

#

# Contributor: Anders Blomdell, Ahmed Soliman

DefaultVendor= 0x12d1

DefaultProduct= 0x1446

 

TargetVendor= 0x12d1

TargetProduct= 0x1001

 

# only for reference and 0.x versions

MessageEndpoint=0x01

MessageContent="55534243123456780000000000000011060000000000000000000000000000"

HuaweiMode=0

这样试试