Не могу настроить фото на esp32cam, использую esp_camera

Есть кто работал с ESP32-cam (Ai thinker)? Нужна помощь - получается плохое качество фото. Задача: сделать фото с помощью esp и сохранить его на карту памяти. Проблема заключается в том что фотографии получается очень тёмными, но при этом при использовании стандартного примера с веб сервером, на него выводится приемлемая картинка. Используется камера OV2640, microSD Apacer 4GB форматированная в FAT32.
Что уже пробовали сделать:
-меняли модуль камеры, использовали три разных камеры OV2640
-как только не изменяли настройки в коде, например баланс белого, контроль экспозиции и т.п.

Пример настроек, выдающих темную картинку:
sensor_t * s = esp_camera_sensor_get();
s->set_brightness(s, -2); // -2 to 2
s->set_contrast(s, 0); // -2 to 2
s->set_saturation(s, -2); // -2 to 2
s->set_special_effect(s, 2); // 0 to 6 (0 - No Effect, 1 - Negative, 2 - Grayscale, 3 - Red Tint, 4 - Green Tint, 5 - Blue Tint, 6 - Sepia)
s->set_whitebal(s, 1); // 0 = disable , 1 = enable
s->set_awb_gain(s, 1); // 0 = disable , 1 = enable
s->set_wb_mode(s, 0); // 0 to 4 - if awb_gain enabled (0 - Auto, 1 - Sunny, 2 - Cloudy, 3 - Office, 4 - Home)
s->set_exposure_ctrl(s, 1); // 0 = disable , 1 = enable
s->set_aec2(s, 1); // 0 = disable , 1 = enable
s->set_ae_level(s, 2); // -2 to 2
s->set_aec_value(s, 0); // 0 to 1200
s->set_gain_ctrl(s, 1); // 0 = disable , 1 = enable
s->set_agc_gain(s, 30); // 0 to 30
s->set_gainceiling(s, (gainceiling_t)6); // 0 to 6
s->set_bpc(s, 0); // 0 = disable , 1 = enable
s->set_wpc(s, 1); // 0 = disable , 1 = enable
s->set_raw_gma(s, 1); // 0 = disable , 1 = enable
s->set_lenc(s, 1); // 0 = disable , 1 = enable
s->set_hmirror(s, 0); // 0 = disable , 1 = enable
s->set_vflip(s, 0); // 0 = disable , 1 = enable
s->set_dcw(s, 1); // 0 = disable , 1 = enable
s->set_colorbar(s, 0); // 0 = disable , 1 = enable

почему яркость в -2?

Здравствуйте, пробовал менять все параметры, хоть как-то логически связанные, яркость в том числе. И у этих всех параметров пробовал выставлять разное значение.

попробуйте, параметры по умолчанию

s->set_brightness(s, 0);     // -2 to 2
s->set_contrast(s, 0);       // -2 to 2
s->set_saturation(s, 0);     // -2 to 2
s->set_special_effect(s, 0); // 0 to 6 (0 - No Effect, 1 - Negative, 2 - Grayscale, 3 - Red Tint, 4 - Green Tint, 5 - Blue Tint, 6 - Sepia)
s->set_whitebal(s, 1);       // 0 = disable , 1 = enable
s->set_awb_gain(s, 1);       // 0 = disable , 1 = enable
s->set_wb_mode(s, 0);        // 0 to 4 - if awb_gain enabled (0 - Auto, 1 - Sunny, 2 - Cloudy, 3 - Office, 4 - Home)
s->set_exposure_ctrl(s, 1);  // 0 = disable , 1 = enable
s->set_aec2(s, 0);           // 0 = disable , 1 = enable
s->set_ae_level(s, 0);       // -2 to 2
s->set_aec_value(s, 300);    // 0 to 1200
s->set_gain_ctrl(s, 1);      // 0 = disable , 1 = enable
s->set_agc_gain(s, 0);       // 0 to 30
s->set_gainceiling(s, (gainceiling_t)0);  // 0 to 6
s->set_bpc(s, 0);            // 0 = disable , 1 = enable
s->set_wpc(s, 1);            // 0 = disable , 1 = enable
s->set_raw_gma(s, 1);        // 0 = disable , 1 = enable
s->set_lenc(s, 1);           // 0 = disable , 1 = enable
s->set_hmirror(s, 0);        // 0 = disable , 1 = enable
s->set_vflip(s, 0);          // 0 = disable , 1 = enable
s->set_dcw(s, 1);            // 0 = disable , 1 = enable
s->set_colorbar(s, 0);       // 0 = disable , 1 = enable

почитать можно тут

Спасибо за помощь. С таким набором параметров проблема не ушла. На сайте, который Вы скинули, уже был. Есть еще варианты?

Эта камера не для фото, а для видео. Нужно несколько десятков кадров, прежде чем параметры устаканятся.

Здравствуйте, спасибо за ответ. Есть много примеров с хорошим фото с esp32cam, значит можно как-то этого добиться. Спустя несколько десятков кадров параметры не устаканились.

Дело не в пограмме, а в микросхеме ОЗУ (восьминожка, стоит рядом со стабилизатором). Китайцы туда при продаже модуля савят пустышку, потому как отдельно эта микросхема стоит чуть дороже самого модуля. А ресурсов микропоцессора не хватает, вот и получается у вас такие результаты. Я с этими модулями работал много. У всех тупо меняешь микросхему и всё начинает работать. Может сейчас и поменялось что то, но дуаю что вряд ли. Я обычно заказывал 6404L

1 лайк