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

Running inference on ESP32

Deep learning is a supervised learning method in ML. Similar to the human brain, it contains neurons, ie. computational units. Neural networks (NNs) are implementations of the deep learning method. A neural network has several layers of neurons and each layer can have a different number of neurons. In the last layer, the neural network generates its prediction. There are different types of layers, such as a fully connected layer, convolutional layer, pooling layer, etc. In a fully connected layer, all neurons are connected to every neuron in the next layer so that they can pass their calculations to the next layer fully. The following figure shows an NN with fully connected layers:

Figure 10.3: A fully-connected NN (Source: Wikimedia Commons)

An NN utilizes number arrays, or tensors, as a data structure. For example, a vector is a One-Dimensional (1D) tensor, and a matrix is a 2D tensor. A scalar, a single number, is a 0D tensor. Data is represented...