Friday, 22 May 2026

ESP32 Speech to Text Using Wit.ai and I2S Microphone

Voice-controlled systems are becoming increasingly popular in smart devices, automation projects, and AI applications. But running speech recognition directly on a microcontroller is usually difficult because it requires heavy processing power. This ESP32 Speech to Text project solves that problem by combining the ESP32 development board with the Wit.ai cloud API.

In this project, an INMP441 I2S microphone captures your voice, the ESP32 sends the audio to Wit.ai through WiFi, and the recognised text is displayed on an OLED screen in real time. No complex AI model training or dedicated speech recognition hardware is required.

How the ESP32 Speech to Text System Works

The working principle of this project is simple and efficient. The INMP441 microphone records audio digitally using the I2S protocol. The ESP32 reads this audio and streams it to the Wit.ai cloud service over HTTPS.

Wit.ai processes the speech using Natural Language Processing (NLP) and returns the recognised text in JSON format. The ESP32 extracts the text and displays it on the OLED display as well as the Serial Monitor.

This makes the system work like a compact voice assistant:

  • Press the button
  • Speak into the microphone
  • View the converted text instantly

Main Components Required

This ESP32 Speech Recognition project uses only a few components:

  • ESP32 Development Board
  • INMP441 I2S Microphone
  • 0.91-inch OLED Display
  • Push Button
  • Breadboard and Jumper Wires

The ESP32 acts as the main controller, while the OLED display shows the recognised speech output in real time.

Why Use Wit.ai for ESP32 Speech Recognition?

One of the biggest advantages of this project is using Wit.ai instead of offline speech processing.

Benefits of Wit.ai:

  • Free cloud-based speech recognition
  • No AI model training required
  • Supports multiple languages
  • Easy API integration
  • Works with low-cost ESP32 boards

Since all speech processing happens in the cloud, the ESP32 only handles audio capture and data transmission.

Hardware Connections

The INMP441 microphone connects to the ESP32 using the I2S interface:

  • WS → GPIO 25
  • SD → GPIO 33
  • SCK → GPIO 26

The OLED display uses I2C communication:

  • SDA → GPIO 21
  • SCL → GPIO 22

A push button is connected to activate listening mode.

ESP32 Speech to Text Code Overview

The Arduino code handles:

  • WiFi connection
  • OLED display updates
  • I2S microphone initialization
  • HTTPS communication with Wit.ai
  • JSON response parsing

When the button is pressed, the ESP32 continuously streams audio chunks to the Wit.ai API. Once the button is released, the API processes the speech and returns the recognised sentence.

The final text appears instantly on the OLED display.

Applications

This ESP32 Speech to Text system can be expanded into many advanced projects:

  • Voice-controlled home automation
  • Smart assistants
  • Speech-controlled relays
  • IoT dashboards with voice logging
  • WhatsApp voice notifications
  • Multi-language recognition systems

You can also combine this with Text-to-Speech projects to create a complete two-way voice interface.

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

Thursday, 21 May 2026

Smart AI Vision with ESP32-CAM Object Detection

Object Detection With ESP32-Cam Using CircuitDigest Cloud
AI-based object detection usually sounds complicated. Most people assume you need machine learning knowledge, custom datasets, and expensive hardware to get started. But this ESP32-CAM Object Detection project proves otherwise.

Using the ESP32-CAM module and the CircuitDigest Cloud Object Detection API, you can build a real-time ESP32-CAM object detection with just a push button, WiFi connection, and a few lines of Arduino code. No model training, no Edge Impulse workflow, and no custom dataset preparation required.

How This ESP32-CAM Object Detection System Works

Detected Objects in the Image

The working principle is very simple. When the push button is pressed, the ESP32-CAM captures an image and sends it to the CircuitDigest Cloud through an HTTPS request.

The cloud API processes the image using its built-in object detection engine and returns:

  • Object names
  • Number of detected objects
  • Confidence scores

The detection result is then displayed in the Arduino Serial Monitor.

For example, the system can identify:

  • Mobile phones
  • Laptops
  • Cups
  • Cars
  • Books
  • People
  • Animals

and many other common objects.

Hardware Required

Circuit Diagram Object Detection Project

One reason this project is beginner-friendly is the minimal hardware setup. You only need:

  • ESP32-CAM module
  • Push button
  • Breadboard
  • Jumper wires

If you are using the standard ESP32-CAM without onboard USB, you’ll also need an FTDI programmer for uploading code.

Why Use Cloud-Based Detection?

CircuitDigest Home Page

Traditional AI object detection systems usually require:

  • Dataset collection
  • Image labeling
  • Model training
  • Model optimization

That process can take hours or even days.

With CircuitDigest Cloud, all of that complexity is removed. The cloud already has pre-trained object detection models, so your ESP32-CAM simply captures images and uploads them for analysis.

This makes development much faster and easier, especially for beginners.

Setting Up the Detection System

The setup process is straightforward:

  1. Create a CircuitDigest Cloud account
  2. Select object classes you want to detect
  3. Adjust the confidence threshold
  4. Generate the ESP32-CAM Arduino code
  5. Upload the code using Arduino IDE

Once powered ON, the ESP32-CAM starts working immediately.

The cloud dashboard also lets you:

  • Monitor API usage
  • View previous detection logs
  • Test detection without hardware

Real-Time Detection Results

When the button is pressed, the camera captures an image and uploads it to the cloud.

Within seconds, the Serial Monitor displays results like:

  • Laptop detected → Confidence 92%
  • Phone detected → Confidence 88%
  • Mouse detected → Confidence 84%

Good lighting and proper camera focus significantly improve accuracy.

Common Issues and Fixes

A few common issues beginners may face include:

  • Camera initialization failure
  • Power instability
  • Blurry images
  • Frequent ESP32 restarts

Most of these problems are solved by:

  • Using a stable 5V supply
  • Adjusting the camera lens focus
  • Improving lighting conditions
  • Selecting the correct board settings in Arduino IDE

This ESP32-CAM Object Detection project is an excellent introduction to AI-powered computer vision without the usual complexity of machine learning workflows.

With just an ESP32-CAM and a cloud API, you can build a compact object detection system capable of recognizing real-world objects in seconds. It’s simple, affordable, and surprisingly powerful for DIY AI projects.

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

Monday, 18 May 2026

ESP32 Interactive Voice Response System Using GeoLinker


Automation usually depends on mobile apps, cloud dashboards, or internet connectivity. But what if you need to control devices in places where Wi-Fi is unavailable or unreliable? That’s exactly where this ESP32-based Interactive Voice Response System becomes useful.

This ESP32 Interactive voice response system project uses the GeoLinker GL868 board with an ESP32-S3 and SIM868 GSM module to create a fully standalone IVRS system. Instead of using apps or internet services, the user simply makes a phone call to the system and controls connected devices using keypad inputs.

The idea is simple but very practical. Once the call is answered, the system plays voice instructions and waits for DTMF keypad commands. Based on the pressed key, the ESP32 turns devices ON or OFF instantly.

How the IVRS System Works

The system operates completely over the GSM network. When someone calls the SIM868 module, the ESP32 automatically answers the call after a predefined number of rings.

For example:

  • Pressing “1” turns ON Output 1
  • Pressing “2” turns OFF Output 1
  • Pressing “3” turns ON Output 2
  • Pressing “4” turns OFF Output 2

The system also plays confirmation audio like “Output 1 turned ON,” making the interaction feel natural and user-friendly.

Main Hardware Used

The project uses only a few core components:

  • GeoLinker GL868 Board
  • MCP602 Op-Amp
  • Resistors and Capacitors
  • SIM868 GSM Module
  • Relay Outputs
ESP32 Interactive Voice Response (IVR) System Hardware Setup

The GeoLinker board combines ESP32-S3 processing, GSM communication, GPS support, and power management into one compact platform, making the overall setup much simpler.

Audio Playback System

One interesting part of this project is the audio playback design. Since the ESP32 outputs digital sigma-delta audio, the signal contains switching noise and cannot directly drive the SIM868 microphone input.

To solve this, the project uses:

  • A low-pass filter
  • MCP6002 op-amp stage
  • Voltage divider network

This converts the ESP32 output into clean analog audio suitable for voice playback during calls.

All audio files are stored inside ESP32 memory using LittleFS.

Why This Project Is Useful

Unlike cloud-based automation systems, this setup works entirely through GSM communication. That means:

  • No internet required
  • No mobile app required
  • Works in remote areas
  • Can be controlled from any basic phone

This makes it useful for:

  • Home automation
  • Agricultural motor control
  • Industrial switching systems
  • Security applications
  • Remote monitoring setups

Expandability

The project is designed to scale easily. Additional GPIO outputs can be added simply by assigning new keypad buttons and connecting more relays.

For example:

  • Key “5” → Output 3 ON
  • Key “6” → Output 3 OFF

The IVRS menu audio can also be updated with new voice instructions.

This ESP32 Interactive Voice Response System is a great example of practical automation without depending on the internet. By combining GSM communication, DTMF decoding, audio playback, and GPIO control, the project creates a reliable remote-control solution that works almost anywhere with cellular coverage.

If you enjoy embedded systems, automation, or GSM-based projects, this is a very interesting build to explore.

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

Saturday, 16 May 2026

Voice Controlled Drone Using ESP32 and Python

ESP32 Voice Controlled Drone with LiteWing using Python

What if you could fly a drone just by talking to it? That’s exactly what this project does. Using an ESP32 based LiteWing drone, Python, and offline speech recognition, this setup allows the drone to respond to simple voice commands like “takeoff,” “forward,” and “land.”

Instead of using a traditional remote controller filled with joysticks and switches, the drone listens to spoken commands through a microphone and performs actions in real time. The result feels much more natural, interactive, and fun.

How ESP32 Voice Controlled Drone Works

Voice Controlled Drone System Architecture

The project uses two main parts:

  • LiteWing ESP32 Drone
  • Laptop or PC running the voice-control program

The microphone captures the user’s voice, and the audio is processed using the Vosk speech recognition engine. Vosk converts speech into text completely offline, meaning no internet connection is required.

Once a command is recognized, Python sends the instruction to the drone through Wi-Fi using the LiteWing library. The drone then performs the requested action instantly.

Supported commands include:

  • Takeoff
  • Land
  • Forward
  • Backward
  • Left / Right
  • Up / Down
  • Turn left / Turn right

The system can even control the drone LEDs with commands like:

  • Red
  • Blue
  • Green
  • White

Because the speech recognition works locally on the laptop, the response time remains fast and reliable.

Hardware Used

The hardware setup is surprisingly simple.

Main components:

  • LiteWing ESP32 Drone
  • Positioning Module
  • Laptop or PC
  • Microphone

The positioning module helps stabilize the drone and improves movement accuracy during flight.

Software and Libraries

The project is developed in Python and uses:

  • PyAudio for microphone input
  • Vosk for offline speech recognition
  • LiteWing Python library for drone communication

One important detail is that the laptop connects directly to the drone’s Wi-Fi access point. No cloud service or internet connectivity is needed during operation.

Why Offline Speech Recognition?

Instead of using cloud-based voice assistants, the project uses offline speech recognition for several reasons:

  • Faster response time
  • Better privacy
  • No internet dependency
  • More reliable communication

The developers also switched to an Indian English Vosk model to improve command recognition accuracy for local accents.

Applications

This project is not only fun but also a great example of human-machine interaction.

Possible applications include:

  • Educational robotics
  • Hands-free drone operation
  • Interactive AI systems
  • Research and experimentation
  • Accessibility-focused robotics projects

This Voice Controlled Drone project combines ESP32 drone technology, Python programming, and AI-based speech recognition into one exciting setup. It transforms drone flying into a much more interactive experience while remaining simple enough for students, makers, and hobbyists to explore.

If you enjoy robotics, AI, or drone projects, this is a fantastic hands-on project to experiment with.

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

Friday, 15 May 2026

Smart ESP32-CAM Attendance System with WhatsApp Alerts

Smart ESP32-CAM Attendance System with WhatsApp Alerts

Attendance systems are still handled manually in many classrooms and offices. Teachers call out names, students respond one by one, and records are written down manually. It works, but it wastes time and can easily lead to mistakes. This ESP32-CAM Attendance System solves that problem by automating the entire process using Wi-Fi, image capture, and WhatsApp notifications.

The project ESP32-CAM attendance system is built using an ESP32-CAM, an OLED display, and a rotary encoder. The ESP32-CAM acts as both the controller and camera module, making the setup compact and affordable.

How the System Works

Circuit Diagram of Attendance System

Once powered on, the ESP32-CAM connects to Wi-Fi and synchronizes the current time using an NTP server. The OLED display then shows a list of stored student names.

A student uses the rotary encoder to:

  • Scroll through names
  • Select their name
  • Choose either “IN” or “OUT”

After selection, the system starts a short countdown and captures an image using the ESP32-CAM. The captured image, along with the student’s name, entry/exit status, and timestamp, is then sent through the CircuitDigest Cloud API.

Within seconds, a WhatsApp message is delivered to the registered phone number with complete attendance details and photo proof.

Components Used

Components Required for Attendance System

The hardware setup is simple and beginner friendly.

Main components:

  • ESP32-CAM
  • SSD1306 OLED display
  • Rotary encoder
  • Perfboard
  • Project enclosure

If you are using a standard ESP32-CAM without onboard USB, an FTDI programmer is required for uploading the code.

Why This Project Is Useful

Unlike traditional attendance systems, this project provides image verification along with accurate timestamps. That makes the records more secure and reliable.

Some advantages include:

  • Faster attendance process
  • Reduced manual work
  • Real-time WhatsApp alerts
  • Automatic timestamp recording
  • Compact and low-cost hardware

This system can be used in:

  • Schools and coaching centres
  • Offices
  • Hostels
  • Libraries
  • Event check-in systems

Future Improvements

The project can be expanded further with advanced features like:

  • Face recognition
  • RFID or fingerprint authentication
  • Cloud database storage
  • GPS tracking
  • Mobile app support

These upgrades can make the system even smarter and more secure.

This ESP32-CAM Attendance System is a practical IoT project that combines automation, image capture, and cloud communication into one compact setup. Instead of relying on paper registers and manual verification, the system records attendance instantly and sends updates directly through WhatsApp.

It’s an excellent project for beginners and makers who want to explore IoT, ESP32 programming, cloud APIs, and real-world automation applications. 

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

Tuesday, 12 May 2026

GP2Y0D80Z0F Distance Sensor with Arduino UNO

GP2Y0D80Z0F Distance Sensor with Arduino UNO

If you’re looking for a simple and reliable way to detect nearby objects using an Arduino, the GP2Y0D80Z0F infrared proximity sensor is a great option. Unlike ultrasonic sensors that calculate exact distance, this sensor works differently. It simply tells you whether an object is within its detection range or not. That makes it perfect for obstacle detection, automation systems, smart bins, robots, and touchless interfaces.

In this GP2Y0D80Z0F Distance Sensor with Arduino Uno project, the GP2Y0D80Z0F distance sensor is connected to an Arduino Uno along with a 16x2 I2C LCD display. Whenever an object comes within roughly 10 cm of the sensor, the system instantly detects it and displays the result both on the LCD and in the Serial Monitor.

Understanding the GP2Y0D80Z0F Sensor

GP2Y0D810Z0F Pinout

The GP2Y0D80Z0F is a digital infrared proximity sensor. Instead of providing a varying analog voltage like some IR sensors, it gives a simple HIGH or LOW output signal.

Here’s how it works:

  • The sensor emits infrared light
  • Nearby objects reflect the light back
  • If enough reflected light is detected, the output goes LOW
  • If nothing is detected, the output remains HIGH

This makes the sensor very easy to use because the Arduino only needs to read a single digital pin.

One important thing to remember is that reflective surfaces affect performance. Light-colored or shiny objects are detected more easily, while dark surfaces may reduce detection reliability.

Components Required

Components used to Interface GP2Y0D810Z0F with Arduino

The hardware setup is minimal and beginner friendly.

You’ll need:

  • Arduino UNO
  • GP2Y0D80Z0F sensor
  • 16x2 I2C LCD display
  • Breadboard
  • Jumper wires
  • USB cable

The sensor uses only three connections:

  • VCC
  • GND
  • OUT

This keeps the wiring clean and simple.

Hardware Connections

Wiring Diagram GP2Y0D810Z0F with Arduino

The sensor’s OUT pin is connected to Arduino digital pin 2.
The LCD uses the I2C interface, so only SDA and SCL connections are required.

Basic Wiring

Sensor Connections

  • VIN → 5V
  • GND → GND
  • OUT → Pin 2

LCD Connections

  • SDA → A4
  • SCL → A5
  • VCC → 5V
  • GND → GND

Once powered on, the LCD immediately starts showing detection status.

How the System Works

The sensor continuously sends infrared light and checks for reflections.

When an object comes within approximately 10 cm:

  • Sensor output becomes LOW
  • Arduino detects the signal
  • LCD displays “Object Detected”
  • Same message appears in Serial Monitor

If no object is present:

  • Output stays HIGH
  • LCD shows “No Object”

Because the sensor already handles the detection internally, the Arduino code remains very simple.

Why This Sensor Is Useful

The GP2Y0D80Z0F is great for projects where you only need simple object detection instead of accurate distance measurement.

Some useful applications include:

  • Obstacle avoidance robots
  • Smart trash bins
  • Presence detection systems
  • Conveyor object sensing
  • Touchless switches
  • Automation projects

Its fast response time also makes it useful for real-time detection systems.

This GP2Y0D80Z0F Arduino project is a simple but practical way to learn digital sensor interfacing. Since the sensor handles all the proximity detection internally, the Arduino only needs to read a HIGH or LOW signal, making the code lightweight and easy to understand.

Whether you’re building robots, smart automation systems, or interactive electronics, this sensor provides a fast and reliable way to detect nearby objects without complicated processing.

 https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|

ESP32-CAM Image Capture and Email Alert System

 

ESP32 Cam Capture Image and Send Email

The ESP32-CAM is one of the most useful boards for IoT camera projects. It’s compact, affordable, and comes with built-in WiFi and a camera module, making it perfect for remote monitoring applications. In this project, we use the ESP32-CAM to capture an image and send it directly to an email using the CircuitDigest Cloud Email API.

Instead of using complicated mail servers or heavy cloud platforms, this ESP32 Cam capture image and send email setup keeps things simple. A push button is used to capture the image, and another button sends the photo instantly over WiFi. The OLED display provides live feedback during the entire process, making the system easy to operate and beginner friendly.

How the System Works

Circuit Diagram Image Capture and Transfer using Email

The project uses the ESP32-CAM as the main controller. It handles:

  • Camera operation
  • WiFi communication
  • OLED display updates
  • Secure email transfer

When the capture button is pressed, the camera takes a photo and stores it temporarily in memory. The OLED display shows a status message so the user knows the image has been captured successfully.

After that, pressing the send button uploads the image to CircuitDigest Cloud through a secure HTTPS request. The cloud platform then forwards the image to the registered email address as an attachment.

The process feels fast and seamless:
Capture → Upload → Receive Email.

Components Required

Hardware Connection For The Photo Capture and Email System

The hardware setup is simple and uses only a few components:

  • ESP32-CAM module
  • OLED display (I2C)
  • Push buttons
  • Breadboard
  • Jumper wires

If you're using a standard ESP32-CAM without onboard USB support, you’ll also need a USB-to-Serial converter for programming.

Hardware Setup

The connections are straightforward. The OLED display is connected using the I2C interface, while the push buttons are connected to GPIO pins for user input.

One button handles image capture, while the second button triggers email transmission.

The OLED helps by displaying messages like:

  • Booting
  • Capturing
  • Sending
  • Success or error notifications

This makes debugging and monitoring much easier.

Image Capture and Email Flow

Once powered on, the ESP32-CAM connects to WiFi and initializes the camera module.

Here’s the complete workflow:

  1. User presses the capture button
  2. Camera captures an image
  3. OLED confirms successful capture
  4. User presses the send button
  5. ESP32-CAM uploads image securely
  6. CircuitDigest Cloud delivers the email

The received email contains the captured image as an attachment.

Why This Project Is Useful

This setup can be used in many practical applications:

  • Smart security systems
  • Visitor verification systems
  • Motion-triggered alerts
  • Remote monitoring
  • IoT evidence collection

Because the image is sent instantly over WiFi, it works well for real-time monitoring applications.

This ESP32-CAM Email Alert project is a great example of combining embedded systems with cloud communication. It’s simple to build, practical for real-world use, and a solid introduction to camera-based IoT applications.

With just a few components and WiFi connectivity, you can create a smart system capable of capturing and sending images from anywhere in real time.

https://circuitdigest.com 

Robotics Projects |Arduino Projects | Raspberry Pi Projects|