How To Pick Your Perfect Arduino: Best Guide & Comparison
With hundreds and hundreds (if not thousands) of different types of development boards in existence, choosing the one perfect for you can seem daunting. Some have been created by the Arduino company itself, while others have been created by other companies that are compatible with the Arduino IDE and programming language.
To help prevent you from getting “paralysis by analysis”, I’ve decided to dedicate this post to only 8 (of the most popular) Arduino boards. They each have their own strengths and weaknesses.
The 8 boards I’m comparing today are the:
- Arduino Uno Rev 3
- Arduino Mega 2560 Rev 3
- Arduino Leonardo (with Headers)
- Arduino Nano
- Arduino Due
- Arduino MKR Zero
- Arduino Ethernet Rev 3
- Lilypad Arduino
However, this is not an exhaustive list and you should do your own due diligence to find a board compatible with your needs, interests, and project. That’s why I’m also including 12 different factors that you need to take into consideration when choosing a board to help you determine which one is perfect for your needs.
If you want to skip all the numbers and just know what boards are good for what, head directly to my “Final Thoughts” section.
Anyways, let’s answer the question: “How do you choose the right Arduino board?”
There are 12 factors to take into consideration when choosing, and they are:
- Size
- Weight
- Cost
- Speed
- Memory
- Internet Connectivity
- Operating Voltage
- I/O Pins
- aka Input/Output Pins
- Shield Compatibility
- Bluetooth Compatibility
- Breadboard Compatibility
- Skill Level
Keep reading to learn more about each factor, and I’ll give you the statistics for the 8 boards I previously mentioned.
Size
Arduino boards come in all different shapes and sizes. For instance, the Gemma or Lilypad are both circular while many other boards are rectangular in shape. Consequently, you will need to understand the different size specifications to aid you in choosing the right board for your project.
You should make a list of all the boards you’re interested in. Then, ask yourself the following questions to whittle it down (unless you are capable of buying all of them and have the time to test them all out):
- Does shape matter for my project?
- If so, what shape do I want?
- Does size matter?
- If so, what size works best for my project?
- If it’s a small project, pick a smaller board like the Nano, Mini, or Micro board.
- If it’s a big project, pick something larger like the Mega 2560 Rev 3 or Due.
- If so, what size works best for my project?
To help you get started, I collected data on the 8 boards I mentioned previously and put them into a table:
BOARD | WIDTH (mm) | LENGTH (mm) | DIAMETER (mm) |
---|---|---|---|
UNO Rev 3 | 53.4 | 68.6 | N/A |
Mega 2560 Rev 3 | 53.3 | 101.52 | N/A |
Leonardo | 53.3 | 68.6 | N/A |
Nano | 18 | 45 | N/A |
Due | 53.3 | 101.52 | N/A |
MKR Zero | 24.89 | 82.04 | N/A |
Ethernet Rev 3 | 53.3 | 68.6 | N/A |
Lilypad | N/A | N/A | 50 |
As you can see from the table, the 53.4 mm board width is very common.
Moreover, the Nano has the smallest width and length out of the 8 boards, which makes it great for small projects.
The Mega 2560 Rev 3 and Due both have the longest length, but average width.
Weight
If you’re all about efficiency, then boards with a smaller weight can use power more efficiently since you’d need less energy to move it.
For instance, you may be creating a 4-Wheel Robot with the Arduino board on top. Granted, a heavier board may not make too much of a noticeable difference.
Once again, I organized data for 8 boards in the following table:
BOARD | WEIGHT (grams) |
---|---|
UNO Rev 3 | 25 |
Mega 2560 Rev 3 | 37 |
Leonardo | 20 |
Nano | 7 |
Due | 36 |
MKR Zero | 32 |
Ethernet Rev 3 | 28 |
Lilypad | 8 |
As you can see, if you’re really into portable boards with a light design, the Nano and Lilypad are the go-to options.
However, if you don’t mind the weight, you can spring for the Mega 2560 Rev 3 or Due since they offer more capabilities and power (and they’re the two heftiest boards in my data).
Cost
For some people (including myself when I first started), the price of Arduino boards can be a big factor in their decision-making.
If you can spend more money, you should spring for the Mega 2560 or Due because it offers more and better functionalities such as a quicker processing speed and more memory.
If you’re a college or high school student or someone on a low budget, cheaper boards such as the Uno Rev 3 or Leonardo best suit you.
However, if you want to do a test run to see if you should really buy a board, use Arduino simulators first such as Tinkercad or Wokwi. Doing this will let you gauge your interest and inform your decision.
If you want to learn more about Arduino simulators like Tinkercad or Wokwi, consider reading my blog on working with a simulator. I’ll also go over my preferred way of using both a simulator and a physical board in addition to a pros and cons list.
BOARD | PRICE (US) |
---|---|
UNO Rev 3 | $21.90 |
Mega 2560 Rev 3 | $40.30 |
Leonardo | $20.70 |
Nano | $20.70 |
Due | $40.30 |
MKR Zero | $25.20 |
Ethernet Rev 3 | $55.77 |
Lilypad | $15.95 |
Speed
Some users would want to save time and pick a board with the fastest processing speed, which lets you upload sketches faster.
Yet, the speed depends on the processor chip of the board. For example, the UNO Rev 3 has an ATmega328P chip, which only has a clock speed of 16 MHz, while the Due (the fastest board in the following table with a clock speed of 84 MHz) uses the ARM Cortex-M3 chip.
Of course, boards with faster speeds are more expensive, but they also use more power compared to boards with slower speeds.
In the following table, I made an additional column called “Price Per Clock Speed” to help those who are focused on speed to determine which one is the most worth it at its price point. I understand that other factors determine the price such as memory and size, but this was interesting to calculate and see:
BOARD | CLOCK SPEED (MHz) | PRICE (US) | PRICE PER CLOCK SPEED |
---|---|---|---|
UNO Rev 3 | 16 | $21.90 | $1.37/MHz |
Mega 2560 Rev 3 | 16 | $40.30 | $2.52/MHz |
Leonardo | 16 | $20.70 | $1.29/MHz |
Nano | 16 | $20.70 | $1.27/MHz |
Due | 84 | $40.30 | $0.48/MHz |
MKR Zero | 48 | $25.20 | $0.53/MHz |
Ethernet Rev 3 | 16 | $55.77 | $3.49/MHz |
Lilypad | 8 | $15.95 | $1.99/MHz |
As you can see the Due board has the highest clock speed, and it’s the most worth it when you’re only considering price and clock speed.
I’ve also made a clock speed guide with that discusses this topic in further detail. There’s also a table there that contains more boards and their clock speed.
Memory
Memory can be a big concern for users who write and upload enormous sketches.
Similar to the clock speed of a board, the memory depends on the processor chip. Generally, beginner users don’t need too much memory for their projects, which means they shouldn’t go for the Due. It’s a little excessive, and the price is doubled for that board compared to a regular Uno Rev 3.
BOARD | FLASH (KB) | SRAM (KB) | EEPROM (KB) | PRICE ($) |
---|---|---|---|---|
UNO Rev 3 | 32 | 2 | 1 | $21.90 |
Mega 2560 Rev 3 | 256 | 8 | 4 | $40.30 |
Leonardo | 32 | 2.5 | 1 | $20.70 |
Nano | 32 | 2 | 1 | $20.70 |
Due | 512 | 96 | 0 | $40.30 |
MKR Zero | 8 | 32 | 0 | $25.20 |
Ethernet Rev 3 | 32 | 2 | 1 | $55.77 |
Lilypad | 16 | 1 | 0.512 | $15.95 |
I also created another table that added up all the 3 different types of memory and included the price to help you understand which board is the most worth it in terms of memory. I understand that other components of the board can influence the price point, but I wanted to make a table for those focused on only price and memory.
BOARD | TOTAL MEMORY (KB) | PRICE ($) | PRICE PER MEMORY ($/KB) |
---|---|---|---|
UNO Rev 3 | 35 | $21.90 | $0.63/KB |
Mega 2560 Rev 3 | 268 | $40.30 | $0.15/KB |
Leonardo | 35.5 | $20.70 | $0.58/KB |
Nano | 35 | $20.70 | $0.59/KB |
Due | 608 | $40.30 | $0.66/KB |
MKR Zero | 40 | $25.20 | $0.63/KB |
Ethernet Rev 3 | 35 | $55.77 | $1.59/KB |
Lilypad | 17.512 | $15.95 | $0.91/KB |
As you can see, if you want the most memory, pick the Due. If you want the most value in terms of memory, pick the Mega 2560 Rev 3. It has 4 times the amount of memory compared to a regular Uno Rev 3 board!
If you want to understand more about the memory on an Arduino board, go check out my two part guide. The first part discusses memory optimization tricks and the second guide talks about how you can add more memory to your board.
Internet Connectivity
Some projects require an Internet connection for the boards themselves such as a weather station that uses Wi-Fi or a Coronavirus Live Updator.
Sadly, most of the boards don’t come with Internet connectivity (such as the 8 boards above), but there are specialized boards such as the Yun, Ethernet, or Uno Wifi if you really need it.
If you already have a board that doesn’t have this feature, you can easily add it on by purchasing a Wifi shield or a Wifi module. Shields are easy to use since they’re stackable, but you need to first make sure your board is compatible with shields.
Operating Voltage
When purchasing a board for a specific project, you need to take into consideration the operating voltage. Some Arduino boards have different operating voltages, so you need to find one that compliments your project.
This is important because if you buy the wrong one and you supply it with more voltage than the board can handle, you can overheat the voltage regulator (if it has one) and damage the board.
BOARD | VOLTAGE (volts) |
---|---|
UNO Rev 3 | 5 |
Mega 2560 Rev 3 | 5 |
Leonardo | 5 |
Nano | 5 |
Due | 3.3 |
MKR Zero | 3.3 |
Ethernet Rev 3 | 5 |
Lilypad | 2.7 to 5.5 |
As you can see, it is common for Arduino boards to have an operating voltage of 5V. However, you should watch out for the Due and MKR Zero boards and not overvoltage them. If you want some more flexibility, use the Lilypad.
I/O Pins
As with any other feature, the number of I/O pins varies with different boards. Consequently, if you are choosing a board for your specific project, calculate the number of pins that will be used by LCD (liquid crystal display), keypad, or any other external modules. Then, you need to research and determine which board offers enough pins for your project.
You can take a look at the following table for guidance:
BOARD | NUMBER OF PINS |
---|---|
UNO Rev 3 | 14 |
Mega 2560 Rev 3 | 54 |
Leonardo | 20 |
Nano | 22 |
Due | 54 |
MKR Zero | 22 |
Ethernet Rev 3 | 14 |
Lilypad | 14 |
As you can see, if you’re in a rush and you use a lot of sensors and modules in your project, just choose the Mega 2560 Rev 3 as it offers the most pins.
Shield Compatibility
Shields can add more functionality to your project, which is amazing. They can also be stacked on your Arduino board or each other.
Sadly, there are a few boards that don’t support shield compatibility like the Micro and Nano boards. That means that if you pick those two, you are sacrificing the ability to use shields for compactness.
Breadboard Compatibility
If you want to attach your board directly to your breadboard, choose a Nano or a Micro because they have male pin headers, which allow you to directly plug into the breadboard.
Because the Nano and Micro are small and portable, they don’t come with DC (direct current) power jack and they’re not compatible with shields.
Bluetooth Compatibility
This feature is great for sending and receiving data. For instance, you can use this for a remote-controlled car project.
Some boards have this feature built-in like the Arduino 101, the UNO WiFi Rev 2, the MKR WiFi 1010, or the Portenta H7.
For other boards that lack this capability, you can use a Bluetooth shield and stack it.
Skill Level
Lastly, you should be aware of your Arduino skill level when you’re considering a board.
For instance, beginners should really stick with an Uno Rev 3 since it’s the easiest to work with, is popular, and is versatile in many projects.
If you’re more advanced, you should be aware of your abilities and limitations, so factor that in when choosing a board.
Summary – tl;dr (Too Long; Didn’t Read)
Here are the key takeaway points you should keep in mind after reading this article:
- Arduino Uno Rev 3
- This Arduino is the most popular and BEST FOR BEGINNERS
- Arduino Mega 2560 Rev 3
- This is the BEST FOR ADVANCED USERS OR DIFFICULT PROJECTS
- Arduino Due
- This is the BEST FOR RUNNING LARGE SKETCHES
- This is because large programs use up a lot of memory, and Due is well suited for it
- This is the BEST FOR RUNNING LARGE SKETCHES
- Arduino Leonardo (with Headers)
- This is the BEST FOR COMPATIBILITY WITH USB
- Arduino Nano
- This is the BEST FOR BREADBOARDS AND SMALL/PORTABLE PROJECTS
- Arduino Ethernet Rev 3
- This is the BEST FOR ARDUINO IoT PROJECTS
- IoT stands for the Internet of Things
- This is the BEST FOR ARDUINO IoT PROJECTS
- Arduino MKR Zero
- This is the BEST FOR AUDIO PROJECTS
- Lilypad Arduino
- This is the BEST FOR TEXTILE OR WEARABLE PROJECTS
- You’ll need to consider the following factors when picking an Arduino:
- Size
- Weight
- Cost
- Speed
- Memory
- Internet Connectivity
- Operating Voltage
- I/O Pins
- aka Input/Output Pins
- Shield Compatibility
- Bluetooth Compatibility
- Breadboard Compatibility
- Skill Level
In the end, I hope that this article provided a smorgas-board of information that will help you pick the best Arduino board for you!