Class Drivers

Class drivers implement USB protocols such as CDC serial, HID, mass storage, and MIDI. Enable only the classes your product uses: device APIs start with tud_ and host APIs start with tuh_.

Start with Using Device Classes or Using Host Classes, then use the class page for its configuration, data flow, callbacks, and examples. The API lists below focus on the calls normally needed by an application; the public headers remain the complete API reference.

Support matrix

Class

Device

Host

Guide

Audio 1.0/2.0

Yes

Yes

Audio

Bluetooth HCI

Yes

No

Bluetooth HCI

CDC serial

Yes

Yes

CDC Serial

DFU 1.1

Yes

No

DFU

HID 1.11

Yes

Yes

HID

MIDI 1.0/2.0

Yes

Yes

MIDI

Mass Storage (BOT)

Yes

Yes

Mass Storage

Media Transfer (MTP)

Yes

No

MTP

Network (ECM/RNDIS/NCM)

Yes

No

USB Network

Printer

Yes

No

Printer

Test and Measurement (USBTMC)

Yes

No

USBTMC

Vendor-specific

Yes

Custom driver

Vendor-specific

Video 1.5

Yes

No

Video