45 Commits

Author SHA1 Message Date
61a7e37b92 fix: Fixed GPIO implicit declaration 2025-08-05 10:34:46 +02:00
9a7ee2450e Merge branch 'master' into feat/hm1055 2025-06-30 19:23:19 +03:00
6b68415800 feat: Use esp_jpeg component for decoding 2025-05-06 14:45:01 +02:00
588eeff2cc Add support for HM0360 2025-02-08 06:11:19 +00:00
d9ee2114c9 fix(xclk): Zero init ledc_channel_config_t for forward compatibility
LEDC driver was extended in 4a90deb227 with new config structure members.
We must zero init the config struct to get default behavior.
2024-11-15 08:43:49 +01:00
c8a96e3570 Fix deprecation in IDF 5.4+ and update IDF build versions (#681)
IDF v5.3 added and EOL IDF v4.4 removed
2024-09-13 14:19:55 +03:00
2829692928 Revert Uninstalls ISR service on cam deinit #516
Change is necessary in order to not stop other GPIO ISR uses that users might have in their code.

This would cause an error to be emitted when driver is re-initialized, but it's dismissed in code, so the error will not cause any other change in behavior.

cc @AxelLin @wouterdebie
2024-06-17 11:18:36 +03:00
30aeeeed61 fix(s2): Remove rx_pcm_bypass from registers
The register is removed in ESP-IDF
2024-05-30 21:32:49 +03:00
f0bb42917c Implement proper GDMA allocator and ISR from IRAM option (#629)
* Implement proper GDMA allocator

* Add Kconfig option to execute ISR from IRAM on S2 and S3

Up until now, default was to execute from IRAM. This changes that for S2 and S3. ESP32 is left unchanged, because of the work that is required on it.
2024-01-29 13:21:30 +02:00
984999f26b Create workaround for DMA failing on ESP32-S3 when WiFi is started (#625)
* Create workaround for DMA failing on ESP32-S3 when WiFi is started

Relates to https://github.com/espressif/esp32-camera/issues/620

* Add comment explaining the workaround
2024-01-23 12:16:48 +02:00
81cd88c6a0 fix: add gc0308 output only Y format support (#589) 2023-11-08 15:44:40 +02:00
d1c9c2cdb3 feat: add bf20a6 output Only Y format support (#557) 2023-08-08 12:01:58 +03:00
c0c17bd3de Fails with ESP32 (Standard) and not run with ESP-IDF v5.2 (#542)
* 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>
2023-07-18 12:49:07 +03:00
f595abfa0f Fix SOC_GDMA_PAIRS_PER_GROUP undefined in newer ESP-IDF 2023-07-18 12:31:51 +03:00
e689c3b082 Support: jpeg decoder on esp32c2 (#525)
* 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>
2023-04-25 14:40:46 +03:00
36b8b4e096 Uninstalls ISR service on cam deinit (#516)
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>
2023-04-20 16:39:09 +03:00
fac950973b Fix/pedantic build (#529)
* Fix: Make esp32-camera function prototypes strict

This is required for pedantic builds with
-Wstrict-prototypes flag

* ci: Enable pedantic example build
2023-04-19 21:06:33 +03:00
9d9e7d62a3 feat: add SC031GS camera sensor support 2022-09-26 16:33:43 +08:00
846554ecb4 don't reset LEDC channel if it wasn't used by camera 2022-09-20 11:14:50 -04:00
dda800d479 fix bug when config->pin_xclk == -1 2022-08-15 14:23:45 +02:00
2ae262309a feat: add an option for s3 converter range mode 2022-08-12 12:22:15 +02:00
7b6f020939 Fixed build errors for IDF version release-v5.0
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>
2022-08-08 07:58:06 +02:00
a6f13d9f3d feat: add esp32s3 yuv2rgb conversion support (#414) 2022-07-12 17:42:41 +03:00
e7f843bbfa Fix driver for ESP-IDF v5.0 (#395)
* Migrating rom GPIO include for idf v5
* Add missing includes and build for all targets

Fixes: https://github.com/espressif/esp32-camera/issues/364

Co-authored-by: Francois Dickey <francois.dickey@solace.com>
2022-05-30 14:31:06 +03:00
86a4951f50 fix: fix cache error when both nvs and camera used (#362) 2022-02-21 09:23:11 +02:00
b8ed779427 Fix support for ESP-IDF 5 (#351) 2022-01-18 16:29:28 +02:00
61400bc73b Fix "periph_module_enable" not found in ESP-IDF v5 (#333)
Fixes: https://github.com/espressif/esp32-camera/issues/332
2021-11-15 10:16:26 +02:00
e02038c3f0 update lcd_cam register for s3 (#313)
Co-authored-by: zhouli <zhouli@espressif.com>
2021-09-01 12:06:02 +03:00
e0110c2eca add github action (#296)
Co-authored-by: zhouli <zhouli@espressif.com>
2021-07-16 11:51:49 +03:00
6b1efc1edd add gcxxxx sensors (#293)
- Add sensor GC2145 GC0308 GC032A
- Make xclk driver more standard
- Update README.md
- Add an option to adjust the DMA buffer size

Co-authored-by: zhouli <zhouli@espressif.com>
2021-07-15 17:17:15 +03:00
1a307f7a27 update driver for esp32s3 (#292)
Co-authored-by: zhouli <zhouli@espressif.com>
2021-07-06 10:35:30 +03:00
7c5d8b229c Fix compilation for S3
Follow up of afcb7b0727
2021-06-18 12:07:07 +03:00
afcb7b0727 fix some crashes caused by incorrect initialization (#280) 2021-06-17 15:26:22 +03:00
b94b98124e fix grayscale mode
Fixes https://github.com/espressif/esp32-camera/issues/276
2021-06-16 13:48:18 +03:00
7a06a7e362 Experimental: Enable EDMA for JPEG when XCLK is 16MHz 2021-05-31 18:05:53 +03:00
7da9cb5ea3 Adjust clocks and DMA for non-jpeg modes and enable EDMA only for 16MHz XCLK 2021-05-27 22:43:00 +03:00
6f8489ea55 Add driver support for IDF 3.3 2021-05-27 00:05:06 +03:00
fa5020f5c7 Fix missing handling for OV7725 and OV7670 2021-05-25 10:42:41 +03:00
726c1315a4 fix_tjpgd_configuration for esp32s2 (#268)
Co-authored-by: zhouli <zhouli@espressif.com>
2021-05-25 10:37:27 +03:00
8eb032a94e Rework ESP32 driver and improve ESP32-S2 and ESP32-S3 drivers (#267)
* Initial commit of reworked esp32 and cam_hal driver

* remove old driver and implement get frame timeout

* Update documentation
2021-05-21 10:28:50 +03:00
56930c23c1 fix delay_us api compatibility for esp32s2 2021-05-17 20:13:00 +08:00
b58018357a Initial support for ESP32-S3 2021-05-14 13:57:24 +03:00
5da530c983 Update cam_hal.c 2021-05-12 15:56:32 +03:00
579fe966ae Add alpha ESP32-S3 support 2021-05-01 00:56:44 +03:00
acf206a62a Add initial ESP32-S2 support 2021-04-30 16:51:03 +03:00