Real-Time Voice Processing System
A professional real-time voice changer built on ESP32-S3, featuring 28 character presets, 12+ audio effects, and authentic Stormtrooper-style click sounds. Transform your voice instantly for cosplay, voice acting, and creative audio applications.
Perfect for:
- Stormtrooper cosplay with authentic helmet comlink effects
- Darth Vader costumes with deep, processed voice
- Droid characters (C-3PO, K-2SO, IG-88) with metallic voice effects
- Sci-fi helmets requiring voice processing
- Masked characters (Kylo Ren, Mandalorian, Boba Fett)
- Voice acting and creative audio projects
Feature Highlights
| Feature | Description |
|---|---|
| Real-Time Processing | <20ms total latency – speak and hear instantly |
| 28 Character Presets | Vader, Stormtrooper, C-3PO, Kylo Ren, Yoda, Chewbacca, and more |
| 12+ Audio Effects | EQ, filters, ring modulator, reverb, delay, bitcrusher |
| Click Sound System | Authentic helmet comlink clicks (WAV files from SD card) |
| Dual-Core Architecture | Core 0: Audio I/O, Core 1: Effects processing |
| CD Quality Audio | 44.1kHz sample rate, 16-bit I2S digital audio |
| Voice Activation | Automatic or push-to-talk modes |
| Noise Gate | Removes background noise, keeps only your voice |
| 3-Button Control | PTT, Mode, and Extra buttons for hands-free operation |
| RGB Status LED | Visual feedback for current mode and status |
| CLI Interface | 50+ serial commands for fine-tuning |
| Preset Management | Export/import presets as JSON, create custom voices |
| MCSVS Integration | Wireless control + sound file playback via MCSVS transmitter |
What is the PD Voice Changer?
The PD Voice Changer is a standalone real-time audio processor that transforms your voice through a chain of professional audio effects. Speak into the microphone, and your processed voice comes out of the speaker – instantly.
Unlike pre-recorded sound effects, voice changing happens live. Every word you say is transformed in real-time with less than 20 milliseconds of delay. You can have natural conversations while sounding like Darth Vader or a Stormtrooper.
How It Works
Your Voice → Microphone → ESP32-S3 Processing → Amplifier → Speaker
↓
[12 Effect Stages]
Noise Gate → AGC → EQ → Filters →
Ring Mod → Tremolo → Delay → Reverb →
Bitcrusher → Output
The dual-core ESP32-S3 dedicates one core entirely to audio input/output, while the second core handles all effect processing. This architecture ensures smooth, glitch-free audio even with multiple effects active.
Audio Effects
Input Processing
- Noise Gate: Removes background noise when you’re not speaking. Adjustable threshold with automatic calibration mode.
- Auto-Gain Control (AGC): Maintains consistent volume regardless of mic distance.
Tone Shaping
- 3-Band Parametric EQ: Precise control over low, mid, and high frequencies.
- 4-Stage Biquad Filter Bank: High-pass, low-pass, band-pass, notch, peak, and shelf filters.
Character Effects
- Ring Modulator: Adds metallic, robotic undertones. Essential for droid voices.
- Bitcrusher: Lo-fi digital distortion for comlink/radio effects.
- Static Noise: White noise generator for radio interference effects.
Spatial Effects
- Delay/Echo: Helmet resonance simulation (10-500ms with feedback).
- Reverb: Room ambience from small helmet space to large halls.
Modulation
- Tremolo: Rhythmic volume pulsing.
- Vibrato: Pitch wobble for droid-like effects.
Character Presets
28 ready-to-use presets covering iconic characters:
Star Wars Characters
| Preset | Character | Key Sound |
|---|---|---|
| Vader | Darth Vader | Deep, hollow mask resonance |
| Trooper | Stormtrooper | Thin comlink with click sounds |
| C-3PO | Protocol Droid | Higher pitch, metallic |
| Kylo Ren | Kylo Ren | Modulated, intimidating |
| Boba Fett | Bounty Hunter | Helmet filter, slight reverb |
| Chewbacca | Wookiee | Deep growl enhancement |
| Yoda | Jedi Master | Aged voice characteristics |
| K-2SO | Imperial Droid | Dry, matter-of-fact droid |
Additional Presets
- General Grievous, Emperor Palpatine, Jabba, Ewok, Watto
- Generic Robot, Alien, Deep Voice, Radio Operator
- 3 optimized “NEW” variants (Vader NEW, Trooper NEW, C-3PO NEW)
- 5 user slots for custom presets
Click Sound System
Authentic Stormtrooper helmet comlink experience:
- Automatic Playback: Click sounds play after speech ends (configurable delay)
- Random or Sequential: Pick random clicks or play in order
- WAV File Support: Use your own click sounds (44.1kHz, 16-bit)
- Per-Preset Control: Enable/disable clicks for specific presets
- Global Toggle: Double-click Mode button to enable/disable all clicks
The click sounds are stored on an SD card, so you can easily customize them with your own recordings.
Hardware
Core Components
| Component | Specification |
|---|---|
| Microcontroller | ESP32-S3-WROOM-1 (Waveshare ESP32-S3-Zero recommended) |
| Microphone | INMP441 I2S MEMS (24-bit, digital) |
| Amplifier | MAX98357A I2S (3W Class D) |
| Storage | MicroSD card (FAT32, for click sounds) |
| Controls | 3 momentary buttons + WS2812 RGB LED |
| Power | 5V USB-C (250-600mA typical) |
Audio Specifications
| Parameter | Value |
|---|---|
| Sample Rate | 44.1 kHz (CD quality) |
| Bit Depth | 16-bit I2S |
| Latency | <20ms total |
| Buffer Size | 128 samples (2.9ms) |
| CPU Load | 45-65% (all effects) |
Alternative Components
Microphone Options:
- INMP441 I2S (recommended) – Best quality, digital
- MAX9814 + ADC – Allows 3.5mm jack for swappable mics
Output Options:
- MAX98357A I2S (recommended) – DAC + Amp in one, direct speaker connection
- PCM5102A DAC – Better audio quality, requires external amplifier
Control Interface
Hardware Buttons
| Button | Function |
|---|---|
| PTT | Push-to-Talk / Preset switching |
| Mode | Mode selection / Click toggle (double-click) |
| Extra | Additional functions |
LED Status Indicators
| Color | Meaning |
|---|---|
| Green | System ready |
| Blue | Processing audio |
| Red | Error / SD card missing |
| Yellow | Calibration mode |
| Purple | PTT mode active |
Serial CLI
50+ commands for real-time control:
# Load presets
preset 0 # Load Vader preset
preset 2 # Load Stormtrooper preset
# Adjust effects
eq low 80 -6 0.7 # Cut bass at 80Hz
ringmod 45 0.3 # Set ring modulator
reverb 40 # Set reverb level
# Calibration
cal start # Start noise calibration
cal stop # Apply calibration
# Click sounds
click on # Enable click sounds
click test # Preview all clicks
Typical Setup
Stormtrooper Helmet
- Mount ESP32-S3 board inside helmet (back or side)
- Position INMP441 microphone near mouth
- Connect MAX98357A to helmet speaker
- Route PTT button to convenient location (chin or external)
- Load “Trooper” or “Trooper NEW” preset
- Enable click sounds for authentic comlink effect
Darth Vader Helmet
- Install components in helmet or chest box
- Position microphone inside mask
- Connect to helmet speaker system
- Load “Vader” or “Vader NEW” preset
- Adjust ring modulator and reverb to taste
- Disable click sounds (Vader doesn’t use comlink clicks)
Technical Specifications
| Component | Specification |
|---|---|
| MCU | ESP32-S3 Dual-Core @ 240MHz |
| RAM | 512KB SRAM + 2MB PSRAM |
| Flash | 4MB (8MB recommended) |
| Audio I/O | Full-duplex I2S |
| Sample Rate | 44.1 kHz |
| Bit Depth | 16-bit |
| Latency | <20ms |
| Power | 5V, 250-600mA |
| Operating Temp | 0-50°C |
Comparison: Voice Changer vs. MCSVS
| Feature | PD Voice Changer | MCSVS |
|---|---|---|
| Purpose | Real-time voice processing | Pre-recorded sound playback |
| Audio Source | Your live voice | WAV/MP3 files on SD card |
| Latency | <20ms | <5ms |
| Wireless | Yes (via MCSVS transmitter) | Yes (ESP-NOW) |
| Best For | Speaking in character | Sound effects, voice lines |
Use together: The MCSVS transmitter integrates directly with the Voice Changer. Use the same buttons for preset switching, PTT control, and triggering pre-recorded sound files (blaster shots, voice lines) – all while your live voice is being processed.
Limitations
CPU-intensive effects: Some extreme effect combinations may cause audio glitches. The included presets are optimized to avoid this.
Single speaker output: Mono output only. Stereo requires PCM5102A DAC with external stereo amplifier.
Learning curve: Full customization requires CLI commands. Basic use with presets is straightforward.
