USB for Embedded Devices. Mohit Maheshwari Prashant Garg

Similar documents
USB for Embedded Device ASHWINI MISHRA

PDF created with pdffactory Pro trial version How USB Ports Work by Marshall Brain. Introduction to How USB Ports Work

USB (Universal Serial Bus) Presentation to UCHUG - 2/06/08 G. Skalka

Computer Organization

Course 10: Interfaces Agenda

David Harrison, Design Engineer for Model Sounds Inc.

Computer Organization

USB: Features and Circuits Manoj Purohit ( ) Supervisor: Prof P.C.Pandey

USB Complete. The Developer's Guide Fifth Edition. Jan Axelson. Lakeview Research LLC Madison, WI 53704

SERIAL BUS COMMUNICATION PROTOCOLS USB

USB for Portable Devices

USB INTERFACE AND DRIVER Mentor: Dr. Yann Hang Lee Team Members: Jubin Mehta, Koshik Samota (jmehta3,

Universal Serial Bus - USB 2.0

An Introduction to Universal Serial Bus

Chapter 11: Input/Output Organisation. Lesson 17: Standard I/O buses USB (Universal Serial Bus) and IEEE1394 FireWire Buses

ECE 471 Embedded Systems Lecture 30

Digital Logic Level. Buses PCI (..continued) PTE MIK MIT

Module 6: INPUT - OUTPUT (I/O)

M Tech credit seminar report, Electronic Systems group, EE Dept, IIT Bombay, submitted Nov 2002 UNIVERSAL SERIAL BUS

ARDUINO YÚN MINI Code: A000108

Intel Do-It-Yourself Challenge Intel Galileo and Edison Paul Guermonprez

AN INTRODUCTION TO USB EXTENDERS

ARDUINO MEGA INTRODUCTION

Today s Schedule. USB 2.0 Overview. USB 2.0 Compliance Testing. Demo of the Agilent Solution Q&A

Bus Example: Pentium II

USB and K-V-M switches. The Rise of USB in the Data Center - The Implementation can Make the Difference 2007 ATEN

Components of a personal computer

EMBEDDED HARDWARE. Core Board. ARM7 Development board. ARM7 Evaluation Board. Page 1 of 5

Part 1 - Introduction to USB

USB. The Universal Serial Bus. Most of the material is taken from Jan Axelsson: USB Complete, third edition Lakeview Research ISBN:

ARDUINO BOARD LINE UP

USB evaluation kits and reference tools

More on IO: The Universal Serial Bus (USB)

Raspberry Pi - I/O Interfaces

Organisasi Sistem Komputer

4 Multiplexer. Y Fig Keyboard Scan Matrix

Essential Components for Today s Industrial Connections

Digital Circuits Part 2 - Communication

1. INTRODUCTION 2. OVERVIEW

Checking and understanding USB settings in Device Manager

Making USB Device Drivers Easier Using the HID Class

ADVANCED OPERATING SYSTEMS USB in a microkernel based operating system

Joseph D. Cornwall, CTS-D, CTS-I Technology Evangelist

Microprocessors LCD Parallel Port USB Port

USB 3.0 A Cost Effective High Bandwidth Solution for FPGA Host Interface Introduction

Extending USB Connections. SMART Board 800 series interactive whiteboards and systems

Motherboard Specifications, A8AE-LE (AmberineM)

smxusbh USB Host Stack

PXI EXPRESS SPECIFICATION TUTORIAL

FT245 USB Modual. - Ver FT245 Module Features

I/O Devices. I/O Management Intro. Sample Data Rates. I/O Device Handling. Categories of I/O Devices (by usage)

USB2.0 Type-C & Regular USB Device Electrical Compliance test procedure

Introduction to the Itron Riva Dev Kits

Understand USB (in Linux)

ELEG3923 Microprocessor Ch.0 & Ch.1 Introduction to Microcontroller

Embest SOC8200 Single Board Computer

Understanding Computers. Hardware Terminology

DOCKING STATIONS / DOCKING CONVERTER

USB 2.0 High-Speed Peripheral Compliance Test Report

I/O Management Intro. Chapter 5

Future Additions: USB: The Universal Serial Bus Dated: 30 August 2017

Universität Dortmund. IO and Peripheral Interfaces

PC I/O. May 7, Howard Huang 1

2. THE PCI EXPRESS BUS

USB Hub Controllers USB Host Controllers USB Dual-Role (Host/ Peripheral) Controllers. Carkit

XE 900: Fastest EPIC board now available with Windows XPe

MMusb245RL User s manual. Many ideas one solution

Introduction To Computer Hardware. Hafijur Rahman

Universal Serial Bus System Architecture 2nd Edition 2nd Second Edition By Mindshare Inc Anderson Don Published By Addison Wesley Professional 2001

smxusbh USB Host Stack

HP PartSurfer. 1 di 6 11/05/ United States-English. » Contact HP. Search all of HP: Parts Listing

Microprocessor Systems

USB 3.1 Gen 2 vs. USB 3.1 Gen 1 vs. USB 2 vs. SATA vs. esata. by Francis Chao

EPIC board ensures reliability in the toughest environment

DESIGNING OF INTER INTEGRATED CIRCUIT USING VERILOG

pico-sam9g45 System board

Input/Output Problems. External Devices. Input/Output Module. I/O Steps. I/O Module Function Computer Architecture

BLUETOOTH BASED OFFICE AUTOMATION AND SECURITY SYSTEM USING RASPBERRY PI AND ANDROID APPLICATION

Farklı Arduino Boardlar

DEVBOARD3 DATASHEET. 10Mbits Ethernet & SD card Development Board PIC18F67J60 MICROCHIP

ipanel CONTROL TECHNOLOGY CORPORATION ipanel Installation Guide and Specifications ipanel Installation Guide

USB-C to Ethernet Adapter with 3-Port USB 3.0 Hub and Power Delivery

Discovering Computers 2012

STM32 F4xx Discovery Board Setup Guide

Module Introduction. Purpose This training module covers 68K/ColdFire Ethernet and USB

Computers and Microprocessors. Lecture 34 PHYS3360/AEP3630

mikropascal PRO for 8051

Computers Are Your Future

Intelop. *As new IP blocks become available, please contact the factory for the latest updated info.

Certified Wireless USB Wire Adapter Model

Arduino Uno R3 INTRODUCTION

Computers Are Your Future

Serial Communications

w w w. b a s e t r a i n i n g i n s t i t u t e. c o

ARM Cortex core microcontrollers

COMP2121: Microprocessors and Interfacing. Introduction to Microprocessors

Your Solution Partner

Seminar: Mobile Systems. Krzysztof Dabkowski Supervisor: Fabio Hecht

USB 2.0 Hi-speed Peripheral Compliance Test Report

USBIO24 RL Digital I/O Module

Transcription:

USB for Embedded Devices Mohit Maheshwari 200601008 Prashant Garg 200601144

USB : An Introduction The Universal Serial Bus (USB) is a specification developed by Compaq, Intel, Microsoft and NEC, joined later by Hewlett-Packard, Lucent and Philips. These companies formed the USB Implementers Forum, Inc.

The need for USB Laborious and error-prone configuration of the RS-232 port. Incompatible RS-232 connectors. High Power requirements of the transceivers. Point-to-Point nature of the connections, thus sharing among multiple devices meant a lot of cable and connector requirements.

The Evolution of USB USB 1.0: January 1996. Specified data rates of 1.5 Mbit/s and 12 Mbit/s. Had many limitations, wasn t widely adopted USB 1.1: September 1998. Fixed bugs of earlier version, was widely accepted. USB 2.0: April 2000. Added Speed of 480 Mbit/s USB On-the-Go: December 2006. Host not needed any more. Micro USB: April 2007.Specially for Mobile Phones USB 3.0: (5 Gbit/s) In pipeline. Expected to be commercially available in 2010.

Architecture Tiered Star Topology. Can connect to a maximum 127 devices. Maximum number of tiers permitted is 6. Length of cable limited to 5m.

The Concept of HOST!! HOST is master Devices can t communicate directly Host Device 1 Device 2

USB Host Types Intel developed the UHCI (Universal Host Controller Inter-face) specification. More Software Oriented Version. A team led by Compaq, Microsoft, and National Semiconductor came out with the OHCI (Open Host Controller Interface) specification. More Hardware Oriented Version. With the introduction of the high-speed data rate of USB Version 2.0, all of the participants agreed to the EHCI (Enhanced Host Controller Interface) specification.

USB On the Go Device 1 Device 2 Devices can become limited role hosts Marked the emergence of usage of USB in portable platforms Removed the often-cited limitation that USB requires a desktop computer or equivalent to act as a host.

Cables and Connectors Type- A Type-B mini-b-type mini-a-type micro-ab-type

Cable Types 1. A high/full speed detachable cable with one end terminated with an A plug and the other end with a B or mini-b plug. 2. A captive high/full speed cable where one end is hardwired to the vendors equipment and the other end is terminated with an A plug.

Device Powering A device (or hub) can only sink (consume) current from its upstream port and source to downstream port. A device which draws its power from the bus is called a 'bus-powered' device. It relies solely on the USB cable. A 'self-powered' device is one which does not draw power from the bus. An additional power cable is attached. Note : USB Connectors are specially designed with power pins longer than signal pins so that power is always applied before signals.

Anatomy of a Packet Packet, the fundamental element of communication on USB Bus

The Fundamental Packet SYNC sequence used by receiver to tune its clock with the transition of the received data. It is of 8 bits. Packet information varies from 1 to 1025 bytes. First byte, Packet Identifier (PID) defines how other information bytes should be interpreted. Presently there are 10 defined PID types The last part of a packet is the End-ofpacket identifier.

Data Transfer Once powered up, host queries all the devices connected to the bus and assigns each one an address. This process is called Enumeration. Host also enquires what type of data transfer is the device wishing to perform: Interrupt (For mouse or keyboard) Bulk (For printer) Isochronous (Streaming devices like Speaker)

USB on Embedded Systems Any embedded device with a processor has a potential to act as a USB host. Potential Embedded platforms: Cell Phones PDAs Digital Cameras Set top Boxes and more.

Challenges of implementing USB on an embedded platform USB on a PC MB and GB of memory available USB on an embedded device Only KB of memory available 2 GHz micro-processor 12-33 MHz Processor Hard drive space in GB, greater than 100 GB now a days No hard drive at all Last but not the least, many skilled engineers are well versed in designing PC based USB applications USB on embedded systems is relatively new and not many people have an idea about it.

But there is a silver lining!! New updates to incorporate USB on embedded platforms include: Modern embedded devices allow alternative connection strategies. Lowered host power requirements. 480-Mbps data rate.

USB 1.1 vs Serial vs Parallel

USB interfacing with Microcontroller Few years back, migrating to USB was difficult pertaining to higher costs. New MCUs with native USB interfaces offer a better solution

USB interfaced with Microcontroller Latest architectures include direct integration of the USB interface and transceiver with the MCU core. This allows the application to take full advantage of the bus potential. Due to large amounts of flash program memory on chip, MCUs with native USB interfaces can manage the entire application in a single-chip USB. This results in an effective component count reduction and overall real system cost savings.

Linux Based USB Devices Write custom Linux kernel module. Provides the power to do sophisticated things like emulating a file system etc. Use USB bus as a high speed serial port. Implemented in the Linux kernel for Strong ARM processors. Straightforward approach and mostly used. Ethernet over USB. Linux has modules to implement both the host and device sides of this capability. The Linux kernel for the ipaq uses this, since the ipaq hardware has neither an accessible serial port nor a dedicated network interface. Note: Correct approach depends on how much time one wants to spend in development and how we want our embedded application to use the USB interface.

Why Linux for using USB? Linux not only contains drivers for host controllers, but for device controllers as well. These controller drivers enable Linuxbased embedded systems to use USB to communicate with a host computer (which may or may not be running Linux as well). USB communications under Linux are flexible and easy to use.

USB: The Road Ahead Micro USB has recently arrived in market. Same port for charging and wired connectivity. Caters to the demands of the reducing size of devices. USB 3.0

References Jan Axelson, USB Complete Everything You Need to Develop Custom USB Peripherals, 3 rd edition John Hyde, USB Design by Example A Practical Guide to Building IO Devices, 2nd Edition Datasheets ATMega32, ATMega32U4, FT232 http://www.embedded.com http://www.usbmadesimple.co.uk/ http://www.everythingusb.com/ http://www.embedded-computing.com/ http://www.lvr.com/usb.htm

Thank You!!