* maint(build): remove legacy GNU Make build system support
* maint(example): move the example so that component manager finds it
* maint(example): specify component dependency
* maint(build): clean up legacy 'register_component' usage
* maint(build): specify more fields in component manifest
* doc(readme): simplify installation instructions
See https://github.com/espressif/esp32-camera/issues/596
* maint(ci): remove tests for EOL versions (v4.1, v4.2)
* fix(build): add missing transitive dependency on driver component
* Fails with ESP32 (standard) and ESP-IDF v5.2
With IDF 5.2 master it works with esp32-s3 but fails with esp32 standard, and has two problems:
First is that when compiling it does not find the function: ets_delay_us'.
implicit declaration of function 'ets_delay_us';
Second that it fails to initialize xlock.
camera_xclk: ledc_timer_config failed, rc=103
The solution is to add #define ets_delay_us esp_rom_delay_us when the idf version is greater than 5 and initialize the variable timer_conf.deconfigure = false;
* Build fails with ESP32 (Standard) and does not run with ESP-IDF v5.2
With IDF 5.2 master it works with esp32-s3 but fails with esp32 standard, and has two problems:
First is that when compiling it does not find the function: ets_delay_us'.
implicit declaration of function 'ets_delay_us';
Second that it fails to initialize xlock.
camera_xclk: ledc_timer_config failed, rc=103
The solution is to add #define ets_delay_us esp_rom_delay_us when the idf version is greater than 5 and initialize the variable timer_conf.deconfigure = false;
* Fails with ESP32 (Standard) and not run with ESP-IDF v5.2
With IDF 5.2 master it works with esp32-s3 but fails with esp32 standard, and has two problems:
First is that when compiling it does not find the function: ets_delay_us'. implicit declaration of function 'ets_delay_us';
Second that it fails to initialize xlock.
camera_xclk: ledc_timer_config failed, rc=103
The solution is to add #define ets_delay_us esp_rom_delay_us when the idf version is greater than 5 and initialize the variable timer_conf.deconfigure = false;
---------
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* Extend s/w jpeg decoder functions for chips missing rom tjpgd
Also, disabled camera_init and capture from example for chips not
supporting camera
Signed-off-by: Vikram <vikram.dattu@espressif.com>
* Extend CI build support for C3 and C2
Signed-off-by: Vikram <vikram.dattu@espressif.com>
---------
Signed-off-by: Vikram <vikram.dattu@espressif.com>
Since `gpio_install_isr_service()` is called when initializing the
camera, but on de-initiazlization the ISR service is not uninstalled.
This causes an error `gpio_install_isr_service(410): GPIO isr service
already installed` when the camera is re-initialized.
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* Fix: Make esp32-camera function prototypes strict
This is required for pedantic builds with
-Wstrict-prototypes flag
* ci: Enable pedantic example build
* ov7670: fix ov7670_frame_control()
Last value of array (VREF) was overwritten by end marker
* OV7670: Adapt QQVGA VSTART value to remove bar on top
Remove empty bar at the top of the frame. This is more visible on
OV7675, but also present on OV7670
1. Fixed new errors introduced due to removal of -Wno-error=format flag
2. Added CI on `release-v5.0` tag
Signed-off-by: Vikram <vikram.dattu@espressif.com>