OpenCores
no use no use 1/1 no use no use
Enumeration
by Unknown on Feb 25, 2004
Not available!
Hi

Is there any difference if we send 18 bytes of data instead of 8 bytes
when host requests for device
descriptors after reset.

Can anybody explain what exactly is happening here

host - > reset
host -> request for device descriptors
device -> responding with 18 bytes of device descriptor
host -> reset
device -> set address to 4
host -> reset

Please note that acks are present but not mentioned. There is no nack
either from device or host.

Instead of another request form host for device descriptors its issuing
reset.

After set_address there is 549.673 ms silence and then host is sending
reset.

Please help

Thanks in advance.

regards




Enumeration
by Steve on Feb 25, 2004
Steve
Posts: 2
Joined: May 30, 2008
Last seen: May 11, 2016
Everything mentioned in your mail seems fine other than the 500 ms pause. The host first requests the device descriptor, it requires at least 8 bytes. You can send 18 but all the host is after is the control endpoint size held within the first 8 bytes. It might be best now if you post the 18 bytes of information that you return as im sure this is why the host is waiting so long. Thanks Steve Sponsor me online for the Flora London Marathon http://www.justgiving.com/gosteve
-----Original Message----- From: usb-bounces@opencores.org [mailto:usb-bounces@opencores.org]On Behalf Of P.Ravi Sent: 25 February 2004 07:37 To: usb@opencores.org Subject: [usb] Enumeration Hi Is there any difference if we send 18 bytes of data instead of 8 bytes when host requests for device descriptors after reset. Can anybody explain what exactly is happening here host - > reset host -> request for device descriptors device -> responding with 18 bytes of device descriptor host -> reset device -> set address to 4 host -> reset Please note that acks are present but not mentioned. There is no nack either from device or host. Instead of another request form host for device descriptors its issuing reset. After set_address there is 549.673 ms silence and then host is sending reset. Please help Thanks in advance. regards _______________________________________________ http://www.opencores.org/mailman/listinfo/usb




Enumeration
by Unknown on Feb 25, 2004
Not available!
Steve

18 bytes as device descriptor,

0x12, // bLength
0x01, // Device Descr
0x00, // bcdUSB(lo)
0x02, // bcdUSB(hi)
0x00, // bDeviceClass
0x00, // bDeviceSubClass
0x00, // bDeviceProtocol
0x40, // bMaxPacketSize0
0x3f, // idVendor(lo)
0x05, // idVendor(hi)
0x55, // idProduct(lo)
0x00, // idProduct(hi)
0x00, // bcdDevice(lo)
0x01, // bcdDevice(hi)
0x01, // iManufacturer
0x02, // iProduct
0x03, // iSerialNumber
0x01 // bNumConfigurations

regards




Steve wrote:

Everything mentioned in your mail seems fine other than the 500 ms pause. The host first requests the device descriptor, it requires at least 8 bytes. You can send 18 but all the host is after is the control endpoint size held within the first 8 bytes. It might be best now if you post the 18 bytes of information that you return as im sure this is why the host is waiting so long. Thanks Steve Sponsor me online for the Flora London Marathon http://www.justgiving.com/gosteve
> -----Original Message----- > From: usb-bounces@opencores.org [mailto:usb-bounces@opencores.org]On > Behalf Of P.Ravi > Sent: 25 February 2004 07:37 > To: usb@opencores.org > Subject: [usb] Enumeration > > > Hi > > Is there any difference if we send 18 bytes of data instead of 8 bytes > when host requests for device > descriptors after reset. > > Can anybody explain what exactly is happening here > > host - > reset > host -> request for device descriptors > device -> responding with 18 bytes of device descriptor > host -> reset > device -> set address to 4 > host -> reset > > Please note that acks are present but not mentioned. There is no nack > either from device or host. > > Instead of another request form host for device descriptors its issuing > reset. > > After set_address there is 549.673 ms silence and then host is sending > reset. > > Please help > > Thanks in advance. > > regards > > > > > _______________________________________________ > http://www.opencores.org/mailman/listinfo/usb
_______________________________________________ http://www.opencores.org/mailman/listinfo/usb



Enumeration
by Unknown on Feb 28, 2004
Not available!
Is there any difference if we send 18 bytes of data instead of 8 bytes
when host requests for device descriptors after reset.


Yes. You only send what the host requests or less. If the host requests
less than 18 bytes, sending 18 bytes is an error.

Can anybody explain what exactly is happening here

host - > reset
host -> request for device descriptors
device -> responding with 18 bytes of device descriptor
host -> reset
device -> set address to 4


Up to this point, it is a valid sequence, including the 500 mSec wait
mentioned below.

host -> reset


The most common reason for a reset following a set address is that you are
not listening on address 4 and the host gives up trying to talk to you and
resets you hoping your behavior will improve.

Please note that acks are present but not mentioned. There is no nack
either from device or host.


Do note that the host will NEVER NAK.

Marc Reinig
System Solutions



no use no use 1/1 no use no use
© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.