DesignSpark Electrical Logolinkedin
Menu Search
Ask a Question

12 Dec 2016, 11:37

USB Bridge Controller simplifies USB design by eliminating firmware development

Embedded systems connectivity to a host computing platform creates the need for a universal communication standard.  Serial bus communication peripherals such as I2C, SPI and UART are widely deployed in MCU embedded designs. The Universal serial Bus (USB) is one of the most widely deployed interface standards for enabling embedded system communications to computing platform. The rapid adoption of USB in embedded design is driving developers to seek faster, economical ways to add USB connectivity.

Embedded systems implementing USB connectivity fall into two categories: upgrading a legacy design or enhancing a new design by adding USB.  In a legacy design, designers look for the available MCU communication peripheral that matches the desired communication speed and protocol for the communication task. If large amounts of embedded data transfer at high speed is required a SPI or UART peripheral is the choice.  If connectivity to a multiple ports is required a peripheral supporting arbitration, such as I2C/SMBus is the choice.  Connecting your embedded design peripheral to a host using USB connectivity provides an interoperable interface standard delivering seamless communication across all operating systems. USB designs require minimal components and printed circuit board (PCB) space.  

New USB technologies provide high data transfer rates that enable delivering of audio/video, data and power simultaneously for host platform and device. 

USB Design Issues

There are several design issues associated with implementing USB connectivity.  A USB design implementation requires protocol expertise and time-consuming firmware development.

An embedded designer can select a microcontroller (MCUs) with integrated USB peripheral interface.  However, MCUs with an integrated USB feature may not have the memory size, GPIO, and peripherals required for your embedded design specification. USB circuits require a 48MHz precision oscillator for full-speed operation and external termination resistors that add to the design BOM and assembly cost.

Development of the USB stack firmware is time consuming and requires USB protocol expertise.  Designers must develop their expertise learning the USB protocol and developing a USB stack. USB stacks are commercially available, however, they add cost and integration design time.  Computing platforms require operating system drivers for USB protocol.   User friendly devices use Human Interface Device (HID) class USB drivers found natively in the operating system.  These HID-class drivers support typical USB PB pointing and keyboard computing peripherals.  Software development of host operating system virtual COM port (VCP) drivers, WIN USB/LibUSB drivers, or vendor-specific drivers is required to achieve higher throughput performance and enhanced USB functionality.

Turnkey USB Solutions

A bridge device provides a turnkey way to integrate a USB interface in a legacy UART, SPI, or I2C serial interface design as illustrated in Figure 1.   A turnkey USB bridge solutions offers an alternative to a USB-based microcontroller. USB bridge device is a fixed-function, application specific device that eliminate the firmware complexity.

Figure 1. USB-to-UART Bridge System

Selecting the best USB Bridge for your application starts with considering the hardware cost budget.  USB functionality require external components that add BOM and assembly costs.  Consider vendors with USB devices that offer these bridge controller features:

  • Portfolio of serial i/o bridge solutions for all major communication interfaces
    • USB-to-UART, 2x UART, 4x UART
    • USB-to SMBUS/I2c
    • USB-to I2S
  • Integrated crystal-less USB clock
  • Integrated, matched termination resistors, internal voltage regulator,
  • In-system programming memory support, and
  • small package design footprint

A highly integrated bridge device can eliminate external component. Consider using a USB bridge with integrated 48MHz clock that eliminates the need for an external crystal oscillator. Consider a bridge with clock recovery circuity that uses the USB data stream to adjust the internal oscillator frequency. Also, consider selecting a USB bridge function controller with an integrated transceiver, on-chip matching and pull-up resistors for proper USB line termination, and a 5 V regulator for direct USB connection to reduce the design footprint.  And finally, consider a USB bridge small package variant to reduce the PCB footprint. Some bridge devices offer provide additional GPIO pins that can control USB suspend indicators, remote wake, clock output, LED traffic toggle indicators, and to count pulses.

Silicon Labs offers a family of USB Bridge Controllers for serial communications interfaces, which enables USB connectivity by interfacing through the serial peripheral interface (SPI) port or UART on a general-purpose MCU.  The Figure 2 shows how a communication bridge interfaces with an embedded system.


Figure 2.   System-Level USB Host to MCU Host Connectivity

The Silicon Labs new CP2102N USB controller eliminates complex, time-consuming firmware development and provides advanced functionality in QFN packages as small as 3 mm x 3 mm. The CP2102N device simplifies USB-to-UART connectivity and speeds time to market for a wide range of portable, power-sensitive and space-constrained applications such as USB dongles, point-of-sale (POS) terminals, data loggers, gaming controllers and personal medical devices.  Silicon Labs’ provides downloadable CP210x USB to UART Bridge Virtual COM Port (VCP) drivers for device operation as a Virtual COM Port for a variety of operating systems (Windows, WinCE, Mac OS, Linux) to facilitate host communication with CP210x products. These devices can also interface to a host using the direct access driver.


CP2102N USBXpress Product Highlights:

  • Data transfer rates up to 3 Mbaud
  • Industry-leading energy efficiency: low active current of < 10 mA
  • Remote wake-up capability to wake up a suspended host device
  • USB battery charger detection capability (USB BCS 1.2 specification) to detect the type of charger connected to the system
  • Crystal-less operation and integrated regulator to reduce BOM cost
  • Small-footprint package options: 3 mm x 3 mm QFN20, 4 mm x 4 mm QFN24 and 5 mm x 5 mm QFN28
  • Royalty-free Virtual COM port drivers
  • Advanced, easy-to-use software tools including Xpress Configurator to simplify development
  • Design Tools

Development time is a critical factor in selecting a USB bridge controller.  There is no code development required when using a fixed-function bridge device, however, designers are still looking for configuration options for user-configurable options such as interface and pin configurations.  Silicon Labs provides an “Xpress” configurator GUI-based software tool for customizing and programming of USB attributes such as Vendor ID (VID), Product ID (PID), device strings and US power modes.  The tool also configures advanced features for GPIO customization and interface options.  The tool generates the application-specific USB device configuration that can be programmed into the turnkey device without writing any code.  Finally, consider a vendor that offers USB device factory configuration programming to reduce production time.


USB bridges and turnkey USB solutions offer a cost-effective, simply development approach to add USB connectivity to enhance new designs or upgrade legacy system with USB connectivity. Bridge integration reduces BOM costs and design footprint. Their turnkey dedicated functionally eliminates the need for firmware development and reduces USB design complexity, which can accelerate the design cycle to get products to market faster.  USB configuration tools and certified host drivers allow developers to differentiate USB designs and provide compatibility with target operating systems.   Selecting the best USB bridge device and development tools will reduce the complexity and development time for adding USB connectivity to embedded designs.

jjmeeks has not written a bio yet…

12 Dec 2016, 11:37