Free Trials

Download a free trial to find out which Altium software best suits your needs

How to Buy

Contact your local sales office to get started on improving your design environment


Download the latest in PCB design and EDA software

  • Altium Designer

    Complete Environment for Schematic + Layout

  • CircuitStudio

    Entry Level, Professional PCB Design Tool

  • CircuitMaker

    Community Based PCB Design Tool


    Agile PCB Design For Teams

  • Altium 365

    Connecting PCB Design to the Manufacturing Floor

  • Altium Concord Pro

    Complete Solution for Library Management

  • Octopart

    Extensive, Easy-to-Use Component Database

  • PDN Analyzer

    Natural and Effortless Power Distribution Network Analysis

  • See All Extensions

    World-Renowned Technology for Embedded Systems Development

  • Live Courses

    Learn best practices with instructional training available worldwide

  • On-Demand Courses

    Gain comprehensive knowledge without leaving your home or office

  • Altium 365 Viewer

    View & Share electronic designs in your browser

  • Altium Designer 20

    The most powerful, modern and easy-to-use PCB design tool for professional use


    Annual PCB Design Summit

    • Forum

      Where Altium users and enthusiasts can interact with each other

    • Blog

      Our blog about things that interest us and hopefully you too

    • Ideas

      Submit ideas and vote for new features you want in Altium tools

    • Bug Crunch

      Help make the software better by submitting bugs and voting on what's important

    • Wall

      A stream of events on AltiumLive you follow by participating in or subscribing to

    • Beta Program

      Information about participating in our Beta program and getting early access to Altium tools

    All Resources

    Explore the latest content from blog posts to social media and technical white papers gathered together for your convenience


    Take a look at what download options are available to best suit your needs

    How to Buy

    Contact your local sales office to get started improving your design environment

    • Documentation

      The documentation area is where you can find extensive, versioned information about our software online, for free.

    • Training & Events

      View the schedule and register for training events all around the world and online

    • Design Content

      Browse our vast library of free design content including components, templates and reference designs

    • Webinars

      Attend a live webinar online or get instant access to our on demand series of webinars

    • Support

      Get your questions answered with our variety of direct support and self-service options

    • Technical Papers

      Stay up to date with the latest technology and industry trends with our complete collection of technical white papers.

    • Video Library

      Quick and to-the-point video tutorials to get you started with Altium Designer

    No More Wrong Ports: Implementing USB Devices In Your Hardware Design

    January 16, 2018

    USB plug going into USB port underneath two other ports

    I keep having what I like to call “Grouchy Old Man Thoughts” (GOMT). You know the type: “Why do I have to learn this new thing if what I have works for me?” or, “I wonder what it’d be like to have a conversation without them being on their phone half the time.” Well, my most recent GOMT has been that I think anyone born after the 90s is pretty lucky, technologically. They didn’t have to go through the painstaking phase before Universal Serial Busses were around. Anyone who remembers cursing at their non-responsive keyboard only to realize that the keyboard was connected to the mouse’s PS/2 socket, or struggling with securing printer connections on a huge printer port can appreciate the beauty of USBs.

    With how USBs have become, and how embedded they are in almost any system, it’s important for a PCB to be able to know how they operate, and how to work with a USB interface in a hardware design. Especially as memory storage devices are becoming able to hold larger amounts of memory with less total space, the USB is only getting more valuable with time. Don’t settle for glam-rock and dial-up connections forever, learn how to make your devices plug and play too.

    Basic Circuitry Of A USB Device.

    At its core, a USB device is built with the consideration of being user-friendly; however, in my experience within electronics design, the more user-friendly a device, the more complicated its design is. When working with designing a USB device, the most difficult part lies in the firmware: getting the various descriptors right and ensuring the USB communication stack is functioning correctly can be a strenuous task.

    A hardware engineer, on the other hand, will primarily be concerned by the circuitry of a USB device. The hardware usually involves a microcontroller with USB interface, USB receptacles, and passive components. The connections are usually minimal, with the primary USB connections being power (V+), signals (D+, D-) and ground (Gnd). Knowing the requirements will be able to help you tremendously in your efforts to hardware design a USB device and keep you from having another GOMT.

    Power Requirements

    Your power requirements for a USB device can make or break your design; you’ll need to be sure that you do not spoil the host USB power supply circuits. A single USB 2.0 port on the computer has the ability to produce up to 500mA. But that does not mean it will supply 500mA when you plug your USB device in; instead, the USB device has to go through an enumeration process where it negotiates with the host to request the current capacity it needs.

    USB cable shooting lightning from its connector
    Avoid frying the USB port by getting your power calculations right.

    The power budget calculations you make are vital to designing correctly. If your USB device requires high current capacity that cannot be provided by a single USB port, you may need to get it powered by two USB ports. Alternatively, a self-powered USB device will eliminate the dependency of the USB port for power supply. Keeping these power budget calculations close will keep yourself moving along steadily in your USB hardware design.

    USB Speed Identification

    Typically there are 3 types of speed a USB device can operate in under the USB 2.0 standards. Keyboards and mouse normally operate at low speed with a transfer rate of 1.5 Mbit/s; however, gaming mouse usually run as high speed at 12MBit/s. High-speed USB data transfer with maximums of 480 MBit/s is usually used by devices like external hard drives.

    In order for a USB device to operate at the right speed, it has to identify itself to the host correctly. A low-speed USB device will have it’s D- signal connection connected to a pulled up resistor. On the other hand, a USB high-speed device will have its D+ signal pulled up. The high-speed USB device uses a different approach to speed identification. It initializes as a full speed USB Device before sending a series of transmission during the enumeration to identify itself as a high-speed device.

    Ensuring Adequate Signal Protections

    Ensuring signal safety is another vital feature to keep track of when designing your USB devices. USB devices are usually mobile with frequent interaction by users. This brings the hazard of Electrostatic Discharge (ESD) into concern. It is essential to place ESD protection components along the data signal to prevent device failure due to ESD. Besides that, some USB devices are powered over lengthy USB cable. This increases the chance of external electrical interference affecting the power connections. To address this, ferrite beads are usually placed on the V+ and GND connections.

    Man in white jacket with ESD wristlet
    Place ESD protection component to prevent premature failure of the USB device.

    And one of the final protections you need to take care of is when you are routing the data signals. Even for a low-speed USB device, the rate of 1.5 MBit/s is considerably high speed on the PCB. Basic design rules for high-speed signals need to be applied to ensure signal integrity.

    As the D+ and D- are differential pairs, interactive differential routing tools in software like Altium can be pretty useful in parallel and matching length connections. For your PCB design software needs, Altium’s CircuitStudio® will be able to help you securely track the features you need to make your hardware designs succeed.

    If you have more questions on USB device hardware design, consider talking to our experts at Altium now.

    most recent articles

    Back to Home