I am looking for an example or documentation on creating a custom USB device class with the MDK Pro Pack Middleware v6.1.0 for the NXP LPC43xx series processor. When I look at the documentation accessible by double clicking on the USB component class icon and navigate to "USB Device->USB Device Examples->Custom USB Device" I am greeted with a helpful "More information coming soon" page.
Furthermore the documentation on the Device Class Functions is not very helpful or thorough in providing any help in designing a custom device using the MDK-Pro Middleware's USB library.
At the moment the device will show up in windows but a USB Device Not Recognized balloon pops up. On sniffing the bus traffic I see that the device never responds to a GET_DESCRIPTOR Setup packet request. Where does this need to get implemented? I thought that using the wizards associated with USBD_Config_CustomClass.h and USBD_Config.c would configure the proper information and then let the library handle descriptor requests. Unfortunately there is NO Documentation to tell me if that is correct or not.
Any documentation or example code would be much appreciated!
The problem it seemed boiled down to the third parameter of the USBD_EndpointRead call matching the endpoint size so:
// High Speed Devices USBD_EndpointRead(0, USB_ENDPOINT_OUT(1), class0_bulk_out_buf, 512); // Full Speed Device USBD_EndpointRead(0, USB_ENDPOINT_OUT(1), class0_bulk_out_buf, 64);
Thanks for sharing.