Windows supports uniform access to input devices that are based on the Human Interface Devices (sometimes called the Human Input Devices) or HID specification. Vendors can extend the functionality of devices by adding filter drivers to the Windows layered driver architecture. Vendor-written drivers for most devices can use UMDF. Mouse and keyboard filter drivers should use KMDF.
While earlier versions of Windows supported USB as the primary HID transport; Microsoft provides native support for the following transports in Windows 8:
Vendor specific transports are also allowed via 3rd party transport drivers. For more information, refer to the Human Input Devices section of the Windows Driver Kit documentation on MSDN.
Enhanced Keyboards and Windows. Keyboards with special buttons (to start a browser, to control volume, and so on) do not require special drivers. In fact, custom drivers can lengthen boot time. We encourage vendors to implement HID-compatible scan codes, and use the built-in HID support in Windows.