Arduino
Encyclopedia
Arduino is an open-source single-board microcontroller
, descendant of the open-source Wiring platform
, designed to make the process of using electronics in multidisciplinary projects more accessible. The hardware consists of a simple open hardware design for the Arduino board with an Atmel AVR
processor and on-board input/output
support. The software consists of a standard programming language compiler and the boot loader that runs on the board.
Arduino hardware is programmed using a Wiring-based language (syntax and libraries), similar to C++
with some simplifications and modifications, and a Processing
-based integrated development environment
.
Current versions can be purchased pre-assembled; hardware design information is available for those who would like to assemble an Arduino by hand. Additionally, variations of the Italian-made Arduino—with varying levels of compatibility—have been released by third parties; some of them are programmed using the Arduino software.
The Arduino project received an honorary mention in the Digital Communities category at the 2006 Prix Ars Electronica
.
, Italy
(the site of the computer company Olivetti
), in 2005 to make a device for controlling student-built interaction design projects less expensive than other prototyping systems available at the time. As of February 2010 more than 120,000 Arduino boards had been shipped. Founders Massimo Banzi and David Cuartielles named the project after Arduin of Ivrea, the main historical character of the town. "Arduino" is an Italian masculine first name, meaning "strong friend". The English version of the name is "Hardwin".
The Arduino project is a fork
of the open-source Wiring Platform
. Wiring was created by Colombian artist and programmer Hernando Barragán as a master's thesis at the Interaction Design Institute Ivrea
along with co-creator Diego Gonzalez Joven a Mexican electrical engineer, under the supervision of Massimo Banzi and Casey Reas. Futhermore, Wiring is based on Processing
and its integrated development environment
created by Casey Reas and Ben Fry.
with complementary components to facilitate programming and incorporation into other circuits. An important aspect of the Arduino is the standard way that connectors are exposed, allowing the CPU board to be connected to a variety of interchangeable add-on modules (known as shields). Official Arduinos have used the megaAVR series of chips, specifically the ATmega8, ATmega168, ATmega328, ATmega1280, and ATmega2560. A handful of other processors have been used by Arduino compatibles. Most boards include a 5 volt linear regulator
and a 16 MHz crystal oscillator
(or ceramic resonator
in some variants), although some designs such as the LilyPad run at 8 MHz and dispense with the onboard voltage regulator due to specific form-factor restrictions. An Arduino's microcontroller is also pre-programmed with a boot loader that simplifies uploading of programs to the on-chip flash memory
, compared with other devices that typically need an external programmer
.
At a conceptual level, when using the Arduino software stack, all boards are programmed over an RS-232
serial connection, but the way this is implemented varies by hardware version. Serial Arduino boards contain a simple inverter circuit to convert between RS-232-level and TTL-level signals. Current Arduino boards 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, 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 ISP programming is used.)
The Arduino board exposes most of the microcontroller's I/O pins for use by other circuits. The Diecimila, now superseded by the Duemilanove, for example, provides 14 digital I/O pins, six of which can produce pulse-width modulated
signals, and six analog inputs. These pins are on the top of the board, via female 0.1 inch headers. Several plug-in application "shields" are also commercially available.
The Arduino Nano, and Arduino-compatible Bare Bones Board and Boarduino boards provide male header pins on the underside of the board to be plugged into solderless breadboards.
, brace matching
, and automatic indentation, and is also capable of compiling and uploading programs to the board with a single click. There is typically no need to edit makefiles or run programs on a command-line interface
.
The Arduino IDE comes with a C
/C++ library called "Wiring" (from the project of the same name), which makes many common input/output operations much easier. Arduino programs are written in C/C++, although users only need define two functions to make a runnable program:
A typical first program for a microcontroller simply blinks a LED (light-emitting diode
) on and off. In the Arduino environment, the user might write a program like this:
For the above code to work correctly, the positive side of the LED must be connected to pin 13 and the negative side of the LED must be connected to ground. The above code would not be seen by a standard C++ compiler as a valid program, so when the user clicks the "Upload to I/O board" button in the IDE, a copy of the code is written to a temporary file with an extra include header at the top and a very simple main function at the bottom, to make it a valid C++ program.
The Arduino IDE uses the GNU toolchain
and AVR Libc to compile programs, and uses avrdude to upload programs to the board.
For educational purposes there is third party graphical development environment called Minibloq
available under a different open source license.
.
Thirteen versions of the Arduino hardware have been commercially produced to date:
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. The source code for the IDE and the on-board library are available and released under the GPLv2
license.
Arduino and Arduino-compatible boards make use of shields, which are printed circuit boards that sit atop an Arduino, and plug into the normally supplied pin-headers. These are expansions to the base Arduino. There are many functions of shields, from motor controls, to breadboarding (prototyping).
For example:
A list of Arduino-compatible shields is maintained at the Arduino Shield List website. A number of shields can also be made DIY.
Although the hardware and software designs are freely available under copyleft
licenses, the developers have requested that the name "Arduino" 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. Several Arduino-compatible products commercially released have avoided the "Arduino" name by using "-duino" name variants.
on the TWiT.tv network, in which he discussed the history and goals of the Arduino project.
Single-board microcontroller
A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: microprocessor, I/O circuits, clock generator, RAM, stored program memory and any support ICs necessary...
, descendant of the open-source Wiring platform
Wiring (development platform)
Wiring is an open source electronics prototyping platform composed of a programming language, an integrated development environment , single-board microcontroller documentation thoughtfully created with designers and artists in mind and a community where experts, intermediate and beginners from...
, designed to make the process of using electronics in multidisciplinary projects more accessible. The hardware consists of a simple open hardware design for the Arduino board with an Atmel AVR
Atmel AVR
The AVR is a modified Harvard architecture 8-bit RISC single chip microcontroller which was developed by Atmel in 1996. The AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other...
processor and on-board input/output
Input/output
In computing, input/output, or I/O, refers to the communication between an information processing system , and the outside world, possibly a human, or another information processing system. Inputs are the signals or data received by the system, and outputs are the signals or data sent from it...
support. The software consists of a standard programming language compiler and the boot loader that runs on the board.
Arduino hardware is programmed using a Wiring-based language (syntax and libraries), similar to C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
with some simplifications and modifications, and a Processing
Processing (programming language)
Processing is an open source programming language and integrated development environment built for the electronic arts and visual design communities with the purpose of teaching the basics of computer programming in a visual context, and to serve as the foundation for electronic sketchbooks...
-based integrated development environment
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
.
Current versions can be purchased pre-assembled; hardware design information is available for those who would like to assemble an Arduino by hand. Additionally, variations of the Italian-made Arduino—with varying levels of compatibility—have been released by third parties; some of them are programmed using the Arduino software.
The Arduino project received an honorary mention in the Digital Communities category at the 2006 Prix Ars Electronica
Prix Ars Electronica
The Prix Ars Electronica is one of the most important yearly prizes in the field of electronic and interactive art, computer animation, digital culture and music...
.
History
The project began in IvreaIvrea
Ivrea is a town and comune of the province of Turin in the Piedmont region of northwestern Italy. Situated on the road leading to the Aosta Valley , it straddles the Dora Baltea and is regarded as the centre of the Canavese area. Ivrea lies in a basin that, in prehistoric times, formed a great lake...
, Italy
Italy
Italy , officially the Italian Republic languages]] under the European Charter for Regional or Minority Languages. In each of these, Italy's official name is as follows:;;;;;;;;), is a unitary parliamentary republic in South-Central Europe. To the north it borders France, Switzerland, Austria and...
(the site of the computer company Olivetti
Olivetti
Olivetti S.p.A. is an Italian manufacturer of computers, printers and other business machines.- Founding :The company was founded as a typewriter manufacturer in 1908 in Ivrea, near Turin, by Camillo Olivetti. The firm was mainly developed by his son Adriano Olivetti...
), in 2005 to make a device for controlling student-built interaction design projects less expensive than other prototyping systems available at the time. As of February 2010 more than 120,000 Arduino boards had been shipped. Founders Massimo Banzi and David Cuartielles named the project after Arduin of Ivrea, the main historical character of the town. "Arduino" is an Italian masculine first name, meaning "strong friend". The English version of the name is "Hardwin".
The Arduino project is a fork
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...
of the open-source Wiring Platform
Wiring (development platform)
Wiring is an open source electronics prototyping platform composed of a programming language, an integrated development environment , single-board microcontroller documentation thoughtfully created with designers and artists in mind and a community where experts, intermediate and beginners from...
. Wiring was created by Colombian artist and programmer Hernando Barragán as a master's thesis at the Interaction Design Institute Ivrea
Interaction Design Institute Ivrea
Interaction Design Institute Ivrea was a graduate school in the field of Interaction Design operating in the town of Ivrea, in Italy....
along with co-creator Diego Gonzalez Joven a Mexican electrical engineer, under the supervision of Massimo Banzi and Casey Reas. Futhermore, Wiring is based on Processing
Processing (programming language)
Processing is an open source programming language and integrated development environment built for the electronic arts and visual design communities with the purpose of teaching the basics of computer programming in a visual context, and to serve as the foundation for electronic sketchbooks...
and its integrated development environment
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
created by Casey Reas and Ben Fry.
Hardware
An Arduino board consists of an 8-bit Atmel AVR microcontrollerMicrocontroller
A microcontroller is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM...
with complementary components to facilitate programming and incorporation into other circuits. An important aspect of the Arduino is the standard way that connectors are exposed, allowing the CPU board to be connected to a variety of interchangeable add-on modules (known as shields). Official Arduinos have used the megaAVR series of chips, specifically the ATmega8, ATmega168, ATmega328, ATmega1280, and ATmega2560. A handful of other processors have been used by Arduino compatibles. Most boards include a 5 volt linear regulator
Linear regulator
In electronics, a linear regulator is a voltage regulator based on an active device operating in its "linear region" or passive devices like Zener diodes operated in their breakdown region...
and a 16 MHz crystal oscillator
Crystal oscillator
A crystal oscillator is an electronic oscillator circuit that uses the mechanical resonance of a vibrating crystal of piezoelectric material to create an electrical signal with a very precise frequency...
(or ceramic resonator
Ceramic resonator
A ceramic resonator is an electronic component that when combined with other appropriate components, can produce oscillations at a specific frequency...
in some variants), although some designs such as the LilyPad run at 8 MHz and dispense with the onboard voltage regulator due to specific form-factor restrictions. An Arduino's microcontroller is also pre-programmed with a boot loader that simplifies uploading of programs to the on-chip flash memory
Flash memory
Flash memory is a non-volatile computer storage chip that can be electrically erased and reprogrammed. It was developed from EEPROM and must be erased in fairly large blocks before these can be rewritten with new data...
, compared with other devices that typically need an external programmer
Programmer (hardware)
In field of computer hardware, the term programmer, chip programmer or device programmer refers to a hardware device that configures programmable non-volatile circuits such as EPROMs, EEPROMs, Flashs, PALs, FPGAs or programmable logic circuits....
.
At a conceptual level, when using the Arduino software stack, all boards are programmed over an RS-232
RS-232
In telecommunications, RS-232 is the traditional name for a series of standards for serial binary single-ended data and control signals connecting between a DTE and a DCE . It is commonly used in computer serial ports...
serial connection, but the way this is implemented varies by hardware version. Serial Arduino boards contain a simple inverter circuit to convert between RS-232-level and TTL-level signals. Current Arduino boards are programmed via USB
Universal Serial Bus
USB is an industry standard developed in the mid-1990s that defines the cables, connectors and protocols used in a bus for connection, communication and power supply between computers and electronic devices....
, implemented using USB-to-serial adapter chips such as the FTDI
FTDI
Future Technology Devices International, commonly known by its initialization, FTDI, is a Scottish privately traded semiconductor device company, specializing in Universal Serial Bus technology...
FT232. Some variants, such as the Arduino Mini and the unofficial Boarduino, use a detachable USB-to-serial adapter board or cable, Bluetooth
Bluetooth
Bluetooth is a proprietary open wireless technology standard for exchanging data over short distances from fixed and mobile devices, creating personal area networks with high levels of security...
or other methods. (When used with traditional microcontroller tools instead of the Arduino IDE, standard AVR ISP programming is used.)
The Arduino board exposes most of the microcontroller's I/O pins for use by other circuits. The Diecimila, now superseded by the Duemilanove, for example, provides 14 digital I/O pins, six of which can produce pulse-width modulated
Pulse-width modulation
Pulse-width modulation , or pulse-duration modulation , is a commonly used technique for controlling power to inertial electrical devices, made practical by modern electronic power switches....
signals, and six analog inputs. These pins are on the top of the board, via female 0.1 inch headers. Several plug-in application "shields" are also commercially available.
The Arduino Nano, and Arduino-compatible Bare Bones Board and Boarduino boards provide male header pins on the underside of the board to be plugged into solderless breadboards.
Arduino board models
Arduino | Processor | Flash KiB |
EEPROM KiB |
SRAM KiB |
Digital I/O pins |
...with PWM |
Analog input pins |
USB Interface type |
Dimensions inches |
Dimensions mm |
---|---|---|---|---|---|---|---|---|---|---|
Diecimila | ATmega168 | 16 | 0.5 | 1 | 14 | 6 | 6 | FTDI | 2.7 in × 2.1 in | 68.6 mm × 53.3 mm |
Due | ATMEL SAM3U | 256 | 0 | 50 | 54 | 4 | 16 | |||
Duemilanove | ATmega168/328P | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 6 | FTDI | 2.7 in × 2.1 in | 68.6 mm × 53.3 mm |
Uno | ATmega328P | 32 | 1 | 2 | 14 | 6 | 6 | ATmega8U2 | 2.7 in × 2.1 in | 68.6 mm × 53.3 mm |
Leonardo | Atmega32u4 | 32 | 1 | 2 | 14 | 6 | 12 | Atmega32u4 integrated | 2.7 in × 2.1 in | 68.6 mm × 53.3 mm |
Mega | ATmega1280 | 128 | 4 | 8 | 54 | 14 | 16 | FTDI | 4 in × 2.1 in | 101.6 mm × 53.3 mm |
Mega2560 | ATmega2560 | 256 | 4 | 8 | 54 | 14 | 16 | ATmega8U2 | 4 in × 2.1 in | 101.6 mm × 53.3 mm |
Fio | ATmega328P | 32 | 1 | 2 | 14 | 6 | 8 | None | 1.6 in × 1.1 in | 40.6 mm × 27.9 mm |
Nano | ATmega168 or ATmega328 | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 8 | FTDI | 1.70 in × 0.73 in | 43 mm × 18 mm |
LilyPad | ATmega168V or ATmega328V | 16 | 0.5 | 1 | 14 | 6 | 6 | None | 2 in ⌀ | 50 mm ⌀ |
Software
The Arduino IDE is a cross-platform application written in Java, and is derived from the IDE for the Processing programming language and the Wiring project. It is designed to introduce programming to artists and other newcomers unfamiliar with software development. It includes a code editor with features such as syntax highlightingSyntax highlighting
Syntax highlighting is a feature of some text editors that display text—especially source code—in different colors and fonts according to the category of terms. This feature eases writing in a structured language such as a programming language or a markup language as both structures and...
, brace matching
Brace matching
Brace matching, or parentheses matching, is a syntax highlighting feature of certain text editors and integrated development environments that highlights matching sets of braces in languages such as Java and C++ that use them...
, and automatic indentation, and is also capable of compiling and uploading programs to the board with a single click. There is typically no need to edit makefiles or run programs on a command-line interface
Command-line interface
A command-line interface is a mechanism for interacting with a computer operating system or software by typing commands to perform specific tasks...
.
The Arduino IDE comes with a C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
/C++ library called "Wiring" (from the project of the same name), which makes many common input/output operations much easier. Arduino programs are written in C/C++, although users only need define two functions to make a runnable program:
- setup – a function run once at the start of a program that can initialize settings
- loop – a function called repeatedly until the board powers off
A typical first program for a microcontroller simply blinks a LED (light-emitting diode
Light-emitting diode
A light-emitting diode is a semiconductor light source. LEDs are used as indicator lamps in many devices and are increasingly used for other lighting...
) on and off. In the Arduino environment, the user might write a program like this:
For the above code to work correctly, the positive side of the LED must be connected to pin 13 and the negative side of the LED must be connected to ground. The above code would not be seen by a standard C++ compiler as a valid program, so when the user clicks the "Upload to I/O board" button in the IDE, a copy of the code is written to a temporary file with an extra include header at the top and a very simple main function at the bottom, to make it a valid C++ program.
The Arduino IDE uses the GNU toolchain
GNU toolchain
The GNU toolchain is a blanket term for a collection of programming tools produced by the GNU Project. These tools form a toolchain used for developing applications and operating systems....
and AVR Libc to compile programs, and uses avrdude to upload programs to the board.
For educational purposes there is third party graphical development environment called Minibloq
Minibloq
Minibloq is a graphical development environment for Arduino and other platforms. Its main objective is to help in teaching programming. It is specially used in robotics at high school.- How it works :...
available under a different open source license.
Official hardware
The original Arduino hardware is manufactured by the Italian company Smart Projects. Some Arduino-branded boards have been designed by the American company SparkFun ElectronicsSparkFun Electronics
SparkFun Electronics is an electronics retailer in Boulder, Colorado, United States. It manufactures and sells microcontroller development boards and breakout boards.-History:...
.
Thirteen versions of the Arduino hardware have been commercially produced to date:
- The Serial Arduino, programmed with a DE-9D-subminiatureThe D-subminiature or D-sub is a common type of electrical connector. They are named for their characteristic D-shaped metal shield. When they were introduced, D-subs were among the smaller connectors used on computer systems....
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-mountedSurface-mount technologySurface mount technology is a method for constructing electronic circuits in which the components are mounted directly onto the surface of printed circuit boards . An electronic device so made is called a surface mount device...
ATmega168 - The Arduino Nano, an even smaller, USB powered version of the Arduino using a surface-mounted ATmega168 (ATmega328 for newer version)
- The LilyPad Arduino, a minimalist design for wearable applicationWearable technologyWearable technology, tech togs, or fashion electronics are clothing and accessories incorporating computer and advanced electronic technologies...
using a surface-mounted 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 Bluetooth, 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 (ATmega328 for newer version) and powered via USB/DC power, switching automatically
- The Arduino Mega, using a surface-mounted ATmega1280 for additional I/O and memory.
- The Arduino Uno, uses the same ATmega328 as late-model Duemilanove, but whereas the Duemilanove used an FTDI chipset for USB, the Uno uses an ATmega8U2 programmed as a serial converter.
- The Arduino Mega2560, uses a surface-mounted ATmega2560, bringing the total memory to 256 kB. It also incorporates the new ATmega8U2 USB chipset.
Open hardware and open source
The Arduino hardware reference designs are distributed under a Creative CommonsCreative Commons
Creative Commons is a non-profit organization headquartered in Mountain View, California, United States devoted to expanding the range of creative works available for others to build upon legally and to share. The organization has released several copyright-licenses known as 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. The source code for the IDE and the on-board library are available and released under the GPLv2
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
license.
Accessory hardware
Arduino and Arduino-compatible boards make use of shields, which are printed circuit boards that sit atop an Arduino, and plug into the normally supplied pin-headers. These are expansions to the base Arduino. There are many functions of shields, from motor controls, to breadboarding (prototyping).
For example:
- Arduino Ethernet Shield
- XBee Shield
- TouchShield from Liquidware
- Datalog Shield: RTC, SD card storage, temperature sensing, etc. From NuElectronics
- USB Host Shield from Circuits@Home
- Cosmo WiFi Connect from JT5
- Cosmo GSM Connect from JT5
- Hydrogen from DIY Sandbox
A list of Arduino-compatible shields is maintained at the Arduino Shield List website. A number of shields can also be made DIY.
Arduino-compatible boards
There are a great many Arduino-compatible and Arduino-derived boards. Some are functionally equivalent to an Arduino and may be used interchangeably. Many are the basic Arduino with the addition of commonplace output drivers, often for use in school-level education to simplify the construction of buggies and small robots. Others are electrically equivalent but change the form factor, sometimes permitting the continued use of Shields, sometimes not. Some variants even use completely different processors, with varying levels of compatibility.Although the hardware and software designs are freely available under copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
licenses, the developers have requested that the name "Arduino" be exclusive to the official product
Genericized trademark
A genericized trademark is a trademark or brand name that has become the colloquial or generic description for, or synonymous with, a general class of product or service, rather than as an indicator of source or affiliation as intended by the trademark's holder...
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. Several Arduino-compatible products commercially released have avoided the "Arduino" name by using "-duino" name variants.
Development team
The core Arduino developer team is composed of Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis and Nicholas Zambetti. Massimo Banzi was interviewed on the March 21st, 2009 episode (Episode 61) of FLOSS WeeklyFLOSS Weekly
FLOSS Weekly is a free software / open source themed podcast from the TWiT Network. The show premiered on April 7, 2006, and features prominent guests from the free software/open source community. It was originally hosted by Leo Laporte; his cohost for the first seventeen episodes was Chris DiBona...
on the TWiT.tv network, in which he discussed the history and goals of the Arduino project.
See also
- ArduinomeArduinomeAn Arduinome is a MIDI controller device that mimics the Monome using the Arduino physical computing platform. The plans for the Arduinome are released under an open source, non-commercial use only license.-External links:* *...
- ARM expressARM expressARM express refers to a line of products from Coridium.Pin compatible with the Basic stamp, the ARM express line is based upon 60 MHz 32 bit ARM microcontrollers programmable in ARMbasic dialect of BASIC, as well as C and Oberon...
- BASIC StampBASIC StampThe BASIC Stamp is a microcontroller with a small, specialized BASIC interpreter built into ROM. It is made by Parallax, Inc. and has been popular with electronics hobbyists since the early 1990s because of its low threshold of learning and ease of use due to its simple to understand BASIC...
- FritzingFritzingFritzing is an open source software initiative to support designers and artists ready to move from physical prototyping to actual product. It was developed at the University of Applied Sciences of Potsdam.- Goals :...
- Rabbit SemiconductorRabbit SemiconductorRabbit Semiconductor is the company which designs and sells the Rabbit family of microcontrollers and microcontroller modules.For development, it provides Dynamic C, a non-standard dialect of C with proprietary structures for multitasking....
- Make Controller Kit
- OOPicOOPicThe OOPic is an Object Oriented Programmable Integrated Circuit. Created by Savage Innovations, this PIC microcontroller comes with an IDE that supports programming in syntaxes based on the BASIC, Java and C programming languages.There are three versions currently on the market: the , the and the...
- Parallax PropellerParallax PropellerThe Parallax P8X32A Propeller chip, introduced in 2006, is a multi-core architecture parallel microcontroller with eight 32-bit RISC CPU cores....
- PICAXEPICAXEPICAXE is the name of a UK-sourced microcontroller system based on a range of Microchip PICs. There are 13 PICAXE variants of differing pin counts from 8 to 40 pins. Initially marketed for use in education and by electronics hobbyists, they are also used in commercial and technical fields,...
- GumstixGumstixGumstix is a company founded in 2003 by Gordon Kruberg that produces small single-board computers. The name Gumstix refers to the size of the first such computer being the approximate size of a stick of gum....
- ioBridgeIObridgeioBridge, Inc. is a manufacturer of Internet-based monitor and control hardware and a provider of integrated web services.In December 2008, ioBridge released the IO-204 Monitor and Control Module and web services platform to connect electronics projects online such as an iPhone Controlled Dog Treat...
- Humane InformaticsHumane InformaticsHumane Informatics is a one-man project in the field of Information and communication technologies for development led by Braddock Gaskill. As of October 2010 the project introduced two open-source hardware devices - the Humane Reader and the Humane PC...
- Freescale SemiconductorFreescale SemiconductorFreescale Semiconductor, Inc. is a producer and designer of embedded hardware, with 17 billion semiconductor chips in use around the world. The company focuses on the automotive, consumer, industrial and networking markets with its product portfolio including microprocessors, microcontrollers,...
- Netduino, Arduino hardware compatible SoC running the Open Source .NET Compact Framework.NET Compact FrameworkThe Microsoft .NET Compact Framework is a version of the .NET Framework that is designed to run on resource constrained mobile/embedded devices such as personal digital assistants , mobile phones, factory controllers, set-top boxes, etc...
External links
- Arduino project main page
- Arduino Shield List
- Arduino Cheat Sheet
- Full Arduino Book List
- Regularly updated Arduino tutorials
- Arduino-Information WIKI with example connections and Arduino Software
- Basic Arduino projects & tutorials with code, parts and pictures
- Collection of Arduino Electronics Projects
- Arduino tutorial at Adafruit Industries
- RTOS (Real Time Operating System) list for Arduino
- Enjoying Arduinos and their Clones.
- Basic Arduino Duemilanove tutorial
- Graphical programming environment for Arduino
- Scada for Arduino
- Blinkenlight Experiments for Arduino