Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

ESP32-Based Interactive Light and Sound Controller with Touch Activation

Image of ESP32-Based Interactive Light and Sound Controller with Touch Activation

Circuit Documentation

Summary

This circuit integrates various components to perform multiple functions. It includes an ESP32 microcontroller for processing and control, an INMP441 microphone for audio input, WS2812 RGB LED strips for visual output, and a DFPlayer MINI module for audio playback. The circuit also features Adafruit PCA9685 PWM Servo Breakouts for controlling servos or LEDs, a set of potentiometers for analog input, and a SparkFun MOSFET Power Controller for managing power to external devices. Protection diodes and TVS diodes (P6KE6.8A) are used for voltage spike suppression, and a set of terminal PCBs are included for connecting external components. The circuit is powered through a DC female jack and voltage regulation is managed by an XL4016 module.

Component List

Microcontroller

  • ESP32 (30 pin): A microcontroller with Wi-Fi and Bluetooth capabilities, featuring a variety of digital and analog pins for interfacing with other components.

Audio Components

  • INMP441 FRONT MIC: A digital I2S output microphone for capturing audio signals.
  • DFPlayer MINI: A small and low-cost MP3 module that can directly play MP3 files from a microSD card.
  • Loudspeaker: An audio output device connected to the DFPlayer MINI for sound playback.

LED Strips

  • WS2812 RGB LED strip: Addressable LED strips capable of displaying multiple colors with digital control.

PWM Controllers

  • Adafruit PCA9685 PWM Servo Breakout: A 16-channel, 12-bit PWM controller used for driving servos or LEDs via I2C communication.

Power Management

  • XL4016: A DC-DC converter module used for voltage regulation.
  • SparkFun MOSFET Power Controller: A module for controlling high-power devices using a low-power control signal.

Sensors and Input Devices

  • YL-40: An analog-to-digital converter module with multiple analog inputs.
  • Potentiometer: A variable resistor used as an analog input device.
  • Touch Sensor TTP233: A capacitive touch sensor module.

Protection Components

  • P6KE6.8A: Transient voltage suppression diodes used to protect the circuit from voltage spikes.
  • FR207: Fast recovery diodes used for general-purpose rectification.
  • FR607: A fast recovery diode with a higher current rating.

Connectors

  • Terminal PCB 2 Pin: A two-pin terminal block for making secure electrical connections.
  • DC female jack: A power connector for supplying power to the circuit.

Miscellaneous

  • TA6586: A component with unspecified functionality in the provided list.

Wiring Details

ESP32 (30 pin)

  • D33 connected to INMP441 FRONT MIC SD
  • D25 connected to INMP441 FRONT MIC WS
  • D26 connected to INMP441 FRONT MIC SCK
  • D12 connected to WS2812 RGB LED strip DIN
  • D13 connected to WS2812 RGB LED strip DIN
  • D23 connected to Adafruit PCA9685 PWM Servo Breakout SCL
  • D21 connected to Adafruit PCA9685 PWM Servo Breakout SDA
  • D5 connected to Touch Sensor TTP233 I/O
  • TX2 connected to DFPlayer MINI RX
  • RX2 connected to DFPlayer MINI TX
  • D4 connected to Touch Sensor TTP233 I/O
  • GND connected to various GND pins on other components
  • Vin connected to various 5V pins on other components
  • 3V3 connected to various VCC pins on other components

INMP441 FRONT MIC

  • SD, WS, SCK connected to ESP32
  • GND connected to GND net
  • VDD connected to 3V3 net

WS2812 RGB LED strip

  • DIN connected to ESP32 D12 and D13
  • 5V connected to 5V net
  • GND connected to GND net

Adafruit PCA9685 PWM Servo Breakout

  • SCL, SDA connected to ESP32 D23 and D21
  • GND connected to GND net
  • VCC connected to 3V3 net
  • PWM0, PWM7, PWM15 connected to TA6586
  • PWM8 connected to SparkFun MOSFET Power Controller TRIG+

DFPlayer MINI

  • RX connected to ESP32 TX2
  • TX connected to ESP32 RX2
  • VCC connected to 5V net
  • GND connected to GND net
  • SPK1, SPK2 connected to Loudspeaker

Loudspeaker

  • pin1, pin2 connected to DFPlayer MINI SPK1 and SPK2

Potentiometer

  • VCC connected to 3V3 net
  • GND connected to GND net
  • Output connected to YL-40 Ain0, Ain1, Ain3

Touch Sensor TTP233

  • I/O connected to ESP32 D5 and D4
  • GND connected to GND net
  • VCC connected to 3V3 net

YL-40

  • VCC connected to 3V3 net
  • GND connected to GND net
  • SDA, SCL connected to Adafruit PCA9685 PWM Servo Breakout
  • Ain0, Ain1, Ain3 connected to Potentiometer Output

SparkFun MOSFET Power Controller

  • TRIG+ connected to Adafruit PCA9685 PWM Servo Breakout PWM8
  • GND connected to GND net
  • OUT1+, OUT2- connected to Terminal PCB 2 Pin and FR607
  • IN1+, IN2- connected to XL4016 In+, In-GND

XL4016

  • In+, In-GND connected to SparkFun MOSFET Power Controller IN1+, IN2-
  • Out+, Out-GND connected to 5V net

Terminal PCB 2 Pin

  • Connected to various components for external connections

FR207, FR607

  • Catode, Anode connected to Terminal PCB 2 Pin and other components

P6KE6.8A

  • Cathode, Anode connected to 5V and GND nets for protection

DC female jack

  • positive, negative connected to XL4016 In+, In-GND

Documented Code

No code was provided for the microcontrollers in the circuit. If code is available, it should be documented here with explanations for each function and routine, including setup and loop functions, interrupt service routines, and any libraries or external modules used.