A Cross-platform USB Module for Qt built around libusb-1.0
- Bulk transfer
- Interrupt transfer
- Hotplug detection
- Device enumeration and filtering
Ubuntu
sudo add-apt-repository ppa:fpoussin/ppa
sudo apt install libqt5usb5 libqt5usb5-dev
Windows
Check the releases page or appveyor build artifacts for binary archives
Unix
You need libusb-1.0-0-dev and pkg-config packages installed
mkdir build && cd build
qmake ..
make install
Alternatively build as static lib while still using a dynamic Qt lib
mkdir build && cd build
qmake CONFIG+=static_lib ..
# Link with '*.a' file later in you project
MSVC 2017
You need WDK 8.1 and CRT SDK installed to compile libusb
These are both available from the Visual Studio Installer
build_msvc2017.bat [x64|x86] QT_PATH
ie: build_msvc2017.bat x64 C:\Qt\5.13.1\msvc2017_64
You'll need to add the module to your project file:
qt += usb
Then include it into your headers:
#include <QUsbDevice>
#include <QUsbInfo>
#include <QUsbTransferHandler>
QCH files can be found with each release, they are also included in ubuntu packages.
You have to manually install them in Qt Creator on Windows.
Online documentation can be found here: https://fpoussin.github.io/doxygen/qtusb/0.5.x/
Ubuntu PPA
Windows binaries are in the releases section.