ESP32 Compact Camera to Discord
ESP32, C++, SolidWorks
This project is a self-initiated exploration into using the ESP32-WROVER-CAM for low-power, battery-operated photo capture and wireless sharing.
The goal was to create a handheld camera device that can instantly take a photo and send it to a private Discord channel, with minimal delay, wiring, or user interaction.
The idea came from wanting a way to instantly share photos with friends during social events — without needing to unlock a phone, open an app, or manually upload anything. The device handles everything with a single tap.
When powered on, the ESP32 connects to Wi-Fi, initializes the camera module, captures a photo, and uploads it to an FTP server. A hosted Node.js server listens for new uploads, generates a public URL, and shares the photo in Discord using a webhook.
The process from touch to Discord post is typically under 3 seconds.
This project was a valuable exploration into low-power embedded systems, fast boot reliability, and simple IoT integrations — all while working within the ESP32's limitations.
Interesting features:
- ESP32-WROVER-CAM module using the OV2640 camera.
- Shutter button uses an ESP32 capacitive touch pin, simplifying the design (no pull-down resistor or mechanical switch needed).
- Photo captured and posted to Discord in under 3 seconds.
- Uploads image to a server via FTP, where a Node.js Express server handles link generation and webhook posting.
- Powered by a 3.7V 18650 Lithium-Ion cell using a Pololu U3V16F3 3.3V step-up voltage regulator.
- OLED 0.96" display (optional) for debug messages, not required for normal operation.
- Delayed subsystem initializations to improve boot reliability when running from battery.
- All logic and communication handled directly by the ESP32.
- Compact, untethered form factor, suitable for field or personal use.









