From owner-freebsd-usb@FreeBSD.ORG Wed Feb 14 16:37:43 2007 Return-Path: X-Original-To: freebsd-usb@freebsd.org Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E2A5A16A420 for ; Wed, 14 Feb 2007 16:37:43 +0000 (UTC) (envelope-from joao.barros@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.174]) by mx1.freebsd.org (Postfix) with ESMTP id D710713C48D for ; Wed, 14 Feb 2007 16:37:42 +0000 (UTC) (envelope-from joao.barros@gmail.com) Received: by ug-out-1314.google.com with SMTP id 71so245257ugh for ; Wed, 14 Feb 2007 08:37:41 -0800 (PST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=julBGkT+AAcQKb5WwTbIVF0Vun5sqwwklyJZIjzK3Lyor5MsqswvfGYO0BA5IuHQKZYbJjkrmMp129UmXi4Dp6rfJ81W9XbkGLh5DsMJU1sqpREDQOekYTTOvdpnW31z6Z71uQpuIJO/RqOWmtTnbeDRPlyokZ8985TZJ7KjWso= Received: by 10.78.138.6 with SMTP id l6mr266140hud.1171469481585; Wed, 14 Feb 2007 08:11:21 -0800 (PST) Received: by 10.78.15.2 with HTTP; Wed, 14 Feb 2007 08:11:21 -0800 (PST) Message-ID: <70e8236f0702140811i5b484e41r8180b4ee6ed8feb7@mail.gmail.com> Date: Wed, 14 Feb 2007 16:11:21 +0000 From: "Joao Barros" To: Volker In-Reply-To: <20070205183507.0f5b3903@zurich.theworld.es> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <20061218170041.23257117.argonaut@airtel.net> <45B0D4DD.3030607@vwsoft.com> <20070205183507.0f5b3903@zurich.theworld.es> Cc: Jes , freebsd-usb@freebsd.org Subject: Re: Huawei E220 3G devices X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Feb 2007 16:37:44 -0000 On 2/5/07, Jes wrote: > Hi Volker: > > I've got the usbctl printouts. First the 'dmesg': > > > > ucom0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2 > ucom0: Could not find interrupt in > device_attach: ucom0 attach returned 6 > ucom0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2 > ucom0: Could not find interrupt in > device_attach: ucom0 attach returned 6 > > > usbctl -f /dev/usb0 > > USB device 1: 9 > USB device 2: 0 > 2 USB devices found > DEVICE addr 1 > DEVICE descriptor: > bLength=3D18 bDescriptorType=3Ddevice(1) bcdUSB=3D1.00 bDeviceClass=3D9 > bDeviceSubClass=3D0 bDeviceProtocol=3D0 bMaxPacketSize=3D64 idVendor=3D0x= 0000 > idProduct=3D0x0000 bcdDevice=3D100 iManufacturer=3D1(Intel) iProduct=3D2(= UHCI > root hub) iSerialNumber=3D0() bNumConfigurations=3D1 > > CONFIGURATION descriptor 0: > bLength=3D9 bDescriptorType=3Dconfig(2) wTotalLength=3D25 bNumInterface= =3D1 > bConfigurationValue=3D1 iConfiguration=3D0() bmAttributes=3D40 bMaxPower= =3D0 mA > > INTERFACE descriptor 0: > bLength=3D9 bDescriptorType=3Dinterface(4) bInterfaceNumber=3D0 > bAlternateSetting=3D0 bNumEndpoints=3D1 bInterfaceClass=3D9 > bInterfaceSubClass=3D0 bInterfaceProtocol=3D0 iInterface=3D0() > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D1-in > bmAttributes=3Dinterrupt wMaxPacketSize=3D8 bInterval=3D255 > > current configuration 1 > > HUB descriptor: > bDescLength=3D9 bDescriptorType=3D41 bNbrPorts=3D2 wHubCharacteristics=3D= 0a > bPwrOn2PwrGood=3D50 bHubContrCurrent=3D0 DeviceRemovable=3D0 > > Hub status 0000 0000 > > Port 1 status=3D0103 change=3D0000 > > Port 2 status=3D0100 change=3D0000 > > ---------- > DEVICE addr 2 > DEVICE descriptor: > bLength=3D18 bDescriptorType=3Ddevice(1) bcdUSB=3D1.10 bDeviceClass=3D0 > bDeviceSubClass=3D0 bDeviceProtocol=3D0 bMaxPacketSize=3D64 idVendor=3D0x= 12d1 > idProduct=3D0x1003 bcdDevice=3D0 iManufacturer=3D1(\u0c05=A4) > iProduct=3D2(\u0c05=A4) iSerialNumber=3D0() bNumConfigurations=3D1 > > CONFIGURATION descriptor 0: > bLength=3D9 bDescriptorType=3Dconfig(2) wTotalLength=3D32 bNumInterface= =3D1 > bConfigurationValue=3D1 iConfiguration=3D0() bmAttributes=3Da0 bMaxPower= =3D500 > mA > > INTERFACE descriptor 0: > bLength=3D9 bDescriptorType=3Dinterface(4) bInterfaceNumber=3D0 > bAlternateSetting=3D0 bNumEndpoints=3D2 bInterfaceClass=3D8 > bInterfaceSubClass=3D6 bInterfaceProtocol=3D80 iInterface=3D0() > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D3-in > bmAttributes=3Dbulk wMaxPacketSize=3D64 bInterval=3D0 > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D4-out > bmAttributes=3Dbulk wMaxPacketSize=3D64 bInterval=3D0 > > current configuration 1 > > ---------- > > > > > usbctl -f /dev/usb1 > > > USB device 1: 9 > 1 USB devices found > DEVICE addr 1 > DEVICE descriptor: > bLength=3D18 bDescriptorType=3Ddevice(1) bcdUSB=3D1.00 bDeviceClass=3D9 > bDeviceSubClass=3D0 bDeviceProtocol=3D0 bMaxPacketSize=3D64 idVendor=3D0x= 0000 > idProduct=3D0x0000 bcdDevice=3D100 iManufacturer=3D1(Intel) iProduct=3D2(= UHCI > root hub) iSerialNumber=3D0() bNumConfigurations=3D1 > > CONFIGURATION descriptor 0: > bLength=3D9 bDescriptorType=3Dconfig(2) wTotalLength=3D25 bNumInterface= =3D1 > bConfigurationValue=3D1 iConfiguration=3D0() bmAttributes=3D40 bMaxPower= =3D0 mA > > INTERFACE descriptor 0: > bLength=3D9 bDescriptorType=3Dinterface(4) bInterfaceNumber=3D0 > bAlternateSetting=3D0 bNumEndpoints=3D1 bInterfaceClass=3D9 > bInterfaceSubClass=3D0 bInterfaceProtocol=3D0 iInterface=3D0() > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D1-in > bmAttributes=3Dinterrupt wMaxPacketSize=3D8 bInterval=3D255 > > current configuration 1 > > HUB descriptor: > bDescLength=3D9 bDescriptorType=3D41 bNbrPorts=3D2 wHubCharacteristics=3D= 0a > bPwrOn2PwrGood=3D50 bHubContrCurrent=3D0 DeviceRemovable=3D0 > > Hub status 0000 0000 > > Port 1 status=3D0100 change=3D0000 > > Port 2 status=3D0100 change=3D0000 > > ---------- > > > > > > usbctl -f /dev/usb2 > > USB device 1: 9 > 1 USB devices found > DEVICE addr 1 > DEVICE descriptor: > bLength=3D18 bDescriptorType=3Ddevice(1) bcdUSB=3D1.00 bDeviceClass=3D9 > bDeviceSubClass=3D0 bDeviceProtocol=3D0 bMaxPacketSize=3D64 idVendor=3D0x= 0000 > idProduct=3D0x0000 bcdDevice=3D100 iManufacturer=3D1(Intel) iProduct=3D2(= UHCI > root hub) iSerialNumber=3D0() bNumConfigurations=3D1 > > CONFIGURATION descriptor 0: > bLength=3D9 bDescriptorType=3Dconfig(2) wTotalLength=3D25 bNumInterface= =3D1 > bConfigurationValue=3D1 iConfiguration=3D0() bmAttributes=3D40 bMaxPower= =3D0 mA > > INTERFACE descriptor 0: > bLength=3D9 bDescriptorType=3Dinterface(4) bInterfaceNumber=3D0 > bAlternateSetting=3D0 bNumEndpoints=3D1 bInterfaceClass=3D9 > bInterfaceSubClass=3D0 bInterfaceProtocol=3D0 iInterface=3D0() > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D1-in > bmAttributes=3Dinterrupt wMaxPacketSize=3D8 bInterval=3D255 > > current configuration 1 > > HUB descriptor: > bDescLength=3D9 bDescriptorType=3D41 bNbrPorts=3D2 wHubCharacteristics=3D= 0a > bPwrOn2PwrGood=3D50 bHubContrCurrent=3D0 DeviceRemovable=3D0 > > Hub status 0000 0000 > > Port 1 status=3D0100 change=3D0000 > > Port 2 status=3D0100 change=3D0000 > > ---------- > > > > > > usbctl -f /dev/usb3 > > > USB device 1: 9 > 1 USB devices found > DEVICE addr 1 > DEVICE descriptor: > bLength=3D18 bDescriptorType=3Ddevice(1) bcdUSB=3D2.00 bDeviceClass=3D9 > bDeviceSubClass=3D0 bDeviceProtocol=3D1 bMaxPacketSize=3D64 idVendor=3D0x= 0000 > idProduct=3D0x0000 bcdDevice=3D100 iManufacturer=3D1(Intel) iProduct=3D2(= EHCI > root hub) iSerialNumber=3D0() bNumConfigurations=3D1 > > CONFIGURATION descriptor 0: > bLength=3D9 bDescriptorType=3Dconfig(2) wTotalLength=3D25 bNumInterface= =3D1 > bConfigurationValue=3D1 iConfiguration=3D0() bmAttributes=3D40 bMaxPower= =3D0 mA > > INTERFACE descriptor 0: > bLength=3D9 bDescriptorType=3Dinterface(4) bInterfaceNumber=3D0 > bAlternateSetting=3D0 bNumEndpoints=3D1 bInterfaceClass=3D9 > bInterfaceSubClass=3D0 bInterfaceProtocol=3D0 iInterface=3D0() > > ENDPOINT descriptor: > bLength=3D7 bDescriptorType=3Dendpoint(5) bEndpointAddress=3D1-in > bmAttributes=3Dinterrupt wMaxPacketSize=3D8 bInterval=3D255 > > current configuration 1 > > HUB descriptor: > bDescLength=3D11 bDescriptorType=3D41 bNbrPorts=3D8 wHubCharacteristics= =3D80 > bPwrOn2PwrGood=3D200 bHubContrCurrent=3D0 DeviceRemovable=3D0 > > Hub status 0000 0000 > > Port 1 status=3D0500 change=3D0000 > > Port 2 status=3D0500 change=3D0000 > > Port 3 status=3D0500 change=3D0000 > > Port 4 status=3D0500 change=3D0000 > > Port 5 status=3D0500 change=3D0000 > > Port 6 status=3D0500 change=3D0000 > > Port 7 status=3D0500 change=3D0000 > > Port 8 status=3D0500 change=3D0000 > > ---------- > > > > > > Thanks in advance, > > > Jes > > > > > > > > > > > > > > On Fri, 19 Jan 2007 15:25:33 +0100 > Volker wrote: > > > Jes, > > > > sorry for the huge delay in respone... apologies > > > > On 12/18/06 17:00, Jes wrote: > > > Hi: > > > > > > I have not such 'usbctl'... What is 'usbctl'? only 'usbdevs' and > > > usbhidctl... and this, usbhidctl, is not very useful I guess... > > > so... I put /var/log/messages and 'usbdevs'. Note that I haven't > > > 'usbmass' in my kernel; it's compiled as a module and not loaded. > > > Then the huawei modem cannot be interpreted as a mass-storage > > > devices.... can it? > > > > usbctl is part of a package called usbutil. > > > > You may download a package from the website of Bernd Walter: > > http://www.cosmo-project.de/~bernd/usbutil.tgz > > > > However, I don't why such a great tool isn't part of the ports tree > > (obsd + nbsd do have it in the tree). > > > > usbctl shows the interfaces and endpoints of a usb device. You may > > find a sample output of usbctl at > > http://bsd.vwsoft.com/3g/merlin_u740.html > > > > I would like to see the same output for the Huawei devices. I guess > > they have different interfaces and the first driver attaching to > > _and_ interface wins the whole device as the driver might return > > with UMATCH_DEVCLASS*, UMATCH_VENDOR* or similar. > > > > Greetings, > > > > Volker > > Hi all, Sorry for my late coment on this, but after getting a new Macbook Pro I got distracted ;) In December I was looking into this and (I'm talking out of my head now) after I patched ubsa with this device IDs I got it to be detected, although it only connects to one of the two serial devices present, the modem one I think. From what I recall I was able to register the device to the network by sending the PIN command through the modem port but after using a software usb sniffer in windows I noticed that this command and others (network status maybe) are sent using the 2nd serial port. If this is correct, the PIN command can be sent through the normal dialup script, with a pause before the dialing attempt to let the device register. Of course after the device is registered this is unnecessary and time consuming. I'm thinking of doing a small daemon where you just need to configure the 2nd serial port and the PIN and it takes cares of registering the device on the network, monitor network status, signal strength,etc. The Vodafone OSX driver+App does this, contrary to the "I'm on/off" Windows App so if anyone knows a USB data software sniffer for OSX I could get the reverse engineer the commands . Of course, this will only work if the 2nd serial port gets usable in FreeBS= D. This small app can then be used to drive more 3G cards which I guess some people would welcome :) --=20 Joao Barros