Building IOT Systems with ESP32
Duration– 12days
Objectives
- Understanding the concept of IOT
- To gain an understanding of Internet of things using python features and their uses in developing
- Understand the internals of Internet of things by connecting node devices to gat way and gateway devicesto cloud and by collecting things data.
- Analyzing the data and act upon the data from the
- Exposure to technologies used in building an IOT solution
Hardware and Software tools
- ESP-32+micro-USBcable
- Internet connectivity
- USB keyboard and mouse
- Windows 7(or higher) system to download Micro Python
Pre-requisites
- Basic programming and Hardware knowledge
- Basic knowledge of Python
- Basic knowledge of Microcontrollers
- Basic knowledge of Linux
Take away
- Explore ESP-32 with Python scripts
- Discover how to work with Internet of things
- Interfacing sensors with ESP- 32
- Analyze the data and work with cloud
- Use ESP-32 as a server to control the things
- Master the fundamentals of IOT by building project
Day 1:
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
Day 2:
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
Day 3:
Introduction to IOT
- What is IOT?
- Why do we need IOT?
- How does IOT work?
- IOT Architecture- Components of IOT
- How Does an IoT Gateway Device Work?
Introduction to Micro Python
- What is Micro Python?
- Why use Micro Python on ESP32?
- Installing the necessary software (Thonny IDE, drivers, Esp tool).
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 MicroPython
Day 4 :
Programming using Micro Python
- GPIO
- Working with GPIO
- Flashing an LED
- Introduction To I2C Protocol
- Interfacing LCD
- Developing LCD package in python
- Displaying the messages
Day 5:
Interfacing Sensor to RPi
• InterfacingDHT11sensortoRpi
• Interfacing LDR Sensor to RPi
• Types of sensors: analog and digital
• Reading data from sensors
• Interfacing temperature and humidity sensors
Day 6:
- Interfacing ultrasonic distance Sensor
- Interfacing PIR Sensor
- LCD Interfacing with sensors
- Connecting with soil Moisture Sensors
- And More Sensors
Day 7:
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
Day 8:
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
Day 9:
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
Day 10:
Projects Work:
• Home Automation
• Smart Agriculture Farming
• Remote Health monitoring
Day11:
Projects Work:
- Smart Parking Slot
- Automated Gardening System
- Remote Appliance Controller
Day12:
Projects Work:
• Project Presentation
• Problem Statements
• Objective of the project
• Explaining the Root Cause
• Project Review