Arduino Shield – USB 2.0 Host shield




Arduino USB Host Shield is a board which gives USB interface features to Arduino board and possibility to stack USB devices to Arduino.

Keyboard or mouse can be connected to Arduino with the shield, wireless communication can be done with bluetooth dongle, you can connect to barcode reader and even your phone.MAX3421 is used on board as USB host/SPI converter IC. It is compatible with Arduino Uno and Mega and with 5V/3.3V selection feature, it can be used with 3.3V boards


  • Works with standard (dual 5/3.3V) and 3.3V-only (for example, Arduino Pro) boards.
  • Operates over the extended -40°C to +85°C temperature range
  • Complies with USB Specification Revision 2.0 (Full-Speed 12Mbps Peripheral, Full-/Low-Speed 12Mbps/1.5Mbps Host)

Devices that supported by Board

  • HID Devices – Klavye, mouse, joystick..
  • Game Pads – PS3, PS4, XBOX360, Wii…
  • USB-Serial Converters – FTDI, PL-2303, GPS…
  • ADK Android Phones and Tablets
  • Digital Cameras – Canon EOS, Powershot, Nikon DSLR and P&S
  • Storing Devices – Usb Memory, SD card reader, harddisk
  • Bluetooth Dongles

Compatible with for Arduino following hardware

  • Arduino Uno 328
  • Arduino Diecimila / Duemilanove 328
  • Arduino Mega 2560 (recommended)
  • Arduino Mega 1280
    to achieve the FOR Arduino USB HOST function, you can communicate with other USB devices, and support USB HUB function

Shield klaarmaken voor Arduino

Let op: Voordat deze shield gebruikt kan worden op een arduino UNO/MEGA e.d., moeten er een aantal “bruggen gesoldeerd” worden (de shield is namelijk universeel met andere microcontroller platformen):



  • Power Select 2 solder jumpers marked “5V” and “3.3V”. They are used for different power The configuration shown, when both jumpers are closed, is suitable for official Arduinos, such as UNO, Duemilanove, Mega and Mega 2560. See Power Options section for detailed explanation.
  • Power pins are used to connect to power pins of Arduino board. RESET, 3.3V, 5V and GROUND signals from this connector are used.
  • Analog pins are not used by the shield. They are provided to simplify mounting and provide pass-through for shields mounted atop of USB Host Shield in a stack.
  • GPIN pins. Eight 3.3V general-purpose digital input pins of MAX3421E. They are used primarily to interface with buttons, rotary encoders and such. GPIN pins can also be programmed as a source of MAX3421E interrupt. An example of GPIN use can be seen in digital camera controller
  • ICSP connector is used by the shield to send/receive data using SPI interface. SCK, MOSI, MISO and RESET signals from this connector are used.
  • GPOUT pins are eight 3.3V general-purpose digital output pins of MAX3421E. They can be used for many purposes; I use it to drive HD44780-compatible character LCD, as can be seen in digital camera controller circuit, as well as this keyboard example. Max_LCD library which is part of standard USB Host library software package uses some of GPOUT pins.
  • Digital I/O pins 0-7, like already mentioned analog pins are not used by the shield and provided only for convenience.
  • Digital I/O pins 8-13. In this group, the shield in its default configuration uses pins 9 and 10 for INT and SS interface signals. However, standard-sized Arduino boards, such as Duemilanove and UNO have SPI signals routed to pins 11-13 in addition to ICSP connector, therefore shields using pins 11-13 combined with standard-sized Arduinos will interfere with SPI. INT and SS signals can be re-assigned to other pins (see below); SPI signals cannot.
  • MAX3421E interface pads are used to make shield modifications easier. Pads for SS and INT signals are routed to Arduino pins 10 and 9 via solder jumpers. In case pin is taken by other shield a re-routing is necessary, a trace is cut and corresponding pad is connected with another suitable Arduino I/O ping with a wire. To undo the operation, a wire is removed and jumper is closed. See interface modifications section for more information. GPX pin is not used and is available on a separate pad to facilitate further expansion. It can be used as a second interrupt pin of MAX3421E.
  • VBUS power pad. This pad is used in advanced power configurations, described in Power Options section.


Script Toetsenbord




Dit is het voorbeeldscript dat bijgeleverd wordt bij de bibliotheek om een HID toetsenbord uit te lezen:


Script Muis

Dit is het voorbeeldscript dat bijgeleverd wordt bij de bibliotheek om een HID toetsenbord uit te lezen:


Script Joystick

Dit is het voorbeeldscript dat bijgeleverd wordt bij de bibliotheek om een HID Joystick uit te lezen:



Script Barcode scanner

We hebben dit script gevonden op het internet om een USB barcode scanner uit te lezen, de scanner geeft de nummers door als een toetsenbord gevolgd door een enter op het eind (soort macro)




Arduino library @