In this tutorial, we shall learn the various types of Arduino boards, but before we delve into that, let’s talk a bit about the Arduino board. The Arduino board design was created in the first place, to assist students and learners who do not have background knowledge in electronics and computer programming. Over the years, the Arduino board has evolved from a simple 8-bit microcontroller to a powerful but easy to use microcontroller that can be used for a whole lot of projects like embedded system designs, Robots, Drones, RC cars, 3D printers, internet of things (IoT) and lots more.
One good thing about Arduino that makes it stand out is that, it is Open Source.
What is Open Source?
Open source denotes a software or hardware for which the original source code and or design files are made freely available and may be redistributed and modified.
All Arduino boards are open-source. This gives makers, enthusiast, hobbyists, technicians, engineers, experts, scientists etc. the opportunity to hack, tweak and redesign the boards to their tastes and needs.
There are several types of Arduino boards out there for users to make use of in their designs. These varieties of Arduino boards out there, have been used by makers to design a lot of projects like the ones mentioned earlier. Projects like, Robots, Embedded systems, Drones, IoT, 3D printers, etc. At the same time, there is a large community of Arduino users out there that have contributed their knowledge and understanding to creating a gamut of contents on how to use Arduino boards. A simple search of some keywords on the internet like
- What is Arduino?
- How to use Arduino
- What are the different types of Arduino boards?
- List of Arduino projects
will bring millions of search results. You can try searching them and see what search results you will get.
What is Arduino?
Arduino is an open-source hardware and software platform that enables makers and, circuit designers, engineers, technicians, hobbyists, tech enthusiasts and geeks to make varieties of electronic based projects. When we say hardware, we are referring to the “Arduino microcontroller board”; and when say software, we are referring to the Arduino integrated development environment IDE. So, Arduino comprises of the entire setup that are required to start making electronic projects, while Arduino board refers to just the microcontroller hardware. It should be noted that every Arduino board can be programmed with the Arduino integrated development environment. The use of Arduino simply involves wring the Arduino board with some other electronic components, then uploading an Arduino code or program called sketch unto the Arduino board through a USB cable. The Arduino code or program is written in a modified C and C++. Hence, if you want to program Arduino boards, you need to know at least the basics of C or C++ programming language. The ease with which one can upload Arduino sketch to an Arduino board directly with the help of just a USB cable, makes Arduino more robust and simpler than so many other microcontrollers.
Looking at the gamut of Arduino boards, one may be poised to ask:
Why are there so many Arduino boards or why do we have so many Arduino boards?
Why are there many Arduino boards?
The basic reason why we have so many Arduino boards is “function”. As technology advances, the need to achieve newer things and do things better arises, hence, the need to make more new Arduino boards with improved features and functionalities. Again, as more and more types of Arduino boards are made, makers are provided with choices that are laden with trade-offs. In such trade-offs, the following are considered:
- Functionality
- Price
- Robustness
- Versatility
- Compatibility
Hence, before you choose any of the Arduino boards listed below for your Arduino, projects, make sure to carry out your study and take into consideration the factors listed above. If you want to more check my Arduino tutorial for beginners.
Different types of Arduino boards
Having given a bit introduction to the meaning of Arduino and Arduino board, let’s discus the various types of Arduino boards.
Below is a list of the various types of Arduino boards:
- Arduino Uno
- Arduino Nano
- Arduino Micro
- Arduino Due
- Arduino Leonardo Board
- Arduino Robot
- Arduino Ethernet
- Arduino Zero
- Arduino Pro Mic
- Arduino Esplora
- Arduino Mega (R3) Board
- Arduino Diecimila
- LilyPad Arduino Board
- RedBoard Arduino Board
- Arduino Shields
Arduino Uno – Types of Arduino Boards
Among all the various types of Arduino boards, Arduino Uno stands out to be the most prominent. Uno uses the ATmega328P based microcontroller. Arduino Uno is the commonest of them all. If you are looking for the Arduino microcontroller board to start your learning with, then Arduino UNO is the right choice. Most DIY projects you see on the internet are made with Arduino Uno. It is very simple and easy to use. The Arduino Uno board has the following features summarized in a tabular form below
Microcontroller | ATmega328P |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-12V |
Input Voltage (limit) | 6-20V |
Digital I/O Pins | 14 (of which 6 provide PWM output) |
PWM Digital I/O Pins | 6 |
Analog Input Pins | 6 |
DC Current per I/O Pin | 20 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 32 KB (ATmega328P) of which 0.5 KB used by bootloader |
SRAM | 2 KB (ATmega328P) |
EEPROM | 1 KB (ATmega328P) |
Clock Speed | 16 MHz |
LED_BUILTIN | 13 |
Length | 68.6 mm |
Width | 53.4 mm |
Weight | 25 g |
In addition to the features above, the Arduino Uno board has a reset button, a power jack, a USB connection, an In-Circuit Serial Programming header (ICSP), et cetera. The Uno board as it is often called, contains everything required to hold up the microcontroller. To use the microcontroller, simply attach it to a computer with the help of a USB cable, the electrical power from the computer will power the board. But when you need to have it as a standalone unit, you can power it up with a battery, which you can connect to the power jack. By the way, you can check out my full tutorial on what is Arduino and how to use Arduino.
Arduino Nano – Types of Arduino boards
As the name implies, Arduino Nano is another version of the Arduino microcontroller, but it is very small in size. If you want to design an Arduino project where size is a concern, then go for Arduino Nano. I made an Arduino project called Arduino light switch, which is a lamp holder that is controlled with a remote controller. All the parts for the design were housed in a pattress box. I was able to design and realized the project only with Arduino Nano.
The features of Arduino Nano are similar to those of Arduino Uno, the main difference is the size. See the features tabulated below.
Microcontroller | ATmega328 |
Architecture | AVR |
Operating Voltage | 5 V |
Flash Memory | 32 KB of which 2 KB used by bootloader |
SRAM | 2 KB |
Clock Speed | 16 MHz |
Analog IN Pins | 8 |
EEPROM | 1 KB |
DC Current per I/O Pins | 40 mA (I/O Pins) |
Input Voltage | 7-12 V |
Digital I/O Pins | 22 (6 of which are PWM) |
PWM Output | 6 |
Power Consumption | 19 mA |
PCB Size | 18 x 45 mm |
Weight | 7 g |
Arduino micro – Types of Arduino boards
Arduino micro is a bit big bigger than the Arduino Nano, but is as efficient as other Arduino boards. Se the features of the Arduino micro below.
Microcontroller | ATmega32U4 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-9V |
Input Voltage (limit) | 6-9V |
Digital I/O Pins | 20 |
PWM Channels | 7 |
Analog Input Channels | 12 |
DC Current per I/O Pin | 20 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 32 KB (ATmega32U4) of which 4 KB used by bootloader |
SRAM | 2.5 KB (ATmega32U4) |
EEPROM | 1 KB (ATmega32U4) |
Clock Speed | 16 MHz |
LED_BUILTIN | 13 |
Length | 48 mm |
Width | 18 mm |
Weight | 13 g |
Arduino Due – Types of Arduino boards
The Arduino Due is a microcontroller board uses the Atmel SAM3X8E ARM Cortex-M3 CPU. This board was the first Arduino board based on a 32-bit ARM core microcontroller. It has 54 digital input/output pins (of which 12 can be used as PWM outputs), 12 analog inputs, 4 UARTs (hardware serial ports), a 84 MHz clock, an USB OTG capable connection, 2 DAC (digital to analog), 2 TWI, a power jack, an SPI header, a JTAG header, it also has a reset button and an erase button. The Due is compatible with all Arduino shields that work at 3.3V and are compliant with the 1.0 Arduino pinout.
Unlike most Arduino boards, the Arduino Due board runs at 3.3V. The maximum voltage that the I/O pins can tolerate is 3.3V. connecting voltages higher than 3.3V to any I/O pin could damage the board.
Arduino due has the specifications below.
Microcontroller | AT91SAM3X8E |
Operating Voltage | 3.3V |
Input Voltage (recommended) | 7-12V |
Input Voltage (limits) | 6-16V |
Digital I/O Pins | 54 (of which 12 provide PWM output) |
Analog Input Pins | 12 |
Analog Output Pins | 2 (DAC) |
Total DC Output Current on all I/O lines | 130 mA |
DC Current for 3.3V Pin | 800 mA |
DC Current for 5V Pin | 800 mA |
Flash Memory | 512 KB all available for the user applications |
SRAM | 96 KB (two banks: 64KB and 32KB) |
Clock Speed | 84 MHz |
Length | 101.52 mm |
Width | 53.3 mm |
Weight | 36 g |
Arduino Leonardo – Types of Arduino boards
The Arduino Leonardo is a microcontroller board based on the ATmega32u4 . It has 20 digital input/output pins, 7 out of these pins can be used as PWM outputs and 12 as analog inputs. It uses a 16 MHz crystal oscillator, a micro USB connection, a power jack, an ICSP header, and a reset button.
The Leonardo differs from all other Arduino boards we listed above in the sense that the ATmega32u4 has built-in USB communication, hence, there is no need for a secondary processor. This allows the Leonardo to appear to a connected computer as a mouse and keyboard, in addition to a virtual (CDC) serial / COM port. see specifications of the board below.
Microcontroller | ATmega32u4 |
Operating Voltage | 5V |
Input Voltage (Recommended) | 7-12V |
Input Voltage (limits) | 6-20V |
Digital I/O Pins | 20 |
PWM Channels | 7 |
Analog Input Channels | 12 |
DC Current per I/O Pin | 40 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 32 KB (ATmega32u4) of which 4 KB used by bootloader |
SRAM | 2.5 KB (ATmega32u4) |
EEPROM | 1 KB (ATmega32u4) |
Clock Speed | 16 MHz |
Lengh | 68.6 mm |
Width | 53.3 mm |
Weight | 20 g |
Arduino Robot – Types of Arduino boards
The first Arduino board on wheels is the Arduino Robot. It has two processors and two boards with one processor on each board. The Motor Board controls the motors, and the Control Board reads sensors and decides how to operate. Each of the boards is a full Arduino board programmable using the Arduino IDE. Both Motor and Control boards are microcontroller boards based on the ATmega32u4 . The Robot has many of its pins mapped to on-board sensors and actuators. Programming the robot is similar to the process with the Arduino Leonardo. Both processors have built-in USB communication, eliminating the need for a secondary processor. This allows the Robot to appear to a connected computer as a virtual (CDC) serial / COM port.
The Arduino Robot is the result of the collective effort from an international team looking at how science can be made fun to learn. Note also that everything about the Arduino Robot is open source, this means you can use the device as you see fit.
The specifications of the Arduino robot is below.
Microcontroller | ATmega32u4 |
Operating Voltage | 5V |
Input Voltage | 9V to battery charger |
AA battery slot | 4 alkaline or NiMh rechargeable batteries |
Digital I/O Pins | 4 |
PWM Channels | 1 |
Analog Input Channles | 4 (same as the Digital I/O pins) |
DC Current per I/O Pin | 40 mA |
DC-DC converter | generates 5V to power up the whole robot |
Flash Memory | 32 KB (ATmega32u4) of which 4 KB used by bootloader |
SRAM | 2.5 KB (ATmega32u4) |
EEPROM | 1 KB (ATmega32u4) |
Clock Speed | 16 MHz |
Trimmer | for movement calibration |
IR line following sensors | 5 |
I2C soldering ports | 1 |
Prototyping areas | 2 |
Arduino ethernet – Types of Arduino boards
Arduino Ethernet connects an Arduino board to the internet in a matter of minutes. Plug the module onto your Arduino Board, connect it to your network with an RJ45 cable (not included) and follow a few simple steps to start controlling your world through the internet.
The Arduino Ethernet Shield 2 allows an Arduino Board to connect to the internet. It is based on the Wiznet W5500 Ethernet chip. The Wiznet W5500 provides a network (IP) stack capable of both TCP and UDP. It supports up to eight simultaneous socket connections. The Ethernet Shield 2 connects to an Arduino Board using long wire-wrap headers extending through the Shield. This keeps the pin layout intact and allows another Shield to be stacked on top of it.
The Wiznet W5500 of the board provides a network (IP) stack capable of both TCP and UDP. It supports up to eight simultaneous socket connections. Use the Ethernet library to write sketches that connect to the Internet using the Shield. The Ethernet Shield 2 connects to an Arduino Board using long wire-wrap headers extending through the Shield. This keeps the pin layout intact and allows another Shield to be stacked on top of it. Ethernet Shield 2 has a standard RJ-45 connection, with an integrated line transformer and Power over Ethernet enabled. The basic specifications of the board is listed below.
- IEEE802.3af compliant
- Input voltage range 36V to 57V
- Overload and short-circuit protection
- 12V Output
- High efficiency DC/DC converter: typically 85% @ 80% load
- 1500V isolation (input to output)
- The Shield provides a standard RJ45 Ethernet jack.
- The reset button on the Shield resets both the W5500 and the Arduino Board.
- The Shield contains a number of information LEDs:
- ON: indicates that the Board and Shield are powered
- 13 is the Arduino standard built in LED
- ACT: flashes when RX or TX activity is present
- LINK: indicates the presence of a network link and flashes when the Shield transmits or receives data
Arduino Zero
Arduino Zero is a simple and powerful 32-bit extension of the UNO platform. The Zero board expands the family by providing increased performance, enabling a variety of project opportunities for devices, and acts as a great educational tool for learning about 32-bit application development. The board is powered by Atmel’s SAMD21 MCU, which features a 32-bit ARM Cortex® M0+ core. One of its most important features is Atmel’s Embedded Debugger (EDBG), which provides a full debug interface without the need for additional hardware, significantly increasing the ease-of-use for software debugging. EDBG also supports a virtual COM port that can be used for device and bootloader programming.
The Zero runs at 3.3V. The maximum voltage that the I/O pins can tolerate is 3.3V. Applying voltages higher than 3.3V to any I/O pin could damage the board. See the features below.
Microcontroller | ATSAMD21G18, 32-Bit ARM Cortex M0+ |
Operating Voltage | 3.3V |
Digital I/O Pins | 20 |
PWM Pins | 3, 4, 5, 6, 8, 9, 10, 11, 12, 13 |
UART | 2 (Native and Programming) |
Analog Input Pins | 6, 12-bit ADC channels |
Analog Output Pins | 1, 10-bit DAC |
External Interrupts | All pins except pin 4 |
DC Current per I/O Pin | 7 mA |
Flash Memory | 256 KB |
SRAM | 32 KB |
EEPROM | None. See documentation |
LED_BUILTIN | 13 |
Clock Speed | 48 MHz |
Length | 68 mm |
Width | 53 mm |
Weight | 12 gr. |
Arduino Pro micro – Types of Arduino boards
The Arduino Pro Micro board is the same as the Arduino Mini board apart from the ATmega32U4 Microcontroller. This pro mic board includes digital I/O pins-12, pulse width modulation (PWM) pins-5, serial connections of Tx & Rx &10-bit ADC. I have the features below.
- ATmega32U4 running at 5V/16MHz.
- Supported under Arduino IDE v1. 0.1.
- On-Board micro-USB connector for programming.
- 4 x 10-bit ADC pins.
- 12 x Digital I/O (5 are PWM capable).
- Rx and Tx Hardware Serial Connections.
Arduino Pro Mini – Types of Arduino boards
The Arduino Pro Mini which was designed and is manufactured by SparkFun Electronics is a microcontroller board based on the ATmega328.
It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, an on-board resonator, a reset button, and holes for mounting pin headers. A six pin header can be connected to an FTDI cable or Sparkfun breakout board to provide USB power and communication to the board.
The Arduino Pro Mini is intended for semi-permanent installation in objects or exhibitions. The board comes without pre-mounted headers, allowing the use of various types of connectors or direct soldering of wires. The pin layout is compatible with the Arduino Mini.
There are two version of the Pro Mini. One runs at 3.3V and 8 MHz, the other at 5V and 16 MHz.
.
Microcontroller | ATmega328 * |
Board Power Supply | 3.35 -12 V (3.3V model) or 5 – 12 V (5V model) |
Circuit Operating Voltage | 3.3V or 5V (depending on model) |
Digital I/O Pins | 14 |
PWM Pins | 6 |
UART | 1 |
SPI | 1 |
I2C | 1 |
Analog Input Pins | 6 |
External Interrupts | 2 |
DC Current per I/O Pin | 40 mA |
Flash Memory | 32KB of which 2 KB used by bootloader * |
SRAM | 2 KB * |
EEPROM | 1 KB * |
Clock Speed | 8 MHz (3.3V versions) or 16 MHz (5V versions) |
Arduino Esplora
The Arduino Esplora is a fun microcontroller board derived from the Arduino Leonardo. The Esplora is unique because it provides a number of built-in, ready-to-use set of onboard sensors for interaction. The Esplora has onboard sound and light outputs, and several input sensors, including a joystick, a slider, a temperature sensor, an accelerometer, a microphone, and a light sensor. You can expand its capabilities with two Tinkerkit input and output connectors, and a socket for a color TFT LCD screen.Like the Leonardo, the Esplora uses an Atmega32U4 AVR microcontroller with 16 MHz crystal oscillator and a micro USB connection capable of acting as a USB client device, like a mouse or a keyboard. In the upper left corner of the board there is a reset push button, that you can use to restart the board. The board contains everything needed to support the microcontroller. Simply connect it to a computer with a USB cable to get started with its built-in USB communication; it can appear to a connected computer as a mouse or keyboard, in addition to a virtual (CDC) serial / COM port.
Arduino Mega
The Arduino Mega 2560 is a microcontroller board based on the ATmega2560. It has 54 digital input/output pins (of which 15 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. The Mega 2560 board is compatible with most shields designed for the Uno and the former boards Duemilanove or Diecimila.
Microcontroller | ATmega2560 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-12V |
Input Voltage (limit) | 6-20V |
Digital I/O Pins | 54 (of which 15 provide PWM output) |
Analog Input Pins | 16 |
DC Current per I/O Pin | 20 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 256 KB of which 8 KB used by bootloader |
SRAM | 8 KB |
EEPROM | 4 KB |
Clock Speed | 16 MHz |
LED_BUILTIN | 13 |
Length | 101.52 mm |
Width | 53.3 mm |
Weight | 37 g |
Arduino Diecimila
The Arduino Diecimila is a microcontroller board based on the ATmega168 . It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.
“Diecimila” means 10,000 in Italian and was named thusly to mark the fact that over 10,000 Arduino boards have been made. The Diecimila is the latest in a series of USB Arduino boards.
Microcontroller | ATmega168 |
Operating Voltage | 5V |
Input Voltage (recommended) | 7-12 V |
Input Voltage (limits) | 6-20 V |
Digital I/O Pins | 14 (of which 6 provide PWM output) |
Analog Input Pins | 6 |
DC Current per I/O Pin | 40 mA |
DC Current for 3.3V Pin | 50 mA |
Flash Memory | 16 KB (of which 2 KB used by bootloader) |
SRAM | 1 KB |
EEPROM | 512 bytes |
Clock Speed | 16 MHz |
Arduino lilypad
The LilyPad Arduino Main Board is based on the ATmega168V (the low-power version of the ATmega168) or the ATmega328V. It is a wearable e-textile technology expanded by Leah “ Buechley” and considerately designed by “Leah and SparkFun”. Each board was imaginatively designed with huge connecting pads & a smooth back to let them to be sewn into clothing using conductive thread. This Arduino also comprises of I/O, power, and also sensor boards which are built especially for e-textiles. These are even washable!
Microcontroller | ATmega168 or ATmega328V |
Operating Voltage | 2.7-5.5 V |
Input Voltage | 2.7-5.5 V |
Digital I/O Pins | 14 |
PWM Channels | 6 |
Analog Input Channels | 6 |
DC Current per I/O Pin | 40 mA |
Flash Memory | 16 KB (of which 2 KB used by bootloader) |
SRAM | 1 KB |
EEPROM | 512 bytes |
Clock Speed | 8 MHz |
Arduino Redboard (Sparkfun)
The SparkFun RedBoard combines the simplicity of the UNO’s Optiboot bootloader , the stability of the FTDI and the R3 shield compatibility of the latest Arduino UNO R3.
The RedBoard can be programmed over a USB Mini-B cable using the Arduino IDE; Just plug in the board, select “Arduino UNO” from the board menu and you’re ready to upload code. RedBoard has all of the hardware peripherals you know . 14 Digital I/O pins with 6 PWM pins, 6 Analog Inputs, UART, SPI and external interrupts. it also has a breakout SDA, SCL and IOREF pins that showed up on the UNO R3. This version adds an SMD ISP header for use with shields. the Sparkfun Redboard has the following specifications:
- ATmega328 microcontroller with Optiboot (UNO) Bootloader
- USB Programming Facilitated by the Ubiquitous FTDI FT231X
- Input voltage – 7-15V
- 0-5V outputs with 3.3V compatible inputs
- 14 Digital I/O Pins (6 PWM outputs)
- 6 Analog Inputs
- ISP Header
- 32k Flash Memory
- 16MHz Clock Speed
- All SMD Construction
- R3 Shield Compatible
- Red PCB
You can power the RedBoard over USB or through the barrel jack. The on-board power regulator can handle anything from 7 to 15VDC.
Arduino Shields
Arduino shields are boards that can expand the functionalities of an Arduino board. To use an Arduino shield, all you need to do is plug the shield over the top of the Arduino board. There are countless types of shields to do carry several Arduino projects. Below are some of the Arduino shields we have:
- Ethernet shield
- HC-05 Bluetooth Shield
- ESP8266 Wi-Fi Shield
- cc300 Wi-Fi Shield
- Wireless SD Shield
- GPS Logger Shield
- Camera Shield
- MP3 Player Shield
- Adafruit NeoPixel Shield
- Adafruit NeoPixel Shield
- microSD Shield
- Gameduino Shield
- GSM/GPRS Shield
- Joystick Shield Kit
- 64-Button Shield
- CISECO ProtoX Shield
- Wave Shield
- Negative Voltage Generation Shield
- Smoke Detector Shield
- CAN-BUS shield
- Capacitive Touchpad Shield
- LCD Shield
- Motor Shield
- ProtoShield
- Relay Shield
Owing to the fact that Arduino is open-source with large active community, new and varieties of Arduino boards and shield keep hitting the market all the time. The list we presented above, is just a few of the Arduino boards and shield there is. I hope this tutorial has been able to inform you about the various Arduino boards and shields in the market.
Photo credits to:
Arduino.cc
Randomnertutorial.com
Sparfun.com
Elprocus.com