Arduino is one of the most famous development boards. You can attach sensor and actuator devices easily into the board. This chapter will explore how to work with Arduino development and prepare for a development machine. To work on this chapter, you should have one of the Arduino board models for implementation.
Exploring Arduino Boards
Arduino is a board development platform with which we can develop an embedded application with several sensor and actuator devices. Arduino is an open source-based hardware . It means we can develop our own Arduino board, but you should not use the Arduino name because its a trademark. Currently Arduino boards are produced by Arduino LLC ( www.arduino.cc ) and Arduino SRL ( www.arduino.org ). Some Arduino models which are produced by Arduino LLC and Arduino SRL are different.
In general, an Arduino board has several digital and analog I/O pins, which are used to sense and actuate with external devices. In addition, Arduino provides UART, SPI, and I2C protocols. Each Arduino model has unique features and forms. Make sure you dont choose the wrong board model. One of the Arduino board samples can be seen in Figure .
Figure 1-1.
Arduino UNO R3 board
The advantage of an Arduino board is its easy to use. You dont need to solder electronics components. An Arduino board is ready to use. You just attach sensor and actuator devices into the board via jumper cables.
In this section, we explore various Arduino boards from Arduino LLC and Arduino SRL. Each Arduino model has unique features. To optimize Arduino board usage, you should know and understand what kind of Arduino model it is. I will introduce various Arduino models based on complexity level and usage range.
Lets start to explore Arduino boards.
Arduino Boards for Beginners
An Arduino UNO board is a development board which I recommend to anyone who wants to learn Arduino programming. There are many Arduino shields which are attached to the board. Furthermore, most tutorials and books use Arduino UNO as an experimental board. Arduino UNO has completed I/O protocols, such as digital and analog I/O, SPI, UART, and I2C/TWI, so you can utilize these I/O pins to work with sensor and actuator devices. Arduino UNO is easier to find and buy.
You can review the Arduino UNO board on this website: https://www.arduino.cc/en/Main/ArduinoBoardUno . You can also review Arduino UNO from Arduino SRL on this site: http://www.arduino.org/products/boards/arduino-uno .
Figure 1-2.
Arduino UNO board from Arduino LLC
Arduino Boards for Advanced Users
In some cases you want to optimize your boards I/O or want to debug your programs. The Arduino MEGA 2560 board provides more I/O pins (about 54 I/O pins) and advanced MCU to accelerate your program. This board runs on the top of MCU Atmega 2560 with an internal flash memory of 256 KB. The Arduino MEGA 2560 board also has two UARTs. You can review this board on this site: .
Figure 1-3.
Arduino MEGA 2560
Most Arduino boards dont have a built-in debug chip, so if you want to debug our program, you should add an additional debug tool. Fortunately, we can use the Arduino ZERO board ( .
Arduino for Internet of Things
Today the Internet is a common term used to describe how to access data from a remote site. We can access the data from any device and anywhere. In the context of Arduino, its very useful if our boards can be connected to the Internet. Imagine your boards sense the physical object and then send it to our smartphone. This happens if our boards are connected to Internet.
There are many options for Arduino shields for network modules to make our Arduino boards connect to the Internet. This means you should buy additional modules to make your boards connect to the Internet. Fortunately, various Arduino board models have a built-in network module in the board. We explore some Arduino board models with Internet connectivity capability.
Arduino UNO WiFi is an Arduino UNO board with an additional chip (ESP8266). This chip can be used to connect existing WiFi networks and also can work as an access point (AP) node. Arduno UNO WiFi is manufactured by Arduino SRL. You can see the Arduino UNO WiFi form in Figure .
Figure 1-5.
Arduino UNO WiFi
Arduino/Genuino MKR1000 is a development board with a ready-for-IoT scenario which is manufactured by Arduino LLC . The board runs with ATSAMW25 SoC, which consists of SAMD21 Cortex-M0+, WINC1500 WiFi module, and ECC508 CryptoAuthentication. Its designed for IoT connectivity, including accessing the cloud server. Further information about Arduino/Genuino MKR1000 can be read on , is small.
Figure 1-6.
Arduino/Genuino MKR1000
Most Arduino boards work with an RTOS environment. Arduino YUN combines MCU and WiFi MCU, which runs OpenWrt Linux (called Linino OS). This board likes a mini-computer with Linux OS . You can control Arduino MCU ATmega32u4 from Linux. We also can access Linux API from the Arduino program. The Arduino YUN board has built-in WiFi and Ethernet modules to solve your IoT cases. Figure .
If youre looking for an Arduino with BLE connectivity capability, you can consider using the Arduino/Genuino 101 board , which is shown in Figure .
Figure 1-8.
Arduino/Genuino 101
Arduino-Compatible
In general, the original Arduino board price is expensive. If you have pricing issues on your Arduino learning process, you could buy an Arduino-compatible board. As we know, Arduino shares its design and scheme under an open source project. It means we can build our own Arduino board without using the Arduino name for our board. Arduino-compatible boards usually are manufactured by third-party companies. This section will go through various Arduino-compatible boards in the market.