Live Project: Weather Reporting

Course Content

Getting Started

 Downloading our Integrated Development Environment

 Installing our Integrated Development Environment 

 Downloading the Required Documentation 

 Coding: Understanding the Context of Bare-Metal Development 

 Coding: Testing our Setup by Developing a GPIO Output Driver 

Introduction to Network Programming

 Some Networking Concepts and Terms 

 Introduction to the WIFI Protocol 

 Some History of the WIFI Protocol 

 Operational Characteristics of the WIFI Protocol 

Developing the Debug UART Driver

 Coding: Listing the Steps 

 Coding: Configuring the UART GPIO Pins 

 Coding: Configuring the UART Parameters 

 Coding: Implementing the UART Write function 

 Coding: Testing the Debug UART Driver 

Developing the ESP UART Driver

 Coding: Implementing the ESP UART Driver 

Developing a Timebase for the System

 Coding: Writing a System Tick 

Developing a First-In-First-Out (FIFO) Data Structure for Managing Data

 Introduction to FIFOs 

 Coding: Implementing the Transmitter (TX) FIFO Put function

 Coding: Implementing the Transmitter (TX) FIFO Get function

 Coding: Implementing the Receiver (RX) FIFOs

 Coding: Testing the FIFO functions 

Developing a Circular Buffer Data Structure for Managing Data

 Introduction to the Circular Buffer Data Structure 

 Coding: Implementing the Initialization function 

 Coding: Storing a Character in the Buffer 

 Coding: Finding a Substring within a String 

 Coding: Clearing the Buffer 

 Coding: Implementing the BufferRead function 

 Coding: Writing Data to the Buffer 

 Coding: Checking for Data in the Buffer 

 Coding: Getting the first Character of a String in the Buffer 

 Coding: Finding Response in the Data Stream 

 Coding: Getting the next String after a particular String 

 Coding: Copying Specific Strings in a Text 

 Coding: Integrating a Callback function for the Debug UART 

 Coding: Integrating a Callback function for the ESP UART 

 Coding: Testing the Circular Buffer Data Structure 

 Coding: Testing the Circular Buffer Implementation with the ESP UART Port 

Developing an ESP8266 WiFi Connection Library using the Circular Buffer

 Coding: Enabling Station (STA) mode

 Coding: Connecting to a WIFI Access Point 

 Coding: Getting the Local IP Address of the Device 

 Coding: Enabling Multiple Connections 

 Coding: Creating a TCP Server 

 Coding: Sending Data to the Server 

 Coding: Hosting a Webpage on the Server 

 Coding: Configuring the RESET Pin of the ESP8266 Chip 

Developing an ESP8266 WiFi Connection Library using the FIFO

 Coding: Cleaning Up the Project 

 Coding: Listing the Required String Processing Helper Functions 

 Coding: Implementing the String Search Initialization functions 

 Coding: Implementing the String Search 

 Coding: Moving Data Between the Software FIFO and the UART Hardware 

 Coding: Implementing the WIFI UART Callback function 

 Coding: Sending Commands to the ESP8266 Chip 

 Coding: Resetting the ESP8266 Chip 

 Coding: Setting the WIFI Mode 

 Coding: Listing all WIFI Access Points 

 Coding: Joining a WIFI Access Point (Network)

 Coding: Getting the Local IP Address of the Device 

 Coding: Creating a TCP Server 

 Coding: Sending TCP Packets to the Remote Server 

 Coding: Closing the TCP Connection 

 Coding: Getting the IP Address of a Website 

Final Project: Accessing Realtime Weather Information

 Coding: Accessing Realtime Weather Information from OpenWeather.org 

Know your Instructor

Meet Rahul, our esteemed instructor with over 18 years of expertise spanning diverse industries. His extensive background includes stints in consumer electronics, process automation, automotive, medical devices, storage products, and more. Rahul’s wealth of experience from renowned organizations like Hyundai, Emerson, Seagate, Philips, and Belden enriches his teachings, offering invaluable real-world insights and practical wisdom in IoT and Embedded Systems training.

Weekend Live Sessions (Hindi/English)

Next Batch 10th February – 11th February

7:00 PM to 10:00 PM

Weekend Live Sessions (Hindi/English)

Next Batch 24th February – 25th February

7:00 PM to 10:00 PM