Monday, 16 June 2025

Learn How to Send SMS with ESP32 Using SMS API


Forget bulky GSM modules and SIM cards, now you can send real-time SMS alerts with ESP32 using the free SMS API from Circuit Digest Cloud. Perfect for applications like temperature monitoring, motion detection, or door-opening alerts. In this project learn how to deliver instant notifications directly to your phone without any apps, dashboards, and fees.

How It Works

  • ESP32 connects to Wi‑Fi using SSID and password.
  • It reads sensor data (e.g., temperature via DHT11).
  • If a threshold is crossed (e.g., temp ≥ 30 °C), ESP32 sends an HTTP request to the SMS API.
  • Circuit Digest Cloud validates your API key and sends an SMS to the linked phone number.
Block-Diagram-ESP32-SMS


What You Will Need

  • ESP32 Development Board
  • DHT11 Temperature Sensor (or any sensor of your choice)
  • Breadboard + Jumper Wires
  • 5V USB Power Supply

Circuit Diagram

Circuit-Diagram-of-ESP32-SMS-API

Getting Started: SMS API Key

  1. Visit Circuit Digest Cloud, sign in or register

  2. Generate your free API key (valid for 100 SMS/month)

  3. Add recipient phone number(s) via OTP

  4. Choose an SMS template (e.g., Template ID 102 for temperature alerts)

Hardware-setup-of-API-based-ESP32-SMS-Sender

Applications of SMS API with ESP32

  • Smart Home & Security: Get alerts for critical events

  • DIY Prototyping: Fast, hardware-free SMS integration

  • Educational Projects: Learn HTTP, JSON, cloud APIs ,  all through ESP32


Tuesday, 10 June 2025

Complete Guide to Amplitude Modulation (AM)

Amplitude Modulation Explained

Amplitude Modulation (AM) is among the earliest and most fundamental methods in wireless communication. It set the stage for long-distance audio broadcasting, taking the place of previous spark-gap transmitters. Whether you are an electronics student or a hobbyist dealing with RF circuits, grasping the principles of AM, both in theory and practice, is crucial. This tutorial will guide you through the concepts of AM, waveforms, circuit design, and testing it using an oscilloscope.

What is Modulation?

Modulation is the process of adding a low-frequency message signal, like audio, to a high-frequency carrier signal. This allows the signal to travel longer distances more efficiently. There are three primary types of analog modulation:

Oscilloscope Screen Carrier Wave and Amplitude Modulated Wave

Materials Required

  1. BC547 - 1 
  2. 7805 - 1 
  3. Resistor - 470Ω - 3
  4. Resistor - 100Ω - 1
  5. Resistor 1KΩ - 1
  6. Capacitor - 470nF-2
  7. Capacitor - 10pF-1

AM Part Markings

Amplitude Modulation may be one of the earliest modulation techniques, but its simplicity, educational value, and real-world relevance make it worth exploring. Whether you're preparing for exams, building wireless audio projects, or diving into RF basics, understanding AM is a key milestone in your electronics journey.

Thursday, 5 June 2025

Build a Fire and Smoke Alarm with Arduino and SMS Notification

In this DIY project, we’ll show you how to build a smart fire and smoke alarm system using an Arduino UNO R4 Wi Fi, MQ2 gas sensor, flame sensor, and SMS alert functionality. This setup not only detects fire and smoke but also sends real-time SMS alerts to your phone, making it ideal for homes, offices, or small industrial spaces.

How the System Works

This project relies on two key sensors:

  • MQ2 Smoke Sensor: Detects smoke or combustible gases like LPG, butane, methane, or hydrogen.
  • Flame Sensor: Detects the infrared light emitted by flames.

The Arduino continuously monitors these sensors. When it detects a fire or smoke condition, it activates a buzzer and LED indicators (green for normal, red for alert). Simultaneously, it sends an SMS to a predefined number using circuit digest SMS API over Wi Fi.

Block Diagram of Smoke Detection Alarm System

Components Required

  • Arduino UNO R4 Wi Fi
  • MQ2 Gas Sensor
  • Flame Sensor
  • Buzzer
  • Red and Green LEDs
  • Jumper Wires and Breadboard
  • Power Supply
  • Internet connectivity (for SMS alerts via API)
components required to build fire and smoke detector


SMS Alert Integration

Instead of using GSM modules, this project leverages the built-in Wi Fi of the UNO R4. By integrating with an SMS API (like Fast2SMS), the system sends out alerts immediately when smoke or fire is detected. This makes the setup cost-effective and more modern.

Arduino fire and detector system

Applications

  • Home and office fire safety
  • Industrial safety systems
  • Smart IoT-based hazard monitoring
  • Remote monitoring for senior care or unattended sites

This Arduino-based fire and smoke alarm is a practical, low-cost project with real-world safety benefits. Its ability to send instant SMS alerts makes it suitable for a variety of smart safety applications. Whether you're a hobbyist or an educator, this is a great project to enhance your IoT and sensor integration skills.

For a more detailed Code Explanation and Schematics :  How to build a Smoke and Fire Alarm System using Arduino with SMS Notification

Saturday, 31 May 2025

Understanding Flip-Flops in Digital Electronics

Flip Flop in Digital Electronics

Flip-flops are basic building blocks in digital electronics that work as simple 1-bit memory devices. In electronics Flip-Flop is "A bistable device with synchronous inputs that changes state only at specified transitions of a clock signal" (IEEE Standard 91/1984)". Unlike regular logic gates that respond instantly to inputs, flip-flops can store a value, either 0 or 1, and keep it until something changes it, usually through an input signal and a clock pulse. 

Because of this ability to hold information, they’re used in many sequential circuits like counters, registers, and parts of memory in microprocessors. The following tutorial will give you a complete understanding of Flip-Flops in Digital Electronics.

Difference Between Latch and Flip-Flop

A latch is level-triggered, meaning its output changes as long as the input is active. A flip-flop is edge-triggered, updating its output only on a specific clock edge (rising or falling).

Transistors → Logic Gates → Latches → Flip-Flops

Types of Flip Flops in Digital Electronics

  • SR Flip-Flop: This is the simplest type of flip-flop that uses Set (S) and Reset (R) inputs to store a bit. It’s great for basic memory storage, but it gets a bit tricky when both inputs are active at the same time.

SR flip-flop diagram


  • D Flip-Flop: Captures the value present at its D input when a clock pulse occurs, and this value is maintained as the output until the next clock pulse. This characteristic makes the D flip-flop a fundamental building block in registers, shift registers, and various other memory devices. 

d flip-flop circuit diagram


  • JK Flip-FlopThink of it as an improved version of the SR flip-flop that avoids the “invalid” state issue. It can toggle, set, or reset based on its J and K inputs and is very versatile in counters.

jk flip-flop circuit diagram


  • T Flip-Flop: Toggles the output on each clock cycle when T is high. It is particularly useful in applications like counters and control circuits.

t flip flop circuit diagram

Applications of Flip-Flops

  • Registers
  • Counters
  • Finite State Machines (FSMs)
  • Pipeline stages

Understanding flip-flops is crucial for anyone interested in digital electronics, as they form the basis for more complex sequential circuits and systems.

For a more detailed explanation and practical demonstrations, refer to the full article on Circuit Digest.: Flip-Flop in Digital Electronics: Types, Truth Table, Logic Circuit and Practical Demonstration


Tuesday, 27 May 2025

Build a Gesture-Controlled Drone Using ESP32 and MPU6050

 

Ever thought of flying a drone with just your hand gestures? In DIY Gesture Control Drone, we’ll walk you through building a gesture-controlled LiteWing drone using ESP32 and MPU6050. It’s affordable, beginner-friendly, and works using Python and Bluetooth. Whether you're a hobbyist or student, you’ll find the step-by-step tutorial easy to follow and fun to build

Hand Gesture Control esp32 mpu6050

Components Required for Drone Gesture Control Project

  • LiteWing Drone with battery 
  • VLX5311x ToF Sensor For height hold 
  • ESP32 dev module and mpu6050 for gesture control 
  • A computer with python installed
Features of Gesture Control Drone DIY Project 
  • Gesture Control
  • Wireless Communication
  • Stable Flying
  • Compact and Lightweight
Gesture CFLib python Litewing


How Gesture Control Works?
Gesture control refers to using, hand movements to operate devices without  physical contact. An MPU6050 sensor detects the tilt and motion of your hand, which is processed by an ESP32 microcontroller. These movements are then sent via Bluetooth, allowing you to fly the drone without a traditional remote. you can get full dettails on our tutorial on ESP32 Air Mouse.

For the complete tutorial, schematics and python code : DIY Gesture Control Drone using Python with LiteWing and ESP32

Thursday, 22 May 2025

Weather Monitoring System Using Arduino UNO R4 WiFi

Weather Monitoring System

Learn how to create a simple IoT-based weather monitoring system using the Arduino UNO R4 WiFi. This project collects real-time data, such as temperature, humidity, air quality, rainfall, and atmospheric pressure, and displays the information on a local web dashboard. No cloud service or third-party platform is required, making this setup ideal for offline environments.

Features of the IoT Weather Monitoring System

  • Monitors temperature, humidity, air quality, pressure, and rainfall
  • Displays real-time readings on a local Wi-Fi dashboard
  • Operates without cloud connectivity
  • Built with Arduino UNO R4 WiFi, which includes onboard Wi-Fi
  • Easy to assemble and customize using basic electronic components

Components Required

Components required to build an Arduino Weather Monitoring System


To build this system, you'll need the following:

  • Arduino UNO R4 WiFi
  • DHT11 – Temperature and Humidity Sensor
  • BMP180 – Pressure Sensor
  • MQ135 – Air Quality Sensor
  • Rain Sensor Module
  • Breadboard and Jumper Wires
  • USB Cable for Programming

Circuit Diagram and Assembly of IoT based Weather Station System

Circuit Diagram for Arduino-Based Weather Monitoring System

How It Works

Once powered on, each sensor reads environmental data. The Arduino UNO R4 WiFi processes this data and hosts a local web page that displays real-time values. Since the dashboard is served over your local network, there's no dependency on internet access or cloud platforms. Any device connected to the same Wi-Fi can access it.

Real-World Applications

This weather station can be adapted for various use cases:

  • Educational Projects – Great for learning about sensors, IoT, and data visualization
  • Smart Homes – Monitor indoor/outdoor conditions for automation
  • Gardening & Agriculture – Track weather changes for irrigation or crop planning
  • Offline Setups – Works in remote areas without relying on cloud platforms

For Arduino code and full tutorial: How to Build an IoT-Based Weather Monitoring System Using Arduino

Wednesday, 21 May 2025

DIY Smart Helmet with Alcohol, Drowsiness and Theft Detection Using Arduino Uno

Road accidents are a major global concern, especially involving two-wheeler riders. Many of these accidents are due to drunk driving, drowsiness, or not wearing a helmet. The IoT Based Smart Helmet aims to reduce these risks by integrating safety features directly into the helmet. This project incorporates alcohol detection, drowsiness detection, helmet wear detection, and theft detection to ensure the rider’s safety and enforce responsible riding behavior.

Working Principle

The system is designed to prevent the bike from starting unless all safety conditions are satisfied:
  • IR sensor detects if the helmet is worn.
  • MQ-3 sensor checks for alcohol in breath.
  • If alcohol is detected, buzzer sounds and vehicle stays off.
  • Drowsiness detection monitors rider’s alertness.
  • RF transmitter sends data from helmet to vehicle.
  • Vehicle starts only if all safety conditions are met.
Parts Marking of Smart Helmet Transmitter Side

Transmitter Side

  • Arduino UNO R3 
  • 433 MHz RF Transmitter 
  • IR Sensor - wear detection and drowsiness detection
  • MQ-3 Sensor - alcohol detection
  • LED & Buzzer
  • Helmet 
  • Breadboard 
Receiver Side
  • Arduino UNO R3
  • 433 MHz RF Receiver
  • 16x2 LCD Display with I2C Module
  • 1-Channel Relay Module
  • LED & Buzzer
  • Breadboard
Sleep Detection By Smart Safety Helmet

Applications
  • Two-Wheeler Safety
  • Smart Transportation
  • Theft Prevention
  • Educational Tool
For full assembly details and code Smart Helmet using Arduino

Friday, 16 May 2025

Learn to Build ESP32 Air Mouse Using MPU6050 and Bluetooth

ESP32 Air Mouse
 

This project walks you through building an ESP32-based air mouse using an MPU6050 motion sensor and Bluetooth. The setup enables basic cursor control through hand movements, without the need for a traditional mouse or touchpad.

ESP32 Mouse

Components Required

  • ESP32 Development Board
  • MPU6050 Accelerometer and Gyroscope Module
  • LDR (Light Dependent Resistor)
  • 56kΩ Resistor
  • LiPo Battery

Circuit Setup

Circuit Diagram ESP32 Mouse


ESP32 Air Mouse Hardware Assembly

ESP32 Air Mouse Hardware Assembly


The key challenge in this project is assembling the circuit compactly for comfortable handheld use. Here's how it was done:

Step 1: Perfboard Preparation
A small piece of perfboard was cut and its edges filed smooth for easier handling.

Step 2: Component Placement
The MPU6050 was placed directly under the ESP32 to save space, leaving room below for a Velcro tie. The LDR was mounted on the side, and the ESP32 was raised to fit the LiPo battery underneath.

Step 3: Soldering
Due to the tight layout, thin wire strands were used for connections. Kapton tape helped insulate crossing wires, maintaining a clean and compact setup.

Step 4: Powering Up
A LiPo battery was connected and placed under the ESP32. After powering on, the device worked as expected.

Next, the device can be programmed for gesture-based control.

Arduino Code for ESP32 Bluetooth Air Mouse

The ESP32 is programmed using the Arduino IDE to read motion data from the MPU6050 and translate it into cursor movement via Bluetooth HID. The LDR input can be used to enable or disable the mouse function or change cursor modes.

Applications and Use Cases

  • Accessibility: Can assist users with limited mobility
  • Basic gesture control: Offers an alternative input method
  • Smart device interaction: Can be extended to control simple home automation tasks
  • Educational: Useful for learning sensor integration and Bluetooth with ESP32

For full assembly details and code:  ESP32 Air Mouse using Bluetooth and MPU6050

Thursday, 15 May 2025

ESP32 DIY Desktop Weather Station

DIY Desktop Weather Station
Want to keep an eye on the weather without constantly checking your phone? 
This DIY Desktop Weather Station has you covered! It features an ESP32-S3 board that connects to Wi-Fi and fetches real-time weather updates, like temperature, humidity, and current conditions, directly from the OpenWeatherMap API. For indoor readings, it includes a built-in HPP845E031R4 sensor that monitors your room's temperature and humidity. Its E-Ink display consumes very little power and can operate for days on a single charge. After each weather update, it automatically enters sleep mode to conserve even more energy.

Components Required

  • ESP32-S3-WROOM-1-N16R8
  • 4.2" EPD (E-Ink) Display
  • HPP845E031R4 Temperature & Humidity Sensor
  • ADP124ACPZ 3.3V LDO Regulator
  • MAX1898 Battery Charger IC

Desktop Weather Station Schematic Diagram

The weather station uses a custom-designed multi-color PCB that keeps the build neat, compact, and professional-looking. The PCB was designed using KiCad, and its dimensions are approximately 105mm × 90mm, making it perfect for desktop use. The design not only simplifies assembly but also adds a polished finish to the final product.
Desktop Weather Station Schematic Diagram

Assembling the Desktop Weather Station

Once the components are soldered and the board is assembled, simply power up the device and place it on your desk. The ESP32-S3 will handle all the background tasks, connecting to Wi-Fi, retrieving weather data, displaying it clearly on the E-Ink screen, and then entering sleep mode to save power.

Assembling the Desktop Weather Station PCB

It’s a compact, energy-efficient, and functional weather station that updates you with real-time information both indoors and outdoors. Whether you're building it for fun, education, or smart home integration, it’s a rewarding and practical DIY project.

The ESP32-S3-based Desktop Weather Station is a sleek and low-power solution for real-time weather updates. It combines wireless connectivity, local sensing, and an E-Ink display for a complete smart desktop gadget. With its clean PCB design and minimal component list, it’s perfect for electronics enthusiasts and makers. Whether for personal use or a tech-savvy gift, this project is both useful and fun to build.

For full assembly details and code:  How to Build a Desktop Weather Station Using ESP32 and E-ink Display



Tuesday, 13 May 2025

Hand Gesture Controlled LEDs with ESP32 and Python

Hand Gesture Controlled LEDs with ESP32 and Python

This project demonstrates how to control LEDs using hand gestures by integrating an ESP32 microcontroller with Python-based computer vision libraries. Utilizing OpenCV and MediaPipe, the system captures hand gestures via a webcam and translates them into commands sent to the ESP32 over Wi-Fi. The ESP32 then controls LEDs connected to its GPIO pins based on these commands.

Components Required
  • ESP32 Board
  • 5 LEDs (representing Thumb, Index, Middle, Ring, Pinky)
  • 5 Resistors (220Ω each)
  • Breadboard and Jumper Wires
  • Webcam
  • Computer with Python Installed
Circuit Setup for ESP32 Hand Gesture Project
Circuit Diagram of Hand Gesture Controlled LEDs with ESP32 and Python


Each LED is connected to a specific GPIO pin on the ESP32 (e.g., GPIO14, GPIO27, GPIO26, GPIO25, GPIO33). A 220Ω resistor is placed in series with each LED to limit current. The anode of each LED connects to the GPIO pin, and the cathode connects to the ground.


Python Script for Gesture Detection

On the computer, a Python script uses OpenCV to capture video from the webcam and MediaPipe to detect hand landmarks. It determines which fingers are raised and sends corresponding HTTP requests to the ESP32 to control the LEDs. For instance, raising the index finger sends a request to /led/index/on. If all fingers are lowered, a special command can be sent to perform a predefined action, such as turning off all LEDs.

In practice, this system allows for intuitive control of LEDs through simple hand gestures. Raising a specific finger turns on the corresponding LED, while lowering it turns the LED off. This real-time interaction demonstrates the seamless integration of computer vision and microcontroller-based hardware control. The project serves as a foundational example for more complex gesture-controlled applications, such as home automation or robotic control systems.

ESP32 Hand Gesture Project - Working Demo

ESP32 Hand Gesture Project - Working Demo