<?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>MCUXpresso GeneralのトピックRe: USB HID Generic Disconnect callback</title>
    <link>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1782987#M5265</link>
    <description>&lt;P&gt;I have a similar problem same problem on IMXRT1052;&lt;BR /&gt;I did #define USB_DEVICE_CONFIG_DETACH_ENABLE 1U&lt;BR /&gt;but no event is triggered in the low level isr in the first place when the cable is disconnected;&lt;/P&gt;&lt;P&gt;a breakpoint on USB_OTG1_IRQHandler and USB_OTG2_IRQHandler does nothing when the cable is disconnected,&lt;BR /&gt;but attach and other events work correctly&lt;/P&gt;</description>
    <pubDate>Thu, 04 Jan 2024 11:07:15 GMT</pubDate>
    <dc:creator>fractalgarden</dc:creator>
    <dc:date>2024-01-04T11:07:15Z</dc:date>
    <item>
      <title>USB HID Generic Disconnect callback</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040529#M3319</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;I am using the NXP LPCXpresso54628.&amp;nbsp;I have a USB HID device that is implemented in RTOS. I want to create a function that is executed when the usb is disconnected from a computer.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;I have looked in the hid_generic.c and placed breakpoints in the functions:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;static usb_status_t USB_DeviceHidGenericCallback(class_handle_t handle, uint32_t event, void *param)&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;and&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;static usb_status_t USB_DeviceCallback(usb_device_handle handle, uint32_t event, void *param)&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;but no callback is generated when the device is disconnected.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;How can I implement this callback ? What are your suggestions ?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Thanks in advance,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Jim&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Aug 2020 11:10:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040529#M3319</guid>
      <dc:creator>mail6</dc:creator>
      <dc:date>2020-08-18T11:10:45Z</dc:date>
    </item>
    <item>
      <title>Re: USB HID Generic Disconnect callback</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040530#M3320</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jim,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To do this you need to enable detach feature by setting the following define in&lt;STRONG&gt; usb_device_config.h &lt;/STRONG&gt;file.&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="property macro token"&gt;#define USB_DEVICE_CONFIG_DETACH_ENABLE (1U)&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;This will enable notification to the device callback through &lt;STRONG&gt;USB_DeviceAttachNotification&lt;/STRONG&gt; and &lt;STRONG&gt;USB_DeviceDetachNotification &lt;/STRONG&gt;functions.&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="property macro token"&gt;#if USB_DEVICE_CONFIG_DETACH_ENABLE&lt;/SPAN&gt;
        &lt;SPAN class="keyword token"&gt;case&lt;/SPAN&gt; kUSB_DeviceNotifyDetach&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
            status &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;USB_DeviceDetachNotification&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;handle&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; message&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
            &lt;SPAN class="keyword token"&gt;break&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
        &lt;SPAN class="keyword token"&gt;case&lt;/SPAN&gt; kUSB_DeviceNotifyAttach&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
            status &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;USB_DeviceAttachNotification&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;handle&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; message&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
            &lt;SPAN class="keyword token"&gt;break&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="property macro token"&gt;#endif&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Now you can implement what you like to do in &lt;STRONG&gt;USB_DeviceCallback&lt;/STRONG&gt; when this events occurred. I just print message a in console.&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;usb_status_t &lt;SPAN class="token function"&gt;USB_DeviceCallback&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;usb_device_handle handle&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; uint32_t event&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;param&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 usb_status_t error &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; kStatus_USB_Error&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

 &lt;SPAN class="keyword token"&gt;switch&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;event&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;case&lt;/SPAN&gt; kUSB_DeviceEventAttach&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;usb_echo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"USB device attached\r\n"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;break&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;case&lt;/SPAN&gt; kUSB_DeviceEventDetach&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;usb_echo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"USB device detached\r\n"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;break&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;Hope it helps!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Felipe&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Note:&lt;/P&gt;&lt;P&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored.&lt;/P&gt;&lt;P&gt;Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;/P&gt;&lt;P&gt;------------------------------------------------------------------------------&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Aug 2020 20:47:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040530#M3320</guid>
      <dc:creator>FelipeGarcia</dc:creator>
      <dc:date>2020-08-19T20:47:47Z</dc:date>
    </item>
    <item>
      <title>Re: USB HID Generic Disconnect callback</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040531#M3321</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear Felipe,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is perfect. Thank you for your help !&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jim&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Aug 2020 09:08:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1040531#M3321</guid>
      <dc:creator>mail6</dc:creator>
      <dc:date>2020-08-21T09:08:37Z</dc:date>
    </item>
    <item>
      <title>Re: USB HID Generic Disconnect callback</title>
      <link>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1782987#M5265</link>
      <description>&lt;P&gt;I have a similar problem same problem on IMXRT1052;&lt;BR /&gt;I did #define USB_DEVICE_CONFIG_DETACH_ENABLE 1U&lt;BR /&gt;but no event is triggered in the low level isr in the first place when the cable is disconnected;&lt;/P&gt;&lt;P&gt;a breakpoint on USB_OTG1_IRQHandler and USB_OTG2_IRQHandler does nothing when the cable is disconnected,&lt;BR /&gt;but attach and other events work correctly&lt;/P&gt;</description>
      <pubDate>Thu, 04 Jan 2024 11:07:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-General/USB-HID-Generic-Disconnect-callback/m-p/1782987#M5265</guid>
      <dc:creator>fractalgarden</dc:creator>
      <dc:date>2024-01-04T11:07:15Z</dc:date>
    </item>
  </channel>
</rss>

