Develop drivers for USB-based devices.


Use the USBDriverKit framework to develop drivers for custom or non-class compliant USB devices for use with macOS. USBDriverKit provides C++ classes you can use to attach and configure your device, and create USB message and stream pipes to exchange data. USBDriverKit devices work with the core types defined in the DriverKit framework.

Develop your driver with DriverKit and USBDriverKit, and package it in an app that uses the SystemExtensions framework to install and upgrade the driver on the user’s Mac.