Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Arduino IoT Cloud for Developers

You're reading from  Arduino IoT Cloud for Developers

Product type Book
Published in Nov 2023
Publisher Packt
ISBN-13 9781837637171
Pages 402 pages
Edition 1st Edition
Languages
Author (1):
Muhammad Afzal Muhammad Afzal
Profile icon Muhammad Afzal

Table of Contents (21) Chapters

Preface 1. Part 1: Introduction to IoT and Communication Technologies and the Arduino IoT Cloud
2. Chapter 1: Introduction to the IoT and Arduino 3. Chapter 2: First Look at the Arduino IoT Cloud 4. Chapter 3: Insights into the Arduino IoT Cloud Platform and Web Editor 5. Part 2: Getting Hands-On with Different Communication Technologies
6. Chapter 4: Project #1 – a Smarter Setup for Sensing the Environment 7. Chapter 5: Project #2 – Creating a Portable Thing Tracker Using MKR GSM 1400 8. Chapter 6: Project #3 – a Remote Asset Tracking Application with LoRaWAN 9. Part 3: Exchanging Data between Nodes and Cloud Applications
10. Chapter 7: Enabling Communication between Different Devices 11. Chapter 8: Working with the Arduino IoT Cloud SDK and JavaScript 12. Chapter 9: Project 4 – Collecting Data from the Soil and Environment for Smart Farming 13. Chapter 10: Project #6 – Making Your Home Smarter with a Voice Assistant 14. Part 4: Learning Advanced Features of the Arduino IoT Cloud and Looking Ahead
15. Chapter 11: Implementing the Arduino IoT Cloud Scheduler and Over-the-Air Features 16. Chapter 12: Project #6 – Tracking and Notifying about Your Heart Rate 17. Chapter 13: Scripting the Arduino IoT Cloud with Cloud CLI 18. Chapter 14: Moving Ahead in the Arduino IoT Cloud 19. Index 20. Other Books You May Enjoy

The architecture of an end-to-end IoT application

Now that we know more about the IoT, we have seen its principles and some examples of different applications, the time is good to dig more into the technical aspects with the analysis of the architecture of an IoT application.

We have already introduced IoT nodes, cloud platforms, and applications. A picture is better than a thousand words to explain how they work together and the following diagram shows the architecture of an IoT solution in its entirety:

Figure 1.3 – High-level architecture of an IoT system

Figure 1.3 – High-level architecture of an IoT system

There is an important difference between cloud platforms and cloud applications. Cloud platforms implement communication, user and device management, data storage and security, and other basic services; cloud applications implement the logic of the application, the dashboards, and all the specific aspects of the application.

In this sense, the Arduino IoT Cloud can be considered a cloud application running on the AWS cloud platform.

Thanks to the connectivity offered by the internet, you may set up even a complex IoT solution that features many different functionalities, just by exploiting multiple cloud applications, frameworks, and services already implemented by third parties and interconnected via the internet. This means that you don’t need to develop or configure everything from scratch and you may save time and headaches; it also explains the reason why multiple cloud platforms and cloud applications are visualized in the preceding figure.

Examples of these functionalities can be Single Sign-On (SSO), a user authentication service that allows a user to use one set of login credentials (e.g., name and password) to access multiple applications – such as social media platforms, and tons of others. You just need to decide what you need, search on the internet for the preferred provider, and easily integrate those features in your application without the need to program them. This is also valid for the Arduino Cloud platform, which offers a couple of different ways to interface with third-party applications, as we’ll see in Chapter 12.

The gateway is the last type of module we need to talk about. Gateways support the connection between nodes and cloud platforms. Or, more precisely, they are the bridge connecting nodes to the internet and allowing the exchange of data between nodes and cloud applications. There are many different types of gateways, characterized by the communication technologies they implement.

Your Wi-Fi router is a perfect example of a gateway: it’s connected to the internet and it accepts connections from other devices via Wi-Fi. It converts the Wi-Fi device into the data transportation technology of your internet provider (landline, Ethernet, or fiber-optic cable).

Gateways may also implement additional functionalities, such as data filtering, protocol conversion, and security. Every IoT application includes gateways in the architecture, even when they are not directly managed by you or the programmer of the solution.

Let’s consider an application with nodes using cellular connectivity. It may look like the nodes are directly connected to the internet, but it’s not the case. In fact, the nodes connect to the cellular network as well as dedicated gateways managed by the network provider. It’s important to clearly understand the presence of all the components in the architecture because each part can be a point of weakness in the case of an issue and can make the troubleshooting longer and more complex.

You have been reading a chapter from
Arduino IoT Cloud for Developers
Published in: Nov 2023 Publisher: Packt ISBN-13: 9781837637171
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}