Releases: vadimgrn/usbip-win2
Releases · vadimgrn/usbip-win2
usbip-win2 UDE 0.9.5.4
- Fixed find endpoint by USBD_PIPE_INFORMATION
- Fixed uninstall issue on systems older than Windows 11 version 21H2. A device node of Emulated USB Controller cannot be removed using "pnputil /remove-device" because the "/deviceid" flag for this command was introduced in Windows 11 version 21H2. As a result, after uninstalling USBip, unknown devices with Hardware ID "ROOT\USBIP_WIN2\UDE" might remain in Device Manager.
- Complete IRPs with priority boost accordingly to USB device class/subclass. For example, priority boost will be set to IO_SOUND_INCREMENT for USB_DEVICE_CLASS_AUDIO device (see IoCompleteRequest).
- Improved UNICODE <-> UTF8 tranformation
- Additional component "Program DataBase files" added to the installer. Files will be installed into USBip installation folder.
- Debug build is no longer part of a release because it requires VC++ multi-threaded debug libraries that are not redistributable
usbip-win2 UDE 0.9.5.3
This is a bug fix release. It is highly recommended to upgrade from a previous version to this one.
usbip2_filter driver fixes
- BSOD: wrong error handling for IoCallDriver in IRP_MJ_INTERNAL_DEVICE_CONTROL
- BSOD: improper usage of IO_REMOVE_LOCK in IRP_MJ_INTERNAL_DEVICE_CONTROL
- BSOD: using USBD_HANDLE after USBD_CloseHandle
usbip2_ude driver
- Use a list of egress requests in addition to the queue
- Refactoring wsk::SOCKET
- Reliable auto detach on an error or if USB device has been plugged out
- "usbip detach" fixes
- Always disconnect from a server
- Always release root hub port
- BSOD: IRQL_NOT_LESS_OR_EQUAL in arbitrary third-party drivers (Arg1: 0000000000000008, memory referenced)
- BSOD: WDF_VIOLATION for udecx!Endpoint_UcxEndpointCleanup ( A NULL parameter was passed to a function that required a non-NULL value)
- BSOD: using TCP/IP socket after closing it
- BSOD: several race conditions during USB device plugout and delete
usbip-win2 UDE 0.9.5.2
- Fixed the issue when you attach to a flash drive/use it/detach, but for all subsequent attaches the drive is no longer working. The workaround is to unbind/bind the device on server side. Now it is not necessary.
- Some USB audio devices can work now, for example audio card. Headsets\speakers still do not work.
- Program database files are installed into "C:\Program Files\USBip\pdb"
- Misc. improvements
usbip-win2 WDM 0.9.3.4
- Fixed order of URB functions set_feature_to_other/clear_feature_to_other, they were swapped
- InnoSetup 6.2.2
usbip-win2 UDE 0.9.5.1
- libusbip is shipped as DLL
- The installer has option to install VC++ runtime libraries
usbip detach --allmust be used to detach all devices,detach -p 0ordetach -p -1are no longer valid commands- New feature - attach remote devices each time the driver is loaded or on demand
usbip port --stashsaves listed devices as multi-string value of key "PersistentDevices" in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbip2_ude\Parameters- Only devices listed by the command will be saved, for example
usbip port --stashsaves all currently attached devicesusbip port --stash 1 2saves attached devices on the given ports, if any- If the output is empty, empty list will be saved
usbip list --stashedshows devices saved byusbip port --stashusbip attach --stashedwill attach to devices saved byusbip port --stash- Devices saved by
usbip port --stashwill be attached each time the driver is loaded- The driver will try to attach a device indefinitely if a connection with a server cannot be established
- Maximum delay between attempts is 30 minutes
- The driver stops attempts to attach the device if it is removed from "PersistentDevices"
- The driver will not try to reattach the device if the connection was established but closed later (the server was rebooted, etc.)
usbip-win2 UDE 0.9.5.0
Brand new UDE driver
- The first beta release
- Will supersede WDM driver when become fully functional
- Is stable but has known issues for some kind of devices. For example, audio devices do not work.
- If it works with your devices, this is the better alternative for WDM driver and should be used instead of it
- WDM driver releases are 0.9.3.X or 0.9.4.X
- UDE driver releases are 0.9.5.X and later
UDE driver usbip2_ude
- Written from scratch, has nothing common with cezanne driver except the same UDE framework is used
- KMDF is used
- Virtual USB 3.0 Root Hub has 30 USB 2.0 ports and 30 USB 3.0 ports
- System requirements remain the same as for WDM driver
Upper class filter driver usbip2_filter
usbip library
- The first public release
- Shipped as static library
- Isolates developers from the driver's low-level interface
- Requires C++ 17 to compile
- Pick "USBIP Software Development Kit" during an installation. C++ headers will be installed into "C:\Program Files\USBip\include\usbip", libusbip.lib and libusbip.pdb into USBip/lib.
- API may be changed in future versions if necessary
- Could be used for writing GUI app or custom software that does not use usbip utility
usbip command line utility
usbip-win2 WDM 0.9.3.3
- This release contains the single bug fix that was backported from UDE driver
- Sources of WDM driver moved from "master" to "wdm" branch
- "master" and "develop" branches now contain UDE driver
- WDM driver will be maintained until UDE driver will become fully functional
- All development efforts are focused on the UDE driver
usbip-win2 0.9.3.2
- NT_ASSERT fixed when a device is removing
- Fixed possible SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION for partial MDL. This issue was detected and fixed for UDE driver, WDM worked well using the same code
- Removed creation of Parameters/VerboseOn=1 for the driver during its installation, INF file has this directive now
- Set cmd_submit.number_of_packets=-1 for strict compatibility with USBIP protocol
- Driver's uninstallation utility devnode.exe can prompt for the system reboot
usbip-win2 0.9.3.1
- Fixed compatibility issue with dorssel/usbipd-win server
- You can skip this release if you don't use usbip-win2 with usbipd-win
SAINT JAVELIN
usbip-win2 0.9.3.0
- Driver creates two host controller interfaces
- Each of them has USB Root Hub with 30 ports
- USB 2.X devices appear on the first hub, USB 3.X on the second hub
- The second hub should be USB 3.0, but this work is incomplete
- Driver can be installed and used alongside with cezanne/usbip-win, now they are completely independent
- Uninstaller removes usbip root device node using its hardware id rather than hardcoded instance id
- Installer checks for minimum required Windows version
- 'usbip port' command syntax now is 'usbip port [number...]'