<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>LPC MicrocontrollersのトピックUSB reset problem when having endpoint 0x88</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-reset-problem-when-having-endpoint-0x88/m-p/523080#M5716</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by t.alex on Thu Feb 20 02:38:30 MST 2014&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;On LPC4337, on I configure my usb device (custom class) with 1 interface and 5 endpoints as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;ALIGNED(4) uint8_t USB_ConfigDescriptor[] = {&lt;BR /&gt;/* Configuration 1 */&lt;BR /&gt;USB_CONFIGURATION_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_CONFIGURATION_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;WBVAL(/* wTotalLength */&lt;BR /&gt;USB_CONFIGURATION_DESC_SIZE&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_INTERFACE_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&lt;BR /&gt;),&lt;BR /&gt;0x01,/* bNumInterfaces */&lt;BR /&gt;0x01,/* bConfigurationValue */&lt;BR /&gt;0x00,/* iConfiguration */&lt;BR /&gt;USB_CONFIG_SELF_POWERED,/* bmAttributes */&lt;BR /&gt;USB_CONFIG_POWER_MA(100),/* bMaxPower */&lt;BR /&gt;&lt;BR /&gt;/* Interface 0, Alternate Setting 0*/&lt;BR /&gt;USB_INTERFACE_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_INTERFACE_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_INTERFACE_NUM,/* bInterfaceNumber */&lt;BR /&gt;0x00,/* bAlternateSetting */&lt;BR /&gt;0x05,/* bNumEndpoints */&lt;BR /&gt;0,/* bInterfaceClass */&lt;BR /&gt;0,/* bInterfaceSubClass */&lt;BR /&gt;0,/* bInterfaceProtocol */&lt;BR /&gt;0x0,/* iInterface */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 1 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_CDC_OUT_EP,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 2 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_CDC_IN_EP,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 4 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x84,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 6 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x86,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 8 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x88,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Terminator */&lt;BR /&gt;0/* bLength */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I found out that with endpoint 0x88 defined, whenever host send a USB reset, the system will run into HardFault.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;How would I overcome this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 16:43:59 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T16:43:59Z</dc:date>
    <item>
      <title>USB reset problem when having endpoint 0x88</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-reset-problem-when-having-endpoint-0x88/m-p/523080#M5716</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by t.alex on Thu Feb 20 02:38:30 MST 2014&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;On LPC4337, on I configure my usb device (custom class) with 1 interface and 5 endpoints as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;ALIGNED(4) uint8_t USB_ConfigDescriptor[] = {&lt;BR /&gt;/* Configuration 1 */&lt;BR /&gt;USB_CONFIGURATION_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_CONFIGURATION_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;WBVAL(/* wTotalLength */&lt;BR /&gt;USB_CONFIGURATION_DESC_SIZE&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_INTERFACE_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE&lt;BR /&gt;),&lt;BR /&gt;0x01,/* bNumInterfaces */&lt;BR /&gt;0x01,/* bConfigurationValue */&lt;BR /&gt;0x00,/* iConfiguration */&lt;BR /&gt;USB_CONFIG_SELF_POWERED,/* bmAttributes */&lt;BR /&gt;USB_CONFIG_POWER_MA(100),/* bMaxPower */&lt;BR /&gt;&lt;BR /&gt;/* Interface 0, Alternate Setting 0*/&lt;BR /&gt;USB_INTERFACE_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_INTERFACE_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_INTERFACE_NUM,/* bInterfaceNumber */&lt;BR /&gt;0x00,/* bAlternateSetting */&lt;BR /&gt;0x05,/* bNumEndpoints */&lt;BR /&gt;0,/* bInterfaceClass */&lt;BR /&gt;0,/* bInterfaceSubClass */&lt;BR /&gt;0,/* bInterfaceProtocol */&lt;BR /&gt;0x0,/* iInterface */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 1 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_CDC_OUT_EP,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 2 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;USB_CDC_IN_EP,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 4 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x84,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 6 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x86,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;/* Endpoint 8 */&lt;BR /&gt;USB_ENDPOINT_DESC_SIZE,/* bLength */&lt;BR /&gt;USB_ENDPOINT_DESCRIPTOR_TYPE,/* bDescriptorType */&lt;BR /&gt;0x88,/* bEndpointAddress */&lt;BR /&gt;USB_ENDPOINT_TYPE_BULK,/* bmAttributes */&lt;BR /&gt;WBVAL(USB_FS_MAX_BULK_PACKET),/* wMaxPacketSize */&lt;BR /&gt;0x01,/* bInterval: ignore for Bulk transfer */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/* Terminator */&lt;BR /&gt;0/* bLength */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I found out that with endpoint 0x88 defined, whenever host send a USB reset, the system will run into HardFault.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;How would I overcome this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-reset-problem-when-having-endpoint-0x88/m-p/523080#M5716</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:59Z</dc:date>
    </item>
  </channel>
</rss>

