AN00136: USB Vendor Specific Device

VERSION RELEASED COMMENTS DOCUMENTATION SOFTWARE
v3.0.0 2024-10-18 VIEW HTML VIEW PDF 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

Scroll to Top