Introduction
This week in Fab Lab, we learned about networking and communication in embedded systems. We studied how different devices and microcontrollers communicate with each other and exchange data. We also understood the importance of communication protocols and how they help devices share information quickly and accurately.
We learned about different types of communication used in embedded systems, including UART, SPI, and I2C. We also studied synchronous and asynchronous communication and understood the difference between them. In addition, we learned about IP addresses and how they help identify devices connected to a network.
As part of the practical work, we explored IoT platforms such as ThingSpeak and MIT App Inventor. We learned how to send sensor data from a microcontroller to ThingSpeak and display the data on graphs. We also designed a simple mobile application using MIT App Inventor to view the sensor data and understand how mobile apps can communicate with IoT devices.
We also learned about the interface of MIT App Inventor, including its Designer and Blocks sections. We understood how to create a simple mobile application by adding buttons, labels, and other components, and how to use programming blocks to connect the app with ThingSpeak and display sensor data.
Overall, this week helped us understand the basics of embedded networking and communication. We gained both theoretical knowledge and practical experience in connecting devices, transferring data, and building a simple IoT system using embedded hardware, ThingSpeak, and MIT App Inventor. This knowledge will help us develop more advanced IoT and embedded system projects in the future.
Group Assignment
As a part of the group assignment, we established communication between two Seeed Studio XIAO ESP32-C3 microcontroller boards. The objective was to understand how two embedded devices can exchange data using a communication protocol. We programmed one XIAO ESP32-C3 board to send data, while the other board received the data successfully.
During this assignment, we learned how communication takes place between two microcontrollers, how data is transmitted and received, and the importance of proper wiring and programming. This activity helped us understand the practical implementation of embedded communication and improved our knowledge of networking concepts used in embedded systems.




Code used
#include <WiFi.h>
const char* ssid = "YOUR_WIFI_NAME";
const char* password = "YOUR_WIFI_PASSWORD";
WiFiServer server(80);
const int ledPin = 2; // Built-in LED
void setup() {
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
WiFi.begin(ssid, password);
Serial.print("Connecting");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.print("ESP32 IP Address: ");
Serial.println(WiFi.localIP());
server.begin();
}
void loop() {
WiFiClient client = server.available();
if (!client) return;
String request = client.readStringUntil('\r');
client.flush();
if (request.indexOf("/ON") != -1) {
digitalWrite(ledPin, HIGH);
}
if (request.indexOf("/OFF") != -1) {
digitalWrite(ledPin, LOW);
}
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");
client.println();
client.println("OK");
client.stop();
}
Individual Assignment
Design and connect wired and wireless network nodes with local input and output devices.
We used MIT App for blinking LED

The process of designing the app


This was the Block made
I designed and connected wired and wireless network nodes with local input and output devices. Using the MIT App Inventor application, I successfully controlled an LED wirelessly through the network and verified its operation.
I also connected a DHT11 temperature and humidity sensor with the XIAO ESP32-C3 microcontroller to monitor environmental conditions. The sensor continuously measured the temperature and humidity, and the microcontroller processed the collected data. After uploading the program, the sensor readings were first displayed on the Arduino IDE Serial Monitor, allowing me to verify that the sensor was working correctly and providing accurate values.
Next, I connected the microcontroller to the internet and sent the sensor data to the ThingSpeak cloud platform. ThingSpeak stored the received data and displayed it in the form of graphs, making it easy to monitor the temperature and humidity over time. Finally, I developed a simple mobile application using MIT App Inventor that retrieved the latest data from ThingSpeak and displayed it on my phone. This project successfully demonstrated wireless data transmission from the sensor to the microcontroller, then to the cloud, and finally to a mobile application, showing a complete IoT-based monitoring system

This was when we connected it and the signals were on serial monitor


slowly the graph started changing



And accordingly it changed
Code Used
#include <WiFi.h>
#include <ThingSpeak.h>
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT11
const char* ssid = "Redmi";
const char* password = "shravani";
unsigned long channelID = 3444546;
const char* writeAPIKey = "PU0Q1RFJ9DEA07DJ";
WiFiClient client;
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
delay(1000);
dht.begin();
Serial.println("==================================");
Serial.println("Connecting to WiFi...");
Serial.println("==================================");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println("WiFi Connected Successfully!");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP());
ThingSpeak.begin(client);
Serial.println("ThingSpeak Ready");
Serial.println("==================================");
}
void loop() {
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
if (isnan(temperature) || isnan(humidity)) {
Serial.println("Failed to read DHT11 Sensor!");
delay(2000);
return;
}
Serial.println("------------------------------");
Serial.print("Temperature : ");
Serial.print(temperature);
Serial.println(" °C");
Serial.print("Humidity : ");
Serial.print(humidity);
Serial.println(" %");
ThingSpeak.setField(1, temperature);
ThingSpeak.setField(2, humidity);
int response = ThingSpeak.writeFields(channelID, writeAPIKey);
if (response == 200) {
Serial.println();
Serial.println("******************************");
Serial.println("Data Uploaded Successfully!");
Serial.println("ThingSpeak Graph Updated");
Serial.println("******************************");
} else {
Serial.print("Upload Failed. Error Code: ");
Serial.println(response);
}
Serial.println();
Serial.println("Waiting 20 seconds...");
delay(20000); // ThingSpeak minimum update interval
}
Used MIT App for checking live signal



What is Network?
A network is a group of two or more devices that are connected so they can share information and communicate with each other. These devices can be computers, mobile phones, printers, sensors, or microcontrollers. A network allows data to move from one device to another quickly and easily.
Networks can be connected using wires (wired network) or without wires using technologies like Wi-Fi or Bluetooth (wireless network). They are used in homes, schools, offices, and industries to share files, access the internet, and control devices. A small network may connect only a few devices, while a large network can connect millions of devices around the world.
In embedded systems and IoT projects, a network helps microcontrollers and sensors send data to other devices or cloud platforms. For example, an ESP32 connected to Wi-Fi can send temperature and humidity data from a DHT11 sensor to ThingSpeak, where the information can be viewed on a mobile app or computer.What is

What is Networking?
Networking is the process of connecting two or more devices so they can communicate and exchange data with each other. It allows devices such as computers, mobile phones, printers, sensors, and microcontrollers to share information, files, and internet connections.
Networking can be done using cables (wired networking) or wireless technologies like Wi-Fi and Bluetooth. It is widely used in homes, schools, offices, and industries to enable communication between devices.
In simple words, networking means making devices work together by connecting them so they can send and receive data. For example, when an ESP32 sends temperature data from a DHT11 sensor to ThingSpeak over Wi-Fi, it is using networking.

Differences between Network and Networking
| Network | Networking |
|---|---|
| 1. A network is a collection of connected devices. | 1. Networking is the process of connecting devices. |
| 2. It is a system of communication. | 2. It is the activity of creating and managing communication. |
| 3. It is the final result after devices are connected. | 3. It is the method used to build the network. |
| 4. It includes devices like computers, phones, routers, and sensors. | 4. It includes configuring devices, cables, Wi-Fi, and protocols. |
| 5. It allows devices to share data and resources. | 5. It enables devices to communicate and exchange data. |
| 6. It can be wired or wireless. | 6. It involves setting up wired or wireless connections. |
| 7. Example: A home Wi-Fi network. | 7. Example: Connecting a laptop to the home Wi-Fi. |
| 8. It is a noun (a thing). | 8. It is a verb/process (an activity). |
| 9. Its main purpose is communication between devices. | 9. Its main purpose is to establish and maintain the communication. |

What is communication?
Communication is the process of sharing or exchanging information, ideas, thoughts, or messages between two or more people or devices. The purpose of communication is to ensure that the information is understood correctly by the receiver. Communication can take place through speaking, writing, gestures, images, or electronic signals.
Communication can be done in different ways, such as verbal communication (speaking), written communication (letters, emails, messages), non-verbal communication (body language, facial expressions, and hand gestures), and digital communication using computers, mobile phones, and the internet. Effective communication helps people work together, solve problems, and make better decisions.
In computer networks, communication refers to the exchange of data between connected devices. Computers, smartphones, sensors, and microcontrollers communicate through wired or wireless networks using communication protocols. This allows devices to share files, send messages, access the internet, and transfer information efficiently.
In IoT and embedded systems, communication plays an important role by allowing sensors and microcontrollers to send data to cloud platforms or mobile applications. For example, an ESP32 can send temperature and humidity data from a DHT11 sensor to ThingSpeak through Wi-Fi, where the data can be viewed on a computer or smartphone. This demonstrates successful communication between devices over a network.

What is Networking and Communication
Networking and communication are closely related concepts in computer systems and IoT. Networking is the process of connecting two or more devices so they can communicate and share data. Communication is the exchange of information between those connected devices. In simple words, networking creates the connection, while communication transfers the information.
Networking can be done through wired connections such as Ethernet cables or wireless technologies like Wi-Fi and Bluetooth. Once the devices are connected, communication takes place by sending and receiving data using communication protocols. This enables devices to share files, access the internet, and exchange information quickly and securely.
In embedded systems and IoT applications, networking and communication play a vital role. Microcontrollers, sensors, and cloud platforms work together through a network to exchange data. For example, an ESP32 connected to Wi-Fi sends temperature and humidity data from a DHT11 sensor to ThingSpeak, where the information can be viewed on a mobile application or computer. This demonstrates successful networking and communication between devices.

Basics of Networking and Communication:
Networking and communication involve connecting two or more devices so they can exchange information and share resources. A network consists of interconnected devices such as computers, sensors, PLCs, controllers, and communication equipment like Ethernet switches. These devices communicate through wired or wireless media, including cables, telephone lines, radio waves, satellites, or infrared signals. Networking enables the sharing of files, printers, internet access, and other resources, making communication between devices fast and efficient. The Internet is the largest example of a network, connecting millions of devices worldwide and allowing them to communicate with each other.