Hi All, We are happy to announce the USB Development Kit (UsbDk) project. USB Development Kit is a set of software modules meant to provide Windows user mode applications with direct and exclusive access to USB devices. This goal is achieved by by detaching given USB device from Windows PNP manager and device drivers stack and providing user mode with API for USB-specific operations on the device. Initial intention of the kit is USB device redirection support for spice remote desktop application however it may be used for any other purpose directly via native UsbDk API or using libusb (we are providing libusb Windows backend extensions for UsbDk). Some distinctive UsbDk properties are: 1. Device capture process is totally dynamic, i.e. no inf files and no self-signing needed, any device can be captured. 2. UsbDk co-exists with original device driver, when the device is not captured original driver is loaded by the system automatically. 3. If user mode client terminates unexpectedly for any reason system reverts to original device driver immediately. 4. UsbDk supports all types of devices and interfaces - bulk, isochronous, composite, HID etc. 5. Being USB filter driver UsbDk doesn't require WHQL-ing as per Microsoft requirements. UsbDk supports all Windows OS versions staring from Windows XP, i.e. XP/Vista/7/8/8.1/2003/2008/2008R2/2012/2012R2. Both 32 and 64 bit architectures are supported. UsbDk is fully open source and distributed under Apache 2.0 license. UsbDk source code repository is available at: http://cgit.freedesktop.org/spice/win32/usbdk Latest source tarball is at: http://www.spice-space.org/download/windows/usbdk/spice-usbdk-win-1.0-2-sources.zip Precompiled and signed by Red Hat binaries are available at: 1. 32 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.2_x86.msi 2. 64 bit: http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.2_x64.msi UsbDk documentation: 1. Short presentation: http://www.spice-space.org/docs/usbdk/UsbDk_at_a_Glance.pdf 2. SDM: http://www.spice-space.org/docs/usbdk/UsbDk_Software_Development_Manual.pdf 3. UsbDk architecture specificatin (part of source tree): http://cgit.freedesktop.org/spice/win32/usbdk/tree/ARCHITECTURE USB Development Kit software consists of Windows USB filter driver (UsbDk.sys), API DLL (UsbDkHelper.dll), simple command line application (UsbDkController.dll) for API usage demonstration and verification. Additionally we've created patches for libusb that allow usage of UsbDk as backend on Windows operating systems and submitting those patches to libusb-devel mailing list. Having UsbDk patches applied to libusb it is fairly easy to use UsbDk as USB devices redirection engine for Spice-GTK. We've created a set of patches to allow run-time selection of redirection engine (WinUsb/UsbDk) and will be submitting those to this list soon. UsbDk is maintained by Dmitry Fleytman (dfleytma@xxxxxxxxxx) and Kirill Moizik (kmoizik@xxxxxxxxxx), we will be glad to answer your questions sent to us directly or via this mailing list. Enjoy it and best regards, Dmitry _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel