Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add DeviceInterfaceGUIDs registry key for Windows #43

Closed
reillyeon opened this issue Dec 21, 2017 · 10 comments
Closed

Add DeviceInterfaceGUIDs registry key for Windows #43

reillyeon opened this issue Dec 21, 2017 · 10 comments

Comments

@reillyeon
Copy link
Collaborator

In order for an application to find a USB device on Windows it must have a device interface GUID. For the root USB device this will be GUID_DEVINTERFACE_USB_DEVICE however for functions of a composite device there is no standard GUID. For devices using WinUSB Microsoft recommends adding a descriptor that tells Windows what GUID to use. This value ends up in the DeviceInterfaceGUIDs registry key when the device is enumerated.

@gusarov
Copy link

gusarov commented Mar 31, 2018

Looks like this is already implemented in d845253?

@gusarov
Copy link

gusarov commented Apr 1, 2018

Actually, I still have an issue that sounds exactly like a subject
image
I would be glad if you'll help me to fix this or point me to the right direction

@jpliew
Copy link
Contributor

jpliew commented Apr 1, 2018

@gusarov use regedit and search for 975F44D9-0D08-43FD-8B3E-127CA8AFFF9D first. If nothing then you should retry to download a fresh copy of Arduino and WebUSB to try again. If you find this GUID, you may need to try delete all the references to 975F44D9-0D08-43FD-8B3E-127CA8AFFF9D in the registry first. This appears in a few places, use regedit and search for the above GUID.

Ideally if you can, try on another computer that you have never plug in the board before and test if it is the board problem or windows problem.

Also, what board are you using?

@gusarov
Copy link

gusarov commented Apr 2, 2018

Pro Micro (clone)
Thanks, I just noticed that Arduino forgot my CPU setting and reset id back to 3.3v, while mine is 5v :\
Now the next problem - I still can see the COM device when connecting ProMicro with console sketch.., As far as I understand, there should be no more COM port.
PS: I'm flushing via SPI, via second Arduino ISP to avoid messing with USB.
And yes, there is no such GUID in registry

@jpliew
Copy link
Contributor

jpliew commented Apr 2, 2018

@gusarov you should see two devices appear on DEVICE MANAGER. See image below

image

@gusarov
Copy link

gusarov commented Apr 2, 2018

Thanks, looks like I've messed files too much, so I've started from the scratch. Redownloaded Arduino IDE zip, removed %AppDataLocal%\Arduino15
Just configured package_sparkfun_index.json, downloaded "Spark Fun AVR Boards" via boards manager.
Then I've added "-DUSB_VERSION=0x210" to promicro.build.extra_flags
Uploaded via Arduion as ISP...
And now I have similar picture, but except it is SparkFun Pro Micro instead of WebUSB
image
And chrome is not suggesting me the devices, the list on a web page is empty.
image

@gusarov
Copy link

gusarov commented Apr 2, 2018

Similar with Leonardo bootloader: (My debug led is on 7, so it fits for both)
image
This is what I'm uploading:
sketch_mar31a.zip
so, I just copied over webusb files to the sketch

@gusarov
Copy link

gusarov commented Apr 2, 2018

Finally, I got it... hardware\boards.txt have different vid/pid for the microwebusb, and looks like this is doing the trick... Now I have it in chrome, but Access Denied (looks like I've seen someone had such problem already)
UPD: Strange, it is not working on my machine but works on clean VM via VMware

@jpliew
Copy link
Contributor

jpliew commented Apr 2, 2018

@gusarov for access denied, check this out #44

@reillyeon
Copy link
Collaborator Author

@gusarov Thanks for pointing out that the patch to add the registry key descriptor had been landed. Closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants