OpenSource
Advertisement

Arduino is a physical computing platform based on a simple I/O board and a development environment that implements the Processing/Wiring language. Arduino can be used to develop stand-alone interactive objects or can be connected to software running on a computer (e.g., Macromedia Flash, Processing, Max/MSP, Pure Data, SuperCollider). Currently shipping versions can be purchased pre-assembled; hardware design information is available for those who would like to assemble an Arduino by hand.

The Arduino project received an honorary mention in the Digital Communities category at the Prix Ars Electronica 2006.

Implementation

Hardware

An Arduino board consists of an Atmel AVR microcontroller (ATmega168 in newer versions, ATmega8 in older versions) and complementary components to facilitate programming and incorporation into other circuits. Each board includes at least a 5-volt linear regulator and a 16MHz crystal oscillator (or ceramic resonator in some variants). The microcontroller is pre-programmed with a bootloader so that an external programmer is not necessary.

At a conceptual level, all boards are programmed over an RS-232 serial connection, but the way this is implemented in hardware varies by version. Serial Arduino boards contain a simple inverter circuit to convert between RS-232-level and TTL-level signals. Current Arduino boards including the Diecimila are programmed via USB, implemented using USB-to-serial adapter chips such as the FTDI FT232. Some variants, such as the Arduino Mini and the unofficial Boarduino, offload the circuitry required to connect to the computer onto a detachable USB-to-serial adapter board or cable.

The Arduino board exposes most of the microcontroller's I/O pins for use by other circuits. The Diecimila, for example, provides 14 digital I/O pins, 6 of which can produce PWM signals, and 6 analog inputs. These pins are available on the top side of the board, via female .1 inch headers. Several plug-in application boards known as "shields" are also commercially available.

The Arduino-compatible Barebones and Boarduino boards provide male header pins on the underside of the board in two more closely spaced rows for ease of use with solderless breadboards.

Software

The Arduino IDE is a cross-platform Java application that serves as a code editor and compiler and is also capable of transferring firmware serially to the board.

The development environment is based on Processing, an IDE designed to introduce programming to artists unfamiliar with software development. The programming language is derived from Wiring, a C-like language that provides similar functionality for a more tightly restricted board design, whose IDE is also based on Processing.

Hardware versions

File:Arduino Diecimila.jpg

The Arduino Diecimila.

The original Arduino hardware is manufactured by Smart Projects.

Nine versions of the Arduino hardware have been commercially produced to date[1]:

  • The Serial Arduino, programmed with a DB9 serial connection and using an ATmega8.
  • The Arduino Extreme, with a USB interface for programming and using an ATmega8.
  • The Arduino Mini, a miniature version of the Arduino using a surface mount ATmega168.
  • The Arduino Nano, an even smaller, USB powered version of the Arduino using a surface mount ATmega168.
  • The LilyPad Arduino, a minimalist design for wearable application using a surface mount ATmega168.
  • The Arduino NG, with a USB interface for programming and using an ATmega8.
  • The Arduino NG plus, with a USB interface for programming and using an ATmega168.
  • The Arduino BT, with a Bluetooth interface for programming using an ATmega168.
  • The Arduino Diecimila, with a USB interface and utilizes an Atmega168 in a DIL28 package (pictured).
  • The Arduino Duemilanove ("2009"), using the Atmega168 and powered via USB/DC power, switching automatically.

Several Arduino-compatible products that avoid the "Arduino" name by using 'duino' name variants (see restrictions on the use of the trademark "Arduino" below) have been commercially released by other manufacturers:

  • "The Programmable Chip EEG BCI" An Arduino-compatible schematic and PCB retooled into an EEG brain-computer interface.
  • The "Boarduino" - an inexpensive Diecimila clone with header pins for plugging it directly into a breadboard, produced by Adafruit[2].
  • The "Really Bare Bones Board (RBBB)" - a compact inexpensive Diecimila clone, produced by the Modern Device Company.
  • The "Freeduino SB", an Arduino Diecimila-compatible manufactured and sold as a mini-kit by Solarbotics.
  • The "Freeduino MaxSerial", an Arduino-compatible with a standard DB9 serial port, manufactured and sold assembled or as a kit by Fundamental Logic.
  • The "Freeduino Bare Bones Board and Really Bare Bones Board" Arduino-compatible, manufactured and sold as a kit by Modern Device Company.
  • The "Freeduino Through-Hole" Arduino-compatible board that avoids surface-mount soldering, manufactured and sold as a kit by NKC Electronics.
  • The "iDuino", an Arduino-compatible USB board board for breadboarding, manufactured and sold as a kit by Fundamental Logic.
  • The "Sanguino" - An open source enhanced Ardiuno clone which uses an ATMega644P instead of an ATMega168. The ATMega644P provides provides 64K of flash, 4K of RAM and 32 general IO pins in a 40 pin DIP device. It was developed with the RepRap Project in mind.
  • The "LEDuino", an Arduino compatible board with enhanced I2C, DCC decoder and CAN bus interfaces. Manufactured using surface mount and sold assembled by Siliconrailway.

Open hardware and open source

The Arduino hardware reference designs are distributed under a Creative Commons Attribution Share-Alike 2.5 license and are available on the Arduino Web site. Layout and production files for some versions of the Arduino hardware are also available.[3] The source code for the IDE and the on-board library are available and released under the GPLv2 license.[4]

Naming restrictions

While the hardware and software designs are available under copyleft licenses, the developers have expressed a desire that the name "Arduino" (or derivatives thereof) be exclusive to the official product and not be used for derivative 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.[5]

As a result of the protected naming conventions of the Arduino, a group of Arduino users forked (in an extended meaning of the word) the Arduino Diecimila, releasing an equivalent board called Freeduino. The name Freeduino is not trademarked and free to use. [6]

Development team

The core Arduino developer team is composed of Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis and Nicholas Zambetti.

See also

  • Make Controller Kit
  • Processing
  • BASIC Stamp
  • OOPic
  • PICAXE
  • Parallax Propeller

References

External links

This page uses Creative Commons Licensed content from Wikipedia (view authors).
Advertisement