For Windows 10 / Windows 8.1 / Windows 7. If drivers were not received from Plugable via email soon after purchase, download the most recent drivers from the Plugable drivers page. (If no internet connection is available, drivers are located on the enclosed CD.) Launch the driver installer. Connect the display adapter when prompted do so. For the HP 6910p Notebook, we can't find a suitable 64bit driver for the Infrared device. We imported the version SMSC IrCC 5.1.3600.7 in SCCM, but that turned out to be the 32bit version, which won't install on 64bit W7. There is no driver to be found on the SMSC.COM or HP.COM webpage, and all ot.
- Smsc Input Devices Driver Download For Windows 8.1
- Smsc Input Devices Driver Download For Windows 7
- Smsc Input Devices Driver Download For Windows Xp
Fan control is the management of the rotational speed of an electric fan. In computers, various types of computer fans are used to provide adequate cooling, and different fan control mechanisms balance their cooling capacities and noise they generate. This is commonly accomplished by the motherboards having hardware monitoring circuitry, which can be configured by the end-user through BIOS or other software to perform fan control.[1]
Need for fan control[edit]
Download the Windows Driver Kit (WDK) and install it. Create a driver package folder on the machine that the USB device is connected to.
新世代Wi-Fi 6(802.11ax)の隆盛により、有線・無線ネットワーク接続の帯域幅への需要が増大しています。Intel® Celeron® J4125クアッドコア2.0 GHzプロセッサと2.5GbEを組み合わせることで、TS-453Dは、現代のビジネスにおいて優れたNASソリューションとなります。. Free smsc fast infrared driver windows 10 download software at UpdateStar - 1,746,000 recognized programs - 5,228,000 known versions - Software News. To rapidly & securely update outdated and faulty drivers and install the best matched missing drivers not only for your device drivers.
As modern PCs grow more powerful so do their requirements for electrical power. Computers emit this electrical power as heat generated by all major components. Heat production varies with system load, where periods of compute-intensive activity generate much more heat than the idle time does.[1]
Processors in most early x86-based computers, up to some of the early 486s, did not need active ventilation. Power supplies needed forced cooling, and power supply fans also circulated cooling air through the rest of the PC with the ATX standard. The byproduct of increased heat generation is that the fan(s) need to move increasing amounts of air and thus need to be more powerful. Since they must move more air through the same area of space, fans will become more noisy.
Fans installed in a PC case can produce noise levels of up to 70 dB. Since fan noise increases with the fifth power of the fan rotation speed,[2] reducing revolutions per minute (RPM) by a small amount potentially means a large reduction in fan noise. This must be done cautiously, as excessive reduction in speed may cause components to overheat and be damaged.[needs update] If done properly fan noise can be drastically reduced.
Fan connectors[edit]
The common cooling fans used in computers use standardized connectors with two to four pins. The first two pins are always used to deliver power to the fan motor, while the rest can be optional, depending on fan design and type:
- Ground – common ground
- Vcc (Power) – nominally a +12 V supply, though it may be variable depending on fan type and desired fan rotation speed
- Sense (or tachometer) output from fan – outputs a signal that pulses twice for each revolution of the fan as a pulse train, with the signal frequency proportional to the fan speed
- Control input – a pulse-width modulation (PWM) input signal, used when the cooling fan assembly has an internal motor driver circuit. Fan assemblies with this control input provide the ability to adjust the rotational speed of the fan without changing the input voltage delivered to the cooling fan assembly. A variable rotation speed allows the cooling rate to be adjusted to meet demand, quietening the fan and saving energy when full speed is not required.
The color of the wires connected to these pins varies depending on the number of connectors, but the role of each pin is standardized and guaranteed to be the same on any system. Cooling fans equipped with either two- or three-pin connectors are usually designed to accept a wide range of input voltages, which directly affects the rotation speed of the blades.
Types of control[edit]
Thermostatic[edit]
In this style of fan control, the fan is either on or off. Temperature inside the chassis is checked, and if an outside-of-range temperature is detected, fans are set to their maximum speed. When the temperature drops below a threshold again, the fans are turned back off. This control method reduces noise issues and power requirements during periods of low usage, but when the system is operating at capacity, the fan noise can become a problem again.
Linear voltage regulation[edit]
A standard cooling fan is a DC motor with blades attached. By varying the voltage input across the acceptable range for a fan, the speed of the fan will increase (to added voltage) and decrease (to reduced voltage); a faster fan means more air moved and thus a higher heat exchange rate. There are a few ways to perform this regulation, as described below.
Resistors[edit]
Resistors in series with a fan's power pin are the simplest method of reducing fan noise, but they add to the heat generated inside the computer case. Since the voltage drop is proportional to the current, the fan may not start. They need to be of the appropriate power rating. For variable fan control, potentiometers could be used along with a transistor such as a MOSFET whose output voltage is controlled by the potentiometer. It is possible to use a rheostat instead.
Diodes[edit]
A diode in series with the fan will reduce the voltage being output to the fan. A silicon diode provides a relatively constant voltage drop of about 0.7 V per diode; data sheets for a specific diode specify its voltage drop, for example the 1N4001 silicon diode's voltage drop varies from approximately 0.7 to 0.9 V as the current varies from 0.01 to 1 A.[3] The power rating should be noted and some diodes may require cooling to operate at their rated current. The voltage drop across the diode will fall with temperature, causing the fan to speed up.
Like other series regulators, the diode will dissipate power equal to its voltage drop times the current passing through it.
Voltage modification ('volt modding')[edit]
The voltage a computer cooling fan receives is defined by the difference between the voltage wire (+12 V) and the ground wire (+0 V). By connecting one or both wires to a different voltage, the voltage the fan receives will be different from the default 12 V the fan was designed for.
Increasing the voltage[4] over the default 12 V can be achieved by e.g. connecting the −12 V or −5 V power line instead of the ground wire in the fan connector, and by connecting the 5 V power line in the +12 V input of the fan connector. Through this procedure, 10, 17 and 24 V voltages can be achieved, with voltages exceeding 12 V being potentially damaging to the computer fans rated at 12 V. However, the combination of modern power supplies no longer being required to provide a −5 V power line and the limited power delivery capability of the −12 V line (usually less than 1 A of current) reduces the total capacity for volt modded fans in modern systems.
The safest method of volt modding is connecting the +5 V power line to the +12 V input of the fan, which reduces the voltage the fan receives to +5 V. Some fans will not work at such low voltage at all, while some other fans may run at +5 V once they have started rotating at a reasonable speed.
Another method of reducing the fan speed[5] is by moving the 5 V wire in the classical Molex power connector in the place of the Ground wire going to the fan, thereby delivering +7 V (12 V − 5 V = 7 V) to the fan. However, this is a potentially risky method, because +5 V PSU line is intended to source current only, not sink it, so the PSU is likely to get damaged in case of load on 5 V PSU line being below the load generated by 7 V fans (e.g. when PC enters idle/sleep state). Also, the components inside the computer using +5 V power might be exposed to over 5 V in case of a short circuit in the fan.
Integrated or discrete linear regulators[edit]
Common voltage regulator ICs like the popular LM78xx series are sometimes used to provide variable or constant voltage to fans. When thermally bonded to the computer's chassis, one of these ICs can provide up to 1 A of current at a voltage of 6, 8, 9 or 10 V for the LM7806, LM7808, LM7809 and LM7810, respectively.[6] Adjustable versions like the popular LM317 also exist; when combined with a potentiometer, these adjustable regulators allow the user to vary the fan speed of several fans at currents far in excess of what a standard potentiometer could handle.[7]
For higher currents, discrete linear regulators are relatively simple to construct using a power transistor or MOSFET and a small signal transistor or a Zener diode as a voltage reference. While discrete regulators require additional components (a minimum of two transistors, three resistors and a small capacitor), they allow for arbitrarily high currents, allowing for the regulation of additional fans and accessories.
As with other linear regulators, the waste heat that is produced will be roughly P = (Vin - Vout) Iout.[8]
Pulse-width modulation[edit]
Pulse-width modulation (PWM) is a common method of controlling computer fans. A PWM-capable fan is usually connected to a 4-pin connector (pinout: Ground, +12 V, sense, control). The sense pin is used to relay the rotation speed of the fan and the control pin is an open-drain or open-collector output, which requires a pull-up to 5 V or 3.3 V in the fan. Unlike linear voltage regulation, where the fan voltage is proportional to the speed, the fan is driven with a constant supply voltage; the speed control is performed by the fan based on the control signal.
The control signal is a square wave operating at 25 kHz, with the duty cycle determining the fan speed. 25kHz is used to raise the sound of the signal above the range of human hearing; use of a lower frequency could produce an audible hum or whine. Typically a fan can be driven between about 30% and 100% of the rated fan speed, using a signal with up to 100% duty cycle. The exact speed behavior (linear, off until a threshold value, or a minimum speed until a threshold) at low control levels is manufacturer dependent.[9]
Many motherboards feature firmware and software that regulates these fans based on processor and computer case temperatures.
Fan speed controllers[edit]
Another method, popular with gamers[which?], is the manual fan speed controller. They can be mounted in an expansion slot or a 5.25' or 3.5' drive bay or come built into a computer's case. Using switches or knobs, attached fans can have their speeds adjusted by one of the above methods.
Hardware[edit]
Most modern motherboards feature hardware monitoring chips, which are capable of performing fan control,[1] usually through the PWM method as described above. These chips can be configured through BIOS,[10]:§11.1 or by using specialised software once the operating system has booted.
Processors produce varying levels of heat depending on system load, thus it makes sense to reduce the speed of the fans during idle to decrease the noise produced by fans running full speed, until the load does goes up, at which point fan speed must be adjusted promptly to avoid overheating. Modern hardware monitor chips, once configured, are capable of independently running this monitoring loop without any need for a functioning BIOS or an operating system. This automatic control offered by some chips may be called Thermal Cruise mode for maintaining a thermal envelope, as well as Fan Speed Cruise mode for maintaining a specific fan speed automatically.[10]:§12
However, not all software is capable of accessing these advanced configuration parameters provided by some chips, and it is very common that the generic software implements only the most basic interfacing with the chips, namely, an explicit setting for the duty cycle for each fan control setting, subsequently performing the duty cycle adjustments itself in software, and thus requiring that both the operating system, as well as this third-party software itself to continue running on the main CPU to perform the monitoring loop.[10]:§11.3 This may not be a problem until the system or the utility crashes, at which point the system may overheat due to the failure of the fans to maintain adequate cooling whilst running at reduced voltage and speed.
Software[edit]
Smsc Input Devices Driver Download For Windows 8.1
The method by which the software physically controls the fan is usually PWM (see above). Many companies now provide software to control fan speeds on their motherboards under Microsoft Windows or Mac OS X/MacOS.
- AOpen motherboards can use 'SilentTEK'.[11]
- ASUS motherboards can use 'Fan Xpert'[12] or 'Thermal Radar' [13]
- MSI motherboards can use 'Core Center'.
- Universal abit motherboards can use 'μGuru'.
- Gigabyte motherboards can use 'EasyTune 6'.
- Intel desktop boards (older socket 478, etc.) use 'Active Monitor' and 'Desktop Control Centre'.[14][15]
- Intel desktop boards (newer socket 775, etc.) use 'Desktop Utilities'.[16]
- Dell laptops can use 'i8kutils'.[17]
- LenovoThinkPad notebooks can use the freeware 'TPFanControl'.[18]
- Lenovo ThinkPads running FreeBSD can use the
fan_level
sysctl of theacpi_ibm
driver.[19] - Lenovo ThinkPads running DragonFly BSD can use the
fan_level
sysctl of theacpi_thinkpad
driver.[20] - Macintosh computers can use Fan Control.[21]
- Computers running Linux can use lm_sensors.[22]
- Computers running OpenBSD or DragonFly BSD with hw.sensors patch for fan-control applied.[23]
There are also third-party programs that work on a variety of motherboards and allow wide customization of fan behavior depending on temperature readings from the motherboard, CPU, and GPU sensors, as well as allowing manual control. Two such programs are SpeedFan[24] and Argus Monitor.[25]
See also[edit]
References[edit]
- ^ abcConstantine A. Murenin (2007-04-17). '1. Background'. Generalised Interfacing with Microprocessor System Hardware Monitors. Proceedings of 2007 IEEE International Conference on Networking, Sensing and Control, 15–17 April 2007. London, United Kingdom: IEEE. pp. 901–906. doi:10.1109/ICNSC.2007.372901. ISBN978-1-4244-1076-7. IEEE ICNSC 2007, pp. 901–906.
- ^Barber, Antony (1992). Handbook of Noise and Vibration Control - Antony Barber - Google Books. ISBN9781856170796. Retrieved 2014-01-01.
- ^http://www.diodes.com/datasheets/ds28002.pdf
- ^Overspin Your Fans
- ^Get 12V, 7V or 5V for your Fans
- ^'LM7808'. fairchildsemi.com. Archived from the original on 2015-04-02. Retrieved 2014-08-13.
- ^'LM317 - Single Channel LDO - Linear Regulator (LDO) - Description & parametrics'. ti.com.
- ^'Thermal Considerations for Linear Regulators'. November 28, 2006. Archived from the original on 2015-04-02. Retrieved 2015-02-26.
- ^'4-Wire PWM Controlled Fans Specification'(PDF). September 2005. Archived from the original(PDF) on 2011-07-26. Retrieved 2011-07-21.
- ^ abcConstantine A. Murenin (2010-05-21). OpenBSD Hardware Sensors — Environmental Monitoring and Fan Control (MMath thesis). University of Waterloo: UWSpace. hdl:10012/5234. Document ID: ab71498b6b1a60ff817b29d56997a418.
- ^Mike Chin (2002-12-29). 'Review: SilentTEK - AOpen's mobo-embedded fan controller'. Retrieved 2019-03-25.
- ^'Fan Xperts'. asus.com. Archived from the original on 2013-03-02.
- ^'thermal-radar2/detail-2.jpg'. Retrieved 2019-03-25.
- ^'Intel® Desktop Boards - Intel® Active Monitor'. Intel.com. 2004-12-16. Archived from the original on 2014-01-01. Retrieved 2009-02-27.
- ^'Intel® Desktop Control Center'. Intel. Archived from the original on 2014-01-01. Retrieved 2009-02-27.
- ^'Intel® Desktop Utilities'. Intel. Archived from the original on 2014-01-02. Retrieved 2009-02-27.
- ^'i8kutils in Launchpad'. launchpad.net.
- ^'TPFanControl by troubadix'. tpfancontrol.com. Archived from the original on 2016-07-14. Retrieved 2016-07-17.
- ^'acpi_ibm.c'. BSD Cross Reference. FreeBSD. Lay summary.
dev.acpi_ibm.0.fan_level
- ^'acpi_thinkpad.c'. BSD Cross Reference. DragonFly BSD. Lay summary.
hw.acpi.thinkpad.fan_level
- ^'Fan Control'. www.derman.com. Archived from the original on 2016-12-20. Retrieved 2016-12-06.
- ^'lm-sensors'. lm-sensors.org. Archived from the original on 2009-02-28.
- ^Constantine A. Murenin (2010-03-14). 'Quiet computing with BSD: Fan control with sysctl hw.sensors and lm(4) on OpenBSD and DragonFly BSD'. Retrieved 2019-03-25.
- ^'SpeedFan - Access temperature sensor in your computer'.
- ^'Argus Monitor - Software to control CPU, GPU and System fans using any available PC temperature source'.
External links[edit]
- 4-Wire PWM Controlled Fans Specification v1.3, Intel
- 3-Wire and 4-Wire Fan Connectors, Intel
- 3-Wire, 4-Wire Motherboard Fan Connector Pinouts, AllPinouts
- Why and How to Control (2/3/4-wire) Fan Speed for Cooling Electronic Equipment, Analog Devices
For certain Universal Serial Bus (USB) devices, such as devices that are accessed by only a single application, you can install WinUSB (Winusb.sys) in the device's kernel-mode stack as the USB device's function driver instead of implementing a driver.
This topic contains these sections:
Automatic installation of WinUSB without an INF file
As an OEM or independent hardware vendor (IHV), you can build your device so that the Winusb.sys gets installed automatically on Windows 8 and later versions of the operating system. Such a device is called a WinUSB device and does not require you to write a custom INF file that references in-box Winusb.inf.
When you connect a WinUSB device, the system reads device information and loads Winusb.sys automatically.
For more information, see WinUSB Device.
Installing WinUSB by specifying the system-provided device class
When you connect your device, you might notice that Windows loads Winusb.sys automatically (if the IHV has defined the device as a WinUSB Device). Otherwise follow these instructions to load the driver:
- Plug in your device to the host system.
- Open Device Manager and locate the device.
- Select and hold (or right-click) the device and select Update driver software... from the context menu.
- In the wizard, select Browse my computer for driver software.
- Select Let me pick from a list of device drivers on my computer.
- From the list of device classes, select Universal Serial Bus devices.
- The wizard displays WinUsb Device. Select it to load the driver.
If Universal Serial Bus devices does not appear in the list of device classes, then you need to install the driver by using a custom INF.The preceding procedure does not add a device interface GUID for an app (UWP app or Windows desktop app) to access the device. You must add the GUID manually by following this procedure.
Load the driver as described in the preceding procedure.
Generate a device interface GUID for your device, by using a tool such as guidgen.exe.
Find the registry key for the device under this key:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetEnumUSB<VID_vvvv&PID_pppp>
Under the Device Parameters key, add a String registry entry named DeviceInterfaceGUID or a Multi-String entry named DeviceInterfaceGUIDs. Set the value to the GUID you generated in step 2.
Disconnect the device from the system and reconnect it to the same physical port.Note If you change the physical port then you must repeat steps 1 through 4.
Writing a custom INF for WinUSB installation
As part of the driver package, you provide an .inf file that installs Winusb.sys as the function driver for the USB device.
The following example .inf file shows WinUSB installation for most USB devices with some modifications, such as changing USB_Install in section names to an appropriate DDInstall value. You should also change the version, manufacturer, and model sections as necessary. For example, provide an appropriate manufacture's name, the name of your signed catalog file, the correct device class, and the vendor identifier (VID) and product identifier (PID) for the device.
Also notice that the setup class is set to 'USBDevice'. Vendors can use the 'USBDevice' setup class for devices that do not belong to another class and are not USB host controllers or hubs.
If you are installing WinUSB as the function driver for one of the functions in a USB composite device, you must provide the hardware ID that is associated with the function, in the INF. You can obtain the hardware ID for the function from the properties of the devnode in Device Manager. The hardware ID string format is 'USBVID_vvvv&PID_pppp'.
The following INF installs WinUSB as the OSR USB FX2 board's function driver on a x64-based system.
Starting in Windows 10, version 1709, the Windows Driver Kit provides InfVerif.exe that you can use to test a driver INF file to make sure there are no syntax issues and the INF file is universal. We recommened that you provide a universal INF. For more information, see Using a Universal INF File.
Only include a ClassInstall32 section in a device INF file to install a new custom device setup class. INF files for devices in an installed class, whether a system-supplied device setup class or a custom class, must not include a ClassInstall32 section.
Except for device-specific values and several issues that are noted in the following list, you can use these sections and directives to install WinUSB for any USB device. These list items describe the Includes and Directives in the preceding .inf file.
USB_Install: The Include and Needs directives in the USB_Install section are required for installing WinUSB. You should not modify these directives.
USB_Install.Services: The Include directive in the USB_Install.Services section includes the system-supplied .inf for WinUSB (WinUSB.inf). This .inf file is installed by the WinUSB co-installer if it isn't already on the target system. The Needs directive specifies the section within WinUSB.inf that contains information required to install Winusb.sys as the device's function driver. You should not modify these directives.Note Because Windows XP doesn't provide WinUSB.inf, the file must either be copied to Windows XP systems by the co-installer, or you should provide a separate decorated section for Windows XP.
USB_Install.HW: This section is the key in the .inf file. It specifies the device interface globally unique identifier (GUID) for your device. The AddReg directive sets the specified interface GUID in a standard registry value. When Winusb.sys is loaded as the device's function driver, it reads the registry value DeviceInterfaceGUIDs key and uses the specified GUID to represent the device interface. You should replace the GUID in this example with one that you create specifically for your device. If the protocols for the device change, create a new device interface GUID.
Note User-mode software must call SetupDiGetClassDevs to enumerate the registered device interfaces that are associated with one of the device interface classes specified under the DeviceInterfaceGUIDs key. SetupDiGetClassDevs returns the device handle for the device that the user-mode software must then pass to the WinUsb_Initialize routine to obtain a WinUSB handle for the device interface. For more info about these routines, see How to Access a USB Device by Using WinUSB Functions.
The following INF installs WinUSB as the OSR USB FX2 board's function driver on a x64-based system. The example shows INF with WDF coinstallers.
USB_Install.CoInstallers: This section, which includes the referenced AddReg and CopyFiles sections, contains data and instructions to install the WinUSB and KMDF co-installers and associate them with the device. Most USB devices can use these sections and directives without modification.
The x86-based and x64-based versions of Windows have separate co-installers.
Note Each co-installer has free and checked versions. Use the free version to install WinUSB on free builds of Windows, including all retail versions. Use the checked version (with the '_chk' suffix) to install WinUSB on checked builds of Windows.
Smsc Input Devices Driver Download For Windows 7
Each time Winusb.sys loads, it registers a device interface that has the device interface classes that are specified in the registry under the DeviceInterfaceGUIDs key.
Note If you use the redistributable WinUSB package for Windows XP or Windows Server 2003, make sure that you don't uninstall WinUSB in your uninstall packages. Other USB devices might be using WinUSB, so its binaries must remain in the shared folder.
How to create a driver package that installs Winusb.sys
Smsc Input Devices Driver Download For Windows Xp
To use WinUSB as the device's function driver, you create a driver package. The driver package must contain these files:
- WinUSB co-installer (Winusbcoinstaller.dll)
- KMDF co-installer (WdfcoinstallerXXX.dll)
- An .inf file that installs Winusb.sys as the device's function driver. For more information, see Writing an .Inf File for WinUSB Installation.
- A signed catalog file for the package. This file is required to install WinUSB on x64 versions of Windows starting with Vista.
Note Make sure that the driver package contents meet these requirements:
- The KMDF and WinUSB co-installer files must be obtained from the same version of the Windows Driver Kit (WDK).
- The co-installer files must be obtained from the latest version of the WDK, so that the driver supports all the latest Windows releases.
- The contents of the driver package must be digitally signed with a Winqual release signature. For more info about how to create and test signed catalog files, see Kernel-Mode Code Signing Walkthrough on the Windows Dev Center - Hardware site.
Download the Windows Driver Kit (WDK) and install it.
Create a driver package folder on the machine that the USB device is connected to. For example, c:UsbDevice.
Copy the WinUSB co-installer (WinusbcoinstallerX.dll) from the WinDDKBuildNumberredistwinusb folder to the driver package folder.
The WinUSB co-installer (Winusbcoinstaller.dll) installs WinUSB on the target system, if necessary. The WDK includes three versions of the co-installer depending on the system architecture: x86-based, x64-based, and Itanium-based systems. They are all named WinusbcoinstallerX.dll and are located in the appropriate subdirectory in the WinDDKBuildNumberredistwinusb folder.
Copy the KMDF co-installer (WdfcoinstallerXXX.dll) from the WinDDKBuildNumberredistwdf folder to the driver package folder.
The KMDF co-installer (WdfcoinstallerXXX.dll) installs the correct version of KMDF on the target system, if necessary. The version of WinUSB co-installer must match the KMDF co-installer because KMDF-based client drivers, such as Winusb.sys, require the corresponding version of the KMDF framework to be installed properly on the system. For example, Winusbcoinstaller2.dll requires KMDF version 1.9, which is installed by Wdfcoinstaller01009.dll. The x86 and x64 versions of WdfcoinstallerXXX.dll are included with the WDK under the WinDDKBuildNumberredistwdf folder. The following table shows the WinUSB co-installer and the associated KMDF co-installer to use on the target system.
Use this table to determine the WinUSB co-installer and the associated KMDF co-installer.
WinUSB co-installer KMDF library version KMDF co-installer Winusbcoinstaller.dll Requires KMDF version 1.5 or later Wdfcoinstaller01005.dll
Wdfcoinstaller01007.dll
Wdfcoinstaller01009.dll
Winusbcoinstaller2.dll Requires KMDF version 1.9 or later Wdfcoinstaller01009.dll Winusbcoinstaller2.dll Requires KMDF version 1.11 or later WdfCoInstaller01011.dll Write an .inf file that installs Winusb.sys as the function driver for the USB device.
Create a signed catalog file for the package. This file is required to install WinUSB on x64 versions of Windows.
Attach the USB device to your computer.
Open Device Manager to install the driver. Follow the instructions on the Update Driver Software wizard and choose manual installation. You will need to provide the location of the driver package folder to complete the installation.
Related topics
WinUSB Architecture and Modules
Choosing a driver model for developing a USB client driver
How to Access a USB Device by Using WinUSB Functions
WinUSB Power Management
WinUSB Functions for Pipe Policy Modification
WinUSB Functions
WinUSB