Driver kelas perangkat USB yang disertakan dalam Windows

Penting

Topik ini untuk programmer. Jika Anda adalah pelanggan yang mengalami masalah USB, lihat Memecahkan masalah USB umum

Artikel ini mencantumkan driver yang disediakan Microsoft untuk kelas perangkat USB yang didukung.

  • Driver yang disediakan Microsoft untuk kelas perangkat yang disetujui USB-IF.
  • Untuk perangkat komposit, gunakan USB Generic Parent Driver (Usbccgp.sys) yang membuat objek perangkat fisik (PDO) untuk setiap fungsi.
  • Untuk perangkat non-komposit atau fungsi perangkat komposit, gunakan WinUSB (Winusb.sys).

Jika Anda menginstal driver USB: Anda tidak perlu mengunduh driver kelas perangkat USB. Mereka diinstal secara otomatis. Driver ini dan file penginstalannya disertakan dalam Windows. Mereka tersedia di folder \Windows\System32\DriverStore\FileRepository. Driver diperbarui melalui Windows Update.

Jika Anda menulis driver kustom: Sebelum menulis driver untuk perangkat USB Anda, tentukan apakah driver yang disediakan Microsoft memenuhi persyaratan perangkat. Jika driver yang disediakan Microsoft tidak tersedia untuk kelas perangkat USB tempat perangkat Anda berada, pertimbangkan untuk menggunakan driver generik, Winusb.sys atau Usbccgp.sys. Tulis driver hanya jika perlu. Panduan lebih lanjut disertakan dalam Memilih model driver untuk mengembangkan driver klien USB.

Kelas perangkat USB

Kelas perangkat USB adalah kategori perangkat dengan karakteristik serupa dan yang melakukan fungsi umum. USB-IF mendefinisikan kelas tersebut dan spesifikasinya. Setiap kelas perangkat diidentifikasi oleh kelas, subkelas, dan kode protokol yang disetujui USB-IF, yang semuanya disediakan oleh IHV dalam deskriptor perangkat di firmware. Microsoft menyediakan driver dalam kotak untuk beberapa kelas perangkat tersebut, yang disebut driver kelas perangkat USB. Jika perangkat milik kelas perangkat yang didukung terhubung ke sistem, Windows secara otomatis memuat driver kelas, dan fungsi perangkat tanpa driver lain yang diperlukan.

Vendor perangkat keras tidak boleh menulis driver untuk kelas perangkat yang didukung. Driver kelas Windows mungkin tidak mendukung semua fitur yang dijelaskan dalam spesifikasi kelas. Jika beberapa kemampuan perangkat tidak diterapkan oleh driver kelas, vendor harus menyediakan driver tambahan yang bekerja dengan driver kelas untuk mendukung seluruh rentang fungsionalitas yang disediakan oleh perangkat.

Untuk informasi umum tentang kelas perangkat yang disetujui USB-IF, lihat Spesifikasi Kelas Umum USB

Daftar spesifikasi kelas USB dan kode kelas saat ini didokumentasikan dalam Daftar Kode Kelas yang Ditentukan USB-IF.

Kelas penyiapan perangkat

Windows mengategorikan perangkat berdasarkan kelas penyiapan perangkat, yang menunjukkan fungsionalitas perangkat.

Microsoft mendefinisikan kelas penyiapan untuk sebagian besar perangkat. IHV dan OEM dapat menentukan kelas penyiapan perangkat baru, tetapi hanya jika tidak ada kelas yang ada yang berlaku. Untuk informasi selengkapnya, lihat Kelas Penyiapan Perangkat yang Ditentukan Sistem.

Dua kelas penyiapan perangkat penting untuk perangkat USB adalah sebagai berikut:

  • USBDevice {88BAE032-5A81-49f0-BC3D-A4FF138216D6}: IHV harus menggunakan kelas ini untuk perangkat kustom yang bukan milik kelas lain. Kelas ini tidak digunakan untuk pengontrol dan hub host USB.

  • USB {36fc9e60-c465-11cf-8056-444553540000}: IHV tidak boleh menggunakan kelas ini untuk perangkat kustom mereka. Ini disediakan untuk pengontrol host USB dan hub USB.

Kelas penyiapan perangkat berbeda dari kelas perangkat USB yang dibahas sebelumnya. Misalnya, perangkat audio memiliki kode kelas perangkat USB 01h dalam deskriptornya. Saat tersambung ke sistem, Windows memuat driver kelas yang disediakan Microsoft, Usbaudio.sys. Di Manajer Perangkat, perangkat ditampilkan di bawah adalah Pengontrol suara, video, dan game, yang menunjukkan bahwa kelas penyiapan perangkat adalah Media.

Driver kelas perangkat USB yang disediakan Microsoft

Kode kelas USB-IF Kelas penyiapan perangkat Disediakan Microsoft
driver dan INF
Dukungan Windows Deskripsi
Audio (01h) Media
{4d36e96c-e325-11ce-bfc1-08002be10318}
Usbaudio.sys
Wdma_usb.inf
Windows 11

Windows 10 untuk edisi desktop (Home, Pro, Enterprise, dan Education)

Windows 10 Mobile

Windows 8.1
Microsoft menyediakan dukungan untuk kelas perangkat audio USB dengan driver Usbaudio.sys. Untuk informasi selengkapnya, lihat "Driver Sistem Kelas USBAudio" di Komponen Audio WDM Mode Kernel. Untuk informasi selengkapnya tentang dukungan audio Windows, lihat situs web Teknologi Perangkat Audio untuk Windows .
Komunikasi dan Kontrol CDC (02h) Port
{4D36E978-E325-11CE-BFC1-08002BE10318}
Usbser.sys
Usbser.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile
Dalam Windows 10, INF baru, Usbser.inf, telah ditambahkan yang memuat Usbser.sys secara otomatis sebagai driver fungsi.

Untuk informasi selengkapnya, lihat driver serial USB (Usbser.sys)
Komunikasi dan Kontrol CDC (02h) Modem
{4D36E96D-E325-11CE-BFC1-08002BE10318}

Mendukung Subkelas 02h (ACM)
Usbser.sys

INF kustom yang mereferensikan mdmcpq.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Di Windows 8.1 dan versi yang lebih lama, Usbser.sys tidak dimuat secara otomatis. Untuk memuat driver, Anda perlu menulis INF yang mereferensikan modem INF (mdmcpq.inf) dan menyertakan bagian [Instal] dan [Kebutuhan]. Anda dapat mengaktifkan dukungan CDC dan Wireless Mobile CDC (WMCDC) dengan mengatur nilai registri, seperti yang dijelaskan dalam Dukungan untuk Kelas Perangkat Komunikasi Seluler Nirkabel. Ketika dukungan CDC diaktifkan, DRIVER Induk Generik Kelas Umum USB menghitung koleksi antarmuka yang sesuai dengan Model Kontrol CDC dan WMCDC, dan menetapkan objek perangkat fisik (PDO) ke koleksi ini.
Komunikasi dan Kontrol CDC (02h) Bersih
{4d36e972-e325-11ce-bfc1-08002be10318}

Mendukung Subkelas 0Dh (NCM)
UsbNcm.sys
UsbNcm.inf
Windows 11

Windows Server 2022
Microsoft menyediakan driver UsbNcm.sys untuk mengoperasikan perangkat yang mematuhi Usb NCM. Kode sumber untuk driver ini tersedia di NCM-Driver-for-Windows.
Komunikasi dan Kontrol CDC (02h) Bersih
{4d36e972-e325-11ce-bfc1-08002be10318}

Mendukung Subkelas 0Eh (MBIM)
cxwmbclass.sys
wmbclass.sys
Netwmbclass.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Microsoft menyediakan driver wmbclass.sys, untuk perangkat broadband seluler. Lihat, Model Antarmuka MB.
HID (Perangkat Antarmuka Manusia) (03h) HIDClass
{745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Hidclass.sys
Hidusb.sys
Input.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile

Windows 8.1
Microsoft menyediakan driver kelas HID (Hidclass.sys) dan driver miniclass (Hidusb.sys) untuk mengoperasikan perangkat yang mematuhi STANDAR USB HID. Untuk informasi selengkapnya, lihat Arsitektur HID dan Minidriver dan driver kelas HID. Untuk informasi selengkapnya tentang dukungan Windows untuk perangkat keras input, lihat situs web Input dan HID - Arsitektur dan Dukungan Driver .
Fisik (05h) - - - Driver yang direkomendasikan: WinUSB (Winusb.sys)
Gambar (06h) Gambar
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbscan.sys
Sti.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Microsoft menyediakan driver Usbscan.sys yang mengelola kamera digital USB dan pemindai untuk Windows XP dan sistem operasi yang lebih baru. Driver ini mengimplementasikan komponen USB dari Windows Imaging Architecture (WIA). Untuk informasi selengkapnya tentang WIA, lihat Driver Akuisisi Citra Windows dan situs web Komponen Pencitraan Windows . Untuk deskripsi peran yang Usbscan.sys mainkan di WIA, lihat Komponen Inti WIA.
Printer (07h) USB
Usbprint.sys menghitung perangkat printer di bawah kelas penyiapan perangkat: Printer {4d36e979-e325-11ce-bfc1-08002be10318}.
Usbprint.sys
Usbprint.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Microsoft menyediakan driver kelas Usbprint.sys yang mengelola printer USB. Untuk informasi tentang implementasi kelas printer di Windows, lihat situs web Pencetakan - Arsitektur dan Dukungan Driver .
Penyimpanan Massal (08h) USB Usbstor.sys Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile

Windows 8.1
Microsoft menyediakan driver port Usbstor.sys untuk mengelola perangkat penyimpanan massal USB dengan driver kelas penyimpanan asli Microsoft. Untuk contoh tumpukan perangkat yang dikelola oleh driver ini, lihat Contoh Objek Perangkat untuk Perangkat Penyimpanan Massal USB. Untuk informasi tentang dukungan penyimpanan Windows, lihat situs web Teknologi Penyimpanan .
Penyimpanan Massal (08h) SCSIAdapter
{4d36e97b-e325-11ce-bfc1-08002be10318}
SubKelas (06) dan Protokol (62)Uaspstor.sys
Uaspstor.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile

Windows 8.1
Uaspstor.sys adalah driver kelas untuk perangkat USB SuperSpeed yang mendukung titik akhir streaming massal.
Hub (09h) USB
{36fc9e60-c465-11cf-8056-444553540000}
Usbhub.sys
Usb.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile

Windows 8.1
Microsoft menyediakan driver Usbhub.sys untuk mengelola hub USB. Untuk informasi selengkapnya tentang hubungan antara driver kelas hub dan tumpukan USB, lihat Driver sisi host USB di Windows.
Hub (09h) USB
{36fc9e60-c465-11cf-8056-444553540000}
Usbhub3.sys
Usbhub3.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Microsoft menyediakan driver Usbhub3.sys untuk mengelola hub USB SuperSpeed (USB 3.0). Driver dimuat ketika hub SuperSpeed dilampirkan ke pengontrol xHCI. Lihat driver sisi host USB di Windows.
CDC-Data (0Ah) - - - Driver yang direkomendasikan: WinUSB (Winusb.sys)
Kartu Pintar (0Bh) SmartCardReader
{50dd5230-ba8a-11d1-bf5d-0000f805f530}
Usbccid.sys (Usang) Windows 10 untuk edisi desktop Microsoft menyediakan driver kelas mini Usbccid.sys untuk mengelola pembaca kartu pintar USB. Untuk informasi selengkapnya tentang driver kartu pintar di Windows, lihat Panduan Desain Kartu Pintar.

Driver UMDF WUDFUsbccidDriver.dll menggantikan driver Usbccid.sys.
Kartu Pintar (0Bh) SmartCardReader
{50dd5230-ba8a-11d1-bf5d-0000f805f530}
WUDFUsbccidDriver.dll
WUDFUsbccidDriver.inf
Windows 8.1 WUDFUsbccidDriver.dll adalah driver mode pengguna untuk perangkat Pembaca Kartu Pintar CCID USB.
Keamanan Konten (0Dh) - - - Driver yang direkomendasikan: USB Generic Parent Driver (Usbccgp.sys). Beberapa fungsi keamanan konten diimplementasikan dalam Usbccgp.sys. Lihat Fitur Keamanan Konten di Usbccgp.sys.
Video (0Eh) Gambar
{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Usbvideo.sys
Usbvideo.inf
Windows 11

Windows 10 untuk edisi desktop
Microsoft menyediakan dukungan kelas video USB dengan driver Usbvideo.sys. Untuk informasi selengkapnya, lihat "Driver Kelas Video USB" di bawah AVStream Minidrivers.
Layanan Kesehatan Pribadi (0Fh) - - - Driver yang direkomendasikan: WinUSB (Winusb.sys)
Perangkat Audio/Video (10h) - - - -
Perangkat Diagnostik (DCh) - - - Driver yang direkomendasikan: WinUSB (Winusb.sys)
Pengontrol Nirkabel (E0h)

Mendukung Subkelas 01h dan Protokol 01h
Bluetooth{e0cbf06c-cd8b-4647-bb8a-263b43f0f974} Bthusb.sys
Bth.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile
Microsoft menyediakan driver miniport Bthusb.sys untuk mengelola radio Usb Bluetooth. Untuk informasi selengkapnya, lihat Panduan Desain Bluetooth.
Lain-lain (EFh) Bersih
{4d36e972-e325-11ce-bfc1-08002be10318}

Mendukung SubKelas 04 jam dan Protokol 01h
Rndismp.sys
Rndismp.inf
Windows 11

Windows 10 untuk edisi desktop

Windows 8.1
Microsoft menyarankan agar vendor perangkat keras membangun perangkat yang kompatibel dengan USB NCM sebagai gantinya. USB NCM adalah protokol USB-IF publik yang menawarkan performa throughput yang lebih baik.

Fasilitas RNDIS berpusat pada manajemen semua kartu jaringan bergaya 802 dalam satu driver kelas, Rndismp.sys. Untuk diskusi terperinci tentang NDIS jarak jauh, lihat Gambaran Umum NDIS Jarak Jauh. Pemetaan NDIS jarak jauh ke USB diimplementasikan di driver Usb8023.sys. Untuk informasi selengkapnya tentang dukungan jaringan di Windows, lihat Jaringan dan Teknologi Nirkabel.
Spesifik Aplikasi (FEh) - - - Driver yang direkomendasikan: WinUSB (Winusb.sys)
Vendor Specific (FFh) - - Windows 11

Windows 10 untuk edisi desktop

Windows 10 Mobile
Driver yang direkomendasikan: WinUSB (Winusb.sys)