# EVP Recorder - Complete Build Guide **Difficulty:** ⭐⭐⭐ Intermediate **Time:** 4-6 hours **Cost:** $30-45 This guide shows you **EXACTLY** how to build an EVP (Electronic Voice Phenomena) recorder with wiring diagrams, assembly instructions, and enclosure layout. --- ## What You're Building A high-quality digital audio recorder that: - Records audio with noise filtering - Auto-detects sounds above threshold - Timestamps all recordings - Shows waveforms on OLED display - Saves to SD card - Runs on batteries **Just like commercial EVP recorders costing $150+!** --- ## Parts List ### Core Components | Part | Quantity | Approx Cost | Notes | |------|----------|-------------|-------| | ESP32 DevKit | 1 | $8-12 | 38-pin version recommended | | MAX4466 Microphone Module | 1 | $5-8 | With adjustable gain | | 0.96" OLED Display (I2C) | 1 | $5-8 | 128x64, SSD1306 chip | | MicroSD Card Module | 1 | $3-5 | SPI interface | | MicroSD Card | 1 | $5-10 | 8GB+ Class 10 | | Slide Switch (SPDT) | 1 | $1-2 | Power on/off | | Push Button | 2 | $1-2 | Record + Mode | | LED (Red) | 1 | $0.10 | Recording indicator | | LED (Green) | 1 | $0.10 | Power indicator | | 220Ω Resistor | 2 | $0.10 | For LEDs | | 18650 Battery Holder | 1 | $2-4 | 2x batteries | | 18650 Batteries | 2 | $8-12 | Rechargeable | ### Enclosure & Hardware - Project box (approx 4" x 3" x 1.5") - Breadboard (for testing) or perfboard (for permanent) - Jumper wires - Hot glue or mounting tape - Screws/standoffs (if using perfboard) **Total Cost:** ~$35-45 --- ## Wiring Diagram ``` ┌─────────────────────────────────────────────────────────────┐ │ ESP32 │ │ │ │ 3.3V ──────┬──────┬──────┬──────┬─── Power Rail │ │ │ │ │ │ │ │ GND ───────┼──────┼──────┼──────┼─── Ground Rail │ │ │ │ │ │ │ │ GPIO 21 ───┤ │ │ │ (I2C SDA - OLED) │ │ GPIO 22 ───┤ │ │ │ (I2C SCL - OLED) │ │ │ │ │ │ │ │ GPIO 34 ───┼──────┘ │ │ (Analog - Microphone) │ │ │ │ │ │ │ GPIO 5 ───┼─────────────┘ │ (CS - SD Card) │ │ GPIO 23 ───┼────────────────────┘ (MOSI - SD Card) │ │ GPIO 19 ───┼───────────────────────(MISO - SD Card) │ │ GPIO 18 ───┼───────────────────────(SCK - SD Card) │ │ │ │ │ GPIO 25 ───┼─── LED Red (Recording) ─── 220Ω ─── GND │ │ GPIO 26 ───┼─── LED Green (Power) ─── 220Ω ─── GND │ │ │ │ │ GPIO 13 ───┼─── Button (Record) ─── GND │ │ GPIO 12 ───┼─── Button (Mode) ─── GND │ │ │ │ │ VIN ───────┼─── Battery+ (through switch) │ └─────────────┴──────────────────────────────────────────────┘ COMPONENTS: ┌──────────────────┐ │ MAX4466 MIC │ ├──────────────────┤ │ VCC ─── 3.3V │ │ GND ─── GND │ │ OUT ─── GPIO 34 │ │ GAIN ─── (pot) │ └──────────────────┘ ┌──────────────────┐ │ OLED Display │ │ (SSD1306) │ ├──────────────────┤ │ VCC ─── 3.3V │ │ GND ─── GND │ │ SDA ─── GPIO 21 │ │ SCL ─── GPIO 22 │ └──────────────────┘ ┌──────────────────┐ │ SD Card Module │ ├──────────────────┤ │ VCC ─── 3.3V │ │ GND ─── GND │ │ CS ─── GPIO 5 │ │ MOSI─── GPIO 23 │ │ MISO─── GPIO 19 │ │ SCK ─── GPIO 18 │ └──────────────────┘ POWER SYSTEM: Battery + ──[ Switch ]──> VIN (ESP32) Battery - ──────────────> GND (ESP32) ``` --- ## Pin Connection Table Print this and check off each connection as you wire it: | Component | Component Pin | ESP32 Pin | Wire Color (suggested) | |-----------|---------------|-----------|------------------------| | **OLED Display** | | | | | | VCC | 3.3V | Red | | | GND | GND | Black | | | SDA | GPIO 21 | Blue | | | SCL | GPIO 22 | Yellow | | **MAX4466 Mic** | | | | | | VCC | 3.3V | Red | | | GND | GND | Black | | | OUT | GPIO 34 | Green | | **SD Card** | | | | | | VCC | 3.3V | Red | | | GND | GND | Black | | | CS | GPIO 5 | Orange | | | MOSI | GPIO 23 | Blue | | | MISO | GPIO 19 | Green | | | SCK | GPIO 18 | Yellow | | **LEDs** | | | | | Red LED | Anode (+) | GPIO 25 → 220Ω | Red | | Red LED | Cathode (-) | GND | Black | | Green LED | Anode (+) | GPIO 26 → 220Ω | Green | | Green LED | Cathode (-) | GND | Black | | **Buttons** | | | | | Record Button | Terminal 1 | GPIO 13 | Any | | Record Button | Terminal 2 | GND | Black | | Mode Button | Terminal 1 | GPIO 12 | Any | | Mode Button | Terminal 2 | GND | Black | | **Power** | | | | | Battery Positive | Through Switch | VIN | Red | | Battery Negative | Direct | GND | Black | --- ## Step-by-Step Assembly ### Phase 1: Breadboard Testing (Required!) **DO NOT skip this step!** Test everything on breadboard first. #### Step 1: Power Test 1. Insert ESP32 into breadboard 2. Connect USB cable 3. Upload blink test code (see Getting Started guide) 4. **Verify:** Blue LED blinks #### Step 2: OLED Display Test 1. Wire OLED display: - OLED VCC → ESP32 3.3V - OLED GND → ESP32 GND - OLED SDA → ESP32 GPIO 21 - OLED SCL → ESP32 GPIO 22 2. Install library: `Adafruit SSD1306` 3. Upload test code: ```cpp #include #include #include #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET -1 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); void setup() { Serial.begin(115200); if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println("OLED failed!"); while(1); } display.clearDisplay(); display.setTextSize(2); display.setTextColor(SSD1306_WHITE); display.setCursor(0,0); display.println("EVP"); display.println("READY"); display.display(); } void loop() { // Empty for test } ``` 4. **Verify:** Screen shows "EVP READY" #### Step 3: Microphone Test 1. Wire MAX4466: - VCC → 3.3V - GND → GND - OUT → GPIO 34 2. Upload test code: ```cpp #define MIC_PIN 34 void setup() { Serial.begin(115200); pinMode(MIC_PIN, INPUT); } void loop() { int micValue = analogRead(MIC_PIN); Serial.print("Mic: "); Serial.println(micValue); delay(100); } ``` 3. Open Serial Monitor (115200 baud) 4. **Verify:** Values change when you talk/make noise 5. **Adjust gain:** Turn potentiometer on MAX4466 until normal speech reads ~2000-2500 #### Step 4: SD Card Test 1. Format SD card as FAT32 2. Insert into SD module 3. Wire SD module: - VCC → 3.3V - GND → GND - CS → GPIO 5 - MOSI → GPIO 23 - MISO → GPIO 19 - SCK → GPIO 18 4. Install library: `SD` (built-in) 5. Upload test code: ```cpp #include #include #define SD_CS 5 void setup() { Serial.begin(115200); if(!SD.begin(SD_CS)) { Serial.println("SD Card failed!"); while(1); } Serial.println("SD Card OK!"); File testFile = SD.open("/test.txt", FILE_WRITE); if(testFile) { testFile.println("EVP Recorder Test"); testFile.close(); Serial.println("File written!"); } } void loop() {} ``` 6. **Verify:** Serial monitor shows "SD Card OK!" and "File written!" 7. **Check:** Remove SD card, verify test.txt exists on computer #### Step 5: Full System Test 1. Wire ALL components together on breadboard 2. Upload full EVP firmware (see `firmware/evp-recorder/` folder) 3. Test all functions: - Display shows interface - Microphone responds to sound - Recording button works - Files save to SD card - LEDs light up correctly **DO NOT PROCEED until everything works!** --- ### Phase 2: Enclosure Preparation #### Choosing Your Enclosure **Recommended Size:** 4" x 3" x 1.5" (100mm x 75mm x 38mm) **Options:** - Plastic project box ($5-8 on Amazon) - Hammond 1591 series - 3D printed (files in `3d-models/evp-recorder/`) #### Measuring & Marking **You need holes for:** 1. OLED display (rectangular cutout) 2. Microphone (small hole, 3-5mm) 3. Power switch (6mm hole) 4. 2x buttons (6mm holes each) 5. 2x LEDs (3mm or 5mm holes each) 6. USB port access (rectangular slot for programming) 7. SD card slot (if accessible) **Layout Suggestion:** ``` TOP PANEL VIEW: ┌────────────────────────────────┐ │ │ │ ┌──────────────┐ │ │ │ │ │ │ │ OLED Screen │ ● ● │ ← LEDs (Green/Red) │ │ │ PWR REC │ │ └──────────────┘ │ │ │ │ (●) (●) │ ← Buttons (Record/Mode) │ RECORD MODE │ │ │ └────────────────────────────────┘ FRONT PANEL: ┌────────────────────────────────┐ │ ● │ ← Microphone hole │ MIC │ └────────────────────────────────┘ SIDE PANEL: ┌────────────────────────────────┐ │ ⎍ POWER │ ← Power switch └────────────────────────────────┘ ``` #### Tools You Need **Essential:** - Drill with bits (3mm, 5mm, 6mm) - Automatic center punch ($5-8) - **CRITICAL for accuracy** - Ruler/calipers - Pencil - Painter's tape **Optional but helpful:** - Step drill bit (for clean holes) - Deburring tool or hobby knife - Small files - Dremel (for rectangular cutouts) #### Drilling Procedure **For EVERY hole:** 1. **Mark position** with pencil and ruler 2. **Apply painter's tape** over mark (prevents cracking) 3. **Re-mark** on tape 4. **Use center punch** to create starter dimple 5. **Start with small bit** (2mm pilot hole) 6. **Step up** to final size 7. **Go slow** - let drill do the work 8. **Deburr** edges with knife or file **For OLED cutout:** Method 1 (Drill): - Drill holes at all 4 corners - Drill more holes along edges - Connect with hobby knife/file - Clean up edges Method 2 (Dremel): - Drill corners - Use Dremel with cutting wheel - Follow marked lines - File/sand edges smooth **For Microphone hole:** - Use 3-5mm bit - Drill from outside → inside - Tape on BOTH sides to prevent cracking --- ### Phase 3: Final Assembly #### Step 1: Mount Components **OLED Display:** - Test fit in cutout - Hot glue around edges OR - Use M2 screws if display has mounting holes **ESP32:** - Option 1: Mount on perfboard - Option 2: Hot glue directly to case bottom - Option 3: Use double-sided foam tape - **IMPORTANT:** Make sure USB port is accessible! **SD Card Module:** - Mount near case edge if you want external access - OR mount internally and remove card via case opening **Microphone:** - Insert through hole from inside - Hot glue in place - Make sure hole is CLEAR (no glue blocking it) **Buttons:** - Insert through holes - Most have clips/nuts to secure **LEDs:** - Insert through holes - Bend legs inside to hold position - Or use LED holders/bezels **Power Switch:** - Insert through hole - Secure with mounting nut #### Step 2: Battery Mounting **18650 Holder:** 1. Decide placement (usually bottom of case) 2. Hot glue or screw in place 3. Make sure case closes fully! **Wiring:** - Red wire from battery+ → Switch → ESP32 VIN - Black wire from battery- → ESP32 GND #### Step 3: Final Wiring Now recreate your breadboard wiring in the enclosure: **Option 1: Direct Wiring** (quick and dirty) - Solder wires directly between components - Use heat shrink on all connections - Secure wire bundles with zip ties - Hot glue components in place **Option 2: Perfboard** (clean and permanent) - Cut perfboard to fit case - Mount all components on perfboard - Solder all connections - Wire runs can be cleaner - Easier to troubleshoot **Tips:** - Use stranded wire for flexibility - Match wire colors to diagram (red=power, black=ground, etc.) - Test connections with multimeter BEFORE powering on - Take photos as you go (helps troubleshooting later) #### Step 4: Pre-Close Test **BEFORE sealing case:** 1. Insert batteries 2. Flip power switch 3. **Check:** - Green power LED lights - OLED display shows interface - Buttons respond - Recording works - SD card saves files 4. If anything doesn't work: - Check all connections - Check for shorts (wires touching) - Verify battery polarity - Test each component individually #### Step 5: Close It Up 1. Make final adjustments 2. Secure all hot glue joints 3. Add padding if components rattle 4. Close case 5. Screw together **Final test:** Record a test EVP session! --- ## Testing & Calibration ### Microphone Gain Adjustment The MAX4466 has a small potentiometer for gain adjustment: 1. Power on device 2. Speak at normal volume 6 inches from mic 3. Watch values on display 4. Turn pot clockwise to increase sensitivity 5. Turn pot counter-clockwise to decrease **Target:** Normal speech should read ~40-60% of max **Too high:** Clipping, distortion **Too low:** Won't detect quiet sounds ### SD Card Test 1. Record several test clips 2. Remove SD card 3. Insert in computer 4. **Check:** - Files are WAV format - Playable in media player - Audio quality is clear - Timestamps are correct --- ## Usage Guide ### Basic Operation 1. **Power On:** Flip switch, green LED lights 2. **Press RECORD:** Red LED lights, recording starts 3. **Press RECORD again:** Recording stops, file saves 4. **Press MODE:** Cycle through display modes ### Display Modes - **Waveform:** Real-time audio visualization - **VU Meter:** Level meter - **File List:** Browse recordings - **Settings:** Adjust threshold, gain, etc. ### File Management Files saved as: ``` /EVP/20241112_143522.wav └─ YYYYMMDD_HHMMSS format ``` Connect to computer via USB to access files directly. --- ## Troubleshooting ### No Power - Check battery charge - Check switch wiring - Check battery polarity ### Display Blank - Check I2C wiring (SDA/SCL) - Check display address (0x3C or 0x3D) - Check power (3.3V, NOT 5V) ### No Audio Recording - Check microphone wiring - Adjust gain pot - Check SD card inserted - Check SD card formatted (FAT32) ### Distorted Audio - Lower microphone gain - Check power supply (weak batteries?) - Verify ESP32 grounding ### Files Won't Save - Check SD card formatted as FAT32 - Try different SD card - Check SD module wiring - Verify CS pin connection (GPIO 5) --- ## Firmware The complete firmware is in: ``` /firmware/evp-recorder/evp_recorder_basic.ino ``` **Features:** - Auto-detection (starts recording on sound) - Manual recording - Adjustable threshold - Timestamped files - Battery level monitoring - Waveform display **To upload:** 1. Open in Arduino IDE 2. Select ESP32 board 3. Select COM port 4. Click Upload 5. Hold BOOT button if needed --- ## Upgrades & Modifications ### Beginner Upgrades - Add buzzer for audio feedback - Add more LEDs for VU meter - External antenna for RTC clock ### Intermediate Upgrades - Add WiFi file transfer - Add Bluetooth audio monitoring - Add rechargeable battery circuit ### Advanced Upgrades - Add multiple microphones (stereo) - Add real-time frequency analysis - Add AI-powered audio filtering --- ## FAQ **Q: Can I use a different microphone?** A: Yes! Any analog microphone module works. Electret mics need amplification. **Q: Why ESP32 instead of Arduino?** A: ESP32 has WiFi, Bluetooth, more memory, faster processor, and same cost. **Q: Can I power from USB?** A: Yes! USB provides 5V to VIN pin. Batteries are for portable use. **Q: How long do batteries last?** A: 2x 18650 (3000mAh each) = ~8-12 hours continuous recording. **Q: What's the audio quality?** A: ESP32 ADC is 12-bit. Good enough for EVP work, not studio quality. **Q: Can I add a speaker for playback?** A: Yes! Add MAX98357A I2S amplifier + speaker. (Future guide) --- ## Safety Notes ⚠️ **Before powering on:** - Double-check all wiring - Verify no shorts (use multimeter) - Check battery polarity - ESP32 uses 3.3V logic (NOT 5V on GPIO pins) ⚠️ **When drilling:** - Wear safety glasses - Secure enclosure in vice/clamp - Drill away from your body - Watch for sharp edges ⚠️ **Battery safety:** - Use protected 18650 cells - Don't over-discharge - Don't short terminals - Remove if device will sit unused --- ## What's Next? You've built an EVP recorder! Now try: 1. **EMF Meter** - Detect electromagnetic fields 2. **Spirit Box** - Radio frequency scanner 3. **REM Pod** - Proximity detector 4. **Multi-Tool** - Combine all devices! **Happy ghost hunting!** 👻 --- **Questions? Issues?** - Check our FAQ - Join our Discord (coming soon) - Open GitHub issue - Email: [your contact] **Built yours? Share it!** - Post photos on Reddit: r/paranormal - Tag us on social media - Submit to our gallery --- *This guide is part of the OpenParanormal Project - open-source ghost hunting equipment for everyone.*