Drivers Atmel Input Devices

V-USB is a software-only implementation of a low-speed USB device for Atmel’s AVR® microcontrollers, making it possible to build USB hardware with almost any AVR® microcontroller, not requiring any additional chip.

V-USB is a software-only implementation of a low-speed USB device for Atmel’s AVR® microcontrollers, making it possible to build USB hardware with almost any AVR® microcontroller, not requiring any additional chip. The package provides the installation files for Microsoft USB Input Device Driver version 10.0.4. If the driver is already installed on your system, updating (overwrite-installing) may fix various issues, add new functions, or just upgrade to the available version. This driver for Atmel® SMART ARM®-based microcontrollers provides an interface for the configuration and management of the device's physical I/O Pins, to alter the direction and input/drive characteristics as well as to configure the pin peripheral multiplexer selection. Microchip Studio is an Integrated Development Platform (IDP) for developing and debugging AVR ® and SAM microcontroller applications. It merges all of the great features and functionality of Atmel Studio into Microchip’s well-supported portfolio of development tools to give you a seamless and easy-to-use environment for writing, building and debugging your applications written in C/C.

Features

  • Fully USB 1.1 compliant low-speed device, except handling of communication errors and electrical specifications.
  • Example projects demonstrate device and host driver implementations on Linux, Mac OS X and Windows.
  • Supports multiple endpoints: one control endpoint, two interrupt/bulk-in endpoints and up to 7 interrupt/bulk-out endpoints. (Note that the USB specification forbids bulk endpoints for low speed devices, but V-USB supports them to some degree.)
  • Transfer sizes up to 254 bytes by default, more as configuration option.
  • Comes with freely usable USB identifiers (Vendor-ID and Product-ID pairs).
Atmel usb driver
  • Runs on any AVR microcontroller with at least 2 kB of Flash memory, 128 bytes RAM and a clock rate of at least 12 MHz.
  • No UART, timer, input capture unit or other special hardware is required (except one edge triggered interrupt).
  • Can be clocked with 12 MHz, 15 MHz, 16 MHz 18 MHz or 20 MHz crystal or from a 12.8 MHz or 16.5 MHz internal RC oscillator.
  • High level functionality is written in C and is well commented.
  • Only about 1150 to 1400 bytes code size.
  • You can choose the License: Open Source or commercial. Click here for details.
Atmel studio 7 usb drivers

Hardware

This diagram shows a typical circuit for a bus powered device.

D1 and D2 are a low cost replacement for a low drop 3.3 V regulator chip, such as the LE33. Operating the AVR at higher voltages exceeds the common mode range of many USB chips. If you need to run the AVR at 5 V, add 3.6 V zener diodes at D+ and D- to limit the voltage.

For a prototyping board, please see metaboard.

Devices

Documentation Resources

  • Download the V-USB package containing a short description and several simple code examples.
  • V-USB's git repository is on github.com.
  • V-USB Forum. Discuss ideas or get help from other users.
  • V-USB Wiki is a public Wiki with lots of additional information.
  • There is also an excellent step by step tutorial by Code and Life.
  • Another third party tutorial can be found at workinprogress.ca.
  • Objective Development's Developer Article: Implementing USB 1.1 in Firmware

Benefits over Alternative Solutions

Atmel Driver For Windows 10

Why not choose a microcontroller with built-in USB hardware? There are several of these available (see http://janaxelson.com). Or combine the microcontroller of your choice with a USB chip?

Advantages over Microcontrollers with USB Hardware

Atmel Ice Driver Windows 10

  • Standard AVR controllers are usually easier to obtain.
  • Most of the controllers with USB support are only available in SMD, which is almost impossible to handle for hobbyists.
  • V-USB comes with a free shared Vendor- / Product-ID pair.
  • A good free ANSI-C compiler (GNU gcc) and a free development system for Windows (WinAVR) are available for AVR.
  • AVR controllers are faster than most of the controllers with integrated USB and cost less.
  • Stand-alone operation: Some of the USB controllers download their firmware from the host computer into RAM. They don’t work without connection to the host.
  • AVR controllers have on-chip EEPROM.

Advantages over separate USB Peripheral

  • No additional cost.
  • No additional hardware complexity: simpler PCB, less failures.
  • More freedom in the choice of USB descriptors.
  • V-USB comes with a free shared Vendor- / Product-ID pair.
  • Little hardware resources used: only two to three I/O pins.
  • USB chips are often hard to obtain.

Advantages over other Firmware-Only Implementations

A similar driver for the AVR series of microcontrollers is available from Igor Češko. Our USB driver has the following advantages over Igor’s driver:

  • All customizable code written in ANSI-C and thus easier to maintain.
  • Modular concept: easier to integrate into existing designs.
  • Slightly smaller code size in spite of high level language modules.
  • Faster: All encoding/decoding (USB requires NRZI coding and bit stuffing) is done in real-time, not in the main loop after storing away the raw data stream.
  • More endpoints, USB descriptors can be better customized.
  • V-USB comes with a free shared Vendor- / Product-ID pair.
  • The level of standards conformance is documented (description of limitations and potential problems).
  • Licensed under the terms of the GNU General Public License or alternatively under a commercial license.

Dick Streefland has stripped down an older version of V-USB to the basics. His code is easier to read and understand, but lacks some of the features found in V-USB:

Devices

Drivers Atmel Input Devices Download

  • V-USB supports up to 4 endpoints. This allows implementing devices conforming to the HID or CDC device class.
  • V-USB passes the tests in usb.org’s test utility.
  • V-USB supports many different clock rates, some even with the internal RC oscillator.