Working with ESP32 WROVER (camera enabled)
I decided to try an alternative to ESP32 cam boards which are limited in functionality due to all pins except 13 being reserved for the camera. The ESP2 WROVER boards, although less popular, offers certain advantages:
- no need for an interface board or UART upload board
- many more pins to use for motion sensors or other similar triggers
- can be used as a standard ESP32 controller for other projects if needed
- can be used with a slightly modified but otherwise standard ESP32 case
disadvantages:
- lack of a flash LED (could add your own and possibly much brighter)
- no memory card slot
- no ability to add an external antenna
It took some time to solve a couple of issues I ran into. At first I assumed I had received bad hardware, but it turned out the setting in my Arduino IDE were simply wrong. Also I had the wrong camera type selected.
First of all, the cameras that ship with ESP32 Wrover boards are NOT the same ones we get with ESP32 cam boards. Although both are technically OV2640 cameras, I was not able to get those shipped with ESP32 cameras to work with my ESP32 WROOM.
In my code I had to switch from:
#define CAMERA_MODEL_AI_THINKER
to:
#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
Additionally, when uploading using the ESP32 WROVER Module, I was getting this error:
esp32 Sketch uses 1509765 bytes (115%) of program storage space. Maximum is 1310720 bytes.
This was fixed by setting the Partition Scheme in the arduino IDE to "huge" (see screen below)
With these changes I was able to get the ESP32 WROVER and camera to work propery.
See also: https://randomnerdtutorials.com/getting-started-freenove-esp32-wrover-cam/