esp32.diy

esp32cam-ready: Plug-and-Play RTSP Camera with ESP32-CAM

Oct 15, 2026 · 4 min read

Beginner 213 stars 37 forks C++ No license Updated 2026-08-28

The AI-Thinker ESP32-CAM module with OV2640 camera that esp32cam-ready targets.

TL;DR esp32cam-ready is a PlatformIO firmware that turns a cheap ESP32-CAM module into a self-provisioning Wi-Fi camera server with an RTSP stream you can open straight in VLC. Flash it once, connect to its access point, enter your Wi-Fi credentials, and you have a live camera feed on your network.
What you need
  • ESP32-CAM (OV2640)
  • USB to Serial (TTL) adapter
  • ESP32-CAM-MB piggyback board
BoardESP32-CAM (OV2640)
FrameworkArduino / PlatformIO
LanguageC++
StreamingRTSP + HTTP MJPEG
Releasev1.0.0
DifficultyBeginner

What You Will Build

esp32cam-ready turns an ESP32-CAM module into a fully self-contained Wi-Fi camera server in three steps: flash, provision, connect. Once running, the module hosts two parallel services:

The RTSP output means you can pipe the stream directly to a disk with ffmpeg, feed it into a security DVR, or embed it in a robot or drone project that needs a live camera feed over the local network — no cloud account required.

Note: The author has published a newer sibling project, ESP32CAM-RTSP, with a richer web configuration interface. esp32cam-ready remains the leaner, well-tested baseline described here.

Wiring diagram showing how to connect the ESP32-CAM to a USB-to-Serial (FTDI) adapter for flashing.\2
Wiring diagram showing how to connect the ESP32-CAM to a USB-to-Serial (FTDI) adapter for flashing.
The ESP32-CAM-MB piggyback board, which adds a USB port and IO0 button for easier flashing.\2
The ESP32-CAM-MB piggyback board, which adds a USB port and IO0 button for easier flashing.

What You Need

Hardware

Software

Typical use cases

Robot Camera

Mount on a rover or robot arm and stream live RTSP video to a control dashboard over Wi-Fi.

Low-Cost Security Monitor

Place around a workshop or garage and record continuously to disk using ffmpeg piped from the RTSP feed.

Multi-Camera Network

Run several ESP32-CAM modules on one network; each gets a unique mDNS name, so you can open all streams in parallel.

Drone FPV Feed

Attach to a lightweight drone frame and receive the RTSP stream in any compatible ground station application.

Wiring for Flashing

The ESP32-CAM has no built-in USB port, so you need a serial adapter only during the upload step.

Option A — USB-to-Serial adapter

Connect the adapter to the ESP32-CAM as shown in the repository's wiring diagram (assets/ESP32CAM-to-FTDI.png). Critically, bridge GPIO0 to GND before powering up: this puts the chip into download mode. After flashing succeeds, remove that bridge and press reset so the firmware boots normally.

Option B — ESP32-CAM-MB piggyback board (recommended for beginners)

Snap the ESP32-CAM onto the MB board and plug it in via USB. Hold the IO0 button, press and release reset, then release IO0. The chip is now in download mode and ready to receive the firmware. After flashing, press reset once to boot.

Build and Flash

Install PlatformIO on Debian/Ubuntu

sudo apt-get install python-pip
sudo pip install platformio
pio upgrade

On Windows or macOS, install Visual Studio Code and add the PlatformIO extension instead.

Clone and build

git clone https://github.com/rzeldent/esp32cam-ready.git
cd esp32cam-ready
pio run

Put the board in download mode (GPIO0 to GND or IO0 button as described above), then upload:

pio run -t upload

Remove the GPIO0 jumper (or release IO0) and press reset. Watch the boot log with:

pio device monitor

Provision Wi-Fi

  1. On your phone or laptop, scan for a Wi-Fi network named esp32cam-xxxxxxxxxxxx (the x characters are the module's MAC address).
  2. Connect using the password esp32cam#.
  3. Open a browser and go to http://192.168.4.1.
  4. Enter your home or workshop Wi-Fi SSID and password and save.
  5. The module reboots and joins your network. It is now reachable at http://esp32cam.local.

Open the RTSP stream in VLC

Go to Media → Open Network Stream in VLC and enter:

rtsp://esp32cam.local:554/mjpeg/1

The live camera feed should appear within a few seconds.

What You Can Do From the Browser

Visiting http://esp32cam.local gives you a simple control panel built into the firmware:

All four controls work without installing anything on the client side.

Ideas to Extend It and Known Limitations

Ways to take it further

Limitations to keep in mind

Verdict

esp32cam-ready delivers on its name: a few PlatformIO commands and a browser-based provisioning step are all it takes to have a live RTSP camera stream running on a sub-ten-euro module. It is a solid starting point for any robot, rover or monitoring project that needs a network camera without cloud dependencies or subscription fees.

Sources

github.comrzeldent/esp32cam-ready — repository & README

Facts in this article come from the project's public README and GitHub metadata at the time of writing. Images belong to their respective owners and link back to the original source.