/Signal-Generator-Using-ESP32

ESP32 Signal Generator with AD9833 DDS Module: Hosts a webpage to set frequency and waveform (square, sine, triangle) using an ESP32 microcontroller. Ideal for generating precise waveforms in IoT and electronic projects.

Primary LanguageC++MIT LicenseMIT

ESP32 Signal Generator with AD9833 DDS Module

This project demonstrates how to build a signal generator using the ESP32 microcontroller and the AD9833 DDS (Direct Digital Synthesis) Module. The ESP32 hosts a webpage that allows users to set the frequency and waveform type (square, sine, triangle) for signal generation.

🚀 Features

  • Generate precise waveforms: Square, Sine, and Triangle.
  • Set the desired frequency via a hosted webpage.
  • Easy-to-use interface for waveform selection and frequency input.
  • Suitable for IoT applications, electronic experiments, and educational purposes.

🛠️ Components Used

  1. ESP32 Dev Module
  2. AD9833 DDS Module
  3. Resistors and capacitors as per circuit requirements
  4. 2x 9V Battery
  5. 0.96 inch OLED Display
  6. LM324 OP-Amp

🚦 Getting Started

  • Clone or download the repository to your local machine.
  • Upload the provided code to your ESP32 board using the Arduino IDE.
  • Connect the AD9833 DDS Module to the ESP32 as per the circuit diagram.
  • Power on the ESP32 board and access the hosted webpage to set frequency and waveform parameters.

📌 Circuit Diagram

  • Schematic
  • Graphical View

🖥️ Usage

  1. Power on the ESP32 board and ensure it is connected to your local network.
  2. Open a web browser on your computer or mobile device.
  3. Enter the IP address of the ESP32 in the browser's address bar (e.g., http://192.168.1.100).
  4. The hosted webpage will appear, allowing you to select the waveform type and enter the desired frequency.
  5. Click the "Set Frequency" button to apply the settings.
  6. Monitor the waveform output using an oscilloscope or suitable visualization tool.

🔧 Troubleshooting

  • If you encounter issues with the webpage not loading or settings not being applied, check the network connection and ensure the ESP32 is running the correct firmware.

🌟 Contributing

Contributions to this project are welcome. You can contribute by providing feedback, reporting issues, or submitting pull requests with enhancements or bug fixes.

Authors

ItzzInfinityPrasad.anjan25@gmail.comDikshitaDas

📄 License

This project is licensed under the MIT License.