EBSnet RTUSB-OEM is a Universal Serial Bus (USB) host protocol stack for embedded systems. It contains the core protocol stack, the required host controller device drivers, a low-level communication API and high-level class drivers. RTUSB-OEM provides the flexibility to be run in a single-threaded, multi-threaded or a polled mode environment. RTUSB-OEM is a comprehensive, truly portable high performance USB stack designed specifically for embedded systems.
RTUSB-OEM supports both USB versions, 1.1 and 2.0. The protocol stack provides support for all major USB host controller types, including UHCI, OHCI, and EHCI based controllers.
RTUSB-OEM supports transfer rates of up to 12 Mb/s on USB 1.1 and 480 Mb/s on USB 2.0 buses, using low-, full-, or high-speed data transfers. All USB data transfer types (control, bulk, interrupt, and isochronous) can be used to support devices with both high throughput and real-time transfer requirements. RTUSB-OEM does not require data to be copied while being transferred. Data transfers are performed by DMA directly to/from the application’s buffer.
RTUSB-OEM performs I/O in the background by providing applications with the capability to start the I/O operations while performing other tasks. The status of this I/O transaction can be queried at a later time.
RTUSB-OEM comes with high-level class drivers for keyboards, mice, touch screens, printers and mass storage devices (disks, memory sticks, digital cameras, CD-ROMs, DVDs, etc.). A hub class driver is integrated in the core USB protocol stack. The class driver layer is are abstracted from the protocol stack for ease of use and portability.
RTUSB-OEM is designed to be easily ported to any platform. All OS and file system dependent code is abstracted into a configuration file. This provides the application programmer with an easy-to-use interface for porting any system dependent I/O, memory management, and/or interrupt handling features.
Any operating system and any file system for a mass storage device driver.