question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

What's the difference between DEVINTERFACE_USB_DEVICE and WinUSB?

See original GitHub issue

I noticed there are 3 type devices defined in WindowsDeviceConstants.cs

public static Guid GUID_DEVINTERFACE_HID = new Guid("4D1E55B2-F16F-11CF-88CB-001111000030");
public static Guid GUID_DEVINTERFACE_USB_DEVICE = new Guid("A5DCBF10-6530-11D2-901F-00C04FB951ED");
public static Guid WinUSBGuid = new Guid("dee824ef-729b-4a0e-9c14-b7117d33a817");

So, what’s the difference between DEVINTERFACE_USB_DEVICE and WinUSB?

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:2
  • Comments:7 (5 by maintainers)

github_iconTop GitHub Comments

2reactions
st-arnoldcommented, Jan 14, 2020

EDIT: I think I figured it out now; only devices using WinUsb driver are supported so that is the reason for the GUID choice. I didn’t have any such devices connected at first (except “Billboard device” related to USB type-C, which should be a WinUsb device according to Device Manager, but doesn’t show up for some reason). Maybe the documentation could be made more clear on this?

I just struggled with a problem where no USB devices at all were listed when using WinUSB GUID:

image

After changing the GUID in WindowsDeviceFactoryBase.cs GetConnectedDeviceDefinitionsAsync

//var guidString = GetClassGuid().ToString(); var guidString = WindowsDeviceConstants.GUID_DEVINTERFACE_USB_DEVICE.ToString();

now devices get listed:

image

Running on Windows Desktop (Win 10 Pro ver 1903, build 18362.535) Usb.Net.WindowsSample but commented out HID and serial port device factories and enabled DebugLogger LogToConsole. Device.Net version 3.1.0

0reactions
MelbourneDevelopercommented, Jan 14, 2020

@st-arnold thanks for letting me know. I’d be keen to know if you can connect to any of those devices. I’ve been able to enumerate them in the past, but I only get errors when I connect. If you can connect to one, I’ll look at adding the guid to the library.

Read more comments on GitHub >

github_iconTop Results From Across the Web

WinUSB device - Windows drivers
A WinUSB device is a Universal Serial Bus (USB) device whose firmware defines certain Microsoft operating system (OS) feature descriptors that ...
Read more >
usb - How to work with WinUSB?
WinUsb.sys is a kernel-mode driver that can be installed as either a filter or function driver, above the protocol drivers in a USB...
Read more >
WinUSB - Wikipedia
WinUSB is a generic USB driver provided by Microsoft, for their operating systems starting with Windows Vista but which is also available for...
Read more >
What is the difference from MCHPUSB and WinUSB drivers?
Actually MCHPUSB driver (based on WDM model) works under Windows Vista or 7. It also works under Win2k, XP64 and Windows 2003 32bit/64bit....
Read more >
Explore USB with WinUSB
One reason why USB is so versatile is its support for four transfer types, each with different strengths. WinUSB supports control, bulk, and...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found