Book Image

Developing IoT Projects with ESP32

By : Vedat Ozan Oner
Book Image

Developing IoT Projects with ESP32

By: Vedat Ozan Oner

Overview of this book

Developing IoT Projects with ESP32 provides end-to-end coverage of secure data communication techniques from sensors to cloud platforms that will help you to develop production-grade IoT solutions by using the ESP32 SoC. You'll learn how to employ ESP32 in your IoT projects by interfacing with different sensors and actuators using different types of serial protocols. This book will show you how some projects require immediate output for end-users, and cover different display technologies as well as examples of driving different types of displays. The book features a dedicated chapter on cybersecurity packed with hands-on examples. As you progress, you'll get to grips with BLE technologies and BLE mesh networking and work on a complete smart home project where all nodes communicate over a BLE mesh. Later chapters will show you how IoT requires cloud connectivity most of the time and remote access to smart devices. You'll also see how cloud platforms and third-party integrations enable endless possibilities for your end-users, such as insights with big data analytics and predictive maintenance to minimize costs. By the end of this book, you'll have developed the skills you need to start using ESP32 in your next wireless IoT project and meet the project's requirements by building effective, efficient, and secure solutions.
Table of Contents (18 chapters)
1
Section 1: Using ESP32
7
Section 2: Local Network Communication
12
Section 3: Cloud Communication

To get the most out of this book

IoT technology requires many different disciplines and skills to develop an IoT product. Fundamentally, you are expected to read Fritzing diagrams to set up the hardware prototypes in the examples, in addition to having programming capabilities with C and Python. It is also assumed that you have a familiarity with TCP/IP protocols and cryptography basics to follow the examples easily. In some chapters, there are reference books suggested for reading if you don't feel comfortable with the basics of the subject.

The necessary hardware components are listed before each example. However, you should have a breadboard, jumper wires, and a multimeter ready to be able to build the circuits. It is also advisable to have soldering equipment since many of the new modules need headers to be soldered in order to connect them to the breadboard.

As the development environment, you should have VS Code installed on your PC. The examples in this book are developed and tested on a Linux machine, but all should work regardless of the OS platform. The alternatives of the external tools are suggested for different platforms where necessary.

There are several mobile applications required for testing purposes. Therefore, you will need a mobile device while working on the examples. These mobile applications are available for both Android and iOS platforms.

To gain proficiency in a new subject requires a lot of practice. Each reference project at the end of the parts is for that purpose. After completing them, it would be highly beneficial to continue to work on the projects as suggested at the end of the chapters. Some more ideas are given for how to improve them further.

If you are using the digital version of this book, we advise you to type the code yourself or access the code via the GitHub repository (link available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.