Esp32 Cam Webserver Versions Save

Expanded version of the Espressif ESP webcam

v4.0

2 years ago

The v4.0 release.

  • Latest esp-arduino-core release (SDK v4.4-beta1)
  • OTA enabled; configurable (including password) in myconfig.h
  • MDNS support
  • Camera bus xclock setting in config and UI, improves running on budget modules with bus issues, allows tuning the xclk frequency on the fly to tune for best speed/quality/etc
  • SPIFFS is now read (and formatted if needed) before camera module initialisation; this helps with a SPIFFS startup errors
  • 'kill stream' button in dump page, terminates the stream at the camera end in cases where the browser fails to drop the connection.
  • UI tuneable frame rate limiter for smoother displays and or lower network use
  • More info in dump page, including MCU temperature and xclk frequency
  • UI tweaks, some notes and help for quality, xclk and other settings
  • Improved display and logging of critical errors
  • Support ArduCAM_ESP32S_UNO
  • A whole bunch of spelling, comment and log tweaks

But..

  • No more Face Recognition (actually; this is a feature, it allows for OTA updating)
  • No more support for modules without PSRAM.

A big 'Thank You' to all the other people who contributed to this release with code, problem reports and discussion.

v3.5

2 years ago

V3.5 Roundup release that brings in a few key fixes from 4.x:

  • xclock setting in myconfig.h, improves running on budget modules with bus issues.
  • Show MCU temperature
  • Support ArduCAM_ESP32S_UNO
  • Improved display and logging of critical errors
  • A few spelling and log tweaks.

I now ONLY support the esp-arduino-core v1.0.6 for the 3.x branch. And document how to downgrade/use this in the Release notes install instructions. It mat run with v2.0.0/1 (but definitely; not with v2.0.2, the current IDE core version as of this release.)

I intend this to be the last 3.x release, there is nothing really to add any more.

v4.0.beta3

2 years ago

A new release; tested with ESP-core 2.0.2, and arduino IDE 1.8.20.

This release contains an important fix for the framebuffer length, and adds a settle time for the SPI bus before SPIFFS initialisation. This may help with some clone boards..

I also added the ArduCAM_ESP32S_UNO board (thanks @rdragonrydr) And made some UI and documentation tweaks and fixes (thanks @ArminJo , @15498th , @timgates42 et al.)

v3.4

2 years ago

Another small round-up release, the MCU temperature is reported and a nasty corrupt-SPIFFS related lock-up is catered for (backports from the master branch). Compiling for the 2.x ESP Arduino core is fixed, and compiling/uploading and use have been re-tested using the latest Arduino IDE (1.8.15) and ESP Core (2.0.0).

v4.0.beta2

2 years ago

Note: I strongly recommend upgrading to this release if you already have the v4 beta1,

The Visual artifacts fix makes it worth the effort to upgrade if your cameras show speckles and dropouts with large frame sizes, and OTA should make it easy.

Beta 2 of the 4.0 branch is a bugfix/roundup release fixing:

  • Visual artifacts caused by a very high clock frequency when talking to the camera module. I have lowered the frequency (following advice seen in other projects) to 16.5MHz and this has produced a notable improvement in video quality on all of my camera modules. It lowers the maximum framerate/quality that can be achieved, but you can still use fullHD mode at full quality, so the limit is not very low. You can revert to the original (20MHz) frequency in your myconfig.h.
  • Bugfixes; including a nasty one where a badly flashed SPIFFS partition could lockup the module during boot (before WiFi Connect). The firmware now tests for truncated files while reading and avoids entering an infinite loop, instead it erases the damaged file and reverts to defaults.
  • A nice clear warning in the console if PSRAM is not enabled

v4.0.beta

2 years ago

This initial 4.x release brings OTA to the ESP CAM example

.. at the expense of Face Recognition; which has been stripped out of the code.

OTA == Over The Air firmware updates (eg, you can update using WiFi)

  • Before you can use OTA you must flash your board at least once with an OTA enabled app and partition scheme. So you will still need the FTDI-Friend (or equivalent) at least once.

This is a big deal (for me, and others) because:

  • OTA makes updating installed cameras much easier, especially if you have mounted it in a high corner or on a trailer etc..
  • Face recognition was a nice demo; but of limited practical use, and made the firmware very large, slow to compile and slow to upload.

OTA is enabled by default, but you can disable it if required or set a password on the updater in your custom config to stop the cam being hijacked

Please See the updated Uploading Instructions, you must select the correct generic ESP32 DEV board type for OTA to work

  • The AI-THINKER board definition we use for v3.x in the IDE does not support OTA partitioning, unfortunately there is no warning for this; the cam and everything will appear to work until you try an update, which will fail. So we need to select a 'better' partition scheme with OTA enabled.
  • OTA works by reserving (approx) half of the memory for your program, and the other half for receiving the updates, this effectively halves the memory you have available for your program (which is why Face Recognition has to go, it uses over 75% of the whole esp32 memory).
  • I've updated the README with all the necessary details

v3.3

2 years ago

Another release, SInce this change seems to be important. WiFi module powersaving is now fully disabled.

v3.2.1

2 years ago

No functionality changes, this is just a catchup release to fix the free()ing of memory when drawing face boxes in face recognition mode.

  • This did not practically affect the camera operation or cause any noticable issues, but since this is an example I figure it is good to show the 'correct' way to do things ;-)

v3.2

2 years ago

This is a catch-up release to address a stream killing bug with face recognition code; where asking for an image capture while the stream was running would kill the stream (and sometimes the whole camera). Face recognition is now disabled for image captures if there is a stream running. It still works if no stream is running as before.

I also did some document and sample configuration comment changes.

v3.1

3 years ago

This minor release addresses changes made to the Camera Framesize list by ESP when they released the v1.0.6 Arduino IDE update. It also adds some additional data to the dump output showing how many streams and images have been served, and if any clients are currently connected.