I already read Creating a Virtual USB Device and Virtual USB device about creating a virtual USB Device. I am familiar with the Plug and Play handling by Windows as well as the driver mechanism.
So far I understood that first of all I would have to create another device driver which is used for the virtual USB device. But I am still lost on the point what actually is the virtual device. How would I control the behaviour of my virtual device?
Background: I develop a software which acts as a communication layer between an API and the USB driver. The behaviour of the USB device is well known to me. I even could provide the whole firmware. For reasons of QA, I would like to test my software without the bugs of the whole system or on the other hand easily implement errors to see how the software reacts. But what kind of software could implement this behaviour as virtual device?
Any documentations / instructions are welcome!
I used the USB/IP project to emulate USB devices in Python. Maybe it can help you to create your virtual USB devices: http://breaking-the-system.blogspot.com/2014/08/emulating-usb-devices-in-python-with-no.html