Commit graph

279 commits

Author SHA1 Message Date
Dan Halbert
1eabcf46cc CI only for ESP-IDF v5.3 and later 2024-09-27 22:06:20 -04:00
Dan Halbert
046076ca0e use new I2C driver only for ESP-IDF v5.3 and later 2024-09-27 22:03:18 -04:00
Dan Halbert
66c1eff410 fix Write16 bugs; remove unused code 2024-09-27 19:35:23 -04:00
Dan Halbert
bb2ba48e41 register/deregister SCCB I2C device on each read/write 2024-09-24 20:38:50 -04:00
Dan Halbert
7d2126a87c Force new I2C driver; workaround v5.3 instead of v5.4 2024-09-23 20:03:24 -04:00
Dan Halbert
90c1541e2c Merge remote-tracking branch 'espressif/master' into merge-2.0.12-to-circuitpython 2024-09-21 15:49:21 -04:00
Ivan Grokhotkov
4f57767251
fix: correct calloc call arguments order (#683)
GCC 14 adds "calloc-transposed-args" warning which is an error at the
default IDF build settings.
2024-09-17 12:40:38 +03:00
me-no-dev
1a05a48e04 Update upload_component.yml 2024-09-16 09:29:55 +03:00
Me No Dev
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
robin
8e1ec63c99
Implement new idf-v5 I2C driver (#677)
* moved sccb to new i2c driver

* implemented val16 functions

* address to dev_handle translation

* moved new i2c driver to a seperate file

* removed old idf version warning
2024-09-13 14:10:59 +03:00
Ichiro Maruta
7aa37d4f22
Add option to customize JPEG mode frame size in menuconfig (#667) 2024-07-16 15:47:46 +03:00
me-no-dev
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
me-no-dev
30aeeeed61 fix(s2): Remove rx_pcm_bypass from registers
The register is removed in ESP-IDF
2024-05-30 21:32:49 +03:00
Scott Shawcroft
d529ebdffb
Merge pull request #8 from tannewt/update_esp_camera_bae46be
Update esp camera bae46be
2024-03-25 13:47:47 -07:00
Scott Shawcroft
9abb23ed43
Merge remote-tracking branch 'espressif/master' into HEAD 2024-03-22 16:19:14 -07:00
Me No Dev
bae46be5eb
Update example to place frame buffer in PSRAM (#648)
ESP32 failed to start the example
2024-03-21 14:06:18 +02:00
Me No Dev
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
Me No Dev
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
Me No Dev
8ee9c75dff
Update build config to include IDFv5.2 and remove IDFv4.3 (EOL) (#624)
* Update build config to include IDFv5.2 and remove IDFv4.3 (EOL)

* Update build.yml
2024-01-22 11:31:09 +02:00
Me No Dev
8df17f7286
Align the frame buffers to the structure alignment (#623)
* Align the frame buffers to the structure alignment 

cc: https://github.com/esp-rs/esp-idf-sys/issues/278
cc: https://github.com/esp-rs/rust/pull/195

* Include stdalign.h
2024-01-22 11:27:48 +02:00
Larry Li
dba8da9898
Fix right column & row of the measure window (#588)
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
2023-11-10 12:35:17 +02:00
Ivan Grokhotkov
8e1a00391a
Maintenance changes in the component, examples and readme (#597)
* 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
2023-11-09 18:23:30 +02:00
yuxinwww
81cd88c6a0
fix: add gc0308 output only Y format support (#589) 2023-11-08 15:44:40 +02:00
yuxinwww
efe711df9a
fix: add SC031GS VGA framesize support (#581) 2023-10-11 18:55:58 +03:00
Vikram Dattu
772aefdb67
Fix cam_take going into infinite loop (#578)
- Check if we have remaining ticks before going for math and calling cam_take recursively
2023-10-11 18:55:12 +03:00
Scott Shawcroft
8f3f2cc8cf
Merge pull request #7 from tannewt/merge_esp_camera
Merge esp camera upstream
2023-09-21 10:01:35 -07:00
Scott Shawcroft
e8d500e948
Merge remote-tracking branch 'origin/master' into circuitpython 2023-09-20 14:34:14 -07:00
yuxinwww
d1c9c2cdb3
feat: add bf20a6 output Only Y format support (#557) 2023-08-08 12:01:58 +03:00
75035312ed
Merge pull request #6 from adafruit/solarize
Add solarize effect
2023-08-02 10:19:24 -05:00
2758089a06
Add solarize effect
register 0x5003 bit 0 is solarize. needs a change in the pycamera app too.
2023-08-02 08:00:30 -05:00
Scott Shawcroft
68432607d5
Merge pull request #5 from adafruit/faster-probe
Faster probe
2023-08-01 13:14:03 -07:00
2cd2a6d69f
sccb: lower timeout when probing for camera
1000ms is too long. let's try 50ms.
2023-07-26 12:51:06 -05:00
2710e44802
sccb: don't perform an i2c bus scan 2023-07-26 12:50:38 -05:00
Juan Schiavoni
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
Me No Dev
f595abfa0f
Fix SOC_GDMA_PAIRS_PER_GROUP undefined in newer ESP-IDF 2023-07-18 12:31:51 +03:00
Vikram Dattu
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
Wouter de Bie
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
Wouter de Bie
1cb6af89d1
Adds esp_camera_return_all() (#519) 2023-04-20 16:38:40 +03:00
Tomas Rezucha
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
Sam Washburn
2e6a36d57d
Fix: Make sure there is a queue size of at least 1. (#527)
Co-authored-by: Sam Washburn <samw@kinoo.family>
2023-04-11 10:52:11 +03:00
Patryk Ludwikowski
6edafc7501
fix: remove unnecessary new line in logs of driver initialization (#500)
yes - because it hurt my eyes to see logs with this one, weird empty line...
2023-03-30 11:42:17 +03:00
Me No Dev
2478a5fc7a
Fix LoadStoreAlignment panic (#491) 2023-01-12 12:54:22 +02:00
Dan Halbert
4ff7f348d0
Merge pull request #4 from deshipu/circuitpython
Make xclk pin optional
2022-12-16 13:43:13 -05:00
Radomir Dopieralski
d117548c22 Make xclk pin optional
Some camera modules come with a crystal oscillator that already provides
the main clock, and they don't have the xclk/mclk pin. We don't need to
initialize the PWM pin then.

(cherry picked from commit 896cb707dd)
2022-12-16 17:13:45 +01:00
XDanielPaul
402b811b83
Added badge with version to README (#487)
Co-authored-by: Daniel Paul <daniel.paul@espressif.com>
2022-12-12 19:53:42 +02:00
Bruno Randolf
8bcc835cf7
OV7670 fixes (#484)
* 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
2022-12-08 15:18:34 +02:00
Me No Dev
9e8d7cd471
Merge pull request #480 from WangYuxin-esp/fix/fix_wrong_cam_task_stack_size_define
fix: fix bad macro definition on cam stack size
2022-11-16 11:36:17 +02:00
Wang Yu Xin
ae117e9d85 fix: fix bad macro definition on cam stack size 2022-11-15 10:56:03 +08:00
Me No Dev
c3eacc813f
Merge pull request #474 from WangYuxin-esp/feature/support_sccb_handle_16bit_val
Feature/support sccb handle 16bit val
2022-11-10 20:57:31 +02:00
Wang Yu Xin
f3d04ea2c5 fix: change sccb_write return int value 2022-11-09 19:19:20 +08:00