Most people reading this article are probably familiar with Arduino or at least have heard the name. In this article, we try to introduce this platform in more details and study it from a critical point of view. Furthermore, we will point out the features we have come to discover in our experiences that have not been appropriately addressed. In the first section of the article, we discuss Arduino’s past, why and how it came to life and then study its components. In the second section, we become familiar with Arduino boards, then study and compare them from different aspects to find the right Arduino for your project. If you feel lost when buying an Arduino board, we will guide you to choose the main or a similar board in the third section. If you are doing a project on the Internet of Things (IoT), do not miss the next section. Finally, we review the pros & cons of Arduino in the last section and answer the big question: What will Arduino be in the future?
What You Learn in This Article
- What is Arduino and where does it come from
- Get to know Arduino features and components and why it’s so popular
- Expert review and comparison of various Arduino boards
- Comparing manufacturer brands and reviewing off-brand Arduino boards
- Comparing Arduino with EPS boards
- Discussing Arduino advantages & disadvantages
- What Arduino is and where it comes from
What is Arduino?
Arduino is an open-source electronics platform based on microcontroller used for electronic projects by millions all over the world. Without much knowledge of electronics, you can write a few simple lines of code and use Arduino in your projects.
By platform, we mean a fusion of hardware and software. Arduino consists of programmable electronic boards connected to a software or user interface. This user interface is called the Integrated Development Environment (IDE). Arduino is designed for quick and easy use of microcontrollers.
From the Second Millennium King to an Educated Italian Boy!
Maybe you had the same question that I did the first time you heard of Arduino: What does Arduino mean?
Before answering your question, we have to know about Arduino’s history. The idea for making Arduino first ignited in the master’s thesis by Hernando Barragán under the supervision of Massimo Banzi at the IDII University of Italy. The goal of the project was to build a cheap and easy-to-use processing development platform for electronic engineers. Before then, engineers often used the expensive “BASIC Stamp” board. Due to the lack of software environment and libraries and high prices, it was not popular among students. Continuing the project, Arduino’s main core was formed by Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, and David Mellis. Arduino’s name comes from a café in Ivrea town where group members used to meet. The café got its name from Arduin, an Italian aristocrat who ruled from 1002 to 1014.
In 2005, the first Arduino board was introduced to graphics students, who had no experience in electronics and programming microcontrollers. Although the first version of Arduino used ATMEGA8 microcontroller, it did not take long for most Arduino boards to benefit from ATMEGA32. The platform received unrivaled welcome by students and engineers, resulting in sales of more than 120 thousand boards until 2010. Increasing use of this board in Europe and eastern countries raised sales numbers to more than 700 thousand Arduino LLC official boards by mid-2013.
Why We Should Buy Arduino
Although many companies are designing and selling development boards, Arduino is still very popular among beginners and even engineers. Contrary to common understanding, hardware capabilities are not the only reason for its popularity. We are going to explain several factors contributing to progress and growing interest in this board.
Arduino, Fit for All!
Arduino software environment (Arduino IDE) can be used in all operating systems such as Windows, Windows App, Linux and, even Macintosh, while most microcontroller programmers are only compatible with Windows. All required drivers for the boards are installed with Arduino software and if you are using the official board, you won’t need to install any more files.
Arduino for All!
As previously mentioned, the main reason for Arduino’s existence was the software’s easy access to its hardware environment. Arduino did a great job in what users requested. A simple programming environment based on C and C++ facilitated working with this board for all. Simple tutorials, libraries and Q&A environment provided by the creators of Arduino – more than any other product – made electronic learning simpler for everyone. Today, most Arduino users are school students and university students outside the field of electronics.
Arduino, Cheap for All!
Most Arduino boards can be purchased for about 10 to 30 dollars. Buying an Arduino board, you are paying for a microcontroller and programmer, while benefiting from many more features.
Arduino, Free for All!
A major reason why Arduino became such an epidemic, was the design strategy acquired by makers: creating an open-source product. Since Arduino rose from a non-commercial academic environment, adopting such an approach was expected. Hardware and software access to all Arduino maps and codes encourages you to use this platform in your prototypes, rather than similar platforms. Besides, with this strategy, everyone will contribute to Arduino’s development. Millions of projects and thousands of libraries are all results of this strategy.
Arduino software IDE with full features is free to download from the Arduino website while you have to pay 120 to 200 dollars to buy AVR programming software such as Codevision and BASCOM.
Arduino, Easy for All!
Design is one of Arduino’s advantages. Regardless of AVR or ARM microcontroller on your Arduino, big or small, DIP or SMD package, you have DIP pins at your disposal. You can easily connect your Arduino to sensors with jumper cables, put it on a breadboard, connect it to the computer via USB and program it. Creators have gone one step further to make it more convenient for you; there are many readymade boards called shields, which you can easily mount on your Arduino board with no wiring. Unifying the programming language is another factor contributing to the easy use of Arduino. You don’t need several languages and software to program different ARM or AVR microcontrollers. All these features are implemented in the Arduino IDE.
Get to Know Arduino Components
By now, you might have some idea of components an Arduino has. Now, let’s have a closer look.
UNO board is undoubtedly the eldest son in the Arduino family and is most similar to its ancestors. Glancing over the board, we see the main component is an AVR processor, as is in most Arduino boards. In other words, the heart of Arduino!
In most Arduino boards, the processor does not understand computer language; therefore, it needs an interpreter or programmer. In original Arduino boards, ATMEGA16U4 or FTDI IC converts USB to serial. While in other (off-brand) Arduino boards, sometimes, cheaper ICs such as CH340 are used. Not all Arduino boards have this component. Some boards leave getting this component to the user. In some boards, the main processor supports USB and there is no need for this component.
Crystal Oscillator is present in all Arduino boards and its main task is to produce electrical signal or frequency with high precision for the processor. In Arduino boards, 8-MHz crystals, sometimes 16-MHz and a limited number of higher frequencies up to 84-MHz are used.
In the power supply section, the main component of any Arduino board is the regulator. Any Arduino board has two voltage levels: input voltage and operating voltage. The operating voltage is the voltage provided to the processor. Naturally, input and output pins connected to the processor work with this voltage. However, the supply voltage is the voltage supplied to Arduino and is always higher than the operating voltage. This voltage is reduced and stabilized by regulators and is then transferred to the processor and other Arduino components.
Arduino input voltage is supplied to the board through Vin pin or jack adapter. Not all Arduino boards have a jack adapter. Jack adapter is connected to the regulator and usually can receive 7 to 12 volts as input.
In some Arduino models, the operating voltage is 3.3V, where a 1-cell lithium battery can be used for power supply. JST connector is used instead of a jack adapter on these boards.
Rule of thumb
If there is a jack adapter on your Arduino board, you can use voltages between 7 and 12 and if there is a JST connector, 3.4 to 5 volts is the proper input.
The USB port on the board is good news to Arduino users. It means that you can easily program your Arduino by connecting it via USB cable to the computer. However, this is not available in all Arduino boards. If your board does not include a USB to serial converter IC and processor does not support USB, then USB connection is not an option.
Arduino hasn’t been consistent in terms of USB, using various USB packages on different boards. Arduino UNO and MEGA users have to use USB type B, while LEONARDO, DUE, MICRO, and LILYPAD fans have to use micro USB. NANO and FIO users need mini USB, whereas the YUN board implements USB type A in a vertical right angle.
Using the USB port as the power supply is not recommended since this port is not connected to the regulator and supplies voltage directly to the processor and programmer.
Input and Output Pins
Input and output pins of Arduino board models are different in type and number. In some models such as UNO, MEGA, LEONARDO, YUN and DUE, female pin header is used, which allows mounting of various shields. Some boards such as Nano, Micro, Mini, and FIO often use a male pin header and some boards like LILYPAD have no pin header, only using a pad to reduce dimensions.
YUN and ETHERNET boards include an Ethernet port in addition to USB.
Other Arduino Components
Other than the mentioned components, there are several LEDs on the board and one button to reset the processor. All Arduino boards have an LED for power and two other LEDs are for serial ports.
Other components such as capacitor and resistor are used in Arduino to operate processor and programmer and so on. User does not have to deal with these components.
Arduino Selection Guide
We have become more familiar with the Arduino platform. If you have decided to use the Arduino board in your projects, there is the question of which Arduino to choose. Stay with us and we are going to answer your question.
The first challenge would be the parameters important for us.
If the Processor is Important to You
Contrary to the variety in USB ports, Arduino creators obsess about the processor, using only Atmel microcontrollers.
The number of various processors used in Arduino is less than the count of fingers on one hand and are as follows:
This processor is used in many Arduino boards such as UNO, MINI, NANO, PRO, FIO, ETHERNET, and LILYPAD. This 8-bit processor has two operating voltages, 3.3 and 5 volts. For boards where operating voltage is 5 volts, 16 MHz oscillator is used, and boards with 3.3 operating voltage have 8 MHz oscillator since 16 MHz oscillator consumes more energy. This processor has 1-kilobyte EEPROM memory, 2-kilobyte SRAM, 32-kilobyte flash memory and 1 serial port. However, It isn’t that easy to access this port in all Arduino boards. Moreover, the number of available GPIO is different based on the type of Arduino.
This processor is sufficient for daily use and connecting to simple modules in mentioned Arduino boards. ATMEGA328 has a not too high but acceptable memory. However, if you are looking for faster processing and more pins, you have to look for other Arduino boards.
LILYPAD, NANO and PRO boards have two versions. Instead of ATMEGA328, the first version uses weaker ATMEGA168 processor with 0.5-kilobyte EEPROM memory, 1-kilobyte SRAM and 16-kilobyte flash memory. Today, the use of these boards has declined and is rarely produced.
This microcontroller is used on LEONARDO, MICRO, LILYPAD USB and YUN boards. In terms of speed and memory, it isn’t very different from ATMEGA328 with only SRAM increasing from 2 to 2.5 kilobytes.
The main difference is the inclusion of the USB protocol. Since there is no more need for USB converter IC, the price is more favorable. Another important difference is more PWM and ADC pins compared to ATMEGA328 boards.
If you are looking for a more powerful processor with a larger number of GPIO compared to UNO, then the Arduino MEGA board is one of the most suitable options. MEGA is the only Arduino board benefiting from ATMEGA2560 microcontroller with 4-kilobyte EEPROM memory, 8-kilobyte SRAM and 256-kilobyte flash. This microcontroller has 4 serial communication ports.
Turning on LEDs, reading a switch or a simple sensor, does not need a powerful microcontroller. GEMMA Arduino board – some manufacturers call it TINY LILYPAD – has an ATtiny85 microcontroller with 0.5-kilobyte EEPROM and SRAM and 8 kilobytes of flash memory. Although Arduino Company has retired this board, other companies still manufacture it.
If the speed of MEGA Arduino does not meet your requirements and you are disappointed with AVR processors, still, give Arduino another chance. ZERO board has a 32-bit ATSAMD21G18 processor with 48 MHz oscillator, 32-kilobyte SRAM and 256-kilobyte flash memory. In general, ARM microcontrollers consume less energy, so do not forget the operating voltage for ZERO is 3.3 volts. In addition, this board has two separate USB ports.
If you still expect more from Arduino, then it’s time to introduce Arduino’s ace in the hole. Arduino DUE board is equipped with a 32-bit ATSAM3X8E ARM processor, 84 MHz oscillator with 96-kilobyte SRAM and 512-kilobyte flash memory, 4 serial and 2 USB ports and over 60 GPIO pins.
- Intel Curie
Arduino finally gave in to Atmel’s microcontroller, using the Intel Curie processor in Arduino 101 board. The 32-bit processor is equipped with a 32 MHz oscillator, 24-kilobyte SRAM and 196-kilobyte flash. Although the processing speed of this board is not too high in comparison with ZERO and DUE, this board has unique features such as Bluetooth, gyroscope, and accelerometer.
If You Are Looking for Specific Features and Capabilities
If you want to enter the world of Arduino for the first time, we suggest Arduino UNO and NANO. Arduino UNO is the most popular and best-selling Arduino board. As mentioned, this board is equipped with an ATMEGA328 microcontroller. It has standard female pin headers with 2.54 mm spacing and is compatible with various shields. 14 input and output pins, 6 of which are capable of generating PWM signals, along with 6 analog input pins, make this the proper board for simple projects such as running LCDs, motors and more. This board has useful features to connect to sensors, for example, serial port (UART) shared with USB port, the capability of generating software serial, SPI, and I2C communication protocols.
The jack adapter on the board is the best and easiest way to turn it on. Of course, USB Type B is not very user-friendly for programming this board, but a short cable is usually included. If you look carefully at the tracks on the board, you will notice there is a lot of free space on the board, increasing board dimensions. Also, putting an ATMEGA328 microprocessor of type DIP on this board is somewhat odd. However, the DIP microcontroller allows the user to reprogram and update it. We should not forget this board is designed for beginners and they might never benefit from such capability. This board carries the legacy of first Arduino boards and retains their classic design. Other than dimension, female pin header is another problem for users. These pin headers prevent us from placing UNO on a breadboard or universal PCB board and we need to use a jumper wire to use pins. Although there is no problem with operating a module with UNO, this becomes a big problem when we want to use a pin (like the 5-volt pin) for multiple modules or sensors simultaneously.
If you think size is important, and you are interested in putting your Arduino on a breadboard, we suggest the NANO board. Despite the small size, NANO incorporates all features of UNO into a fifth of its size. This board has an ATMEGA328 microcontroller as well but in SMD package. There are 14 input and output pins of which 6 are capable of generating the PWM signal. As for analog pins, interestingly, NANO has 2 analog input pins more than UNO, despite the smaller size.
Breadboard! The problem with pins in UNO is resolved in Nano and Micro boards. Male header pins are used, allowing placement on a breadboard.
Using a mini USB port on the NANO board contributes significantly to reduce size. The bad news is that there is no jack adapter and you have to use Vin pin to turn it on. Another disadvantage of this tiny cute board is an incompatibility with standard Arduino shields.
MINI and PRO MINI boards can properly mount breadboard but lack features of the NANO board. Fewer pins and missing USB port are major limitations of these boards.
Need more pins? It’s time we get to know Arduino MEGA a little more. As discussed in the previous section, this board includes an ATMEGA2560 microcontroller. Undoubtedly, this board gives you the highest number of inputs among Arduino boards. Arduino MEGA board has 54 digital input/output, of which 15 can generate a PWM signal. In addition to digital pins, it has 16 analog input pins. Another important feature that makes the MEGA board so powerful is 4 embedded hardware serial ports. Therefore, spending 1.5 times more space and a little more money, you will get 4 UNO boards in 1 MEGA board.
Need a more powerful processor? In this case, you should seek your answer in the previous section. As discussed before, Arduino DUE is the fastest option with a 32-bit ARM microcontroller clocking at 84 MHz. With 96-kilobyte SRAM and 512-kilobyte flash memory, this board is capable of processing a large number of complex computations. It has other features such as 4 serial ports, 2 micro USB OTG ports and the ability to read and write flash devices via these ports. Direct Memory Access makes microcontroller needless of performing tasks to access memory, allowing more simultaneous processes. Two analog outputs (DAC) is another unique feature of DUE.
Undoubtedly, these features, along with a large number of input/output pins, make this the most powerful Arduino board. It is very similar to MEGA in terms of appearance.
Want to use Arduino shields? The shield is a board compatible with Arduino, adding several capabilities upon mounting on the Arduino board. For example, you can control several DC motors with motor shield(s), or using an LCD shield, easily display information on LCD. Many shields have been created for Arduino boards, most of which are compatible with the UNO board. Since pin position and pin header types in the LEONARDO board are the same as UNO, you can use shields on LEONARDO too. In addition to UNO and LEONARDO, MEGA and DUE boards are not only compatible with Arduino shields but also provide many free pins to the user, even when shields are mounted.
Internet of Things! If you need internet in your project and wouldn’t like to use separate modules, Arduino has three boards for you: UNO WIFI, ETHERNET, and YUN. Arduino UNO WIFI is an UNO board with an ECC608 chip, allowing for data transfer and even programming via Wi-Fi.
ETHERNET board is similar to UNO without the Wi-Fi module. This board benefits from an RJ45 connector to transfer data via LAN cable. However, due to the use of micro pins, there are fewer input/output PWM pins. Lack of serial to USB converter is another limitation of this board. Despite the cons, micro SD port for data storage is an advantage for this board.
In case you need a stronger processor for IoT and ATMEGA328 does not meet your needs, it wouldn’t hurt to take a look at the YUN board. Benefiting from a 32-bit AR9331 Linux processor alongside an 8-bit ATMEGA32U4 processor, you can have Linux on your Arduino and easily run tasks. USB port type A, independence from serial to USB converter due to ATMEGA32U4 microcontroller, micro SD port, 20 input/output pins, 7 PWM pins, 12 analog pins alongside Wi-Fi module are some other unique features of YUN. It is no surprise YUN has replaced the ETHERNET board so quickly.
If you want to control Arduino with your cellphone, Arduino 101 has made it a possibility. Instead of AVR and ARM processors, this board uses a 32-bit dual-core Intel processor clocking at 32 MHz. This processor can connect to Bluetooth; therefore, you can connect your Arduino board to your cellphone.
Arduino and Intel community in board design is certainly a crucial step to the new generation of Arduinos.
Mouse, keyboard and joystick! If you want to use gadgets such as USB mouse, keyboard, and joystick, you need to use ATMEGA32U4 based boards. With various libraries in this regard, LEONARDO would be the best option.
Lithium Battery? The power supply has always been a major challenge in any project. Fortunately, due to the existence of regulators on Arduino, there barely is any trouble with power supply. As previously mentioned, Arduino boards commonly have two operating voltages of 5 and 3.3 volts. If you are using UNO, MEGA, NANO, MIN, LEONARD or YUN board, input voltages above 5 volts is required. Therefore, you cannot run Arduino with a single-cell lithium battery. If you need to have only a single-cell lithium battery in a project, you need to use GEMMA, LILYPAD, PRO MINI or FIO board. Sometimes there are JST connectors on these boards compatible with lithium batteries, making setting up much simpler.
Arduino on your clothes! Tasteful Arduino creators are very interested in clothes-related projects. Therefore, they created LILYPAD boards in cooperation with Sparkfun. These boards have no pin header to minimize thickness for placing inside clothes. Board pads are designed so they can be sewn to clothes. Different microcontrollers are used in LILYPAD boards. The original LILYPAD board uses ATMEGA328 and ATMEGA168 with no USB to serial converter. LILYPAD USB model, however, is equipped with ATMEGA32U8 and a micro USB port, instead of ATMEGA328, so there is no need for a serial to USB converter anymore
If You Have a Limited Budget
A critical factor in selecting the proper Arduino board for a project is the price tag. No doubt, the more features an Arduino board has, the higher its price is going to be. You can see Arduino prices in this table:
If You Have Problems with Size
Maybe your project does not require complicated processing and many pins. You might want to place Arduino in a small robot, clothes, a shoe, etc. Then, size becomes an important factor in selecting the Arduino board. Fortunately, Arduino has provided many options for you here. Although Arduino boards compatible with shields are rarely small, Arduino has designed several small boards to solve this problem. If you don’t need more than 3 pins or don’t care too much for features, we suggest the GEMMA board. This small board is the size of a coin. It has no pin header, making it quite thin. It benefits from a micro USB port and can be turned on with one lithium battery. If you need more pins (up to 10), LILYPAD SIMPLE and LILYPAD USB are the right boards for you. These boards too have no pin header and can be placed in clothes. If you still want more from your small Arduino board, PRO MINI, NANO, and MICRO are the last options. Below you can see Arduino boards arranged by size.
Unfortunately, the Arduino website only reports PCB dimensions. Above table factor in the adapter jack, USB port and pin headers
At the End, Which Arduino to Choose?
We carefully examined Arduino boards in previous sections. Considering all these explanations might make it difficult for you in making a decision. In this case, the following graph can be a good guide to compare all parameters for selecting the proper board in your project.
Have you chosen the Arduino you want? Now you face the question of where and which brand to buy! Blue, green, red, GENUINO, DFRduino, METRO and so on, there are many brands for the UNO board. At first glance, this might be very confusing, but diversity is not so bad. In this section, we want to review the differences and discuss official and off-brand boards.
This amount of diversity in the manufacture of Arduino boards is due to being open source. Any manufacturer can produce Arduino with the name they desire. Are all Arduino boards in the market similar to the same quality? No. Although all the information on the Arduino board is available on their website, the quality of used components is different. Sometimes manufacturers have made enhancements to the official board.
Green or Blue?
Initially, Arduino printed their boards in blue color, but now they print boards such as UNO, NANO, MEGA, LEONARDO and MICRO in green color. Official Arduino boards have unique features such as particular color, silk print quality, type of components and ICs and even quality of tracks and pads. For more information, visit the Arduino website.
ARDUINO or GENUINO?
Arduino and Genuino are essentially the same. Their components, specifications, and quality are not any different. The only difference is the region where these boards are provided. Due to the difference of opinion between Arduino creators in the past, Arduino boards used to be sold as Arduino in the USA and Genuino outside the USA.
Since 2015, Arduino is manufacturing its boards in the USA in cooperation with Adafruit Company. This company sells boards similar to Arduino under the METRO brand. Since Arduino is an open-source hardware, any manufacturer can make Arduino boards, as long as they do not use Arduino’s name for these boards. Other than Adafruit, companies such as Sparkfun and DFRobot manufacture their Arduino boards under RedBoard and DFRduino brands.
Red or Black?
As previously pointed out, Adafruit manufactures Arduino boards under the METRO brand. Some of these boards are equipped with powerful ARM processors and have features like camera port, stereo and, micro-SD ports. Due to the UF2 boot loader, you can program these boards via Arduino IDE and CircuitPython. To learn more about Metro boards, visit this website. This company has designed an ATMEGA328 board similar to Arduino UNO. Placement, number, and arrangement of pins are the same as Arduino UNO, allowing to use Arduino shields. Despite the overall similarity to Arduino UNO, it has a few differences. This board uses the ATMEGA328 processor with SMD package and CP2104 for serial to USB conversion, reducing price compared to the official UNO board. METRO board uses a micro USB port for programming instead of USB type B. Alongside adapter jack, there is a small switch to connect and disconnect the current. Operating voltage (logical) for this board is 5 volts; however, there is a pad on the board that changes the operating voltage to 3.3 upon being soldered.
If you have trouble with size in your project, Adafruit also sells its ATMEGA328 board with the pin header and jack adapter not soldered.
Another Arduino manufacturer in the USA is Sparkfun Company. This company sells its boards under RedBoard’s commercial name. ProMicro, UNO, PRO and MEGAPro boards are other products of this company. UNO RedBoard has used the ATMEGA328 SMD processor and FTDI IC for serial to USB conversion. The mini USB port is used to program this port. The price of this board is not very different from the official UNO board. The main useful feature for this board is using SMD components, where even header pins and adapter jacks are SMD. As a result, the lower surface of the board is entirely smooth, can easily be placed on surfaces, pins do not cause any issues, and there is no risk of short circuits.
DFRobot Company produces several Arduino models under the DFRduino brand. Boards with the most similarities to official Arduino are DFRduino UNO, DFRobot LEONARDO and DFRobot MEGA. DFRduino UNO board is completely similar to UNO R3. This board has used DIP package ATMEGA328 microcontroller with USB type B port. The only difference with the UNO R3 board is colored pin headers: red power supply pins, blue analog input pins, and green digital pins. Colored pin headers can be a good idea for beginners and those who want to use other DFRobot modules. Board price is not very different from the official Arduino board.
Should one buy unoriginal brands?
In addition to companies in the previous section and other companies producing boards similar to Arduino, there are many inauthentic producers in various countries, selling boards with Arduino name and logo. Arduino Company calls these counterfeit boards and mentions their differences with the official boards produced by Arduino LLC, in Arduino.cc website. Counterfeit boards look completely similar to official Arduinos and have the same functionality for the most part, but are much cheaper compared to official boards. These factors contribute to growth and a variety of counterfeit boards. The user faces the question of whether buying these cheap boards is right for the project.
Maybe buying a similar board at a lower price seems more tempting and logical. As explained before, Arduino is an open-source platform; anyone can make their own Arduino and as long as they don’t use Arduino’s name and logo, there will not be a problem. If you want to pay less, you can buy from approved Arduino manufacturers, which a few were introduced in the previous section. In case you purchase counterfeit brands, you are supporting fake board sellers violating copyright laws. However, this is not the end of it. Fake boards under Arduino name appear to have the same specifications as boards; however, quality and type of their components are very different. For example, the accuracy of the output voltage is much less than the official boards. These sellers falsely claim allowable current similar to official Arduino specification, resulting in the failure of counterfeit boards. In some boards, even components are very different from the official board. For example, the UNO board, instead of ATMEGA16U4 for USB to serial conversion, uses chips such as FTDI or even CH340 IC. Therefore, these boards are not compatible with some operating systems or need further actions for setup.
If you want to pay less, buy from approved Arduino manufacturers and do not use counterfeit boards.
Battle of Arduino and Other IoT Boards
When Arduino started its work in 2008, there was no real competitor in the field of development boards. With the fast progress of processors and the emergence of IoT, other competitors came to the scene. In the beginning, producers of modules such as Wi-Fi, GSM and Bluetooth served other microcontrollers and development boards like Arduino. In time, they were equipped with more powerful processors and features and became development boards themselves.
Espressif Systems is a leading company in this field, beginning in 2008. Its main product has been ESP8266 Wi-Fi chips. After some time, in 2013, this company unveiled development board NodeMCU. This development board targeted IoT and was based on LUA programming language. NodeMCU can also be programmed with Arduino IDE, contributing to its popularity. One of their new products is ESP32 equipped with a dual-core processor, Wi-Fi, and 4th generation Bluetooth. An advantage of NodeMCU development boards in comparison with Arduino IoT boards is their lower price. The most powerful NodeMCU model, ESP32 with many features for the user, costs less than 10 dollars. Specifications of NodeMCU boards in comparison with Arduino IoT boards can be viewed in the table below.
|Firmware version of module||+VERSION:|
|Module role(0 is slave & 1 is master)||+ROLE:||AT+ROLE?|
Conclusion: Arduino, Yes or No?
If you haven’t decided yet to buy an Arduino board or not, we hope this last section will help.
We came to know the Arduino platform and its history and compared various Arduino boards based on components such as processor, features, size, cost and so on. In this section, we will review the Arduino pros and cons and decide whether or not to use this development platform.
Advantages and Facilities of Arduino
- Coordination between software and hardware, simplicity and compactness are the most important advantages of Arduino. When one talks about a development board, we expect it to have all the necessary features so that the user can set it up and program it. In Most Arduino boards, you can connect a USB cable to Arduino board and transfer program written in the Arduino IDE at the push of a button.
- Another advantage of the Arduino platform is compatibility with all operating systems, contrary to most AVR programming software that is only compatible with Windows and Linux.
- The wide variety of Arduino boards and considering the needs of different users is another advantage of Arduino. Arduino has more than 40 different boards; however, only a small number of Arduino boards are well known. You can visit the Arduino website for all the boards.
- Growing resources and libraries is another advantage point for Arduino. The open-source hardware and software have taken Arduino beyond an electronic board. Thousands of developers using Arduino all over the world on a daily basis, design new modules and hardware for Arduino and provide their libraries with plenty of examples to users free of charge. This large amount of training and content makes it possible for you to complete your project by combining codes and libraries in the least possible time.
- In addition to Arduino’s communication with various modules and sensors alongside various libraries for said modules, there are many libraries connecting Arduino boards to other software such as MATLAB, Simulink, LabVIEW, and even Python. If you are not an expert in C language or need to use a computer environment for your project, do not worry, because Arduino makes this easily possible. Today, with only 20 dollars, you can buy an Arduino UNO, easily connect sensors and operators to your computer. No longer will you need expensive DAQ cards.
Today, with only 20 dollars, you can buy an Arduino UNO, easily connect sensors and operators to your computer. No longer will you need expensive DAQ cards.
- Besides all positive capabilities of Arduino hardware and software, we should mention that the Arduino platform is somewhat educational and essentially one of the goals of this platform was educating electronics to all. Easy-to-use programming language, numerous tutorials, and libraries and the Arduino Forum community for sharing information and supporting Arduino users are among the educational goals of this platform.
Disadvantages and Limitations of Arduino
Having mentioned the advantage of Arduino, it is only fair to mention some of its disadvantages. A variety of boards with different applications can be a strength for Arduino, lack of an inclusive board that incorporates most of these features can be a disadvantage. Among Arduino boards, DUE has the best features of Arduino boards; however, its size is not ideal for many projects. Furthermore, Wi-Fi and Bluetooth are not included in this board. Generally, Arduino has barely considered IoT and industrial boards in their products. Arduino boards designed for these fields cannot compete with competitors in terms of price.
Another disadvantage of Arduino is the limited use of newer more powerful ARM processors. Less power consumption and faster processing speed of these processors have been sacrificed for Arduino’s prejudice in using AT processors. Production of 101 board might be a breakthrough for Arduino, so a new generation of processors will emerge.
Not installing the same USB port and failure to use all features of the microcontroller in most boards is another disadvantage of Arduino.
Future of Arduino?
Today, we are witnessing the emergence and progress of development boards with various capabilities and low prices. Some boards even offer more innovative features than Arduino. With the growing advance of these development boards, should we expect Arduino’s downfall and surrender to other developers? Will other developers surpass Arduino in the future? What do you think Arduino should do to compete with new platforms?
The best defense is a good offense! One of Arduino’s most interesting policies is to cooperate with their rivals. Arduino is working well with Adafruit and Sparkfun in the USA. As argued in the first section of the article, since day one Arduino hasn’t been commercialized and has no prejudice regarding production and maintaining their products. Therefore, it can easily and constructively cooperate with other developers. Open source policy for hardware and software has been the best method to promote and develop Arduino and can be one of the most important factors in Arduino’s survival.
Kind father! In addition to providing a platform, Arduino has created its unique line of thinking, so that most Arduino rivals try to create modules tailored to the Arduino IDE, in addition to their own software. This takes the new developers’ products under the category of Arduino. Therefore, In this case, Arduino should be more inclined to provide coherent training to take on this line of thought in order to maintain his paternal role.
Keep up to date! These recent years, we have witnessed the growing connectivity of hardware and software. Many software engineers easily implement several thousand lines of program on hardware. Undoubtedly, Arduino has been an important factor in the growth of this phenomenon. However, in order to stay the course of the competition, it should try to upgrade software and hardware features. For example, addressing new areas such as IoT and providing its necessary hardware on the boards, as well as engaging with growing software such as Python can guarantee Arduino’s survival.