Example custom USB device demonstrating bulk transfers
VERSION | RELEASED | COMMENTS | DOCUMENTATION | SOFTWARE |
---|---|---|---|---|
3.0.0 | 2024-11-07 | VIEW HTML VIEW PDF | ZIP | |
2.1.2rc1 | 2016-01-08 | DOWNLOAD | ZIP |
Overview#
This application note describes hows to create a vendor specific USB device demonstrating simple USB bulk transfers over high speed USB.
The accompanying example code has been written for the XK-EVK-XU316 board, however, since no hardware interfaces are used (other than USB) porting to another hardware platform is simple.
Key Features#
The documented application is designed to run on the XK-EVK-XU316 board and has the following key features:
USB 2.0 compliance
Chapter 9 compliance
Full Speed (12Mbit/s), High Speed (480Mbit/s) data rates
Control, Bulk, Isochronous and Interrupt transfer types available
USB bus or self powered support
Example code shows bulk transfers between host and device
Two example host applications, both using libusb for USB device access
One using simple (but less efficient) synchronous libusb API
Another using more advanced (but more efficient) asynchronous libusb API
Support for building host applications on Windows, macOS & Linux
Known Issues#
None
Required Tools#
XMOS XTC Tools: 15.3.0
Required Libraries (Dependencies)#
lib_xud (www.github.com/xmos/lib_xud)
Support#
This package is supported by XMOS Ltd. Issues can be raised against the software at: http://www.xmos.com/support