-
Notifications
You must be signed in to change notification settings - Fork 357
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
Microchip chip device tool programmer #111
Comments
Old versions also had the problem, didn't it? There's remarkably different two things in your screenshots: Device name and instance id. But capitalization of instance id would not matter because the vendor id and the product id were well detected. So how about enforcing the device name to "Atmel-ICE CMSIS-DAP" from "on USB/IP VHCI"? The string to be modified is here: usbip-win/driver/vhci/vhci_vpdo.c Line 17 in bcf3afa
|
Yes.
I have provided screenshots for the case of connecting the device locally without using a USBIP client - these are Atmel-ICE CMSIS-DAP device name and screenshots when using a USBIP client - I already changed this field, and even added the serial number. But it did not lead to a positive result. |
I had simillar problem. My programmer must be atrached to native Windows USB HUB otherwise it does not work. (I had problem even with comercial solutions if I choose "attach devices to separate device hub") |
I think the problem lies in the usb / ip configuration. Missing value in the Power field. This can be seen in the last screenshot. |
Yes, I will make such a log. Can I use the UsbSnoop tool? |
@kmvi-dev : I recommend USBPcap because I should learn usbsnoop. 😄 I have used Wireshark to examine USB captured logs and USBPcap supports wireshark format. |
Ok . Now I will make a log with USBCap. But first I will say that the difference in the sequence and contents of URB packets between the local connection and the connection using usbip is significant. I checked URB with USBSnoop |
the log file is ready, |
@kmvi-dev : Driver file please.. |
Drivers are shipped with the Atmel studio 7.0 distributive. But I can send you a folder with these drivers |
@kmvi-dev : many infs.. Which one should be installed? |
@cezanne |
@cezanne |
@kmvi-dev : I also installed the microcontroller programming environment. I saw many drivers to be installed. BTW, the device ID's are different between your screenshot(PID:2141) and your USB capture(PID: 2104). Here is a wireshark view loading your capture. |
@cezanne |
@cezanne |
@kmvi-dev : A virtual avrispmkii device was implemented by usbip-vstub, which was launched to support a virtual stub for usbip-win. BTW, HW id's are quite different each other. In my case, HW id has no suffix MI(multiple interface). Could you check? Other capture or screenshot would be helpful. |
>BTW, HW id's are quite different each other. In my case, HW id has no suffix MI(multiple interface). >Could you check? Other capture or screenshot would be helpful |
@cezanne |
@kmvi-dev : Thanks for sharing good stuff. I examined all usbsnoop logs. |
@cezanne |
@kmvi-dev : Indeed, your new screenshots nicely show the differences between usbip and virtualhere. I tried to use the same device name but the S/W could not detect. Other different factors(power or capability) will be tried. An empty power entry of usbip-win seems to be the highest probable cause of this issue but I can't figure out why usbip-win presents no power entry. |
I think it still comes from the situation that you commented above
|
@kmvi-dev : The vhci driver of usbip-win has not been regarded as a real USB host controller. Because vhci does not support GUID_DEVINTERFACE_USB_HOST_CONTROLLER. It's a very old weakness.(see #46) If it is implemented, usbdeview can find the power and usb version of a usbip-win device and empty entries of usbdeview will be resolved. Of course, device programming S/W is able to find a device virtualized by usbip-win via hub device interface. So... I will have a try to implement |
@cezanne |
Almost correct. I hope that the mentioned implementation will resolve your issue.
Sure, I will. Thanks. |
@cezanne |
@kmvi-dev : I'm trying to restructure usbip-win to support a virtual hub enumerated by vhci. I hope that a new branch will be published soon. Anyway, host controller and root hub interface have been already implemented at roothub branch. But it does not solve your issue because a location path of a device is not properly configured via GUID_PNP_LOCATION_INTERFACE. |
@cezanne this is good news. Thank you. And thank you very much for the roothub branch. |
@kmvi-dev : I'm still working but share the new_vhci branch. usbview seems to show usbip-win but other tools(device programming and usbdeview) cannot detect. More IOCTL's should be implemented or revised. |
@kmvi-dev : Please check the recent new_vhci branch and a release page. Although lots of IOCTL's have been implemented and usbview works well, device programming app does not detect a usbip-win device. usbdeview also fails to show correctly. So, I asked power detection method to the author of usbdeview. |
@cezanne |
@cezanne http://prntscr.com/svc740 The project was build in VS-2017 This is a list of built binaries |
@kmvi-dev : README.md has not been updated.
"usbip.exe install" will do upper procecdures. Please confirm that all files are v0.2.0(especially usbip.exe) and usbip_root.inf is copied. My screenshot is attached. (I had tested with binaries in the release page) |
@cezanne |
@cezanne |
The old WDM-based vhci could not fully support USB libraries and applications such as #111 because it did not implement many USB host contoller & hub functionalities. They were impossible to be properly developed with poor MS documents. However, MS has already implemented most things via USB device emulation(UDE). Now, usbip-win provides a vhci driver using UDE. It is experimental and more tests are required.
@cezanne |
The old WDM-based vhci could not fully support USB libraries and applications such as #111 because it did not implement many USB host contoller & hub functionalities. They were impossible to be properly developed with poor MS documents. However, MS has already implemented most things via USB device emulation(UDE). Now, usbip-win provides a vhci driver using UDE. It is experimental and more tests are required.
When using the latest version of USBIP windows client, the following problem was discovered:
When forwarding a USB chip programming device manufactured by Microchip Technology Inc, in particular, the Atmell-ICE programmer (this is the programmer debugger), or, for example, AVRISp-MKII (just the programmer), MPLAB ICD 3 In-Circuit Debugger and IDE that use these tools , work with the WinUsb driver. When forwarding using the usbip client on Windows and the usbip server on ubuntu 18.04 and kernel version 5.3.0.42, device drivers are loaded, but the programming environment does not detect remote devices on the bus.
In the screenshots:
IDE, on which both local access and forwarding of the USBIP chip programmig device was checked.


UsbLocalConnect.png - local connection to the chip programming device (without using USBIP).

Then the USBIP driver was installed:

and the result of the device forwarding using the USBIP driver and app:

A similar problem manifests itself in the MPLAB X IDE (v5.10)
The text was updated successfully, but these errors were encountered: