esp-idf-websocket-camera

Take a picture and Publish it via WebSocket

MIT License

Stars
4

esp-idf-websocket-camera

Take a picture and Publish it via WebSocket. This project use ESP32 Camera Driver.

ESP32 works as a WebSocket server. Use your browser as a WebSocket client.

+----------+               +----------+               +----------+
|          |               |          |<-----Get------|          |
|  Camera  |<---Capture--->|  ESP32   |               |  Browser |
|          |               |          |----Picture--->|          |
+----------+               +----------+               +----------+

Hardware requirements

ESP32 development board with OV2640 camera. If you use other camera, edit sdkconfig.default. From the left:

  • Aithinker ESP32-CAM
  • Freenove ESP32-WROVER CAM
  • UICPAL ESPS3 CAM
  • Freenove ESP32S3-WROVER CAM (Clone)

Software requirements

ESP-IDF V5.0 or later. ESP-IDF V4.4 release branch reached EOL in July 2024.

Installation

For AiThinker ESP32-CAM, You have to use a USB-TTL converter.

ESP-32 USB-TTL
U0TXD RXD
U0RXD TXD
GPIO0 GND
5V 5V
GND GND
git clone https://github.com/nopnop2002/esp-idf-websocket-camera
cd esp-idf-websocket-camera
idf.py set-target {esp32/esp32s3}
idf.py menuconfig
idf.py flash monitor

Start firmware

For AiThinker ESP32-CAM, Change GPIO0 to open and press the RESET button.

Configuration

Set the following items using menuconfig.

Wifi Setting

You can connect using the mDNS hostname instead of the IP address. config-wifi-2

You can use static IP. config-wifi-3

Select Board

Flash Light

ESP32-CAM by AI-Thinker has a flash light on GPIO4.

PSRAM

When you use ESP32S3-WROVER CAM, you need to set the PSRAM type.

Take pictures using Browser

ESP32 acts as a WebSocket server. Open index.html included in this project. Push connect server button. browser-1

Push take picture button. browser-2