# CameraWebServer Tiny ESP camera webserver. ## References - [https://robotzero.one/esp32-cam-arduino-ide/](https://robotzero.one/esp32-cam-arduino-ide/) - [https://github.com/espressif/arduino-esp32/tree/master/libraries/ESP32/examples/Camera/CameraWebServer](https://github.com/espressif/arduino-esp32/tree/master/libraries/ESP32/examples/Camera/CameraWebServer) ## Warnings - For some reason the ESP board I am using is getting offline after long run. A dirty workaround is in place forcing the board to reset every MAX_RUNNING_TIME (see in **CameraWebServer.ino**) - If you encounter some "brownout" message when using 3.3V you can work around the issue using 5V input (It worked on both of my ESP boards) - The frame rate is display only if an active connection is here, if your client is far for the WiFi network framerate will be lower. - The frame rate which can be achieved: - With 320x240 framerate should be around 25fps - With 640x480 framerate should be around 12fps - With 800x600 framerate should be around 12fps too - With 1024x768 framerate should be around 6fps - If you have a client with a good WiFi connection and you cannot achieve the framerates above, please check if it improves by pinching the WiFi antenna to the PCB (I personally use a rubber band for this :) ). ## Installing Do not forget to shunt the **IO0** pin to **GND** for flashing, remove the jumper after flash. ### Board Configuration - Board: **ESP32 Wrover Module** - Upload Speed : **921600** - Flash Frequency : **80MHz** - Partition Scheme : **Huge APP (3MB No OTA)** ### Configuration - Define your desired reboot timeout **#define MAX_RUNNING_TIME** - Insert your WiFi SSID(s) and password(s) in **ssid_list_t aplist**. The list **MUST** end with **{NULL,NULL}** - Compile and upload ## Webserver The webserver can only handle 1 connection at a time. ```bash - http://BOARDIP/ : General configuration & usage - http://BOARDIP:81/stream : Direct video stream ```