What is Arduino?
Arduino is a convenient, flexible, and beginner-friendly open-source electronics prototyping platform that includes hardware (various models of Arduino boards) and software (Arduino IDE). It is suitable for artists, designers, hobbyists, and anyone who likes to tinker. Arduino can sense the environment through various sensors and interact with it by controlling lights, motors, and other devices. The microcontroller on the board can be programmed using the Arduino programming language, compiled into binary files, and loaded onto the microcontroller. Arduino-based projects can consist of just Arduino or include Arduino along with other software running on a PC, communicating with each other (e.g., Flash, Processing, MaxMSP) to achieve functionality.
Arduino can be connected to LEDs, LCD displays, buttons, stepper motors, servos, temperature and humidity sensors, distance sensors, pressure sensors, or anything else that can output data or be controlled. It can also wirelessly connect to other devices through Bluetooth, WiFi, Zigbee, NB-IoT, and more, or access the internet. You can collect data from sensors with Arduino and upload it to a data center, then control peripheral devices connected to it based on commands from the data center.
Common Types of Arduino Development Boards
Arduino development boards come in various models, such as Arduino Uno, Arduino Leonardo, Arduino 101, Arduino Mega 2560, Arduino Nano, Arduino Micro, Arduino Ethernet, Arduino Yún, Arduino Due, and more. Arduino Uno, for example, is based on the ATmega328p microcontroller development board with 14 digital input/output pins (6 of which can be used for PWM output), 6 analog input pins, and a 16 MHz crystal oscillator. Arduino Mega 2560, on the other hand, is based on the ATmega2560 microcontroller with 54 digital input/output pins (15 of which can be used for PWM output), 16 analog input pins, and 4 UARTs.
Arduino UNO R3
Arduino Uno, based on the ATmega328 microcontroller, is a popular board with 14 digital I/O pins, 6 analog input pins, and a 16 MHz clock frequency. It is known for its compatibility with various expansion boards. However, it has limited static memory (SRAM) and flash storage, making it less suitable for projects requiring extensive memory.
Arduino UNO Specification
Processor | ATmega328 (8-bit CPU, 16MHz clock frequency, 2KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 68.6 mm x 53.4 mm |
Price | $23 |
Arduino Mega 2560
Arduino Mega 2560, based on the ATmega2560 microcontroller, offers more I/O pins, including 54 digital input/output pins (15 of which support PWM output), 16 analog input pins, and 4 UART interfaces. It is suitable for projects that require more pins and processing power than the Uno.
Arduino Mega Specification
Processor | ATmega2560 (8-bit CPU, 16MHz clock frequency, 8KB SRAM, 256KB Flash) |
---|---|
Features |
|
Dimensions | 101.52 mm x 53.3 mm |
Price | $40.3 |
Arduino Nano
Arduino Nano is a smaller version of the Uno, with the same ATmega328 microcontroller but a more compact form factor. It is ideal for projects where space is limited and can be directly plugged into a breadboard.
Arduino Nano Specification
Processor | ATmega328P (8-bit CPU, 16MHz clock frequency, 2KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 18.5 mm x 43.2 mm |
Price | $10-15 (varies by version and supplier) |
Arduino Leonardo
Arduino Leonardo features the ATmega32u4 microcontroller, offering native USB support and 20 digital I/O pins (including 12 analog-capable pins). It can simulate mouse and keyboard inputs, making it suitable for certain applications but may have stability issues compared to Uno.
Arduino Leonardo Specification
Processor | ATmega32u4 (8-bit CPU, 16MHz clock frequency, 2.5KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 68.6 mm x 53.3 mm |
Price | $20.70 |
Arduino Due
Arduino Due uses the Atmel SAM3X8E ARM Cortex-M3 microcontroller, providing 32-bit processing power, 54 digital I/O pins, 12 analog input pins, and native USB support. However, it operates at a 3.3V voltage, which may not be compatible with all accessories.
Arduino Due Specification
Processor | Atmel SAM3X8E ARM Cortex-M3 (32-bit CPU, 84MHz clock frequency, 96KB SRAM, 512KB Flash) |
---|---|
Features |
|
Dimensions | 101.52 mm x 53.3 mm |
Price | $40.30 |
Arduino Micro
Arduino Micro, featuring the ATmega32u4 microcontroller, offers 20 digital I/O pins (12 analog-capable) and native USB support in a compact form factor, making it suitable for wearable and small projects.
Arduino Micro Specification
Processor | ATmega32u4 (8-bit CPU, 16MHz clock frequency, 2.5KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 48 mm x 18 mm |
LilyPad Arduino
LilyPad Arduino is designed for wearable and textile projects, with a circular PCB and sewable pins. It features 14 digital I/O pins and 6 analog input pins, making it suitable for integrating electronics into clothing.
LilyPad Arduino Specification
Processor | ATmega328 (8-bit CPU, 16MHz clock frequency, 2KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 50mm in diameter (circular shape) |
Price | $22 |
Arduino Esplora
Arduino Esplora, based on the Leonardo, features built-in hardware inputs and outputs, including a joystick, buttons, sensors, and a TFT display connector. It simplifies interaction but lacks standard digital and analog pins.
Arduino Esplora Specification
Processor | ATmega32u4 (8-bit CPU, 16MHz clock frequency, 2.5KB SRAM, 32KB Flash) |
---|---|
Features |
|
Dimensions | 164.04 mm x 60 mm (elliptical shape) |
Price | RETIRED |
Arduino Yun
Arduino Yun combines the ATmega32u4 microcontroller with an Atheros AR9331 router chip for wireless Linux-based system support. It offers 14 digital I/O pins (12 analog-capable) and native USB support, facilitating cloud and IoT applications.
Arduino Yun Specification
Processor | ATmega32u4 (8-bit CPU, 16MHz clock frequency, 2.5KB SRAM, 32KB Flash) |
---|---|
Additional Chip | Atheros AR9331 integrated router chipset |
Features |
|
Dimensions | 70mm x 50mm |
How to Choose an Arduino Board?
Selecting the right Arduino for your project depends on performance, features, and size. Consider the microcontroller’s capabilities, available pins, built-in components, and compatibility with your project’s requirements for memory, processing power, and connectivity.