PORTS Forum

Ports and Interfaces => USB => Topic started by: Jan Axelson on May 04, 2013, 10:37:39 am

Title: Updated WinUSB application and firmware
Post by: Jan Axelson on May 04, 2013, 10:37:39 am
I've updated my Visual C# .NET application for accessing devices that use the WinUSB driver and companion PIC firmware:

http://www.janaxelson.com/winusb.htm
Title: Re: Updated WinUSB application and firmware
Post by: windwail on May 17, 2013, 10:20:15 am
Have problems with your firmware.

When i try microchip's example firmware "Device - WinUSB - High Bandwidth Demo" - my device (PICDEM_FSUSB) works just fine, i use INF file from drivers folders and my device detected.

When i use your firmware - i have always "unknown device" in my device manager. Can't use driver from Device - WinUSB - High Bandwidth Demo - it says that there is no driver for my device. Where can i take driver for your firmware ? Or i must edit it somehow ? Please point me what i've missed ?

OS: Windows 7
IDE: MPLAB X IDE v1.60
Hardware: PICDEM_FSUSB (18f4550)
Title: Re: Updated WinUSB application and firmware
Post by: Jan Axelson on May 17, 2013, 11:48:00 am
If using the system WinUSB INF file (not a device-specific INF) the GUID in the device firmware must match the GUID in the application you use to access the device.

My firmware and application use the same GUID, but it's a different GUID than the Microchip firmware and application uses. So if you want to use my firmware and the Microchip PC application, you need to change one of the GUIDs or provide a device-specific INF file.
Title: Re: Updated WinUSB application and firmware
Post by: windwail on May 18, 2013, 02:31:53 am
(http://i40.tinypic.com/rwibt5.jpg)

You have error in code, missed one field in device descriptor, should be
Code: [Select]
/* Device Descriptor */
ROM USB_DEVICE_DESCRIPTOR device_dsc=
{
    0x12,                   // (bLength) Size of this descriptor in bytes
    USB_DESCRIPTOR_DEVICE,  // (bDescriptorType)DEVICE descriptor type
    0x0200,                 // (bcdUSB)USB Spec Release Number in BCD format
    0x00,                   // (bDeviceClass)Class Code
    0x00,                   // (bDeviceSubClass)Subclass code
    0x00,                   // (bDeviceProtocol)Protocol code
    USB_EP0_BUFF_SIZE,      // (bMaxPacketSize0)Max packet size for EP0, see usb_config.h
    0x0925,                 // (idVendor)Vendor ID: 0x0925 is Lakeview Research's Vendor ID
    0x150c,                 // (idProduct) Product ID
    0x01,                   // (bcdDevice) Device release number in BCD format
    0x01,                   // (iManufacturer)Manufacturer string index
    0x02,                   // (iProduct)Product string index
    0x00,                   // (iSerialNumber)Device serial number string index
    0x01,                   // (bNumConfigurations)Number of possible configurations
};

Title: Re: Updated WinUSB application and firmware
Post by: Jan Axelson on May 18, 2013, 12:44:29 pm
Thank you for finding that!