board with no Arduino logo Arduino is
open-source hardware. The hardware reference designs are distributed under a
Creative Commons Attribution Share-Alike 2.5 license and are available on the Arduino website. Layout and production files for some versions of the hardware are also available. Although the hardware and software designs are freely available under
copyleft licenses, the developers have requested the name
Arduino to be
exclusive to the official product and not be used for derived works without permission. The official policy document on the use of the Arduino name emphasizes that the project is open to incorporating work by others into the official product. with an
RS-232 serial interface (upper left) and an Atmel ATmega8 microcontroller chip (black, lower right); the 14 digital I/O pins are at the top, the 6 analog input pins at the lower right, and the power connector at the lower left. Most Arduino boards consist of an
Atmel 8-bit
AVR microcontroller (ATmega8, ATmega168,
ATmega328, ATmega1280, or ATmega2560) with varying amounts of flash memory, pins, and features. The 32-bit
Arduino Due, based on the Atmel
SAM3X8E was introduced in 2012. The boards use single or double-row pins or female headers that facilitate connections for programming and incorporation into other circuits. These may connect with add-on modules termed
shields. Multiple and possibly stacked shields may be individually addressable via an
I²C serial bus. Most boards include a 5 V
linear regulator and a 16 MHz
crystal oscillator or
ceramic resonator. Some designs, such as the LilyPad, run at 8 MHz and dispense with the onboard voltage regulator due to specific
form factor restrictions. Arduino microcontrollers are pre-programmed with a
bootloader that simplifies the uploading of programs to the on-chip
flash memory. The default bootloader of the Arduino Uno is the Optiboot bootloader. Boards are loaded with program code via a serial connection to another computer. Some serial Arduino boards contain a
level shifter circuit to convert between
RS-232 logic levels and
transistor–transistor logic (
TTL serial) level signals. Current Arduino boards are programmed via
Universal Serial Bus (USB), implemented using USB-to-serial adapter chips such as the
FTDI FT232. Some boards, such as later-model Uno boards, substitute the
FTDI chip with a separate AVR chip containing USB-to-serial firmware, which is reprogrammable via its own
ICSP header. Other variants, such as the Arduino Mini and the unofficial Boarduino, use a detachable USB-to-serial adapter board or cable,
Bluetooth or other methods. When used with traditional microcontroller tools, instead of the Arduino IDE, standard AVR
in-system programming (ISP) programming is used. The Arduino board exposes most of the microcontroller's I/O pins for use by other circuits. The
Diecimila,
Duemilanove, and current
Uno provide 14 digital I/O pins, six of which can produce
pulse-width modulated(PWM) signals, and six
analog inputs, which can also be used as six digital I/O pins. These pins are on the top of the board, via female 0.1-inch (2.54 mm) headers. Several plug-in application shields are also commercially available. The Arduino Nano and Arduino-compatible Bare Bones Board and Boarduino boards may provide male header pins on the underside of the board that can plug into solderless
breadboards. Many Arduino-compatible and Arduino-derived boards exist. Some are functionally equivalent to an Arduino and can be used interchangeably. Many enhance the basic Arduino by adding output drivers, often for use in school-level education, to simplify making buggies and small robots. Others are electrically equivalent, but change the form factor, sometimes retaining compatibility with shields, sometimes not. Some variants use different processors, of varying compatibility. In addition to hardware variations,
open source libraries have been developed to support Arduino hardware in
EDA tools. One such project provides
KiCad schematic symbols and
PCB footprints for Arduino modules, expansion boards, and connectors, making it easier for engineers to integrate Arduino into their designs.
Official boards The original Arduino hardware was manufactured by the Italian company Smart Projects. , 17 versions of the Arduino hardware have been commercially produced. File:Arduino316.jpg|Arduino RS232(male pins) File:Arduino Diecimila 6.jpg|Arduino Diecimila File:Arduino Duemilanove 2009b.jpg|Arduino Duemilanove(rev 2009b) File:Arduino UNO unpacked.jpg|
Arduino Uno R2 File:Arduino Uno - R3.jpg|
Arduino Uno SMD R3 File:Arduino Leonardo.jpg|Arduino Leonardo File:2x3 pin header on Arduino Micro.jpg|Arduino Micro (ATmega32U4) File:Arduino Pro Micro.jpg|Arduino Pro Micro (ATmega32U4) File:Arduino Pro.jpg|Arduino Pro(No USB) File:Arduino Mega.jpg|Arduino Mega File:Arduino Nano.jpg|
Arduino Nano(DIP-30 footprint) File:LilyPad Arduino Main Board.JPG|Arduino LilyPad 00(rev 2007) (No USB) File:Arduino Robot Top.jpg|Arduino Robot File:Arduino Esplora.jpg|Arduino Esplora File:Arduino Ethernet Board.jpg|Arduino Ethernet(AVR + W5100) File:ArduinoYun.jpg|Arduino Yún(AVR + AR9331) File:ArduinoDue Front.jpg|Arduino Due(
ARM Cortex-M3 core) File:Arduino Giga R1 WiFi.png|Arduino GIGA R1 WiFi (Dual core
ARM Cortex-M7 +
ARM Cortex-M4 cores + Murata 1DX)
Shields Arduino and Arduino-compatible boards use printed circuit expansion boards called
shields, which plug into the normally supplied Arduino pin headers. Shields can provide motor controls for
3D printing and other applications,
GNSS (satellite navigation), Ethernet,
liquid crystal display (LCD), or breadboarding (
prototyping). Several shields can also be made
do it yourself (DIY). File:Multiple shields stacked on an Arduino board.jpg|Some shields offer stacking headers which allow multiple shields to be stacked on top of an Arduino board. Here, a prototyping shield is stacked on two
Adafruit motor shield V2s. File:Wingshield on Arduino - ARSH-05-WI.jpg|Screw-terminal breakout shield in a wing-type format, allowing bare-end wires to be connected to the board without requiring any specialized pins File:ARSH-09-DL 03.jpg|Adafruit Datalogging Shield with a
Secure Digital (SD) card slot and real-time clock (RTC) chip along with some space for adding components and modules for customization File:Adafruit Motor Shield - ARSH-02-MS 01.jpg|Adafruit Motor Shield with screw terminals for connection to motors. Officially discontinued, this shield may still be available through unofficial channels. File:Front of the motor shield.jpg|The Adafruit Motor Shield V2 uses
IC, requiring vastly fewer digital I/O pins than attaching each motor directly. File:Closeup of usbhost shield with jumper.JPG|A USB host shield which allows an Arduino board to communicate with a USB device such as a keyboard or a mouse ==Software==