3G wireless devices

Stefan Bethke stb at lassitu.de
Thu Jan 7 11:45:30 UTC 2010


Am 06.01.2010 um 23:38 schrieb Andrew Thompson:

> Hi,
>
>
> I am looking for people who have 3G cellular wireless devices which do
> not eject from Disk mode (provides daX or cdX drive with Win/Mac  
> driver)
> into Modem mode. Please ensure you are running an up to date kernel  
> from
> head r201681 or later.
>
> Novatel and Sierra devices should all work, any reports on Stelera,
> Option, Cmotech, Qualcomm, etc would be great.
>

My Huawei (E220?) O2 Germany branded stick has only a single  
configuration, with one umass and three serial ports, so no  
configuration switching is necessary.

# usbconfig -u 0 -a 2 dump_device_desc
ugen0.2: <HUAWEI Mobile vendor 0x12d1> at usbus0, cfg=0 md=HOST  
spd=FULL (12Mbps) pwr=ON

   bLength = 0x0012
   bDescriptorType = 0x0001
   bcdUSB = 0x0110
   bDeviceClass = 0x0000
   bDeviceSubClass = 0x0000
   bDeviceProtocol = 0x0000
   bMaxPacketSize0 = 0x0040
   idVendor = 0x12d1
   idProduct = 0x1001
   bcdDevice = 0x0000
   iManufacturer = 0x0001  <>
   iProduct = 0x0002  <HUAWEI Mobile>
   iSerialNumber = 0x0001  <>
   bNumConfigurations = 0x0001

# usbconfig -u 0 -a 2 dump_all_config_desc
ugen0.2: <HUAWEI Mobile vendor 0x12d1> at usbus0, cfg=0 md=HOST  
spd=FULL (12Mbps) pwr=ON


  Configuration index 0

     bLength = 0x0009
     bDescriptorType = 0x0002
     wTotalLength = 0x006c
     bNumInterfaces = 0x0004
     bConfigurationValue = 0x0001
     iConfiguration = 0x0000  <no string>
     bmAttributes = 0x00a0
     bMaxPower = 0x00fa

     Interface 0
       bLength = 0x0009
       bDescriptorType = 0x0004
       bInterfaceNumber = 0x0000
       bAlternateSetting = 0x0000
       bNumEndpoints = 0x0003
       bInterfaceClass = 0x00ff
       bInterfaceSubClass = 0x00ff
       bInterfaceProtocol = 0x00ff
       iInterface = 0x0003  <Data Interface>

      Endpoint 0
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0081  <IN>
         bmAttributes = 0x0003  <INTERRUPT>
         wMaxPacketSize = 0x0010
         bInterval = 0x0080
         bRefresh = 0x0000
         bSynchAddress = 0x0000

      Endpoint 1
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0082  <IN>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000

      Endpoint 2
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0002  <OUT>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000


     Interface 1
       bLength = 0x0009
       bDescriptorType = 0x0004
       bInterfaceNumber = 0x0001
       bAlternateSetting = 0x0000
       bNumEndpoints = 0x0002
       bInterfaceClass = 0x00ff
       bInterfaceSubClass = 0x00ff
       bInterfaceProtocol = 0x00ff
       iInterface = 0x0003  <Data Interface>

      Endpoint 0
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0084  <IN>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000

      Endpoint 1
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0003  <OUT>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000


     Interface 2
       bLength = 0x0009
       bDescriptorType = 0x0004
       bInterfaceNumber = 0x0002
       bAlternateSetting = 0x0000
       bNumEndpoints = 0x0002
       bInterfaceClass = 0x00ff
       bInterfaceSubClass = 0x00ff
       bInterfaceProtocol = 0x00ff
       iInterface = 0x0003  <Data Interface>

      Endpoint 0
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0085  <IN>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000

      Endpoint 1
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0005  <OUT>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000


     Interface 3
       bLength = 0x0009
       bDescriptorType = 0x0004
       bInterfaceNumber = 0x0003
       bAlternateSetting = 0x0000
       bNumEndpoints = 0x0002
       bInterfaceClass = 0x0008
       bInterfaceSubClass = 0x0006
       bInterfaceProtocol = 0x0050
       iInterface = 0x0000  <no string>

      Endpoint 0
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0083  <IN>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000

      Endpoint 1
         bLength = 0x0007
         bDescriptorType = 0x0005
         bEndpointAddress = 0x0004  <OUT>
         bmAttributes = 0x0002  <BULK>
         wMaxPacketSize = 0x0040
         bInterval = 0x0000
         bRefresh = 0x0000
         bSynchAddress = 0x0000


-- 
Stefan Bethke <stb at lassitu.de>   Fon +49 151 14070811



More information about the freebsd-current mailing list