Book Image

Developing IoT Projects with ESP32 - Second Edition

By : Vedat Ozan Oner
3 (2)
Book Image

Developing IoT Projects with ESP32 - Second Edition

3 (2)
By: Vedat Ozan Oner

Overview of this book

ESP32, a low-cost and energy-efficient system-on-a-chip microcontroller, has become the backbone of numerous WiFi devices, fueling IoT innovation. This book offers a holistic approach to building an IoT system from the ground up, ensuring secure data communication from sensors to cloud platforms, empowering you to create production-grade IoT solutions using the ESP32 SoC. Starting with IoT essentials supported by real-world use cases, this book takes you through the entire process of constructing an IoT device using ESP32. Each chapter introduces new dimensions to your IoT applications, covering sensor communication, the integration of prominent IoT libraries like LittleFS and LVGL, connectivity options via WiFi, security measures, cloud integration, and the visualization of real-time data using Grafana. Furthermore, a dedicated section explores AI/ML for embedded systems, guiding you through building and running ML applications with tinyML and ESP32-S3 to create state-of-the-art embedded products. This book adopts a hands-on approach, ensuring you can start building IoT solutions right from the beginning. Towards the end of the book, you'll tackle a full-scale Smart Home project, applying all the techniques you've learned in real-time. Embark on your journey to build secure, production-grade IoT systems with ESP32 today!
Table of Contents (15 chapters)
13
Other Books You May Enjoy
14
Index

Technical requirements

As hardware, we will only use ESP32-C3-DevKitM-1 in the examples of this chapter. The Devkit has a button and LED on it, so it is enough for our purposes to try bi-directional communication for use cases with input/output. The code is located in the GitHub repository here: https://github.com/PacktPublishing/Developing-IoT-Projects-with-ESP32-2nd-edition/tree/main/ch6

There are also several third-party software tools that we need to test the final applications. They are:

  • curl: A command-line tool for communication over TCP/IP-based protocols. Its website for download and documentation is here: https://curl.se/
  • Mosquitto: An MQTT broker from the Eclipse Foundation. It also contains other utility tools to publish/subscribe to MQTT topics. You can download the broker and find the documentation here: https://mosquitto.org/
  • ESP SoftAP Provisioning: A mobile application from Espressif for provisioning. Available for both Android and iOS.
  • ...