This project showcases a live streaming security camera system utilizing Arduino, featuring two ESP32 CAM modules. These cameras seamlessly connect to Wi-Fi, broadcasting video in real-time via WebSockets to a streaming website hosted on Glitch.com. The web interface not only displays the live feeds but also offers functionalities for incident logging and system resetting.
- Live streaming from two Arduino ESP32 cameras
- Real-time incident logging and notifications via Arduino buttons
- WebSocket communication for live updates
- Friendly user-interface for control over system
- System reset functionality to clear logs and refresh the setup
- 2 x Arduino boards
- 2 x ESP32-CAM modules
- Female-to-female wires
- 2 x TTL serial adapters
- 2 x Buttons
- 2 x 10K Ohm resistors
- Add Board Manager URL:
- Go to
Tools > Board > Boards Manager > File > Preferences
- In the "Additional Board Manager URLs" field, add:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- Go to
- Install the ESP32 Board:
- In the Boards Manager, install "ESP32 by Espressif Systems"
- Upload the Arduino sketch:
- Compile the provided Arduino sketch.
- Select correct ESP32 board (try Wrover Kit(all versions))
- Turn on Hotspot and upload sketches.
The web interface is built using Express.js and serves the following purposes:
- Display Live Streams: Shows the video feed from the ESP32 cameras.
- Log Incidents: When the button of the respective cameras are pressed, an incident report is logged, and only resolved when the user clicks the resolved button under the associated camera feed.
- Reset System: Provides a reset button to clear logs and refresh the system.
To host your own version of the website, you can use Glitch.com by following these steps:
- Visit Glitch.
- Create a new project.
- Copy all files from the
app
folder in this repository to your Glitch project.
The structure of the website should resemble the following file structure: