Building IOT Systems with ESP32
Durations – 12 Days
Modules
- Introduction to Python
- Data Structures in Python
- Introduction to IoT
- Overview of ESP32
- Programming with Micro Python
- Sensor Interfacing with Raspberry Pi
- Cloud Computing with IoT
- Setting Raspberry Pi as a Server
- Mail Transfer using SMTP
- IoT Connectivity and Communication Protocols
Program Outcomes
- Explore ESP-32 with Python scripts
- Discover how to work with Internet of Things (IoT)
- Interfacing sensors with ESP-32
- Analyze the data and work with cloud
- Use ESP-32 as a server to control devices
- Master the fundamentals of IoT by building projects
Tools / Platform:
- ESP-32 + Micro-USB cable
- Internet connectivity
- USB keyboard and mouse
- Windows 7 (or higher) system to download MicroPython
Experiential Project Based Learning:
- Home Automation
- Smart Farming
- Remote Health Monitoring
- Smart Parking
- Automated Gardening
| Introduction to Python | ||
|---|---|---|
| Using Python Interpreter | Understanding the python scripts | Print Message to Standard Output |
| variables and data types | Reading Input from console | Type Conversion |
| Arithmetic Operators and Conditions | Control flow and its Types | Function and Parameters |
| Introduction to Data Structures | ||
| Creating List | Accessing elements from List | Inserting and deleting |
| Tuples and its function | Accessing elements from Tuples | Inserting and deleting |
| Repeating sequence | Built-in List and Tuple Methods and Functions | Sets and Dictionary |
| Built-in Methods and Functions | ||
| Introduction to IOT | ||
| What is IOT? | Why do we need IOT? | How does IOT work? |
| Overview of ESP32 | ||
| Introduction to ESP32: Features, specifications, and applications. | Comparison with other microcontrollers (e.g., Arduino, Raspberry Pi). | ESP32 features and specifications |
| Development tools and environment setup | Basics Program of Micro Python | |
| Programming using Micro Python | ||
| GPIO programming. | Working with GPIO | Flashing an LED |
| Introduction To I2C Protocol | Interfacing LCD memory | Developing LCD package in python |
| Displaying the messages | ||
| Interfacing Sensor to RPi | ||
| Interfacing DHT11 sensor to RPi | Interfacing LDR Sensor to RPi | Types of sensors: analog and digital |
| Reading data from sensors | Interfacing temperature and humidity sensors | Interfacing ultrasonic distance Sensor |
| Interfacing PIR Sensor | LCD Interfacing with sensors | Connecting with soil Moisture Sensors |
| And More Sensors | ||
| Cloud Computing | ||
|---|---|---|
| Connecting to cloud | Creating Thing speak account | Analysis and visualization data using MATLAB |
| Using Thing Speak API to upload data to cloud | Controlling the peripherals with writing API | Reading data from cloud using RESTAPI |
| Setting RPi as a server | ||
| Setting RPi as a http server | Create the simple web server using Flask, Python, HTML and CSS | Installing the packages to setup server |
| Hosting the server | Controlling the hardware through the server | |
| Mail transfer through SMTP | ||
| Introduction to SMTP | Configuring smtp configuration file (ssmtp.conf) | Sending the attachments through SMTP |
| SMTP Commands and key components | Sending messages through email | |
| IoT Connectivity and Communication | ||
| Introduction to MQTT Protocols | Configuring MQTT | MQTT Architecture: Clients and Broker. |
| Message Flow: CONNECT, PUBLISH, SUBSCRIBE, UNSUBSCRIBE, DISCONNECT. | Setting up the CoAP SERVER | CoAP Clients |
| MQTT vs. CoAP | ||
| Projects Work | ||
| Home Automation | Smart Agriculture Farming | Remote Health monitoring |
| Smart Parking Slot | Automated Gardening System | Remote Appliance Controller |
| Project Presentation | Problem Statements | Objective of the project |
| Explaining the Root Cause | Project Review | |
